Enterprise Architectures, Paavo Kotinurmi, Matti Hämäläinen 1
In the early days... Input Output Automation of manual tasks Payroll Bookkeeping Order entry Invoicing Statistics Data Program Computer 2
The next steps... User tasks Applications Databases Platforms Application packages Personnell Economy administration Production Control Material Requirements Inventory-Orders-Shipping- Invoicing Purchasing Product development... 3
Example: A Healthcare organization SATSHP:n POTILASTIETOJÄRJESTELMIEN LIITTYMÄT JOISSA TIETO SIIRTYY FYYSISESTI 21.3.2005/T Seppänen CD postitus (OVT) - synt.lapset STAKES CD postitus - hilmotiedot NordDRG VÄESTÖREKISTERI KESKUS CD postitus - hilmotiedot (OVT) - vastasyntyneen tiedot - kuolintiedot (OVT) - henkilötiedot SENIORI Psykiatria - potilasrekisteri - käynti- ja hoitotiedot (Mynla) - potilasmaksut VRK SatSHP - henkilötiedot - henkilötiedot UPO Poliklinikat - POTILASREKISTERI (kaikki käyttävät, paitsi Seniori) - KÄYNTITIEDOT (Mynla, Infekt., Maksuli, Haikara ) - lähetetiedot - ajanvaraus - käyntitiedot - rtg-upo rtg ajanvaraus - ilmoittautumiset HL7 Ajanvaraukset FYSIS Fysiatria - fysiatrian käynnit SOSIS Sosiaalityöntekijät - sosiaalityöntekijöiden käynnit NOS ksilp - toimenpiteet TOTI Toimenpideyksiköt - leikkaussalivaraukset - leikkauslistat - tehdyt leikkaukset - päivystysilmoitus -hoitojakso - diagnoosit JUVO Vuodeosastot - SIJAINTITIEDOT (ML 2, Radu, Upo, Toti, Puh.kesk.) - HOITOJAKSOT (Hoit.luok.,Infekt.,Maksuli,Mama,Mynla) - sis./ulos kirj. - REIPAS jonot - HILMO hoitoilmoitukset - - hoitojaksotiedot luokitustiedot - perintä - laskutustietoja Hoit.luokitus - potilaat AKTIV KAPITAL LII potilaspuhelut DNA puhelinvaihde - kyselyt - viitesuor - puh.maksut WEBKERT sairaskertomukset - sairaskertomustekstit HL7 - lausunto OVT - lähete OVT - lausunto - RTG, KLF, KNF ajanvaraus RADU Rtg, Klf, Knf - lähetteet, lausunnot - röntgenin sisäinen osuus - ilmoittautumiset ja käyntitiedot - ajanvaraus - kuljetuslista - vastasyntyneen tiedot - pkl toimenpiteet - Potilaslista hoitojaksojen perusteella - Potilaslista ajanvarauste perusteella Radu,ML2,Toti,Fysis,Vertti,Maksuli,My nla Kuntosoft Fysotools FINA Taloushallinto - laskurivit CASH MANAGER - viitesuor PRIMA - henkilöstöh. todist.palkkiot palkanmaksu - eml palkkiot - - palkat - sairaslomat henkilökunta MD-TITANIA TT2000+ Työterveysh. -Pyynnöt tehdääm ML2:een työpäytäintegraation kautta MAKSULI Maksuliikenne - potilasmaksut HL7 - pyyntö HL7 - tulos HL7 - pyyntö HL7 - tulos - pyyntö (veriryhmän sopivuus) - HETU, nimi, tutk KUVANTAMISLAITTEET ML 2 Kliin.kemian lab. - pyynnöt, tulokset - laboratorion sisäinen osuus - verikortisto - tulokset - tulokset MEDREC Dialyysi Haikara Äitiyshuolto - esitiedot - raskaus - synnytys - vastasyntynyt - äidin tiedot - veriryhmä, vasta-aineet - avohoito tiedot - hoitojaksotiedot -tuotepäätös nro:t - E-osto laskut AHA - KUNTOUTUS - määrärahaseuranta - kuntoutuspäätökset - OSTOPALVELUT - päätökset - APUVÄLINEET - välineiden vuokraus - väl. luokitusrekisteri ORDER Tilaukset - lääketilaukset - materiaalitilaukset CD-postitus - E-ostot - E-ostot - tilaukset - saldot -nimikkeet MYNLA - hinnoittelu HYS TYKS SAMPO varasto / apteekki Materiaalihallinto TERVEYSKESKUS HL7 - tulos (veriryhmän sopivuus) HL7 - vastaus HL7 - tilaus - tilaus OVT - vastaus Radu, ML2, Toti, Fysis, Upo, Juvo, Mama, Hoit.luok., Seniori, Fina Adapterit -UPO, JUVO, Webkert,ML2, Seniori, miten uudet tiedot? POWERPLAY Tilastot / Raportit ATJ SELITYKSET VERTTI Verikeskus Sovellukset Liittymät Toteutumattomat osajärjestelmät - Verituotteet - tilaukset Korvattavat - verikeskuksen sisäinen osuus SANOMAT HL7/OVT Epäselvät - M-gate LÄÄKITYS Anestesia - Datagate - veritilaukset / varaukset Säilytettävät Peräkkäistiedostot Lähete-Palaute Teho Kehitetään/ Luettelo järjestelmistä johon on liittymät SPR / Vok poistetaan AROMI/ Kuva-arkisto HELSINKI UNIVERSITY OF tilaukset TECHNOLOGY Muut liittymät Ulkopuoliste QPATI Patologian lab. - patologian laboratorion sisäinen osuus - syöpäilmoitus SYÖPÄREKISTERI SAMBA Mikrobiologian lab. - laboratorion sisäinen osuus - tartuntatauti ilmoitus KANS.TERV.LAIT. - tulokset SAIRAALAINFEKTIOT - infektioiden seuranta YKERT Sairaskertomusten hallinta - SIJAINTITIEDOT (Radu, Upo,Juvo, - sairaskertomusten sijainnit (paperit) YLEISET REKISTERIT (kaikki käyttävät) - yksikkö-, osasto-, erikoisala-, laitos- - kunta-, postinumerorekisterit - lääkäri-, diagnoosirekisterit-, toimenpiderekisteri... KERNEL - käyttäjähallinta - käyttäjien valikot - TaskMan tausta-ajojen hallinta 4
SoberIT Example: Larger organization 5
Business processes... Application suites ERP: Enterprise Resource Planning CRM: Customer Relationship Management SCM: Supply Chain Management HR: Human Resources Financials PDM: Product Data Management ECM: Enterprise Content Management DSS: Decision Support Systems... 6
Critical questions to IT department What is the balance between your software development, support and maintenance costs? How do procure new applications? What technology platforms do you support? How do you solve interoperability issues? What are your security and privacy policies and solutions? How do you support innovation and the change of business of the enterprise? What is your IT architecture? 7
Enterprise Architecture Business Information Applications Technology Integration Alignment of IT and business Organization s strategy, goals and operations Business Processes Organizational charts Conceptual models, data models Application suites Software and hardware platforms 8
Course Map 2007 12.9: EA (Enterprise Architecture) Overview 19.9: ERP (Enterprise Resource Planning) systems 26.9: BI (Business Intelligence) and Data Warehousing 3.10: BPM (Business Process Management) and SOA (Service Oriented Architecture) 10.10: Governance 17.10: ECM (Enterprise Content Management) and PDM (Product Data Management) 24.10: Enterprise Architecture Summary 9
Enterprise Architectures Outline Evolution of IT within enterprises EA Frameworks EA Methodologies Tools Operating Model Maturity Stages 10
ENTITY = Class of Business Thing List of Processes the Business Performs Function = Class of Business Process e.g. Business Process Model Proc. = Business Process I/O = Business Resources e.g. Application Architecture Proc.= Application Function I/O = User Views e.g. System Design Proc.= Computer Function I/O = Data Elements/Sets e.g. Program Proc.= Language Stmt I/O = Control Block e.g. FUNCTION List of Locations in which the Business Operates Node = Major Business Location e.g. Business Logistics System Node = Business Location Link = Business Linkage e.g. Distributed System Architecture Node = I/S Function (Processor, Storage, etc) Link = Line Characteristics e.g. Technology Architecture Node = Hardware/System Software Link = Line Specifications e.g. Network Architecture Node = Addresses Link = Protocols e.g. NETWORK List of Organizations Important to the Business People = Major Organizations e.g. Work Flow Model People = Organization Unit Work = Work Product e.g. Human Interface Architecture People = Role Work = Deliverable e.g. Presentation Architecture People = User Work = Screen Format e.g. Security Architecture People = Identity Work = Job e.g. ORGANIZATION List of Events Significant to the Business Time = Major Business Event e.g. Master Schedule Time = Business Event Cycle = Business Cycle e.g. Processing Structure Time = System Event Cycle = Processing Cycle e.g. Control Structure Time = Execute Cycle = Component Cycle e.g. Timing Definition Time = Interrupt Cycle = Machine Cycle e.g. SCHEDULE List of Business Goals/Strat Ends/Means=Major Bus. Goal/ Critical Success Factor e.g. Business Plan End = Business Objective Means = Business Strategy e.g., Business Rule Model End = Structural Assertion Means =Action Assertion e.g. Rule Design End = Condition Means = Action e.g. Rule Specification End = Sub-condition Means = Step e.g. STRATEGY SoberIT Enterprise Architecture SCOPE List of Things Important to the Business (CONTEXTUAL) Frameworks ENTERPRISE ARCHITECTURE - A FRAMEWORK MOTIVATION PEOPLE DATA FUNCTION NETWORK What How Where Who When Why TIME TM SCOPE (CONTEXTUAL) Methods Planner Planner e.g. Semantic Model ENTERPRISE MODEL (CONCEPTUAL) ENTERPRISE MODEL (CONCEPTUAL) Owner Ent = Business Entity Reln = Business Relationship Owner SYSTEM MODEL (LOGICAL) e.g. Logical Data Model SYSTEM MODEL (LOGICAL) Designer Ent = Data Entity Reln = Data Relationship Designer TECHNOLOGY MODEL (PHYSICAL) e.g. Physical Data Model TECHNOLOGY MODEL (PHYSICAL) Builder Ent = Segment/Table/etc. Reln = Pointer/Key/etc. Builder DETAILED REPRESEN- TATIONS (OUT-OF- CONTEXT) e.g. Data Definition DETAILED REPRESEN- TATIONS (OUT-OF CONTEXT) John A. Zachman, Zachman International (810) 231-0531 Sub- Contractor Ent = Field Reln = Address FUNCTIONING e.g. DATA ENTERPRISE Sub- Contractor FUNCTIONING ENTERPRISE Tools 11
Why do we need a Framework? Predefined set of models and designs Example:Permission to build Report of ownership Extract of cityplan Drawings of the building Floor plans Facade Location on the site Implicit classification of roles and views 12
Evolution of Frameworks 13
Zachman Framework John Zachman: Observation of different industries: Buildings Airplane construction Information systems Design, construction and maintenance of complex products: what different people need? Roles or perspectives: the planner, the owner, the designer, the builder, the subcontractor (the functioning enterprise). Different questions: What, How, Where, Who, When, Why Can be applied to any complex system, not just information systems 14
SCOPE (CONTEXTUAL) SoberIT ENTERPRISE ARCHITECTURE - A FRAMEWORK Software DATA Business FUNCTION and Engineering NETWORK Institute List of Things Important to the Business What How Where PEOPLE Who When MOTIVATION Why List of Processes the Business Performs List of Locations in which the Business Operates Zachman Framework List of Organizations Important to the Business TIME List of Events Significant to the Business TM List of Business Goals/Strat SCOPE (CONTEXTUAL) Planner ENTITY = Class of Business Thing Function = Class of Business Process Node = Major Business Location People = Major Organizations Time = Major Business Event Ends/Means=Major Bus. Goal/ Critical Success Factor Planner ENTERPRISE MODEL (CONCEPTUAL) e.g. Semantic Model e.g. Business Process Model e.g. Business Logistics System e.g. Work Flow Model e.g. Master Schedule e.g. Business Plan ENTERPRISE MODEL (CONCEPTUAL) Owner Ent = Business Entity Reln = Business Relationship Proc. = Business Process I/O = Business Resources Node = Business Location Link = Business Linkage People = Organization Unit Work = Work Product Time = Business Event Cycle = Business Cycle End = Business Objective Means = Business Strategy Owner SYSTEM MODEL (LOGICAL) e.g. Logical Data Model e.g. Application Architecture e.g. Distributed System Architecture e.g. Human Interface Architecture e.g. Processing Structure e.g., Business Rule Model SYSTEM MODEL (LOGICAL) Designer Ent = Data Entity Reln = Data Relationship Proc.= Application Function I/O = User Views Node = I/S Function (Processor, Storage, etc) Link = Line Characteristics People = Role Work = Deliverable Time = System Event Cycle = Processing Cycle End = Structural Assertion Means =Action Assertion Designer TECHNOLOGY MODEL (PHYSICAL) e.g. Physical Data Model e.g. System Design e.g. Technology Architecture e.g. Presentation Architecture e.g. Control Structure e.g. Rule Design TECHNOLOGY MODEL (PHYSICAL) Builder DETAILED REPRESEN- TATIONS (OUT-OF- CONTEXT) Ent = Segment/Table/etc. Reln = Pointer/Key/etc. e.g. Data Definition Proc.= Computer Function I/O = Data Elements/Sets e.g. Program Node = Hardware/System Software Link = Line Specifications e.g. Network Architecture People = User Work = Screen Format e.g. Security Architecture Time = Execute Cycle = Component Cycle e.g. Timing Definition End = Condition Means = Action e.g. Rule Specification Builder DETAILED REPRESEN- TATIONS (OUT-OF CONTEXT) Sub- Contractor Ent = Field Reln = Address Proc.= Language Stmt I/O = Control Block Node = Addresses Link = Protocols People = Identity Work = Job Time = Interrupt Cycle = Machine Cycle End = Sub-condition Means = Step Sub- Contractor FUNCTIONING ENTERPRISE e.g. DATA e.g. FUNCTION e.g. NETWORK John A. Zachman, Zachman International (810) 231-0531 (1987) e.g. ORGANIZATION e.g. SCHEDULE e.g. STRATEGY FUNCTIONING ENTERPRISE 15
Examples of models Cell R1-R2:C1 Conceptual Data Model Asiakas/ Potilas Palveluketju Hoitokokonaisuus Asiakaspalaute Palvelun tilaaja Hoitojakso Palvelun maksaja Laskutettu palvelu Palveluntuottaja Hinnaston tuote Kertomus Potilaskertomusmerkintä Hoito- tai palvelutapahtuma Tuotettu suorite Työpanos Rekisteri Materiaali tai palvelu Hankinta Aika Rekisterinpitäjä Palkkatiedot Palveluntuottajan työntekijä Henkilön koulutus- ja työhistoria Henkilö 16
Examples of models Cell R1-R2:C2 Core Business Processes 17
Primitive and Composite Models A Cell represents a primitive model Combination of Cells represent a Composite Model Cells can be combined horisontally or vertically but not diagonally 18
Why do we need a method? We want to repeat something? In what order do we produce the models? Method: Wikipedia definition: In Software Engineering in particular, a method is technical recipe for building software. Compare with a methodology. Zachman Framework is method neutral Other frameworks have evolved over time to give a method 19
The Open Group Architecture Framework (TOGAF) structure TOGAF Architecture Development Method The Enterprise Architecture Continuum The TOGAF Foundation Architecture TOGAF Technical Reference Model TOGAF Standards Information Base (SIB) The Integrated Information Infrastructure Reference Model TOGAF Resource Base 20
The Open Group Architecture Framework (TOGAF) Business Architecture Data Architecture Applications Architecture Technical Architecture ADM Architecture Development Method Principles: How to develop good principles 21
Architecture Development Cycle ADM is iterative Whole process Between phases Within phases For each iteration: The breath of coverage The level of detail Time horizon The architectural assets 22
Architecture Development Cycle - Expansion Steps within phases Example phase D Output is generated throughout the process Versioning: Version numbers Early versions may be modified in later phases 23
Why do we need tools? Asiakaspalaute Palvelun maksaja Asiakas/ Potilas Palvelun tilaaja Palveluntuottaja Palveluketju Hoitokokonaisuus Hoitojakso Laskutettu palvelu Hinnaston tuote Kertomus Potilaskertomusmerkintä Hoito- tai palvelutapahtuma Tuotettu suorite Työpanos Rekisteri Materiaali tai palvelu Hankinta Aika Rekisterinpitäjä Palkkatiedot Palveluntuottajan työntekijä Repository Most models are visual Models should share a common repository Architecture development team has a consistent set of models Models can be published for a large audience Models can be used to generate definitions and code Version management automation Henkilön koulutus- ja työhistoria Henkilö 24
Who are involved in EA? Source: Schekkerman, 2004 25
Operating Model of an enterprise Source: Ross, 2005 26
IT Architecture Stages An application silo architecture The architecture consists of architectures of individual applications rather than an architecture for the entire enterprise A standardized technology architecture The IT architecture becomes enterprise-wide and provides efficiencies through technology standardization and in most cases centralization A rationalized data architecture The enterprise wide IT architecture expands to include standardization of data and processes A modular architecture The architecture builds onto enterprise-wide global standards with loosely coupled applications, data and technology components to preserve the global standards while enabling local differences Source: Ross, 2003 27
Architecture Maturity Stages Source: Ross, 2004 28
Course Map 2007 (preliminary) 12.9: EA (Enterprise Architecture) Overview Enterprise Architect s work in practise: Case of a financial company Sakari Lehtonen, IDS Scheer 19.9: ERP (Enterprise Resource Planning) systems 26.9: BI (Business Intelligence) and Data Warehousing 3.10: BPM (Business Process Management) and SOA (Service Oriented Architecture) 10.10: Governance 17.10: ECM (Enterprise Content Management) and PDM (Product Data Management) 24.10: Enterprise Architecture Summary 29
Questions? 30
Presenter Introduction: 1969: Started studies in data processing at Helsinki University 1970: Started half time programmer at Helsinki University Central Hospital 1972: Datasaab-Valmet: Minicomputers, compilers, business systems 1979: Tandem Computers, OLTP, Data Warehousing 1996: ICL Data, Data Warehousing, BI, Architectures 1999: EMC, storage, professional services 2000: Conceptia Oy, consultant, seamless healthcare, integration, data warehousing, HL7, IT capabilities, BPM & SOA 31