Servicesbased Systems Architecture Design and Implementation B Ramamurthy

Services-based Systems Architecture, Design and Implementation B. Ramamurthy 12/13/2021 1

Goals n “Retrospective” on Project 1 n Lessons learned and pitfalls to avoid n Discussion on plans for Project 2 n Artifacts of a large scale distributed system n Architecting a services-based system n Design issues in services-based system n Anything else… 12/13/2021 2

Develop/Deploy(DD) Cycle Service Endpoint Interface Portable Artifacts wscompile Model WSDL Deployment Descriptors 12/13/2021 wsdeploy Cooked WAR 3

Invocation Model (client side) or Invoke Cycle Portable Artifacts WSDL wscompile Implementation -specific Artifacts Client 12/13/2021 Invoke web service 4

Client Scenarios Service endpoint interface Web service 2 WSDL Web service 1 Servlet Client 12/13/2021 JSP Client Java App. Client 5

Artifacts: the server/container n Host with an IP (and ports) n Web servers, servlet servers, application servers n n n n 12/13/2021 All can be bundled into one More than one can be installed in a “host” machine at different port (Project 1) Each has a context root, the path of which represents “/” (Ex: /DBaccess. jsp) Each has an admin console for managing the server resources such a data source and message queues. Elegant way to access the resources in a deployed unit is through the container (server). For java, you will define JNDI (Java Naming and Directory Interface) names for the resources. Portability of deployable units (Ex: ‘Component technology’: Enterprise Java beans) 6

Artifacts: the data n Relational data base; object relational database n Data modeling (Entity-Relationship modeling) n Tables n Operations n Data access objects (DAO) n Enterprise java beans (EJB) n Enterprise information system (Amazon. com webservices, yahoo feeds) n Legacy systems n Device data (sensors) n RSS, ATOM, XML and text feeds 12/13/2021 7

Artifacts: the services n WS creation for consumption: n Typically create a service from language-dependent interface/class (Ex: Java interface + class) n Generate WSDL for publication and consumption. n WS consumption using a published WSDL. n Generate the language-dependent classes from WSDL n Understand thoroughly the various components of the WSDL: messages, port type, bindings, server (server, port), etc. 12/13/2021 8

Artifacts: the clients n Simple applications to rich client (ex: RIA rich internet application) n Internationalization (languages, monitory units, etc. ) n HTTP monitors, cookies and counters n Preference profiles 12/13/2021 9

Plan for Project 2 n Commercial strength enterprise application built around web services offered by amazon. com ECS: http: //webservices. amazon. com/AWSECommerce. Service. wsdl? n n n Theme: Federation of information from various sources to present an intelligent interface for assembling a system of components in various vertical domains. Experience is similar to ordering a computer at Dell site. Examples: n n n n Mundane applications such as furnishing a house for a given budget or without a budget but with preferences. Based on real amazon. com data so that the application can be used by amazon. com customers. Building a home theater, a music system, stock portfolio, etc. Interaction models (groups rather than individuals) Add dynamism to amazon. com experience Make use of web services you created in Project 2. Data from other sources such as yahoo feeds. For persistence you will have oracle data source, CIT data source as well as any local data. 12/13/2021 10

Plan for Project 2 n n n Non-functional requirements: Reliability (fault handling, exception handling) Performance (caching, concurrency, thread pooling? ) Elegant data access using data access objects Validation of any inputs Junit/Nunit testing Security authentication Secure access Asynchronous operation, push mode Events, notification, publish, subscribe operations. Higher level WS-* standards: WS-BPEL, workflow etc. 12/13/2021 11

Project 2: to do n We will explore the features offered by amazon. com n n n n and others. Decide on a project, title, domain, executive summary and project timelines. Lets look at some demos. Links: Amazon. com E-Commerce Service (ECS) Conceptual Model ECS Usage/Query Scenarios Types of data available through ECS (and not available) Sample applications (some of them are cool) 12/13/2021 12
- Slides: 12