Home Contact   Sitemap
Q3 Technologies - Building Quality into Software
  Company Services Engagement Models Why Q3? Technology Industries Careers
Sitemap
         
 
 

Case Study - Global Search Engine (USA)

 
View PDF View PDF

Q3 develops a Global Biochemistry Search Engine built on .Net 2.0 Platform and based on SOA architecture

Q3's global sourcing model gives the maximum benefit to customers in terms of cost savings, improved quality, access to highly talented professionals, flexibility of operations and reduced time to market.
 
Company Profile
Client is a leading supplier of life science desktop software, enterprise solutions, chemical databases and consulting services to the biotechnology, pharmaceutical and chemical industries.
 
Business Situation
  • To provide a reliable and high performance Chemical search engine.
  • To improve the performance of software by using unified database instead of diversified.
  • To provide a delivery platform for client’s internet-based subscription services: Data Content and Molecular Profiling services.
  • To provide records which are in detail and easy to understand.
 
Why use the SOA?

SOA is a paradigm for organizing and utilizing distributed capabilities that may be under the control of different ownership domains. It provides a uniform means to offer, discover, interact with and use capabilities to produce desired effects consistent with measurable preconditions and expectations.

The technology of Web services is the most likely connection technology of service-oriented architectures. Web services essentially use XML to create a robust connection.

The following figure illustrates a basic service-oriented architecture. It shows a service consumer at the right sending a service request message to a service provider at the left. The service provider returns a response message to the service consumer. The request and subsequent response connections are defined in a way that is understandable to both the service consumer and service provider. A service provider can also be a service consumer.

request

 
Solution

The target application was a web based search engine for Biochemical elements and structures. It provides varied options for searches.

  • It provides a list of Chemical structures and properties from the search. User can drill down to a detailed page for each record of the hit list. Also hyperlinks to federated content databases.
    Search criteria…
    • Molecular Weight
    • Chemical Formula
    • Chemical Name or Synonym
    • Registry ID
    • Chemical Structures
  • The search results in the form of SOAP responses are first returned by the web methods from a unified database.
  • The unified database is a gateway to federated Chemistry Databases located across the world.
  • Cross checks users subscription, membership services to authenticate before search operations using SOAP authentication.
  • Load balancing and session state server: The load balancing can be used to increase the capacity of a server farm beyond that of a single server. It can also allow the service to continue even in the face of server down time due to server failure or server maintenance. ASP.NET session-state, in a centralized, back-end database. The State Server improves performance by hosting session-state directly on the farm using distributed, in-memory storage.
  • An ActiveX plug-in control to display the Chemical Structure. If the control is not installed on the client machine, structure would be displayed as gif image.
  • Support from all standard web browsers like Netscape, Fire fox, IE and different Operating System.

The web services standards relevant to SOA and deployed for this application:
XML - a markup language for describing data in message payloads in a document format.
HTTPS - request/response protocol between clients and servers used to transfer or convey information

SOAP - a protocol for exchanging XML-based messages over a computer network, normally using HTTP.
Web Service Description Language (WSDL) - XML-based service description that describes the public interface, protocol bindings and message formats required to interact with a web service .
Universal Description, Discovery, and Integration (UDDI) - An XML-based registry to publish service descriptions (WSDL) and allow their discovery.

The project was initiated by gathering the high level requirements and objectives from the client. A feasibility study was done at Q3 to determine the advantages of using a SOA architecture based web service search engine versus a classical ASP based approach. A Proof of Concept successfully demonstrated the advantages of a SOA based web service approach as it definitely scored high on the performance, scalability and security aspects.

Once the scope was identified, the web services were developed based on the specific functionalities. The application was designed and developed keeping in mind the scalability and portability and functional benchmarks.

The advanced search can be done with Molecular Weight, Chemical Formula, Chemical Name or Synonym, Registry ID and Structure by entering a value in respective textboxes. A list of records is found and displayed. Details for each record can also be viewed.

The application also provides search results to other vendors such as Chemical 3D modeling applications. Termed as the live link application using the UDDI concepts, search results in the form of SOAP responses are returned to the desktop application.

The Web Service communicates the changes to the clients using Microsoft's implementation of discovery, and provides a Microsoft Web Service Description that can be used to programmatically implement client changes to adapt to changes in the services provided. For security purposes a 124 bit encryption is used for login id and password. It takes different inputs for search in SOAP XML form and sends the response in SOAP XML form.

  • Technology Used
    • ASP.NET2.0 Framework and Controls/Visual Studio2005 IDE.
    • Oracle database Technology for data content.
    • IIS/.Net web server technologies
    • Middle layer Oracle Cartridge.
    • Structure Sketching Tool
  • Types of Search
    • Basic Search
      In a single text box, value is entered to search. Records are displayed related to the entered value.
    • Advanced Search (With Structure)
      Separate text boxes are provided for different options for search. It also provides search with Structure.

structure

 
Benefits
  • Provides Centralized Login System for better security.
  • High speed Search
  • Unified Database
    Prior to the merger, retrieval of data from multiple databases had many disadvantages. It used to slow down the performance of the software. Post the merger, the performance has remarkably improved.
 
 
 

Customer Speaks

 
 
We have found Q3 to be flexible, technically superior and most importantly strictly adherent to deadlines.  With little in the way of formal specifications they have worked their magic accurately, thoroughly with little or no corrections.  I find the entire team, especially our technical liaison, to be available and really understand our customers’ needs and desires for challenging software. I highly recommend Q3 to all those who need a outsource partner with depth, breadth and a competitive cost structure.
J. Brooke Aker
CEO, Acuity Software, Inc.
         
Copyright © 2007 Q3 technologies, Inc. All rights reserved. Home | Company | Services | Technology | Industries | Careers | Contact Us