Date post: | 29-Nov-2014 |
Category: |
Technology |
Upload: | davemayo |
View: | 896 times |
Download: | 1 times |
Specialists in Service Oriented Application Modernization
www.everware-cbdi.com
Opposites Attract, SOA, Model Driven Architecture and Agile
April 12, 2011
Denzil Wasson([email protected])
© 2011 Everware-CBDI IncV1.0 03 11 www.everware-cbdi.com2
Everware-CBDI SnapshotWorldwide SOA Reputation� Keynote Speakers on SOA� CBDI Forum Website: over
25,000 subscribers� SOA Best Practice
Framework and Knowledgebase
� SOA MetamodelSubmission to OMG
Leadership in Advisory Groups & Standards Bodies� ACT/IAC
� Chair: EA-SIG/Services Committee� Lead Role on Practical Guide to Federal SOA
� Federal SOA Community of Practice : Co-Chair� Object Management Group (OMG)
� Co-Chair: GovDTF� Instruct on EA & SOA
� National Defense U/EA Program � Industry Conferences� Public/Private Courses� eLearning CurriculumAuthors/Publications
� CBDI Journal (120+ Editions)� Articles (eg, EA Journal,
Microsoft Journal)� White Papers (eg, Federal CIO
Council, IAC, AFEI)� Books (eg, Service Orientation,
Information Modeling)
Government & Commercial Consulting� Enterprise/Segment Service Architecture
� Service Portfolio Transition � Service Management & Governance� Service Oriented Application Modernization
� Model-Driven Architecture & Development� Service Harvesting & Provisioning� Business Process Modeling� Service Assembly, Orchestration
� SOA Adoption� Maturity Assessment & Planning� Process Improvement� Capability Development
© 2011 Everware-CBDI IncV1.0 03 11 www.everware-cbdi.com
Setting the StageTypical Process – Revolutionary (aka disruptive)
3
Time
Cost
Application ages, becomes less responsive, frustration and cost increase
Planning/Analysis for replacement
“Big Bang” replacement and frozen legacy
Cycle renews, but has anything really changed?
User ramp-up period with productivity loss and frustration as the business figures out what it really got and IT does rework
Business response “Dead Zone” -only emergency or mandated updates are made
High cost/impact of replacement invariably creates delays and means that legacy app outlives its effectiveness
One time Modernization occurs here – if at all
© 2011 Everware-CBDI IncV1.0 03 11 www.everware-cbdi.com
The Big IT Picture – we need to get SERIOUS
This is the driver behind OMB’s 25-Point Implementa tion Plan to Reform IT Management. Objectives:� Make IT more cost effective (reduce the per unit cost of delivering capabilities)� Provide better more responsive support to the business/mission of government
(establish IT agility to enable business agility)� Reduce the risk and cycle-time associated with IT development programs� Reduce redundancy and improve consistency through reuse
4
We need a Major Inflection Point
© 2011 Everware-CBDI IncV1.0 03 11 www.everware-cbdi.com5
The 25 Point Plan
Long on “What”� Reduce the cost of IT infrastructure (1,2,3,20)� Modernize government IT acquisition and contracting (4,5,13,16,25)� Reduce IT risks through better program management (7,8,12)� Identify and implement IT best practices (9,10,11,14,24)� Promote shared services and modular development (6,15,17)� Align processes for capital investment, budgeting and modular development (17, 18, 19, 20)� Improve IT management and oversight (22,23)
Short on “How”� Low Hanging Fruit:
� Data Center Consolidation / Platform Virtualization (IaaS / PaaS)� Obvious Commodities (e-mail, calendar)
� Bigger Payback:� Wide-scale use of Shared Business Services� Modernized Software Development Process emphasizing modularity, reuse,
iteration and knowledge management� IT Procurement modernization
© 2011 Everware-CBDI IncV1.0 03 11 www.everware-cbdi.com
Infrastructure Rationalization
Architectural Best Practice
Development Approaches
Convergence of Capabilities for Modernization
6
Heavy, Complex Legacy Portfolio
Lighter, Shared Modern Portfolio
Modernization
Architectural Best Practice• Enterprise/Segments• Service Orientation• Standard Patterns• Reference Models
Development Approaches• Agile/Iterative• MDA/MDD• Twin Track
Knowledge Management• Models – UML/BPMN• Rules Engines• Collaboration Tools
Infrastructure rationalization• Virtualization• Cloud
Knowledge Management
© 2011 Everware-CBDI IncV1.0 03 11 www.everware-cbdi.com
Iterative Process – Evolutionary + Multipliers
� Multipliers:� Service Oriented Architecture (modular, efficient)� Model Driven Development (knowledge, automation, portability)� Business, Integration and Implementation Patterns� Management (scope)� Virtualization (efficient resource usage)
7
Time
Cost
Application is continually evolving facilitated by an iterative approach and agile architecture
O&M curve flattens as new features are more easily implemented
Business gets working software early
Tightly scoped iterations reduce risk and provide early feedback
Smooth cost curve is easier to budget and manage. Smooth delivery curve reduces resource spikes and User impact (retraining, disappointment, …)
© 2011 Everware-CBDI IncV1.0 03 11 www.everware-cbdi.com
� Agile� The Agile method’s main focus is the production of the software solution
� Agile is an adaptive approach vs. the traditional predictive approach
� Key roles of Scrum Master, Product Owner, Cross Functional team
� Scrum
� Benefits (25 point plan)
� Shortened delivery cycles
� Strong feedback loop for program management
� Ability to reduce acquisition scope
8
Agile – Methods and Outcomes
Source: SrumAlliance.org
© 2011 Everware-CBDI IncV1.0 03 11 www.everware-cbdi.com9
SOA
� SOA – Service Oriented Architecture
� An architectural pattern that promotes a collaborative modular architecture that leverages re-usable services
� Characteristics� Services are assets – specifications are key knowledge asset
� Modular – design for both re-use and change
� Standards based – be careful of just technical standards
� Twin track development – dependency management is crucial
� Best fit with virtualized cloud solutions – facilitates deployment transparency
� Benefits (25 point plan)
� Reduces IT portfolio development and maintenance effort, cost and complexity in a changing world
� Agile - designed for change, responsiveness
� Modular - facilitates smaller grain acquisition
� Re-use – reduces cost and risk
© 2011 Everware-CBDI IncV1.0 03 11 www.everware-cbdi.com10
MDA/MDD
� MDA/MDD – Model Driven Architecture / Development
Software delivery approach where specification models and other abstract artifacts are created to describe the structure and behavior of a system or module. The models are either executed directly or transformed into implementation code or environment control.
StartEvent1 Meets standards for enlistment, appoi ntment or inducti on?
enli st wi th M EPS?
appl icant not qual if ied for enlistment/accession
appl icant not enl isted wi th MEPS
shipping requested?
enl istee
quali fi ed not enlisted
shi pper
«BusinessProcess»1 appl icant qualification
«BusinessProcess»1 appl icant qualification
Appl icant chooses notto enl ist
«BusinessProcess»2 enlistment
«BusinessProcess»2 enlistment
Appl icant chooses notto enl ist
«BusinessProce.. .3 shipping
«BusinessProce.. .3 shipping
no
yes
no
yes
no, waiver granted
yes
Application & Service Models
Business Process Models
Metadata Models
Message Mgt
«Business T ype»Region
«Business T ype»Facili ty
+ name: string
«Business T ype»Armed Serv ice
«Business T ype»Reception/Training
Center
«Business T ype»Duty Station
«Business Type»Party
+ name
«Business Type»Role
«Busi ness Type»Organization
«Busi ness Type»Person
+ gender: Gender+ dob: date+ ssn: stri ng+ uniqueIdentif ier+ phone numbers+ f irstName: string+ m iddl eNam e: st ring+ l astName: string+ m aritalStatus: MaritalStatus+ prior mi litary service+ privileges+ preferences+ raci al Category: RacialCategory+ ethnicCategory: Ethni cCategory+ dependents: int+ religiousPreference: string+ educat ion: Education
«Business T ype»Location
+ street: st ri ng+ city: st ring+ county: st ring+ zipCode: st ring+ name
Parties and Facilities
«enumerat ion»Gender
male female other
«enumeration»Mari talStatus
married si ngle divorced
«enumerati on»RacialCategory
americanIndi anOrAlaskaNat ive asian blackOrAfricanAmerican nat iveHawai ianOrOtherPaci ficIslander whi te decl ineT oRespond
«enumeration»EthnicCategory
decl ineT oRespond hispani cOrLatino nonHispani cOrLatino
«Business T ype»ForeignLanguageSkill
+ language: st ring+ fi rst : boolean
*
residesat
*
1plays
*
incl udes
1
have
*
*i s locatedat
1
*
bel ongs to
1
*
+placeOfBi rth
1
1
hasLanguage
*
• Routing• Mediation• Translation
•Source code•Executables•Test Harness•Documentation
Workflow /OrchestrationControl
Business RulesLogic
Virtualized Data Access
Infrastructure /ESB Configuration
UML BPMN
BPEL
Java, C#, XSD,WSDL
UML, SBVR
DDL,XBRL, OCL
UML,OWL/RDF
DDL,SQL,SPARQL
Business Rule Models
© 2011 Everware-CBDI IncV1.0 03 11 www.everware-cbdi.com11
MDA/MDD
� Characteristics� Leverages standardized model notations – class diagram or ERD insufficient
� Focuses on the production of standards based specification views of services and solutions
� Commoditizes the transformation from specification to implementation via automation – virtualizes the implementation
� Benefits (25 point plan)
� Rapid Delivery
� Efficient maintenance
� Improves Quality
� Facilitates integration (modular challenge)
� Portability across technology platforms
� Preserves knowledge beyond current contractor / implementation
� Facilitates effective management (predictability)
� Facilitates acquisition through common specification language
© 2011 Everware-CBDI IncV1.0 03 11 www.everware-cbdi.com12
Knowledge Discovery & Patterns
� Knowledge Discovery
� The extraction of knowledge from existing assets to preserve knowledge and reduce the cost and risk associated with starting over
� Various architecture views data, process, dependencies, rules, timing, organization, roles – focus on the areas that will be somewhat stable.
� Manual and automated approaches – sometimes a meeting is faster
� Jumpstarts the knowledge management approach – beware the ‘do over’
� Facilitates transition from the old way of doing things
� Patterns
� Congruent Business Process, Business Data, System Architecture, System Integration and System Implementation patterns – multiple levels
� Leveraged to optimize Knowledge Discovery
� Facilitate modeling, specification, testing and communication
� Used to accelerate forward engineering
� Important tool for acquisition and program management
© 2011 Everware-CBDI IncV1.0 03 11 www.everware-cbdi.com
� Architecture communication� Framework for business
oriented SOA� Consistent integration of
services� Increases Service visibility� Knowledge retention
� Quickly produces results� Focus on removal of
blockages� Small teams� Steady pipeline � Sense of urgency
Combine the most beneficial and appropriate aspects of each approach
Architecture/Modeling Agile“Cons” “Pros” “Pros” “Cons”
� Scale Agile by using models to facilitate architecture compliance and rapid delivery � Service models facilitate service re-use through analysis and design time bindings� Models are “agile” too – quickly respond to changes in navigation, data, service
consumption, and platform/framework targets� Model-driven code ensures integration consistency reducing the single largest cause
for code “breakage”� Leverage repeatable patterns and MDA to rapidly generate all “plumbing” code
allowing agile developers to concentrate on UI and extensions
The Power of Synergy
Opposites Attract – SOA, MDA & Agile
� Reputation as chaotic� Refactoring “rework”� Different � Codified Knowledge� Relationship to EA� How to scale
� “Analysis Paralysis”� Is it realistic� Is it current?� Familiarity
© 2011 Everware-CBDI IncV1.0 03 11 www.everware-cbdi.com14
Service Oriented Application ModernizationGetting from here to there
� Use of existing assets for Modernization to SOA� Use of knowledge contained in existing assets and people
� Potential direct use of assets
� Why?� Modernization is an opportunity to strategically position the portfolio
� restructure to SOA
� preserve knowledge
� facilitate future change
� put the ‘bonus’ multipliers in place
� Modernization without restructuring is just re-platforming (same problems, new technology)
� Modernization leverages current skills and knowledge
� Modernization can be done iteratively easing the transition
© 2011 Everware-CBDI IncV1.0 03 11 www.everware-cbdi.com15
Application Modernization Strategy
� Integrated portfolio management coordinating SOA with replacement and refactoring � Twin track solutions and services� “Meet in the middle” service growth� Baseline and iteration vs big bang
� Pattern based analysis, architecture, design and transformation� Functional equivalence vs implementation equivalence� Functional redundancy / duplication vs functional congruency –
encapsulate similarities as reusable capabilities
� Selective automation (reverse and forward engineering)� Model Driven forward engineering
© 2011 Everware-CBDI IncV1.0 03 11 www.everware-cbdi.com
CBDI-SAE Application Modernization Framework
16
OrganizationArchitectureGovernanceProcess & ToolsDelivery MgtQuality MgtChange Mgt
BusinessArchitecture
SpecificationArchitecture
ImplementationArchitecture
Technology Architecture
DeploymentArchitecture
EvolveDeliverAnalyzeAssess Plan
© 2011 Everware-CBDI IncV1.0 03 11 www.everware-cbdi.com17
CBDI-SAE Process Model (SOAM)
SolutionAssembly/
Implementation
BusinessModeling
ServiceImplementation
BusinessImprovement
SolutionArchitecture &
Design
Legacy to ServiceReengineering
SolutionProvisioning
ServiceProvisioning
Solution/ServiceDeployment
Solution/ServicePlatform Design
& InstallationEnable
Solution/ServicePlatform
Architecture
Solution/Service Operations & Management
Modernization Change Management
SOA Quality ManagementManage
SOA Delivery Management
Consume
Provide
Information Architecture
Service OrientedArchitecture
& Design
ApplicationModernization
Planning
Legacy Application Reengineering
SOA Governance
SOA Adoption & Excellence
Knowledge Discovery
© 2011 Everware-CBDI IncV1.0 03 11 www.everware-cbdi.com
Typical Iteration (“Sprint”) Process
Sprint Planning (team)• Identify and prioritize functional scope and objectives• Assign resources and tasks• Establish sprint schedule, delivery goals
Sprint Infrastructure Install environment upgrades and adaptations, Ensure required COTS, legacy & service availability
Sprint Architecture• Extend and detail data & functional architecture• Select patterns, services & design elements• Model business process/workflow
User/SME Support for analysis, design, QA, Prioritization
Sprint MDA/MDD• Create/Extend/Refactor models• Generate/Compile code artifacts• Generate test artifacts • Initial unit and integration testing
Sprint Analysis• Define data and process• Map data flow thru layers• Identify & detail business rules• Detail new service methods/signatures• Mock UI Interaction Sprint Implementation
• Extend generated codebase• Implement remaining business rules• Customize user interface• Perform unit and integration testing
Sprint Test/QA• Prepare and perform functional tests• Perform integration/regression tests• Document and Track test results• Certify requirements completion
Iterate as Needed
Sprint Management Monitor Sprint, Manage internal and external blocks, Re-prioritize activity, Constant communication of tracking to goals
Sprint Review (team)• Identify enabling aspects and blocking aspects• Define sprint process improvements• Define service solution improvements (team perspective)
2 to 4 week duration
© 2011 Everware-CBDI IncV1.0 03 11 www.everware-cbdi.com19
SOAM Case Study 1: In-situ restructuring
� Scenario Large Banking organization restructure merges all lending divisions exposing redundant solutions and inconsistent processes and rules.
� Drivers� “Lending is lending” - a suite of common rule based lending services is desired� Cost containment, Time to market
� Modernization Context
Personal Lending
Mortgage Lending
Student Lending
Commercial Lending
Credit Bureau
Lending
Credit Bureau
© 2011 Everware-CBDI IncV1.0 03 11 www.everware-cbdi.com20
SOAM Case Study 1: In-situ restructuring
� Execution� Iteration by Use Case service needs� Survey ‘best available provider’ of service need� Exposed service proxies from refactored legacy� New web functionality built consumes strategic service proxies via ESB
� Project Outcome� Lending Services suite harvested from existing legacy � New solution functionality requires only view controller layers and is built using
strategic interfaces� When legacy is retired, consumers will experience no change (strategic interfaces)
� Consider this if…� Legacy solution has the functionality in some form� The legacy transactions can technically be exposed to SOA� You have legacy skills� You need to minimize the entry costs to SOA � The persistence layer can’t be changed
© 2011 Everware-CBDI IncV1.0 03 11 www.everware-cbdi.com21
SOAM Case Study 2: Portfolio pathfinder
� Scenario Large Home Improvement retailer wants to modernize from monolithic mainframe based applications to distributed SOA. Data schemas must (initially) remain unchanged to be shared by legacy and the new services as a transitional tactic. The pathfinder is performed on a portion of the portfolio
� Drivers� Burning platform (technology, skills)� Duplication of functionality (clone and own), widespread data level coupling
� Modernization Context
Logistics
Location Management
© 2011 Everware-CBDI IncV1.0 03 11 www.everware-cbdi.com22
SOAM Case Study 2: Portfolio pathfinder� Execution
� Two distinct (business and technical) solutions in the portfolio � Reverse engineer to UML models for SOAM� Pattern based analysis� Forward engineered using MDD
� Outcome� A part of the portfolio (+- 5%) has been modernized in a 12 week duration� Path forward defined in terms of model driven approach, SOA architecture, effort
and cost� Several common utility and core services have been provisioned and deployed
� Consider this if…� You perceive redundancy in your portfolio� You need to prove a business case� You need real data to plan your portfolio modernization � You need to prove the approach against a heterogeneous portfolio� You want to establish a framework for modernization using a slice of the portfolio
© 2011 Everware-CBDI IncV1.0 03 11 www.everware-cbdi.com23
SOAM Case Study 3: BP Modernization
� Scenario Government Agency modernizes a key business process with an SOA solution that maximizes the use of COTS components while minimizing vendor lock in and providing presentation channel openness. No desire to start from first principles, legacy has all the required information.
� Drivers� Optimization of the business process (cost containment, process pendency)� Reduce vendor dependency through SOA and standards
� Modernization Context
Business Process
COTSG2C
Case Mgt
Content
Mgt
COTS
© 2011 Everware-CBDI IncV1.0 03 11 www.everware-cbdi.com24
SOAM Case Study 3: BP Modernization
� Execution� BPMN Models and User stories are Product Backlog� Combination of COTS and Model Driven Agile integrating via SOA� Candidate Services and COTS components identified � Agile Model driven approach 4X 4 week Sprints� Services and Solution generated from UML models and enriched solution UML
� Project Outcome� 42 user stories, 2 portals (75 web pages total), 29 services, 5 COTS products (excl.
platform),� Model based SOA facilitated smooth integration and rapid refactoring
� Consider this if…� You have funding and buy in around a specific set of business processes� Your core business processes need to be modernized (process and/or
implementation)� The business process may include parts that could be useful services to others� The business process is large grained and can be restructured to leverage services
© 2011 Everware-CBDI IncV1.0 03 11 www.everware-cbdi.com25
Summary
� 25 point plan requires comprehensive action to achieve inflection• Make IT more cost effective• Provide better more responsive support to the business/mission• Reduce the risk and cycle-time of IT development programs• Reduce redundancy and improve consistency through reuse
� Modernization efforts are a unique opportunity to position for the future while addressing the OMB 25 point plan
� The flexible modernization framework presented combines Agile, SOA and MDA to optimize the modernization path based on your business requirements
© 2011 Everware-CBDI IncV1.0 03 11 www.everware-cbdi.com26
Specialists in Service Oriented Application Modernization
www.everware-cbdi.com
Denzil [email protected]