Presentation is loading. Please wait.

Presentation is loading. Please wait.

Technology of information systems Lecture 2 Architecture.

Similar presentations


Presentation on theme: "Technology of information systems Lecture 2 Architecture."— Presentation transcript:

1 Technology of information systems Lecture 2 Architecture

2 Technology of information systems Contents Definition of architecture Architectures of the past Modeling frameworks SOA framework

3 Technology of information systems Definition of architecture (1) System development requires orchestration, the architecture is the musical composition. Architecture is used: 1.to divide and conquer 2.to define and select components 3.to test and integrate components 4.to manage a system when it is operational

4 Technology of information systems Definition of architecture (2) Definitions: Architecture of a system is: a consistent set of views and rules of the system Each view (model) consists of: –the set of components the system is made of –the external properties of the components –the relationships between the components A rule is a constraint on a view or on a combination of views

5 Technology of information systems Definition of architecture (3) Two types of relationships between components in one view: –relations e.g.: “uses”, control flow, data flow interaction –structural relations e.g.: is-part-of, is- specialization-of Many types of relationships between views and between components of different views, e.g. is-realized-by, is- implemented-on

6 Technology of information systems business architecture process model information model software architecture: logical model…………..... physical model................ infrastructure Definition of architecture (4)

7 Technology of information systems Definition of architecture (5) Architecture is more than views and rules: Architecture languages: modeling languages to describe the views Architecture patterns: standard solutions for generic problems Architecture principles: in fact standard structural rules (to be adopted or modified in a specific architecture)

8 Technology of information systems Challenges for software architects 1.To isolate functionality in a generic component Clear, generic functionality required Business plan needed: market analysis, who is the vendor, do the benefits cover the costs? 2.To deal with overlapping functionality: Which one to use? If both have to be used, how do we synchronize them? 3.Reshuffling of functionality 4.Use of architecture in systems management Definition of architecture (6)

9 Technology of information systems Architectures of the past (1) Client-Server: separates the client (often a graphical user interface) from the server; each instance of the client software can send requests to a server or application server; majority of logic resides on client Distributed Internet: custom software client is replaced by browser; web servers contain the application logic Hybrid Web Service: web services are used as wrappers to facilitate communication with other applications (point-to-point) SOAs are built with a set of Web services designed to collectively automate one or more business processes; a natural interoperability emerges that transcends proprietary application platforms (loose coupling)

10 Technology of information systems Integration methods Synchronous method invocation: –Remote Procedure Call –Transaction Processing monitor (transactional RPC) –Object broker (Object-oriented RPC): COM+, CORBA Asynchronous interaction: –Message-oriented middleware (point-to-point message queue) Enterprise Application Integration –Message broker (hub and spoke queue with application logic) –Workflow mgmt. system (design and enact composition logic) Web technologies –Remote clients: Applets, CGI, servlets –Application Servers (Web as access channel) –Common data representation: EDIFACT and XML See Alonso e.a. chapter 2 till 4 for details Architectures of the past (2)

11 Technology of information systems Modeling frameworks(1) We distinguish Process models Data models Component models Specification languages Integrated frameworks

12 Technology of information systems Modeling frameworks(2) Process models are used for: Computer support of business processes (workflow management systems) Orchestration within components Choreography between components Process models

13 Technology of information systems Modeling frameworks(3) Many process modeling frameworks: “Academic” frameworks (formal basis) –Transition systems (automatons) where the transitions might be labeled by an event –Petri net (P/T nets, colored Petri nets) –Process algebra’s (CCS, CSP, ACP, Pi-calculus) “Industrial” frameworks –State charts (UML) –Activity diagrams (UML) –Business Process Modeling Notation (BPMN) –Event-driven Process Chains (EPC) –Business Process Execution Language (BPEL) –Many proprietary frameworks

14 Technology of information systems Modeling frameworks(4) Academic frameworks: They all have semantics as transition system Transition systems are inconvenient for modeling large systems, therefore we need Petri nets or process algebra’s Two ways of modeling –State-oriented, i.e. we assume we can only observe the states –Event-oriented, i.e. we assume we can observe only the events that cause the transitions Process algebra’s are event-oriented Petri nets have both views and a graphical language

15 Technology of information systems Modeling frameworks(5) Industrial frameworks: They have an informal semantics, which is dangerous! They all have a graphical syntax except for BPEL BPMN is an attempt to standardise the many industrial frameworks UML is another attempt

