Model Runway: Design Best Practices at BlueCross BlueShield
-
Upload
roger-snook -
Category
Technology
-
view
1.655 -
download
5
description
Transcript of Model Runway: Design Best Practices at BlueCross BlueShield
![Page 1: Model Runway: Design Best Practices at BlueCross BlueShield](https://reader036.fdocuments.us/reader036/viewer/2022062312/554f62bfb4c905bb178b487f/html5/thumbnails/1.jpg)
© 2012 IBM Corporation
IBM Rational software
Good Design is Good Business Series (developerWorks)
“Model Runway:” Design Best Practices at BlueCross BlueShield Guest Speaker: Arman AtashiSenior Application ArchitectBlueCross BlueShield of North [email protected]
Host: Roger Snook IBM, Rational softwareWorldWide Enablement Leader, Offering, Strategy, Delivery Team, +1.703.943.1170, [email protected] September 14
![Page 2: Model Runway: Design Best Practices at BlueCross BlueShield](https://reader036.fdocuments.us/reader036/viewer/2022062312/554f62bfb4c905bb178b487f/html5/thumbnails/2.jpg)
© 2012 IBM Corporation
IBM Rational software
Agenda
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
![Page 3: Model Runway: Design Best Practices at BlueCross BlueShield](https://reader036.fdocuments.us/reader036/viewer/2022062312/554f62bfb4c905bb178b487f/html5/thumbnails/3.jpg)
3
Agenda
• Basic Concepts• UML & MDA Usage• Modeling Context• RSA Model Template• Integration Model & View Aggregation• Model Ownership & Framework Summary• The Big Picture
System Modeling with M3 - Session 1: Overview
![Page 4: Model Runway: Design Best Practices at BlueCross BlueShield](https://reader036.fdocuments.us/reader036/viewer/2022062312/554f62bfb4c905bb178b487f/html5/thumbnails/4.jpg)
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
![Page 5: Model Runway: Design Best Practices at BlueCross BlueShield](https://reader036.fdocuments.us/reader036/viewer/2022062312/554f62bfb4c905bb178b487f/html5/thumbnails/5.jpg)
5
M3 Methodology :: Modeling Challenge
Effectively describe, specify, and reflect the target Software Architecture!
Architecture
Requirements
Implementation
![Page 6: Model Runway: Design Best Practices at BlueCross BlueShield](https://reader036.fdocuments.us/reader036/viewer/2022062312/554f62bfb4c905bb178b487f/html5/thumbnails/6.jpg)
6
Us
e
Ca
se
D
riv
en
Software Development Methodology
Requirements Analysis and Design
RSAUML/MDA Model Templates
FIPER Web I/F (WebTop)
(HTML/XML)Service Oriented
FIPER Events / Messages (FIPER Topics)
(JMS)Component Based
Object Oriented
Mo
de
l D
riv
en
Arc
hit
ec
ture
Use Case Driven:
• Capture functional (user perspective) and non-functional product requirements as well as business/process rules.
• A form of requirements modeling that involves defining the target system boundary by finding actors and use cases and their relationships.
Model Driven Architecture:
• A model -based business-focused software architecture that calls for the development of a number of architectural models in order to effectively describe the architecture.
• Enables the modeling, planning, and development of enterprise software systems in a way that conforms to the chosen architecture.
M3 Methodology :: The Approach
![Page 7: Model Runway: Design Best Practices at BlueCross BlueShield](https://reader036.fdocuments.us/reader036/viewer/2022062312/554f62bfb4c905bb178b487f/html5/thumbnails/7.jpg)
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 system's 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.
![Page 8: Model Runway: Design Best Practices at BlueCross BlueShield](https://reader036.fdocuments.us/reader036/viewer/2022062312/554f62bfb4c905bb178b487f/html5/thumbnails/8.jpg)
8
M3 Framework• M3 framework identifies five components necessary for developing and
maintaining enterprise models
Modeling Workflow
M3 Framework
Components Integration Model
View Aggregation
Modeling Notation
Modeling Environment
33
![Page 9: Model Runway: Design Best Practices at BlueCross BlueShield](https://reader036.fdocuments.us/reader036/viewer/2022062312/554f62bfb4c905bb178b487f/html5/thumbnails/9.jpg)
9
Framework Components
Modeling Workflow
Integration Model
View Aggregation
Modeling Notation
Modeling Environment33™
MDA Principles and Disciplines Context for Enterprise Modeling
M3 Framework
Components
![Page 10: Model Runway: Design Best Practices at BlueCross BlueShield](https://reader036.fdocuments.us/reader036/viewer/2022062312/554f62bfb4c905bb178b487f/html5/thumbnails/10.jpg)
10
Agenda
• Basic Concepts• UML & MDA Usage• Modeling Context• RSA Model Template• Integration Model & View Aggregation• Model Ownership & Framework Summary• The Big Picture
![Page 11: Model Runway: Design Best Practices at BlueCross BlueShield](https://reader036.fdocuments.us/reader036/viewer/2022062312/554f62bfb4c905bb178b487f/html5/thumbnails/11.jpg)
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 ISMPackage
State Machine
Use Case
Activity
Class
Sequence
Component
Deployment
M3 UML Diagram Usage
![Page 12: Model Runway: Design Best Practices at BlueCross BlueShield](https://reader036.fdocuments.us/reader036/viewer/2022062312/554f62bfb4c905bb178b487f/html5/thumbnails/12.jpg)
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
![Page 13: Model Runway: Design Best Practices at BlueCross BlueShield](https://reader036.fdocuments.us/reader036/viewer/2022062312/554f62bfb4c905bb178b487f/html5/thumbnails/13.jpg)
© 2012 IBM Corporation
IBM Rational software
13
www.ibm/software/rational
![Page 14: Model Runway: Design Best Practices at BlueCross BlueShield](https://reader036.fdocuments.us/reader036/viewer/2022062312/554f62bfb4c905bb178b487f/html5/thumbnails/14.jpg)
14
Agenda
• Basic Concepts• UML & MDA Usage• Modeling Context• RSA Model Template• Integration Model & View Aggregation• Model Ownership & Framework Summary• The Big Picture
![Page 15: Model Runway: Design Best Practices at BlueCross BlueShield](https://reader036.fdocuments.us/reader036/viewer/2022062312/554f62bfb4c905bb178b487f/html5/thumbnails/15.jpg)
15
M3 Terms and ConceptsM3 Terms and ConceptsMDA Terms and ConceptsMDA Terms and Concepts
Business Process Model
Platform Model
Context for Enterprise Modeling
System Model(Business, IT, Integration, etc.)
Problem domain, business context, requirements and concepts, business roles and collaborations
Business types and objects, interfaces, components, services, messages, and data
Data model, software platform, software implementation and deployment specifications
Computation Independent Model (CIM)
Computation Independent Model (CIM)
Platform IndependentModel (PIM)
Platform IndependentModel (PIM)
Platform Specific Model (PSM)
Platform Specific Model (PSM)
scripts (DDL/SQL, etc.), code (java, C#, etc.), configurations (XSL, WSDL, deployment files, etc.)
Platform Specific Implementation (PSI)
Platform Specific Implementation (PSI)
Platform ModelSubsystems, technology, and
technical concepts
Platform ModelSubsystems, technology, and
technical concepts
Business Model(The Outside)
Business Model(The Outside)
Logical System Model(The Edge)
Logical System Model(The Edge)
Technology Spec. Model(The Inside)
Technology Spec. Model(The Inside)
![Page 16: Model Runway: Design Best Practices at BlueCross BlueShield](https://reader036.fdocuments.us/reader036/viewer/2022062312/554f62bfb4c905bb178b487f/html5/thumbnails/16.jpg)
16
M3 and Generic SDLC
M3 MDA Models
Use Case Model Activity ModelDomain Model
Computation Independent Model (CIM)
Component ModelType Model
Platform Independent Model (PIM)
Service Model
Runtime Model Deployment ModelData Model
Platform Specific Model (PSM)
Platform Specific Implementation (PSI)
<<artifact>>Script
<<artifact>>Code
<<artifact>>Configuration
Requirements Analysis Specification
Architectural Design Specification
Implementation Deployment Specification
High Level Design Model
Construction & Assembly
Detailed Design Model
Business Requirements
Requirements Model
Test & Deployment
Implementation Artifacts
![Page 17: Model Runway: Design Best Practices at BlueCross BlueShield](https://reader036.fdocuments.us/reader036/viewer/2022062312/554f62bfb4c905bb178b487f/html5/thumbnails/17.jpg)
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
Use Case Model Activity ModelDomain Model
Computation Independent Model (CIM)
Domain Model describes the problem domain in terms of
business concepts and reflects a precise model of domain
vocabularies and terminologies
Use Case Model describes functionality of a system in terms of use cases/user tasks/actions showing
interactions between the users and the system
Activity Model describes behaviors of a system in terms of activities, actions, controls,
and data flows reflecting organizational structures,
business processes, work flows, and procedures
![Page 18: Model Runway: Design Best Practices at BlueCross BlueShield](https://reader036.fdocuments.us/reader036/viewer/2022062312/554f62bfb4c905bb178b487f/html5/thumbnails/18.jpg)
18
CIM Workflow
Model Business Concepts
Identify & Model Use Cases
Business Process Model
Business Requirements
Domain Knowledge
Model System Boundaries
Domain Model Use Case Model
External System Model
Business Features
Business Architecture Model
Model Business Scenarios
Activity Model
![Page 19: Model Runway: Design Best Practices at BlueCross BlueShield](https://reader036.fdocuments.us/reader036/viewer/2022062312/554f62bfb4c905bb178b487f/html5/thumbnails/19.jpg)
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
Component Model Service ModelType Model
Platform Independent Model (PIM)
Type Model specifies domain objects in terms of types, attributes, associations,
collaborations, and is used to discover core business types
and business interfaces
Component Model specifies the scope, responsibilities, and
supported interfaces for the discovered components, and
the way their services are composed to support the
system
Service Model specifies services which provide reusable
business functionality and includes services that are
affected by the components and interfaces specified in the
component model
![Page 20: Model Runway: Design Best Practices at BlueCross BlueShield](https://reader036.fdocuments.us/reader036/viewer/2022062312/554f62bfb4c905bb178b487f/html5/thumbnails/20.jpg)
20
PIM Workflow
Identify Interface Operations
Model Services
Model Components & their Interactions
Component Model
Service Model
Discover Business Types
Type Model
Domain Model
Use Case Model
Activity Model
Use Case Model
![Page 21: Model Runway: Design Best Practices at BlueCross BlueShield](https://reader036.fdocuments.us/reader036/viewer/2022062312/554f62bfb4c905bb178b487f/html5/thumbnails/21.jpg)
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
Runtime Model Deployment ModelData Model
Platform Specific Model (PSM)
Data Model represents the structure and relationship of
data in information repositories, and shows the persisted entities in their corresponding domains and the relationships amongst
persisted elements
Runtime Model illustrates the structure of the elements that
have runtime presence such as threads, processes, DLLs, objects, components, etc.
during their execution and their interactions
Deployment Model depicts how the system is deployed to
hardware infrastructure and how the system artifacts are
gathered in the file system including the structure of
directories, files, etc.
![Page 22: Model Runway: Design Best Practices at BlueCross BlueShield](https://reader036.fdocuments.us/reader036/viewer/2022062312/554f62bfb4c905bb178b487f/html5/thumbnails/22.jpg)
22
PSM Workflow
Identify Deployment Characteristics
Instantiate Components
Allocate Components to Modules & Nodes
Deployment Model
Runtime Model
Construct Logical Data Model
Data Model
Type Model Service Model
Component Model
TechnologyPlatform
Component Model
TechnologyPlatform
![Page 23: Model Runway: Design Best Practices at BlueCross BlueShield](https://reader036.fdocuments.us/reader036/viewer/2022062312/554f62bfb4c905bb178b487f/html5/thumbnails/23.jpg)
23
Agenda
• Basic Concepts• UML & MDA Usage• Modeling Context• RSA Model Template• Integration Model & View Aggregation• Model Ownership & Framework Summary• The Big Picture
![Page 24: Model Runway: Design Best Practices at BlueCross BlueShield](https://reader036.fdocuments.us/reader036/viewer/2022062312/554f62bfb4c905bb178b487f/html5/thumbnails/24.jpg)
24
• Each M3 model is a distinct model (emx file) in RSA• M3 models are published from RSA to RTC
Modeling Environment
RSA M3 Model Templates
![Page 25: Model Runway: Design Best Practices at BlueCross BlueShield](https://reader036.fdocuments.us/reader036/viewer/2022062312/554f62bfb4c905bb178b487f/html5/thumbnails/25.jpg)
25
RSA Model Dependencies
![Page 26: Model Runway: Design Best Practices at BlueCross BlueShield](https://reader036.fdocuments.us/reader036/viewer/2022062312/554f62bfb4c905bb178b487f/html5/thumbnails/26.jpg)
26
RSA Model Dependencies
![Page 27: Model Runway: Design Best Practices at BlueCross BlueShield](https://reader036.fdocuments.us/reader036/viewer/2022062312/554f62bfb4c905bb178b487f/html5/thumbnails/27.jpg)
27
RSA Model Dependencies
![Page 28: Model Runway: Design Best Practices at BlueCross BlueShield](https://reader036.fdocuments.us/reader036/viewer/2022062312/554f62bfb4c905bb178b487f/html5/thumbnails/28.jpg)
28
Agenda
• Basic Concepts• UML & MDA Usage• Modeling Context• RSA Model Template• Integration Model & View Aggregation• Model Ownership & Method Summary• The Big Picture
![Page 29: Model Runway: Design Best Practices at BlueCross BlueShield](https://reader036.fdocuments.us/reader036/viewer/2022062312/554f62bfb4c905bb178b487f/html5/thumbnails/29.jpg)
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
M3 Integration Model
<<Integration Level>>Interface
<<Integration Level>>Platform
<<Integration Level>>Business
Integration Specific Model (ISM)
Subset of the CIM, includes business, process, and workflow
integration models
Subset of the PIM, includes technology independent component and service
interfaces integration models
Subset of the PSM, includes services, distributed objects and
components, data exchange formats, application
programming interfaces, and data access integration models
![Page 30: Model Runway: Design Best Practices at BlueCross BlueShield](https://reader036.fdocuments.us/reader036/viewer/2022062312/554f62bfb4c905bb178b487f/html5/thumbnails/30.jpg)
30
• 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
View Aggregation
Business Architecture
Information Architecture
Application Architecture
Technical Architecture
Enterprise Architecture
![Page 31: Model Runway: Design Best Practices at BlueCross BlueShield](https://reader036.fdocuments.us/reader036/viewer/2022062312/554f62bfb4c905bb178b487f/html5/thumbnails/31.jpg)
31
View Aggregation• Enterprise Architecture M3 UML Package Composition
Enterprise Architecture
<<CIM>>Activity Model
<<CIM>>Use Case Model
<<CIM>>Domain Model
<<PIM>>Service Model
<<PSM>>Data Model
<<PIM>>Type Model
<<CIM>>Domain Model
<<PSM>>Runtime Model
<<PSM>>Data Model
<<PIM>>Component Model
<<PSM>>Deployment Model
<<PSM>>Deployment Model
<<PSM>>Data Model
Business Architecture
Information Architecture
Application Architecture
Technical Architecture
![Page 32: Model Runway: Design Best Practices at BlueCross BlueShield](https://reader036.fdocuments.us/reader036/viewer/2022062312/554f62bfb4c905bb178b487f/html5/thumbnails/32.jpg)
32
Agenda
• Basic Concepts• UML & MDA Usage• Modeling Context• RSA Model Template• Integration Model & View Aggregation• Model Ownership & Framework Summary• The Big Picture
![Page 33: Model Runway: Design Best Practices at BlueCross BlueShield](https://reader036.fdocuments.us/reader036/viewer/2022062312/554f62bfb4c905bb178b487f/html5/thumbnails/33.jpg)
33
Model Ownership and Collaboration
M3 Model RSA Model Package Owner Role Collaborator Role
CIM – The Outside Activity ModelUse case ModelDomain Model
Application System Analyst Business AnalystProject Lead Architect
PIM – The Edge Component ModelType ModelService Model
Project Lead Architect Domain Architect
PSM – The Inside Runtime ModelDeployment ModelData Model
Application System Designer Project Lead ArchitectData Modeler
ISM – The Extension BusinessInterfacePlatform
Project Lead Architect Domain Architect
![Page 34: Model Runway: Design Best Practices at BlueCross BlueShield](https://reader036.fdocuments.us/reader036/viewer/2022062312/554f62bfb4c905bb178b487f/html5/thumbnails/34.jpg)
34
Methodology SummaryRSA Model Project
Templates M3 Models
Activity Model
CIM
Use Case Model
Domain Model
Component Model
PIM
Type Model
Service Model
Runtime Model
PSM
Deployment Model
Data Model
Platform
ISM
Business
Interface
UML Diagrams Used in Models
Component Class Sequence
Deployment
Class
Use Case
Class
Activity
Class
Sequence
Package
Package & State Machine diagrams may be used in
all models
State Machine
PIM Diagrams
CIM Diagrams
PSM Diagrams
Roles & Responsibilities
Collaborator OwnerRequirements Analysis Specification
Architectural Design Specification
Implementation Deployment Specification
Modeling Workflow
Models describe the problem domain and business requirements
Focus is UML behavioral modeling
Models specify supported and required, interfaces, components, and services
Focus is UML structural and interaction modeling
Models describe software implementation and deployment for the selected computing platform
Focus is UML structural modeling
Enterprise Integration Specification
Models are subsets of CIM, PIM, PSM, and describe supported levels of integration
CIM
T
he
Ou
tsid
e L
eve
l 1
PIM
T
he
Ed
ge
L
eve
l 2
PS
M
Th
e I
ns
ide
L
eve
l 3
ISM
T
he
Ex
ten
sio
n
Inte
gra
tio
n L
ev
els
![Page 35: Model Runway: Design Best Practices at BlueCross BlueShield](https://reader036.fdocuments.us/reader036/viewer/2022062312/554f62bfb4c905bb178b487f/html5/thumbnails/35.jpg)
35
Agenda
• Basic Concepts• UML & MDA Usage• Modeling Context• RSA Model Template• Model Ownership & Method Summary• View Integration & Integration Model• The Big Picture
![Page 36: Model Runway: Design Best Practices at BlueCross BlueShield](https://reader036.fdocuments.us/reader036/viewer/2022062312/554f62bfb4c905bb178b487f/html5/thumbnails/36.jpg)
36
A complete framework for enterprise modeling, integration, and architecture representation
M3 MDA Models
Use Case Model Activity ModelDomain Model
Computation Independent Model (CIM)
Component ModelType Model
Platform Independent Model (PIM)
Service Model
Runtime Model Deployment ModelData Model
Platform Specific Model (PSM)
M3 Integration Model
<<Integration Level>>Interface
<<Integration Level>>Platform
<<Integration Level>>Business
Integration Specific Model (ISM)
33ModelingMethodolog
y
™
Enterprise Architecture
<<EA>>Business
<<EA>>Information
<<EA>>Application
<<EA>>Technical
![Page 37: Model Runway: Design Best Practices at BlueCross BlueShield](https://reader036.fdocuments.us/reader036/viewer/2022062312/554f62bfb4c905bb178b487f/html5/thumbnails/37.jpg)
© 2012 IBM Corporation
IBM Rational software
37
www.ibm/software/rational
![Page 38: Model Runway: Design Best Practices at BlueCross BlueShield](https://reader036.fdocuments.us/reader036/viewer/2022062312/554f62bfb4c905bb178b487f/html5/thumbnails/38.jpg)
© 2012 IBM Corporation
IBM Rational software
38
© 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 any kind, 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 shall have 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 IBM software. 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 capabilities referenced 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 feature availability 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 Machines Corporation, in the United States, other countries or both. Other company, product, or service names may be trademarks or service marks of others.
www.ibm/software/rational