EMEA. 2 Aligning design, development and operational constraints in building complex IT systems....
-
Upload
darcy-mcdonald -
Category
Documents
-
view
216 -
download
0
Transcript of EMEA. 2 Aligning design, development and operational constraints in building complex IT systems....
![Page 1: EMEA. 2 Aligning design, development and operational constraints in building complex IT systems. Gianpaolo Carraro Architect Developer and Platform Group.](https://reader036.fdocuments.us/reader036/viewer/2022062409/5697bfaf1a28abf838c9d2c3/html5/thumbnails/1.jpg)
EMEAEMEA
![Page 2: EMEA. 2 Aligning design, development and operational constraints in building complex IT systems. Gianpaolo Carraro Architect Developer and Platform Group.](https://reader036.fdocuments.us/reader036/viewer/2022062409/5697bfaf1a28abf838c9d2c3/html5/thumbnails/2.jpg)
EMEAEMEA
22
Aligning design, development and Aligning design, development and operational constraints in building operational constraints in building complex IT systems.complex IT systems.
Gianpaolo CarraroArchitect Developer and Platform GroupMicrosoft Europe, Middle East and Africa
![Page 3: EMEA. 2 Aligning design, development and operational constraints in building complex IT systems. Gianpaolo Carraro Architect Developer and Platform Group.](https://reader036.fdocuments.us/reader036/viewer/2022062409/5697bfaf1a28abf838c9d2c3/html5/thumbnails/3.jpg)
EMEAEMEA33
"What do you mean it doesn't run in production? It runs fine on my machine?!"
— Anonymous developer
![Page 4: EMEA. 2 Aligning design, development and operational constraints in building complex IT systems. Gianpaolo Carraro Architect Developer and Platform Group.](https://reader036.fdocuments.us/reader036/viewer/2022062409/5697bfaf1a28abf838c9d2c3/html5/thumbnails/4.jpg)
EMEAEMEA44
Aligning constraints issues (example)Aligning constraints issues (example)
Develop software componentsMeet functional requirements
Maintain servers and networkMeet operational requirements
Application Development Team
System Infrastructure Team
Tension
Deployment
They talk about:
Components
Services
Layers
They talk about:
Components
Services
Layers
They talk about:
Clusters, Farms
Firewalls
Load Balancing
They talk about:
Clusters, Farms
Firewalls
Load Balancing
![Page 5: EMEA. 2 Aligning design, development and operational constraints in building complex IT systems. Gianpaolo Carraro Architect Developer and Platform Group.](https://reader036.fdocuments.us/reader036/viewer/2022062409/5697bfaf1a28abf838c9d2c3/html5/thumbnails/5.jpg)
EMEAEMEA55
SummarySummary
Building Service Oriented Applications is complex
Complexity is added due to interaction of (often) independent teams.
Modeling languages and visual tools: have to potential to greatly reduce complexity highly facilitate the alignment of design,
development and operational constraints in building complex IT systems
![Page 6: EMEA. 2 Aligning design, development and operational constraints in building complex IT systems. Gianpaolo Carraro Architect Developer and Platform Group.](https://reader036.fdocuments.us/reader036/viewer/2022062409/5697bfaf1a28abf838c9d2c3/html5/thumbnails/6.jpg)
EMEAEMEA66
Building Service Oriented Applications is complex
![Page 7: EMEA. 2 Aligning design, development and operational constraints in building complex IT systems. Gianpaolo Carraro Architect Developer and Platform Group.](https://reader036.fdocuments.us/reader036/viewer/2022062409/5697bfaf1a28abf838c9d2c3/html5/thumbnails/7.jpg)
EMEAEMEA77
Automate business processesAutomate business processesValue chains with partnersValue chains with partnersCustomer and supplier self service Customer and supplier self service Improve ROI of ITImprove ROI of ITLower operating costsLower operating costsCut time to marketCut time to market
New Business RequirementsNew Business Requirements
![Page 8: EMEA. 2 Aligning design, development and operational constraints in building complex IT systems. Gianpaolo Carraro Architect Developer and Platform Group.](https://reader036.fdocuments.us/reader036/viewer/2022062409/5697bfaf1a28abf838c9d2c3/html5/thumbnails/8.jpg)
EMEAEMEA88
New Application ArchitectureNew Application ArchitectureAutomate business processesAutomate business processesImprove ROI of ITImprove ROI of ITLower operating costsLower operating costsCut time to marketCut time to marketValue chains with partnersValue chains with partnersCustomer and supplier self serviceCustomer and supplier self serviceService oriented architectureService oriented architecture
Web Services, messaging, contractsWeb Services, messaging, contractsSecuritySecurityCaching and state managementCaching and state managementDeployment policies & constraintsDeployment policies & constraintsHeterogeneous platformsHeterogeneous platforms
![Page 9: EMEA. 2 Aligning design, development and operational constraints in building complex IT systems. Gianpaolo Carraro Architect Developer and Platform Group.](https://reader036.fdocuments.us/reader036/viewer/2022062409/5697bfaf1a28abf838c9d2c3/html5/thumbnails/9.jpg)
EMEAEMEA99
Evolving Platform TechnologyEvolving Platform TechnologyAutomate business processesAutomate business processesImprove ROI of ITImprove ROI of ITLower operating costsLower operating costsCut time to marketCut time to marketValue chains with partnersValue chains with partnersCustomer and supplier self serviceCustomer and supplier self serviceService oriented architectureService oriented architectureMessaging and protocolsMessaging and protocolsSecuritySecurityCaching and state managementCaching and state managementDeployment policies & constraintsDeployment policies & constraintsHeterogeneous platformsHeterogeneous platforms
Application Servers and standardsApplication Servers and standardsSchemas and databasesSchemas and databasesCode and attributesCode and attributesConfiguration filesConfiguration filesProject structuresProject structuresPhysical server configurationsPhysical server configurations
![Page 10: EMEA. 2 Aligning design, development and operational constraints in building complex IT systems. Gianpaolo Carraro Architect Developer and Platform Group.](https://reader036.fdocuments.us/reader036/viewer/2022062409/5697bfaf1a28abf838c9d2c3/html5/thumbnails/10.jpg)
EMEAEMEA1010
ComplexityComplexityAutomate business processesAutomate business processesValue chains with partnersValue chains with partnersCustomer and supplier self service Customer and supplier self service Improve ROI of ITImprove ROI of ITLower operating costsLower operating costsCut time to marketCut time to marketService oriented architectureService oriented architectureWeb Services, messaging, contractsWeb Services, messaging, contractsSecuritySecurityCaching and state managementCaching and state managementDeployment policies & constraintsDeployment policies & constraintsHeterogeneous platformsHeterogeneous platformsApplication servers & standardsApplication servers & standardsSchemas and databasesSchemas and databasesCode and attributesCode and attributesConfiguration filesConfiguration filesProject structuresProject structuresPhysical server configurationsPhysical server configurations
??
![Page 11: EMEA. 2 Aligning design, development and operational constraints in building complex IT systems. Gianpaolo Carraro Architect Developer and Platform Group.](https://reader036.fdocuments.us/reader036/viewer/2022062409/5697bfaf1a28abf838c9d2c3/html5/thumbnails/11.jpg)
EMEAEMEA1111
Where Does Complexity Arise?Where Does Complexity Arise?
??
package com.microsoftpearlcircle.auction.auctionmanager.business.auctionmanager;import java.rmi.RemoteException;import java.util.Vector;
package com.microsoftpearlcircle.auction.auctionmanager.business.auctionmanager;import java.rmi.RemoteException;import java.util.Vector;
High Level ConceptsHigh Level Concepts
«entity»Auction
+ categoryUid : String+ creditCardAccount : String+ creditCardExpiration : Long+ creditCardName : String+ creditCardType : String+ endTime : Long+ itemUid : String+ minimumBidIncrement : Float+ sellerUid : String+ startingPrice : Float+ startTime : Long+ status : String+ timezoneUid : String+ uid : String
+ setValues ( )+ getValues ( )
«entity»Bid
+ amount : Float+ auctionUid : String+ buyerUid : String+ cancelExplanation : String+ date : Long+ status : String+ uid : String
«entity»Seller
«entity»User
+ address : String+ city : String+ country : String+ email : String+ groupId : String+ password : String+ secretNumber : Integer+ state : String+ status : String+ uid : String+ userId : String+ zip : String
«entity»Buyer
«entity»Credit Card
+ accountNumber : String+ cardType : String+ expirationDate : Long+ nameOnCard : String+ uid : String+ userUid : String+ setValues ( )+ getValues ( )
1 1...
0..11
1..*
«derived»
0..1
1
Low-level Implementation languages
Low-level Implementation languages
![Page 12: EMEA. 2 Aligning design, development and operational constraints in building complex IT systems. Gianpaolo Carraro Architect Developer and Platform Group.](https://reader036.fdocuments.us/reader036/viewer/2022062409/5697bfaf1a28abf838c9d2c3/html5/thumbnails/12.jpg)
EMEAEMEA1212
Abstraction Decreases ComplexityAbstraction Decreases Complexity
Assembler, Pcode, Assembler, Pcode, CLR ILCLR IL
Bytecode or Bytecode or machine machine languageslanguages
Bytecode or Bytecode or machine machine languageslanguages
General Purpose General Purpose AbstractionsAbstractionsGeneral Purpose General Purpose AbstractionsAbstractionsC#, Java, etcC#, Java, etc
Domain Specific Domain Specific AbstractionsAbstractionsDomain Specific Domain Specific AbstractionsAbstractions
FrameworksFrameworksE.g. ASP.NetE.g. ASP.Net
Domain Specific Domain Specific FrameworksFrameworksDomain Specific Domain Specific FrameworksFrameworks
![Page 13: EMEA. 2 Aligning design, development and operational constraints in building complex IT systems. Gianpaolo Carraro Architect Developer and Platform Group.](https://reader036.fdocuments.us/reader036/viewer/2022062409/5697bfaf1a28abf838c9d2c3/html5/thumbnails/13.jpg)
EMEAEMEA1313
DomainDomain SpecificSpecific Modeling Language Modeling Language(a definition)(a definition)
Domain Specific AbstractionsNarrow ScopeGraphicalHighly ExpressiveCoarse-grained abstractionsMay be translated into
General purpose programming languages Specific framework completion Other modeling languages
![Page 14: EMEA. 2 Aligning design, development and operational constraints in building complex IT systems. Gianpaolo Carraro Architect Developer and Platform Group.](https://reader036.fdocuments.us/reader036/viewer/2022062409/5697bfaf1a28abf838c9d2c3/html5/thumbnails/14.jpg)
EMEAEMEA1414
A “case study” building a “connected” system using with Web Services
![Page 15: EMEA. 2 Aligning design, development and operational constraints in building complex IT systems. Gianpaolo Carraro Architect Developer and Platform Group.](https://reader036.fdocuments.us/reader036/viewer/2022062409/5697bfaf1a28abf838c9d2c3/html5/thumbnails/15.jpg)
EMEAEMEA1515
Where Does Complexity Arise?Where Does Complexity Arise?
??
package com.microsoftpearlcircle.auction.auctionmanager.business.auctionmanager;import java.rmi.RemoteException;import java.util.Vector;
package com.microsoftpearlcircle.auction.auctionmanager.business.auctionmanager;import java.rmi.RemoteException;import java.util.Vector;
High Level Concepts
ActivitiesMessagesSecurityReuseComponentsProtocols
High Level Concepts
ActivitiesMessagesSecurityReuseComponentsProtocols
«entity»Auction
+ categoryUid : String+ creditCardAccount : String+ creditCardExpiration : Long+ creditCardName : String+ creditCardType : String+ endTime : Long+ itemUid : String+ minimumBidIncrement : Float+ sellerUid : String+ startingPrice : Float+ startTime : Long+ status : String+ timezoneUid : String+ uid : String
+ setValues ( )+ getValues ( )
«entity»Bid
+ amount : Float+ auctionUid : String+ buyerUid : String+ cancelExplanation : String+ date : Long+ status : String+ uid : String
«entity»Seller
«entity»User
+ address : String+ city : String+ country : String+ email : String+ groupId : String+ password : String+ secretNumber : Integer+ state : String+ status : String+ uid : String+ userId : String+ zip : String
«entity»Buyer
«entity»Credit Card
+ accountNumber : String+ cardType : String+ expirationDate : Long+ nameOnCard : String+ uid : String+ userUid : String+ setValues ( )+ getValues ( )
1 1...
0..11
1..*
«derived»
0..1
1
Low-level Implementation languages
Low-level Implementation languages
![Page 16: EMEA. 2 Aligning design, development and operational constraints in building complex IT systems. Gianpaolo Carraro Architect Developer and Platform Group.](https://reader036.fdocuments.us/reader036/viewer/2022062409/5697bfaf1a28abf838c9d2c3/html5/thumbnails/16.jpg)
EMEAEMEA1616
.asmx files .asmx code behinds source code Statements and attributes
XML ConfigurationFiles and schemas(e.g. WSDL files)
Project Files and templates
Deployment PoliciesAnd Packages
??
«entity»Auction
+ categoryUid : String+ creditCardAccount : String+ creditCardExpiration : Long+ creditCardName : String+ creditCardType : String+ endTime : Long+ itemUid : String+ minimumBidIncrement : Float+ sellerUid : String+ startingPrice : Float+ startTime : Long+ status : String+ timezoneUid : String+ uid : String
+ setValues ( )+ getValues ( )
«entity»Bid
+ amount : Float+ auctionUid : String+ buyerUid : String+ cancelExplanation : String+ date : Long+ status : String+ uid : String
«entity»Seller
«entity»User
+ address : String+ city : String+ country : String+ email : String+ groupId : String+ password : String+ secretNumber : Integer+ state : String+ status : String+ uid : String+ userId : String+ zip : String
«entity»Buyer
«entity»Credit Card
+ accountNumber : String+ cardType : String+ expirationDate : Long+ nameOnCard : String+ uid : String+ userUid : String+ setValues ( )+ getValues ( )
1 1...
0..11
1..*
«derived»
0..1
1
Scattered Concepts …Scattered Concepts …
![Page 17: EMEA. 2 Aligning design, development and operational constraints in building complex IT systems. Gianpaolo Carraro Architect Developer and Platform Group.](https://reader036.fdocuments.us/reader036/viewer/2022062409/5697bfaf1a28abf838c9d2c3/html5/thumbnails/17.jpg)
EMEAEMEA1717
.asmx files .asmx code behinds source code Statements and attributes
XML ConfigurationFiles and schemas(e.g. WSDL files)
Project Files and templates
Deployment PoliciesAnd Packages
……Replaced By A Holistic ViewReplaced By A Holistic View
Web Service Interaction DSL
![Page 18: EMEA. 2 Aligning design, development and operational constraints in building complex IT systems. Gianpaolo Carraro Architect Developer and Platform Group.](https://reader036.fdocuments.us/reader036/viewer/2022062409/5697bfaf1a28abf838c9d2c3/html5/thumbnails/18.jpg)
EMEAEMEA1818
Need A Designer InfrastructureNeed A Designer Infrastructure
For a specific aspect of overall development Define a metamodel for the
abstractions Define a graphical notation Define a synchronization engine
![Page 19: EMEA. 2 Aligning design, development and operational constraints in building complex IT systems. Gianpaolo Carraro Architect Developer and Platform Group.](https://reader036.fdocuments.us/reader036/viewer/2022062409/5697bfaf1a28abf838c9d2c3/html5/thumbnails/19.jpg)
EMEAEMEA1919
Simplify Using DSLsSimplify Using DSLs
AssessAssess DesigDesignn
ImplemenImplementt
PlanPlan RunRun
BusinessBusiness
ITIT
Strategic Strategic ObjectivesObjectives
Strategic Strategic ObjectivesObjectives
TechnologyTechnologyArchitectureArchitecture
TechnologyTechnologyArchitectureArchitecture
Business Processes Business Processes and Entitiesand Entities
Business Processes Business Processes and Entitiesand Entities
Logical Logical Data CenterData Center
Logical Logical Data CenterData Center
Physical Physical servers servers and segmentsand segments
Services, Messages, Services, Messages, Contracts, SchedulesContracts, Schedules
Services, Messages, Services, Messages, Contracts, SchedulesContracts, Schedules
XML, Database, Classes,XML, Database, Classes,CodeCode
XML, Database, Classes,XML, Database, Classes,CodeCode
Manual ProceduresManual ProceduresManual ProceduresManual Procedures
Each work Each work product can product can be a be a separate separate modeling modeling languagelanguage
Mappings are Mappings are defined defined between between modeling modeling languageslanguages
![Page 20: EMEA. 2 Aligning design, development and operational constraints in building complex IT systems. Gianpaolo Carraro Architect Developer and Platform Group.](https://reader036.fdocuments.us/reader036/viewer/2022062409/5697bfaf1a28abf838c9d2c3/html5/thumbnails/20.jpg)
EMEAEMEA2020
What’s Inside A Viewpoint?What’s Inside A Viewpoint?
AssessAssess DesigDesignn
ImplemenImplementt
PlanPlan RunRun
BusinessBusiness
ITIT
Strategic Strategic ObjectivesObjectives
Strategic Strategic ObjectivesObjectives
TechnologyTechnologyArchitectureArchitecture
TechnologyTechnologyArchitectureArchitecture
Business Processes Business Processes and Entitiesand Entities
Business Processes Business Processes and Entitiesand Entities
Logical Logical Data CenterData Center
Logical Logical Data CenterData Center
Physical Physical servers servers and segmentsand segments
Services, Messages, Services, Messages, Contracts, SchedulesContracts, Schedules
Services, Messages, Services, Messages, Contracts, SchedulesContracts, Schedules
XML, Database, Classes,XML, Database, Classes,CodeCode
XML, Database, Classes,XML, Database, Classes,CodeCode
Manual ProceduresManual ProceduresManual ProceduresManual Procedures
DSLsDSLsPatternsPatternsProcessesProcessesFrameworksFrameworksComponentsComponentsAspectsAspectsTransformsTransformsConstraintsConstraints
![Page 21: EMEA. 2 Aligning design, development and operational constraints in building complex IT systems. Gianpaolo Carraro Architect Developer and Platform Group.](https://reader036.fdocuments.us/reader036/viewer/2022062409/5697bfaf1a28abf838c9d2c3/html5/thumbnails/21.jpg)
EMEAEMEA2121
What’s Inside A Viewpoint?What’s Inside A Viewpoint?
AssessAssess DesigDesignn
ImplemenImplementt
PlanPlan RunRun
BusinessBusiness
ITIT
Strategic Strategic ObjectivesObjectives
Strategic Strategic ObjectivesObjectives
TechnologyTechnologyArchitectureArchitecture
TechnologyTechnologyArchitectureArchitecture
Business Processes Business Processes and Entitiesand Entities
Business Processes Business Processes and Entitiesand Entities
Logical Logical Data CenterData Center
Logical Logical Data CenterData Center
Physical Physical servers servers and segmentsand segments
Services, Messages, Services, Messages, Contracts, SchedulesContracts, Schedules
Services, Messages, Services, Messages, Contracts, SchedulesContracts, Schedules
XML, Database, Classes,XML, Database, Classes,CodeCode
XML, Database, Classes,XML, Database, Classes,CodeCode
Manual ProceduresManual ProceduresManual ProceduresManual Procedures
![Page 22: EMEA. 2 Aligning design, development and operational constraints in building complex IT systems. Gianpaolo Carraro Architect Developer and Platform Group.](https://reader036.fdocuments.us/reader036/viewer/2022062409/5697bfaf1a28abf838c9d2c3/html5/thumbnails/22.jpg)
EMEAEMEA2222
Example 1Example 1
AssessAssess DesigDesignn
ImplemenImplementt
PlanPlan RunRun
BusinessBusiness
ITIT
Strategic Strategic ObjectivesObjectives
TechnologyTechnologyArchitectureArchitecture
Business Processes Business Processes and Entitiesand Entities
Business Processes Business Processes and Entitiesand Entities
Logical Logical Data CenterData Center
Logical Logical Data CenterData Center
Physical Physical servers servers and segmentsand segments
Services, Messages, Services, Messages, Contracts, SchedulesContracts, Schedules
Services, Messages, Services, Messages, Contracts, SchedulesContracts, Schedules
XML, Database, Classes,XML, Database, Classes,CodeCode
XML, Database, Classes,XML, Database, Classes,CodeCode
Manual ProceduresManual Procedures
![Page 23: EMEA. 2 Aligning design, development and operational constraints in building complex IT systems. Gianpaolo Carraro Architect Developer and Platform Group.](https://reader036.fdocuments.us/reader036/viewer/2022062409/5697bfaf1a28abf838c9d2c3/html5/thumbnails/23.jpg)
EMEAEMEA2323
Dynamic Systems Initiative (DSI)Dynamic Systems Initiative (DSI)
Network Topology& Operating Systems
Hardware
SystemDefinition
ModelApplication
Hosts
Applications
![Page 24: EMEA. 2 Aligning design, development and operational constraints in building complex IT systems. Gianpaolo Carraro Architect Developer and Platform Group.](https://reader036.fdocuments.us/reader036/viewer/2022062409/5697bfaf1a28abf838c9d2c3/html5/thumbnails/24.jpg)
EMEAEMEA2424
Whidbey Solutions…Whidbey Solutions…
A logical data center designer
An application designer
ApplicationHosts
Applications
A system hosting designer
SystemDefinition
Model
![Page 25: EMEA. 2 Aligning design, development and operational constraints in building complex IT systems. Gianpaolo Carraro Architect Developer and Platform Group.](https://reader036.fdocuments.us/reader036/viewer/2022062409/5697bfaf1a28abf838c9d2c3/html5/thumbnails/25.jpg)
EMEAEMEA2525
Introducing codename Whitehorse
![Page 26: EMEA. 2 Aligning design, development and operational constraints in building complex IT systems. Gianpaolo Carraro Architect Developer and Platform Group.](https://reader036.fdocuments.us/reader036/viewer/2022062409/5697bfaf1a28abf838c9d2c3/html5/thumbnails/26.jpg)
EMEAEMEA2626
A DSL In Use TodayA DSL In Use Today Number 1 Design tool in the market!
![Page 27: EMEA. 2 Aligning design, development and operational constraints in building complex IT systems. Gianpaolo Carraro Architect Developer and Platform Group.](https://reader036.fdocuments.us/reader036/viewer/2022062409/5697bfaf1a28abf838c9d2c3/html5/thumbnails/27.jpg)
EMEAEMEA2727
![Page 28: EMEA. 2 Aligning design, development and operational constraints in building complex IT systems. Gianpaolo Carraro Architect Developer and Platform Group.](https://reader036.fdocuments.us/reader036/viewer/2022062409/5697bfaf1a28abf838c9d2c3/html5/thumbnails/28.jpg)
EMEAEMEA2828
![Page 29: EMEA. 2 Aligning design, development and operational constraints in building complex IT systems. Gianpaolo Carraro Architect Developer and Platform Group.](https://reader036.fdocuments.us/reader036/viewer/2022062409/5697bfaf1a28abf838c9d2c3/html5/thumbnails/29.jpg)
EMEAEMEA2929
![Page 30: EMEA. 2 Aligning design, development and operational constraints in building complex IT systems. Gianpaolo Carraro Architect Developer and Platform Group.](https://reader036.fdocuments.us/reader036/viewer/2022062409/5697bfaf1a28abf838c9d2c3/html5/thumbnails/30.jpg)
EMEAEMEA3030
![Page 31: EMEA. 2 Aligning design, development and operational constraints in building complex IT systems. Gianpaolo Carraro Architect Developer and Platform Group.](https://reader036.fdocuments.us/reader036/viewer/2022062409/5697bfaf1a28abf838c9d2c3/html5/thumbnails/31.jpg)
EMEAEMEA3131
Demo (movie)Demo (movie)
From PDC Session: TLS345(available at http://sitestream.microsoft.com/pdc2003)
![Page 32: EMEA. 2 Aligning design, development and operational constraints in building complex IT systems. Gianpaolo Carraro Architect Developer and Platform Group.](https://reader036.fdocuments.us/reader036/viewer/2022062409/5697bfaf1a28abf838c9d2c3/html5/thumbnails/32.jpg)
EMEAEMEA3232
Patterns, Aspects And Transforms Patterns, Aspects And Transforms
Web Interaction Patterns Service Interface Gateway Façade
Logical System Architecture Patterns MSA Patterns
IDC, EDC Layered Architecture Patterns
Aspects Transactions Security
Transformations Validate against deployment infrastructure Transform into implementation artifacts
![Page 33: EMEA. 2 Aligning design, development and operational constraints in building complex IT systems. Gianpaolo Carraro Architect Developer and Platform Group.](https://reader036.fdocuments.us/reader036/viewer/2022062409/5697bfaf1a28abf838c9d2c3/html5/thumbnails/33.jpg)
EMEAEMEA3333
Applying A Service Façade PatternApplying A Service Façade Pattern
Policy Policy ManagementManagement
Customer Customer ManagementManagement
Customer Customer Self-ServiceSelf-Service
Service Facade PatternService Facade Pattern
Facade
Messages
Service
Selected Messages
Project StructuresReferencesDefault XSD schemasSecurity PolicyAccess PolicyPass-thru Logic & Filters
Customer Customer Mgmt Mgmt
FacadeFacade
![Page 34: EMEA. 2 Aligning design, development and operational constraints in building complex IT systems. Gianpaolo Carraro Architect Developer and Platform Group.](https://reader036.fdocuments.us/reader036/viewer/2022062409/5697bfaf1a28abf838c9d2c3/html5/thumbnails/34.jpg)
EMEAEMEA3434
PatternsPatterns
Physical architectureLogical architecture
![Page 35: EMEA. 2 Aligning design, development and operational constraints in building complex IT systems. Gianpaolo Carraro Architect Developer and Platform Group.](https://reader036.fdocuments.us/reader036/viewer/2022062409/5697bfaf1a28abf838c9d2c3/html5/thumbnails/35.jpg)
EMEAEMEA3535
Deployment patternsDeployment patterns
Architecture
Design
Implementation
InfrastructureDeploymentApplicationData
Simple WebSimple Web
Complex WebComplex Web
Rich clientRich client
Extended enterpriseExtended enterprise
4-Tier4-Tier3-Tier3-Tier
TieredTiereddistributiondistribution
LayeredLayeredservicesservices
applicationapplication
Layered applicationLayered applicationLayered applicationLayered application
Three-Three-layeredlayered
applicationapplication
![Page 36: EMEA. 2 Aligning design, development and operational constraints in building complex IT systems. Gianpaolo Carraro Architect Developer and Platform Group.](https://reader036.fdocuments.us/reader036/viewer/2022062409/5697bfaf1a28abf838c9d2c3/html5/thumbnails/36.jpg)
EMEAEMEA3636
Deployment PlanDeployment PlanSolution: Simple Web ApplicationSolution: Simple Web Application
BCClients DACUIPUIC Data Sources
Web Clients Web Application Farm Database Clusters
![Page 37: EMEA. 2 Aligning design, development and operational constraints in building complex IT systems. Gianpaolo Carraro Architect Developer and Platform Group.](https://reader036.fdocuments.us/reader036/viewer/2022062409/5697bfaf1a28abf838c9d2c3/html5/thumbnails/37.jpg)
EMEAEMEA3737
Solution: Extended Enterprise ApplicationSolution: Extended Enterprise Application
BCClients DACUIPUIC Data Sources
Web Clients Web Farm Database ClustersApplication Farm
SASI
Deployment PlanDeployment Plan
![Page 38: EMEA. 2 Aligning design, development and operational constraints in building complex IT systems. Gianpaolo Carraro Architect Developer and Platform Group.](https://reader036.fdocuments.us/reader036/viewer/2022062409/5697bfaf1a28abf838c9d2c3/html5/thumbnails/38.jpg)
EMEAEMEA3838
Solution: Smart Client ApplicationSolution: Smart Client ApplicationDeployment PlanDeployment Plan
BC DACUIPUIC Data Sources
Smart Clients Web Farm Database ClustersApplication Farm
SASI
![Page 39: EMEA. 2 Aligning design, development and operational constraints in building complex IT systems. Gianpaolo Carraro Architect Developer and Platform Group.](https://reader036.fdocuments.us/reader036/viewer/2022062409/5697bfaf1a28abf838c9d2c3/html5/thumbnails/39.jpg)
EMEAEMEA3939
Aspect Weaving – Instrumentation Aspect Weaving – Instrumentation
Policy Policy ManagementManagement
Customer Customer ManagementManagement
Customer Customer Self-ServiceSelf-Service
Instrumentation AspectInstrumentation Aspect
Framework
Call Structure
Pointcut
Pointcut
Pointcut
Pointcut
Pointcut
Pointcut
Code
Aspect
Aspect
Aspect
![Page 40: EMEA. 2 Aligning design, development and operational constraints in building complex IT systems. Gianpaolo Carraro Architect Developer and Platform Group.](https://reader036.fdocuments.us/reader036/viewer/2022062409/5697bfaf1a28abf838c9d2c3/html5/thumbnails/40.jpg)
EMEAEMEA4040
Making Use Of MetadataMaking Use Of Metadata
Metadata collected in DSLs can be made available across the life cycle Source control systems Debuggers Testing Tools Compilers and language editors
![Page 41: EMEA. 2 Aligning design, development and operational constraints in building complex IT systems. Gianpaolo Carraro Architect Developer and Platform Group.](https://reader036.fdocuments.us/reader036/viewer/2022062409/5697bfaf1a28abf838c9d2c3/html5/thumbnails/41.jpg)
EMEAEMEA4141
Enterprise Design ToolsEnterprise Design Tools
Build an initial set of model-driven development tools supporting DSLs Focused on specific development tasks With hi-fidelity, continuously synchronized mappings to code or other models
Expand and integrate model data throughout life cycle tools Productize and promote underlying tool-building frameworks and tools
Goal: Simplify design and deployment of SOA’s
![Page 42: EMEA. 2 Aligning design, development and operational constraints in building complex IT systems. Gianpaolo Carraro Architect Developer and Platform Group.](https://reader036.fdocuments.us/reader036/viewer/2022062409/5697bfaf1a28abf838c9d2c3/html5/thumbnails/42.jpg)
EMEAEMEA4242
DSL’s SupportedDSL’s Supported
Rich support for designing and constructing connected applications from Web services
Designing WS for operational deployment Logical infrastructure requirements considered
early – inform and constrain developers Verify application settings against logical
infrastructure
![Page 43: EMEA. 2 Aligning design, development and operational constraints in building complex IT systems. Gianpaolo Carraro Architect Developer and Platform Group.](https://reader036.fdocuments.us/reader036/viewer/2022062409/5697bfaf1a28abf838c9d2c3/html5/thumbnails/43.jpg)
EMEAEMEA4343
ReviewReview
Modeling languages can help reduce complexity Domain-specific abstractions Holistic view of scattered concepts
Modeling languages create “the link” among (i.e. align) constraints
Extensibility is very important Implementing DSLs can be made effective
with the right underlying engine Microsoft is working to improve Web service
design and deployment scenarios
![Page 44: EMEA. 2 Aligning design, development and operational constraints in building complex IT systems. Gianpaolo Carraro Architect Developer and Platform Group.](https://reader036.fdocuments.us/reader036/viewer/2022062409/5697bfaf1a28abf838c9d2c3/html5/thumbnails/44.jpg)
EMEAEMEA4444
Further InformationFurther Information
Whitepapers on MSDN, Visual Studio Enterprisehttp://msdn.microsoft.com/vstudio/enterprise
![Page 45: EMEA. 2 Aligning design, development and operational constraints in building complex IT systems. Gianpaolo Carraro Architect Developer and Platform Group.](https://reader036.fdocuments.us/reader036/viewer/2022062409/5697bfaf1a28abf838c9d2c3/html5/thumbnails/45.jpg)
EMEAEMEA
Please complete your sessionfeedback form
THANK YOU
Please complete your sessionfeedback form
THANK YOU