16 Technology of information systems Modeling frameworks(6) Data models: Data models for data bases –Relational model(s) –Entity-relationship model(s) –Functional data model –Class model (UML) –Resource Description Framework (RDF) (for meta data) Data models for data exchange –Edifact –XML –RDF

17 Technology of information systems Modeling frameworks (7) Component models: –Architecture Description Languages (ADL) (e.g. Darwin, Koala) –SOA frameworks (e.g. Service Component Architecture (SCA) of IBM and others) Specification languages: –For specifying actions (operations) on data –Functional or logical languages –Z, VDM and B, state oriented specifications –Algebraic specifications, operation oriented specifications

18 Technology of information systems Example: Koala constructs module: interface-less component that can glue interfaces switch: conditional function binding to route calls to appropriate components m s Modeling frameworks (8)

19 Technology of information systems Inventory CS: Z-schemata II Modeling frameworks (9) Example: Z-schema

20 Technology of information systems Modeling frameworks (10) Integrated frameworks combine –Process model –Specification language –Examples: CPN-tools, combines Petri nets with the functional language ML RoseRT, combines state charts, a component model (capsules) with C++ There is no integrated framework with a data model inside (to our knowledge)

21 Technology of information systems Service Oriented Architecture (SOA) Service: procedure, method or object with stable, published interface that can be invoked by clients (program calling another program) SOA: architecture that defines the use of services to support the requirements of software users in a SOA environment, resources on a network are made available as independent services that can be accessed without knowledge of their underlying platform implementation SOA is usually based on web services standards SOA can also be regarded as a style of enterprise architecture SOA framework (0)

22 Technology of information systems Supplier Service contract Service Client Service broker Search Publish ttp function Economical paradigm: each component should create value for its clients SOA framework (1)

23 Technology of information systems Two faces of each component Components should create value (otherwise they are useless) A component offers services to clients In that role a component is a service provider In order to deliver their service components often need services of other components In that role a component is a service requestor So a component has a sell side and a buy side interface SOA framework (2)

24 Technology of information systems Choreography Choreography: dynamic network of components Each service request starts a supply chain, which is in fact a transaction demand trigger sell sidebuy side SOA framework (3)

25 Technology of information systems SOA framework (4) Atomic component, consists of 4 type of elements: –Process –Data entity (composite) –Method –Interface ( also port) Composite component: –Container for components –Atomic or composites

26 Technology of information systems Functional view of an atomic component Process layer (wf model) Activities ( tasks, events) Data layer (data model) Variables (volatile and persistent) Connection: activities call methods and update variables SOA framework (5)

27 Technology of information systems SOA framework (6) Process: –Ordered set of activities –Used for orchestration of the service Composite data entity: –Atomic entities –Relationships between them

28 Technology of information systems SOA framework (7) Method: call can change the value of a data entity Interface ( also port): –Sell and buy interfaces –Has a set of operations (reusable!) –Operation type defines message exchange pattern (WSDL1.1) One-way Request-response Solicit-response Notification

29 Technology of information systems SOA framework (8) Activities may: –Call methods and access data entities via methods –Exchange messages via operations Activities have a sphere: –set of accessible data entities (by means of method calls)

30 Technology of information systems SOA framework (9) Wiring in composite components Horizontal: between components at same level Vertical: between parent and child components SCA picture IBM’s framework: Service Component Architecture

31 Technology of information systems SOA framework (10) (Atomic) components can have many instances, also called cases Each case is a service instance for a specific client Each case has its own ID Components have case activities and case entities Case activities form a case process Besides this we have base process, with base activities and base entities. Base process is active as long as the component exists (persistent) Case process is active as long as a case exists (volatile) Base data can be auxiliary data or aggregated case data Instantiation

32 Technology of information systems SOA framework (11) Cases can create or use cases in other components If it uses another case it needs a reference or a criterion to find it Messages related to the cases should be matched: this is correlation a b c d ab ab knows has sent its name Correlation

33 Technology of information systems SOA framework (12) SOA meta model

34 Technology of information systems SOA framework (13) BPEL as process model

35 Technology of information systems SOA framework (14) Petri net as process model

36 Technology of information systems Example : Aggregating Services into SOA BizTalk Server 2006 Engine Packaged Application Unix Application J2EE Application CICS Application AS/400 Application Web Services Clients SOA framework (15)

37 Technology of information systems Case: LaQuSo Repository SOA framework (16) Example


Download ppt "Technology of information systems Lecture 2 Architecture."

Similar presentations


Ads by Google