Reference Model s Architecture (ESA 7) It is illegal to copy, share or show this document (or other document published at http://avancier.co.uk) without the written permission of the copyright holder Copyright 2012 7. s architecture Initiate Establish 1 Architecture capability and architects Establish 2 Architecture the context precursors Intermediate level Scope 3 Architecture the endeavour frameworks Get vision approved Govern 11 Architecture in Operations 11 Architecture Governance 11 Architecture Change Management 11 Architecture Implementation Intermediate level Architect 4 & 5 Data architecture 6 Software & 7 Apps architecture 8 Design for NFRs 9 Infrastructure architecture Practitioner Plan 10 Migration Planning Migration path case Delivery Plans Copyright Ltd 2013 Copyright Ltd 2011 1
s architecture in the AM core framework for EA Passive Structure Required Behaviour Logical Structure Physical Structure Service Process Function Role Org Unit Actor Data / Information Data Entity Data Flow Log Data Model s IS Service Applicat n Interface Applicat n Infrastructure Technology Platform Service Platform Interface Platform Copyright Limited 2015 7. s architecture 7. s architecture Basic concepts s architecture structure s architecture behaviour connection styles interoperation styles integration Copyright Limited Copyright Ltd 2011 2
Conceptual framework Behavioural view Assigned to Structural view External view IS Service Interface Internal view process Realised by IS service interface [a service] that can be requested of a business application; a use case or fully automated service, provided by one application to an end user or another application. [an interface] a facade where business component/roles (and other applications) can request services offered by business applications. It could be defined in a user interface or an API. [a component] a software system or program, divisible into three categories: platform, generic and business application. s architecture focuses on business applications information systems that support business functions and /or maintain business data. (What end users perceive to be an application is not always the same as what programmers perceive to be an application.) Copyright Limited App portfolio management Apps portfolio management classification [a work process] to catalogue, describe, and value the applications of an enterprise, with a view to rationalisation or optimisation of those applications. [a technique] for categorising applications to group them for management of the application portfolio. E.g. by application type, by business function, by importance, or by health. Copyright Limited Copyright Ltd 2011 3
Technical fitness Classifying apps in the app portfolio Classify apps to understand them Cost, Value (mission critical <>unimportant), fitness, Technical fitness Size, Complexity User type: Public / Employee / Technical Generality: Universal <> Unique to business User base: Single-user - Dept - Enterprise Usage style: OLTP / Intelligence Score or rank apps High Low Low Big app Small app Big app Small app fitness High Copyright Limited classification in the BCS ESA reference model The reference model is thin here It classifies apps only By type (business, generic, platform) By business function Copyright Limited Copyright Ltd 2011 4
s by type in BCS ESA reference model application Generic application Platform application Platform [an application] that captures or provides data (via use cases) to support a business role or process. It has breadth in terms of use cases and depth in terms of software layers. E.g. accounting; billing, customer relationship management, enterprise resource planning, business intelligence, patient administration. [an application] that offers universal use cases. E.g. calculator, drawing tool, groupware, media player, spreadsheet, browser, word processor. [an application] or system software that runs computer hardware or serves other applications. See section 9 for more detail. Copyright Limited Compare with classification of applications by type in TOGAF Infrastructure (= generic business apps) Platform (= technical infrastructure apps) Copyright Limited Copyright Ltd 2011 5
s by business function - in the NCC NCC: Conspectus & Evaluation Centre, Call Centre & Marketing Accounting & Financial Reporting Data Warehousing, Intelligence & CPM. Document Management, Content Management & BPM. HR & Payroll Project Management & PSA Copyright Limited The class of apps Enterprise Resource Planning () [a business application] that supports the planning of how enterprise resources (materials, employees, customers, etc.) are acquired, moved from one state to another. An system maintains data needed for some or all of Manufacturing, Supply Chain Management, Financials, Projects, Human Resources, Data Warehouse and Management Information. It can include Customer Relationship Management and. http://www.evaluationcentre.com/erp_software/home.go 23% deploy as their main application strategy 13% deploy with other standalone packages 13%, deploy in combination with bespoke solutions 23% based core systems on standalone best of breed packages 17% on bespoke solutions Survey population manufacturing sector (23%) public sector (17%), retail (10%) distribution & logistics (7%), IT & telecoms (7%) financial services (7%). Copyright Limited Copyright Ltd 2011 6
The class of apps Customer relationship management () [a business application] that supports the development and maintenance of mutually beneficial long-term relationships with customers. It helps with some or all of the following attracting customers, transacting business with customers, servicing and supporting customer, enhancing customer relationships. Copyright Limited A little more about the class of apps The promise of technology lies in improved marketing, customer satisfaction and increased sales productivity: A business support system that helps with some or all of >> Attracting customers Brand building Customer value management Customer modelling Product development Marketing operations Product customisation Transacting business with customer Sales force operations Service centre operations Servicing and supporting customer Field service operations Supply chain/logistics Website operations Enhancing customer relationships Customer retention Customer knowledge Copyright Limited Copyright Ltd 2011 7
7. s architecture 7. s architecture Basic concepts s architecture structure s architecture behaviour connection styles interoperation styles integration Interface Copyright Limited s by business function - in the BCS ref. model portfolio catalogue [an artefact] listing business applications and recording their properties. Usually structured so as to reflect the business function hierarchy. Core business functions Marketing Sales Delivery Customer Service Support business functions HR IT Accounts Legal App App Copyright Limited Copyright Ltd 2011 8
s architecture: structural communication model s communication diagram [an artefact] that shows how applications are related by the exchange of data. Typically some kind of data flow diagram, or, where there are too many data flows, a dependency diagram. ACD as Data Flow Diagram External Entity External Entity DS App App DS DS App App External Entity DS External Entity Data store (records of data entities) Interface = Data flow (messages about data entities) Copyright Limited A structural model of the applications network Communication Diagram 1a (cf. N2 model, or Node Connectivity diagram in FEAF) 1c 1d 1b Data Flow Catalogue Sales E.g. a UK gov. dept has 300 apps and 550 data flows 2a Stock 3d 3b 3a Data Flow id Source App Destination App Data content Trigger event 1a Sales Sales order request New sales order 4b 4a 3c Data Warehouse 1b Sales Sales order confirmation Order created in the Sales system 2a Sales Stock Requisition Subscribe/Publish timer Copyright Ltd Copyright Ltd 2011 9
7. s architecture end of pass 1 SHOW RELEVANT MOCK EXAM QUESTIONS Copyright Limited 7. s architecture 7. s architecture Basic concepts s architecture structure s architecture behaviour connection styles integration Behavioural view Assigned to Structural view External view Use Case IS Service Automated Service Interface Internal view process Realised by Copyright Limited 2015 Copyright Ltd 2011 10
s architecture behavioural model Process realisation diagram Process [an artefact] that shows how applications inter-communicate to enable a process. It is often used to examine where time is spent in or between application processing steps. Typically drawn as an interaction or sequence diagram s architecture behaviour TOGAF Process Realisation diagram UML Interaction/Sequence diagram DW / BI App component cooperating in the process Process What applications cooperate in the execution of a process? How and when are applications triggered by invocations? What data flows or messages are passed along with an invocation? Useful in analysing the efficiency of a process Shows the overall sequence of a process Limited representation of logic (loops, options & quits) Copyright Limited 2015 IS services Information system service [a service] use case or automated IS service provided by one application to another, or to an end user. architecture Process Use Case The HCI s architecture Automated IS Service Copyright Limited 2015 Copyright Ltd 2011 11
Use cases use case diagram [an artefact] that shows the uses cases supported by an application. An application is scoped and defined by the use cases it supports. Use Case Diagram What uses do external entities make of an application? What processes are in the scope of our application? Copyright Limited 2015 Use cases Use case definition [an artefact] that defines a use of a system by an actor, in the course of an OPOPOT business process or role. It is normally named as a goal in verbnoun form (e.g. assess claim). It is usually defined by its service contract (trigger event, inputs and outputs, preconditions and post conditions, and non-functional requirements) and process flow (main path and alternative or exception paths). The details of each process step (including any services or transactions invoked) may be documented separately from the use case. Use Case Diagram Use Case Definition / Specification Service Contract Trigger, I/O, pre & post conditions Process main path Extension paths Non-functional requirements Copyright Limited 2015 Copyright Ltd 2011 12
Delegating work to automated IS services Goal / name Price kitchen Scope Actor Stakeholder Precondition Trigger event Post condition Kitchen sales system Salesman Customer Kitchen plan has been populated with kitchen items Kitchen order app is loaded onto the lap top Customer wants to know price (so far, for an order) Salesman presses price kitchen command Price is displayed in price dialogue box Main path 1 Salesman presses price kitchen command 2 Kitchen drawing app displays price dialogue box 3 Salesman clicks OK 4 Kitchen drawing app invokes Kitchen order app 5 Kitchen drawing app displays the reply in the Price field 6 Salesman closes the price dialogue box Extension paths 3 Salesman closes the price dialogue box 5 Kitchen drawing app displays Kitchen order app not available NFRs Invoke automated IS service Copyright Copyright Limited 2012015 Automated IS service Automated IS service [a service] that a software client can invoke. It may be classified as a business service or data service. It is sometimes an ACID transaction. architecture s architecture Process Use Case Automated IS Service The HCI During a use case, several Automated IS services may be invoked and run to completion without requiring any additional input or action from the actor progressing the use case Copyright Copyright Limited 2012015 Copyright Ltd 2011 13
Automated IS service Automated IS service [a service] that a software client can invoke. It may be classified as a business service or data service. It is sometimes an ACID transaction. architecture Process Use Cases s architecture Use Case Automated IS Service The HCI Dividable into User App Components Broker App Components Data Components Copyright Copyright Limited 2012015 process decomposition and automation Automated business service [an Automated IS service] a kind of automated service whose input and output data is defined in a canonical data model. Automated data service [an Automated IS service] a kind of automated service whose input and output data items are defined according to the parochial or physical data model of a specific data source. Use Cases User App Components Canonical data model Broker App Components Data Local data models Components Copyright Limited 2015 Copyright Ltd 2011 14
Transactions Transaction ACID Transaction Compensating transaction [a process] a unit of work, a buy-sell or client-server interaction between parties, e.g. between a user and a computer, or an application and a database. [a transaction] a unit of work that is Atomic, Consistent, Isolated and Durable. It can be rolled back if a specified precondition is violated. Using a transaction manager to automate transaction roll back preserves the integrity of stored data and saves considerable design and development effort, but is impossible in loosely-coupled designs. Where a process has an update or output effect that cannot be rolled back, then compensating transactions may have to be designed. [a transaction] a backtracking, undo or correction process. A process to handle the side effects of a process (or workflow) that started but could not complete successfully. It may undo updates committed to databases, remove messages placed in message queues, send follow-up correction messages, report cases of data disintegrity. Copyright Limited 2015 7. s architecture 7. s architecture Basic concepts s architecture structure s architecture behaviour connection styles integration Copyright Limited 2015 Copyright Ltd 2011 15
Communication styles summary overview Communication Style Under the covers, all communication is point to point! Connected Disconnected Client RPC Server Point to Point Introduction Agent Active Mediator Passive Mediator Intro Agent Directory Message Broker Message Bus Event broadcast Client Server Client Server Request-reply Event broadcast Shared Data Space Client Message Broker Server Event Source Message Bus r r Subscriber Copyright Limited 2013 7. s architecture 7. s architecture Basic concepts s architecture structure s architecture behaviour connection styles integration Copyright Limited 2015 Copyright Ltd 2011 16
s Integration integration pattern [a pattern] for sharing data currently stored in several enterprise business databases, including those listed below. Patterns include Point-to-point application integration Hub-and-spoke application integration ETL Off-line integration Data warehouse Database / application consolidation Physical master data Virtual master data Copyright Limited 2015 Two contrasting integration patterns Point-to-point integration [a pattern] in which subsystems talk to each other directly. Point to Point F E DW Hub and spoke integration [a pattern] in which subsystems communicate via a mediator. Hub and Spoke F Hub E DW Copyright Limited 2015 Copyright Ltd 2011 17
ETL pattern or tools (Oracle call it ELT) Useful if you want to load data into a data warehouse - perhaps on a regular basis, or a consolidated database perhaps during a one-off data migration ETL [a pattern] for extracting data from data sources, transforming data items from one format to another, and loading the reformatted data into data stores. Copyright Limited 2015 Two more application integration patterns Off-line integration [a pattern] in which discrete data stores are synchronised off-line, often by overnight batch processes, often using ETL tools. RAR ETL ETL Data warehousing [a pattern] in which business data is copied from on-line data stores into a central database for reporting, often using ETL tools. Data cleansing may be needed at any stage in the process. ETL ETL ETL Copyright Limited 2015 Data Warehouse Report Enterprise DW Copyright Ltd 2011 18
So which option suits this story? Database consolidation? Physical master data management? Virtual master data management? 1.0 Develop Vision and Strategy 2.0 Design and Build Airplanes 3.0 Market and Sell Airplanes 4.0 Deliver Airplane 5.0 Manage Customer Service 100 of 500 major user apps need data about an airplane Name: Give me airplane description Input: Airplane identifier Output: Airplane identifier, Model, Version, Length, Fuel capacity, Wing span, Wing area, Flying weight, Wing loading, Thrust, Engine supplier 100 of 500 major databases contain data about an airplane Copyright Limited 2015 Three more application integration patterns Database consolidation [a pattern] in which baseline applications become user application components accessing one shared database. DB BI Enterprise Enterprise DB Copyright Limited 2015 Copyright Ltd 2011 19
Three more application integration patterns Physical master data [a pattern] in which a common data entity is stored in a discrete database, where it can be accessed by any application with a pointer to the common data. Customer PMD Copyright Limited 2015 Three more application integration patterns Virtual master data (cf. III-RM) Broker App VMD / III-RM [a pattern] in which required data can be integrated at run time from several data stores or sources by some kind of broker application. It features three layers of software components. User apps: present user interfaces, capture events from them and invoke broker apps. Broker apps: decouple by providing automated business services to user apps, and invoking data services from data app(s) Data apps: provide automated data services to put/get data to/from a particular database or other data source. Copyright Limited 2015 Copyright Ltd 2011 20
IS in the BCS reference model Use Cases Uses made by users services Automated IS services that are invoked using data types in a canonical data model Data services Automated IS services that need to understand data types in a local data sources Use Case Service Data Service User Apps Broker Apps s Use Case Service Data Service Mobility Copyright Limited 2015 The III-RM in TOGAF Information Consumer s deliver content to the user of the system, provide services to request access to information in the system on the user s behalf Brokering s manage the requests from any number of clients to and across any number of Information Provider s Information Provider s provide responses to client requests and rudimentary access to data managed by a particular server The overall set creates an environment that provides a rich set of end-user services for transparently accessing heterogeneous systems, databases, and file systems. TOGAF v9 Security Qualities Platform Information Consumer s Development Tools Brokering s Information Provider s Mobility Mobility Management Utilities Copyright Limited 2015 Copyright Ltd 2011 21
Integrated Information Infrastructure Reference Model (III-RM) Function Function Function Function architecture IS Component IS Component Use Case IS User App Data IS IS s architecture Broker App Use Case IS User App Data IS III-RM Integrated Information Infrastructure Reference Model An SOA design pattern for applications architecture Platform Technology Component Platform Technology Component Platform Technology Component Platform Technology Component Infrastructure architecture Copyright Limited 2015 Reference model speak for these ideas Boundaryless Information Flow Integrated Information Infrastructure Reference model (III-RM) A trademark of the Open Group intended to express the vision of delivering any data, any time, to any place and anybody who is authorised to view the data. A pattern in TOGAF for a service-oriented architecture. User applications invoke services provided by broker applications, which in turn invoke services provided by applications that encapsulate data sources. Buy space Internal Space Sell space Procurement Manufacturing, Assembly Legal, Finance, Customer support, Selling HCI User App Workflow services Security Broker App, Broker App, Broker App, Broker App Security Workflow, Messaging & Directory services Data Storage, Replication D'base D'base D'base D'base D'base D'base D'base D'base D'base Parts Procure Design Build Ship Sales Fulfilment Support Copyright Limited 2015 Copyright Ltd 2011 22
integration patterns SCI LOP RAR Distributed Transaction Message broker ETL ETL Broker App Enterprise Customer ETL ETL ETL Data Warehouse Enterprise DB PMD VMD / III-RM Enterprise DW Report Copyright Limited 2014 Copyright Ltd 2011 23