Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Model Runway: Design Best Practices at BlueCross BlueShield


Published on

From the developerWorks series, Good Design is Good Business:

Published in: Technology
  • Be the first to comment

Model Runway: Design Best Practices at BlueCross BlueShield

  1. 1. IBM Rational softwareGood Design is Good Business Series (developerWorks)“Model Runway:”Design Best Practices at BlueCross BlueShieldGuest Speaker: Arman AtashiSenior Application ArchitectBlueCross BlueShield of North Host: Roger Snook IBM, Rational software WorldWide Enablement Leader, Offering, Strategy, Delivery Team, +1.703.943.1170, 2012 September 14 © 2012 IBM Corporation
  2. 2. IBM Rational softwareAgenda Good Design is Good Business – Value of M3: • Consistency in communication, standards • Simplified collaboration • Minimizes unproductive ‘noise’ • Productivity increase approximately 25% • Helps address compliance needs Today is Part 1 of 3 – Part 2: Was 5 October now rescheduled for 28 September 2012 – Part 3: 26 October © 2012 IBM Corporation
  3. 3. Agenda System Modeling with M3 - Session 1: Overview• Basic Concepts• UML & MDA Usage• Modeling Context• RSA Model Template• Integration Model & View Aggregation• Model Ownership & Framework Summary• The Big Picture 3
  4. 4. What is M3 ?• This session provides an insight into M3 (Modeling at 3 levels), a disciplined agile system modeling framework and workflow based on Object Management Group model driven architecture guidelines and unified modeling language notation and utilizing IBM Rational Software Architect, IBM Rational Team Concert, and IBM Rational Software Architect Design Manager M3 modeling methodology has been created around three broad strategies:  Apply fundamentals of model driven service-oriented architecture and unified modeling language to modeling enterprise software architecture  Address the increasing complexity in enterprise integration architecture and business capabilities  Support both top-down and bottom-up approaches and manage and reuse architectural models and assets throughout their lifecycle 4
  5. 5. M3 Methodology :: Modeling Challenge RequirementsEffectively describe, specify, and reflect the target Software Architecture! Architecture Implementation 5
  6. 6. M3 Methodology :: The ApproachUse Case Driven: Software Development Model Driven Architecture: Methodology• Capture functional (user Requirements Analysis • A model -based business- perspective) and non- and Design focused software functional product FIPER Web I/F (WebTop) architecture that calls for the requirements as well as Service Oriented development of a number of (HTML/XML) Model Driven Architecture business/process rules. architectural models in order to effectively describe the Use Case Driven FIPER Events / Messages (FIPER Topics)• A form of requirements Component Based architecture. (JMS) modeling that involves defining the target system • Enables the modeling, boundary by finding planning, and development Object Oriented actors and use cases and of enterprise software their relationships. systems in a way that conforms to the chosen architecture. RSA UML/MDA Model Templates 6
  7. 7. M3 Methodology :: Modeling Concepts• Systems Modeling • Is the interdisciplinary study of the use of models to conceptualize and construct physical systems in business and IT development.• Model • Captures a view of a physical system. It is an abstraction of the physical system, with a certain purpose at the appropriate level of detail.• Diagram • Is a partial graphical representation of a systems model.• Systems Modeling Methods • Flow Charts ,Functional Block, and Data Flow Diagrams! • Business Process Modeling • Logical/Physical Data Modeling • Domain Modeling • Model Driven Architecture (MDA) • Etc. 7
  8. 8. M3 Framework • M3 framework identifies five components necessary for developing and maintaining enterprise models M3 Framework Modeling Components Integration Notation Model 3 Modeling Workflow 3 Modeling View Aggregation Environment 8
  9. 9. Framework Components Modeling Notation Integration Model M3 Framework Components 3 ™ 3MDA Principles and Disciplines Context for Enterprise Modeling Modeling Workflow View Aggregation Modeling Environment 9
  10. 10. Agenda• Basic Concepts• UML & MDA Usage• Modeling Context• RSA Model Template• Integration Model & View Aggregation• Model Ownership & Framework Summary• The Big Picture 10
  11. 11. UML Usage• UML 2.3 has 14 types of diagrams – Seven diagram types represent structural information – Seven diagram types represent general types of behavior – M3 uses a subset, four structural and four behavioral diagrams Diagram CIM PIM PSM ISM Package     State Machine    Use Case   Activity  Class     Sequence    Component    Deployment   11
  12. 12. MDA Principles • The models and modeling activities utilize a domain-focused multi-view approach to architecture representation, as defined by ANSI/IEEE 1471- 2000, OMG UML 2.0 and MDA specifications • A viewpoint on a system is an abstraction technique that focuses on a particular concern within the system to establish a simplified model • MDA specifies three viewpoints on a system; – Computational independent – Platform independent – Platform specific • A view or a viewpoint model is a representation of a set of system elements, parts, connectors, and relations associated with them conforming to the viewpoint 12
  13. 13. IBM Rational software © 2012 IBM Corporation
  14. 14. Agenda• Basic Concepts• UML & MDA Usage• Modeling Context• RSA Model Template• Integration Model & View Aggregation• Model Ownership & Framework Summary• The Big Picture 14
  15. 15. Context for Enterprise Modeling Business Process ModelMDA Terms and Concepts M3 Terms and Concepts System Model Computation Independent Business Model (Business, IT, Integration, etc.) Model (CIM) (The Outside) Problem domain, business context, requirements and concepts, business roles and collaborations Platform Independent Logical System Model Model (PIM) (The Edge) Business types and objects, interfaces, components, services, messages, and data Platform Specific Technology Spec. Model Model (PSM) (The Inside) Data model, software platform, software implementation and deployment specifications Platform Specific Implementation (PSI) Platform Model scripts (DDL/SQL, etc.), code (java, C#, etc.),Subsystems, technology, and configurations (XSL, WSDL, deployment files, etc.) technical concepts Platform Model 15
  16. 16. M3 and Generic SDLC Business Requirements M3 MDA Models Requirements Analysis Computation Independent Model (CIM) Specification Domain Model Use Case Model Activity Model Requirements Model Architectural Design Specification Platform Independent Model (PIM) High Level Design Model Type Model Component Model Service Model Implementation Deployment Specification Platform Specific Model (PSM) Detailed Design Model Data Model Runtime Model Deployment Model Construction & Assembly Platform Specific Implementation (PSI) Implementation Artifacts <<artifact>> <<artifact>> <<artifact>> Script Code Configuration Test & Deployment 16
  17. 17. CIM: Level 1 Model• M3 CIM captures business requirements in the language that is familiar to the end user of the solution and the business domain experts Computation Independent Model (CIM) Domain Model Use Case Model Activity Model Activity Model describes behaviors of a system in terms Use Case Model describes Domain Model describes the of functionality of a system in problem domain in terms of activities, actions, controls, and terms of use cases/user business concepts and reflects data flows reflecting tasks/actions showing a precise model of domain organizational interactions between the users vocabularies and terminologies structures, business and the system processes, work flows, and procedures 17
  18. 18. CIM Workflow Business Business Architecture Model Features Business Domain Business External Process Model Knowledge Requirements System Model Model Business Concepts Model Business Scenarios Identify & Model Use Cases Model System Boundaries Domain Model Use Case Model Activity Model 18
  19. 19. PIM: Level 2 Model• M3 PIM specifies the solution that is not tied to the choice of a specific computing platform; however it must comply with the system requirements specified in the CIM Platform Independent Model (PIM) Type Model Component Model Service Model Component Model specifies Service Model specifies Type Model specifies domain the scope, responsibilities, and services which provide reusable objects in terms of types, supported interfaces for the business functionality and attributes, associations, discovered components, and includes services that are collaborations, and is used to the way their services are affected by the components and discover core business types composed to support the interfaces specified in the and business interfaces system component model 19
  20. 20. PIM Workflow Use Case Model Use Case Model Domain Model Activity Model Identify Interface Operations Discover Business Types Model Services Model Components & their Interactions Service Model Type Model Component Model 20
  21. 21. PSM: Level 3 Model • M3 PSM specifies system implementation and design in the form of platform-dependent model that adds details to the PIM for a specific computing platform, and specifies how that system uses the selected platform Platform Specific Model (PSM) Data Model Runtime Model Deployment Model Data Model represents the Runtime Model illustrates the Deployment Model depicts structure and relationship of structure of the elements that how the system is deployed to data in information have runtime presence such as hardware infrastructure and how repositories, and shows the threads, processes, DLLs, the system artifacts are persisted entities in their objects, components, etc. during gathered in the file system corresponding domains and the their execution and their including the structure of relationships amongst persisted interactions directories, files, etc. elements 21
  22. 22. PSM Workflow Component Model Component Model Technology Type Model Technology Service Model Platform Platform Identify Deployment Characteristics Construct Logical Data Instantiate Components Model Allocate Components to Modules & Nodes Runtime Model Data Model Deployment Model 22
  23. 23. Agenda• Basic Concepts• UML & MDA Usage• Modeling Context• RSA Model Template• Integration Model & View Aggregation• Model Ownership & Framework Summary• The Big Picture 23
  24. 24. Modeling Environment • Each M3 model is a distinct model (emx file) in RSA • M3 models are published from RSA to RTC 24
  25. 25. RSA Model Dependencies 25
  26. 26. RSA Model Dependencies 26
  27. 27. RSA Model Dependencies 27
  28. 28. Agenda• Basic Concepts• UML & MDA Usage• Modeling Context• RSA Model Template• Integration Model & View Aggregation• Model Ownership & Method Summary• The Big Picture 28
  29. 29. Integration Model• M3 extends MDA viewpoints and defines an independent model, Integration Specific Model (ISM), that has no dependencies with other three models – ISM reflects the Enterprise Integration viewpoint of the system – Models are extracted from the three M3 Models (CIM, PIM, and PSM)• Three supported models/levels of integration are specified in ISM – Business, Interface, and Platform integration models Subset of the CIM, includes M3 Integration business, process, and workflow Model integration models Integration Specific Model (ISM) Subset of the PIM, includes <<Integration Level>> technology independent Business component and service interfaces integration models <<Integration Level>> Interface Subset of the PSM, includes services, distributed objects and components, data exchange <<Integration Level>> formats, application Platform programming interfaces, and data access integration models 29
  30. 30. View Aggregation • The model structures and cross-model interrelationships form the basis of M3 view aggregation • View aggregation is achieved by assembling M3 UML packages • The aggregated views present the information in other meaningful ways to different stakeholders reflecting four key scopes of Enterprise Architecture Enterprise Architecture Business Information Application Technical Architecture Architecture Architecture Architecture 30
  31. 31. View Aggregation• Enterprise Architecture M3 UML Package Composition Enterprise Architecture Business Information Application Technical Architecture Architecture Architecture Architecture <<CIM>> <<CIM>> <<PIM>> <<PSM>> Domain Model Domain Model Component Model Data Model <<CIM>> <<PIM>> <<PSM>> <<PSM>> Use Case Model Type Model Data Model Deployment Model <<CIM>> <<PSM>> <<PSM>> Activity Model Data Model Runtime Model <<PIM>> <<PSM>> Service Model Deployment Model 31
  32. 32. Agenda• Basic Concepts• UML & MDA Usage• Modeling Context• RSA Model Template• Integration Model & View Aggregation• Model Ownership & Framework Summary• The Big Picture 32
  33. 33. Model Ownership and CollaborationM3 Model RSA Model Package Owner Role Collaborator RoleCIM – The Outside Activity Model Application System Analyst Business Analyst Use case Model Project Lead Architect Domain ModelPIM – The Edge Component Model Project Lead Architect Domain Architect Type Model Service ModelPSM – The Inside Runtime Model Application System Designer Project Lead Architect Deployment Model Data Modeler Data ModelISM – The Extension Business Project Lead Architect Domain Architect Interface Platform 33
  34. 34. Methodology Summary Modeling Workflow Roles & Responsibilities RSA Model Project Templates UML Diagrams Used in Models Collaborator Owner Requirements Analysis M3 ModelsCIM  The Outside Specification Class CIM Level 1  Models describe the problem domain and business Domain Model requirements  Focus is UML behavioral Use Case Sequence modeling Use Case Model Activity Model Architectural Design Activity PIM The Edge Specification PIM Level 2  Models specify supported and Type Model required, interfaces, compon Class ents, and services Service Model  Focus is UML structural and interaction modeling Component ModelPSM  The Inside Implementation Component Class Sequence Deployment Specification PSM Level 3  Models describe software Runtime Model implementation and Package Deployment deployment for the selected Deployment Model computing platform  Focus is UML structural modeling Data Model State MachineISM  The Extension Class Package & State Machine Integration Levels ISM diagrams may be used in Enterprise Integration all models Specification Business CIM Diagrams  Models are subsets of CIM, PIM PIM, PSM, and describe Interface Diagrams supported levels of integration PSM Platform Diagrams 34
  35. 35. Agenda• Basic Concepts• UML & MDA Usage• Modeling Context• RSA Model Template• Model Ownership & Method Summary• View Integration & Integration Model• The Big Picture 35
  36. 36. A complete framework for enterprise modeling, integration, and architecture representation M3 MDA Models Enterprise Computation Independent Model (CIM) M3 IntegrationArchitecture Model Domain Model Use Case Model Activity Model Integration Specific <<EA>> Model (ISM) Business Platform Independent Model (PIM) <<Integration Level>> <<EA>> Business Information Type Model Component Model Service Model <<Integration Level>> <<EA>> Interface Application Platform Specific Model (PSM) <<Integration Level>> <<EA>> Platform Technical Data Model Runtime Model Deployment Model 3 ™ 3 Modeling Methodology 36
  37. 37. IBM Rational software © 2012 IBM Corporation
  38. 38. IBM Rational software© Copyright IBM Corporation 2011. All rights reserved. The information contained in these materials is provided for informational purposes only, and is provided AS IS without warranty of anykind, express or implied. IBM shall not be responsible for any damages arising out of the use of, or otherwise related to, these materials. Nothing contained in these materials is intended to, nor shallhave the effect of, creating any warranties or representations from IBM or its suppliers or licensors, or altering the terms and conditions of the applicable license agreement governing the use of IBMsoftware. References in these materials to IBM products, programs, or services do not imply that they will be available in all countries in which IBM operates. Product release dates and/or capabilitiesreferenced in these materials may change at any time at IBM’s sole discretion based on market opportunities or other factors, and are not intended to be a commitment to future product or featureavailability in any way. IBM, the IBM logo, Rational, the Rational logo, Telelogic, the Telelogic logo, and other IBM products and services are trademarks of the International Business MachinesCorporation, in the United States, other countries or both. Other company, product, or service names may be trademarks or service marks of others. 38 © 2012 IBM Corporation