What We Do: A Real Framework for a Service Oriented World Methods – Solution Architecture Joel...
-
Upload
bailey-latus -
Category
Documents
-
view
218 -
download
2
Transcript of What We Do: A Real Framework for a Service Oriented World Methods – Solution Architecture Joel...
What We Do:A Real Framework for a Service Oriented WorldMethods – Solution ArchitectureJoel Jeffery, Capgemini
Agenda
• Background
• Focus on Frameworks
• Futures
Background
• Why we do it
• What we do
• Where we’re going with it
Why We Do It
Reduce Project Start-Up Costs
Achieve Quantifiable Reuse
De-Risk On Shore and Off Shore Projects
Get to the Fun Bit Quicker
What We Do
• Capgemini Integrated Architecture Framework (IAF)• Enterprise and Solution Architectural Patterns
• ZIFA / Zachman
• TOGAF
• Model Driven Architecture (MDA)• Schema First Design
• Domain Specific Language
• Frameworks and Code Generation• Capgemini Development and Architectural Framework
(CDAF)
• Capgemini Message Service Helper Framework (MeSH)
Where We’re Going With It
2002 2003 2004 2005 2006 2007
2003Workflow Engines
2002eForms Renderers
2004CDAF v1
2005CDAF v3
2005
EnterpriseWeb Accellerator
Today
2005MeSH
2001Call Centre Apps
2006DSL for VS.NET
2007
Smart Client Baseline Architecture
Toolkit Integration
2007UI Generation:
Web, Desktop, Infopath
2003 - 2008CDAF Toolset
CDAF Roadmap
2006Open Source Tools
Focus on Frameworks
• Capgemini Integrated Architecture Framework (IAF)
• Capgemini Development and Architectural Framework (CDAF)
• Capgemini Messaging Framework (MeSH)
Capgemini Integrated Architecture Framework (IAF)
Integrated Architecture Framework, version 3.9, Copyright © 2000-2006 Capgemini
CDAF Architectural Reference Model
Cross Layer
Data Abstraction Layer
Business Layer
Presentation/Service Layer
(User) Interface
(User) Interface Process
Business Process
Business Component
Data Transfer Objects
Business Entity Helper
Validation Component
Logging and Exception H
andling
Validation R
ules
Com
munications
Business Controlled Transaction
Data Application Block(SQL Helper)
Security
Data Transfer Object Management
Data Store
Database DatabaseDatabase
web.config/app.config
ASPX
Pages
.NET Smart Client.NET Smart Client
Use Case #1
Use Case #2
Use Case #3
For Use Case #1, #2
For Use Case #1, #3
Validation Component
Validation Rules
No (GU)I Primitives!
No Lazy Layering!
Stateful
Stateful
Static
Static
CDAF Architectural Reference Model, version 3.0, Copyright © 2003-2006 Capgemini
N-Tier Scenario
Presentation Tier
Cross Layer
Data Abstraction Layer
Business Layer
Presentation Layer
User Interface
User Interface Process
Business Process
Business Component
Data Transfer Objects
Business Entity Helper
Validation Component
Logging and Exception H
andling
Validation R
ules
Com
munications
Business Controlled Transaction
Data Application Block(SQL Helper)
Security
Data Transfer Object Management
Data Store
Database
Middle Tier
Cross Layer
Data Abstraction Layer
Business Layer
Service Layer
Interface
Interface Process
Business Process
Business Component
Data Transfer Objects
Business Entity Helper
Validation Component
Logging and Exception H
andling
Validation R
ules
Com
munications
Business Controlled Transaction
Data Application Block(SQL Helper)
Security
Data Transfer Object Management
Façade
Data Tier
Data Store
Database DatabaseDatabase
Presentation Middle Data
ESB Scenario
Enterprise Service Bus
Service
Cross Layer
Data Abstraction Layer
Business Layer
Service Layer
Interface
Interface Process
Business Process
Business Component
Data Transfer Objects
Business Entity Helper
Validation Component
Logging and Exception H
andling
Validation R
ules
Com
munications
Business Controlled Transaction
Data Application Block
(SQL Helper)
Security
Data Transfer Object Management
Data Store
Database
Façade
Service
Cross Layer
Data Abstraction Layer
Business Layer
Service Layer
Interface
Interface Process
Business Process
Business Component
Data Transfer Objects
Business Entity Helper
Validation Component
Logging and Exception H
andling
Validation R
ules
Com
munications
Business Controlled Transaction
Data Application Block
(SQL Helper)
Security
Data Transfer Object Management
Data Store
Database
Façade
Service
Cross Layer
Data Abstraction Layer
Business Layer
Service Layer
Interface
Interface Process
Business Process
Business Component
Data Transfer Objects
Business Entity Helper
Validation Component
Logging and Exception H
andling
Validation R
ules
Com
munications
Business Controlled Transaction
Data Application Block
(SQL Helper)
Security
Data Transfer Object Management
Data Store
Database
Façade
Presentation Tier
Cross Layer
Data Abstraction Layer
Business Layer
Presentation Layer
User Interface
User Interface Process
Business Process
Business Component
Data Transfer Objects
Business Entity Helper
Validation Component
Lo
ggin
g an
d E
xcep
tion
Han
dlin
g
Va
lidatio
n R
ule
s
Com
mu
nica
tion
s
Business Controlled Transaction
Data Application Block(SQL Helper)
Se
curity
Data Transfer Object Management
Data Store
Database
Façade
Service #1 Service #2 Service #3
Desktop
Capgemini MeSH - Messaging Framework
• Abstracts away WSE or WCF
• Simple interface
• Chained together
• Composable at Deploy Time (.config)
• Top of the 'CDAF Stack' for Services
Capgemini MeSH – Chain of Responsibility
• Implemented with the 'Chain of Responsibility' pattern
• Definition (GoF) –• 'Avoid coupling the sender of a request to its receiver by giving
more than one object a chance to handle the request. Chain the receiving objects and pass the request along the chain until an object handles it.'
Client Handler
ConcreteHandlerA ConcreteHandlerB successor
Capgemini MeSH – Pipes and Filters
• Based on the Pipes and Filters pattern• See 'Enterprise Integration Patterns'
• By Gregor Hohpe & Bobby Woolf - Addison Wesley
• Definition –• 'Use the Pipes and Filters architectural style to divide a larger
processing task into a sequence of smaller, independent processing steps (Filters) that are connected by channels (Pipes).'
Decrypt Authenticate De-Dupe Pipe PipePipe Pipe
filter filter filter
1312 1231231 1
1
1
3
2
CDAF v4.0 Tools - Screenshot
TemplateView
GeneratedCode
InferredSchema
TemplateSettings
Where We’re Going With It
• Visual Studio 2005 Integration
• Domain Specific Language (DSL)• Entity Definition
• Builds Database, DAL, CRUD Screens
• UI Generation• Web Application
• Desktop Application
• Infopath Interoperability
• Smart Client Baseline Architecture Toolkit Integration
Special Thanks
• Drew Jones
• James Speer
• Alan Greensill
• Simon Ince
• Paul Good
• Jon Harper
• Mario Ribeiro
Contact
• mailto:[email protected]
• MSN:[email protected]
• tinyurl.com/p6sbu CDAF Press Release
• tinyurl.com/rzcxb Capgemini IAF and SOA