Microsoft Architectural Frameworks Informational Session & Discussion
40 Slides3.47 MB
Microsoft Architectural Frameworks Informational Session & Discussion Gurpreet S. Pall Sr. Director D&PE Architecture Strategy Microsoft Corporation
Agenda Why architecture, enterprise architecture Industry models Microsoft models Example - using models to deliver artifacts Microsoft platform value Microsoft Operations Framework Microsoft Architectural Framework – proposal ---------------------------------------------------------- Discussion – 15-20 minutes
The Need of Architecture The Winchester “Mystery” House 38 years of construction – 147 builders 0 architects 160 rooms – 40 bedrooms, 6 kitchens, 2 basements, 950 doors 65 doors to blank walls, 13 staircases abandoned, 24 skylights in floors No architectural blueprint exists
Why Enterprise Architecture IT costs too much Costs of managing complexity Eliminate redundancy Growing IT ecosystem Demanding rate of change Need for info sharing Outsourcing (BPO) Future-proofing If you don’t have strong architecture strategy, everyone does their own thing and you end up with six kinds of servers and (software) platforms you get silos of everything and that explodes your costs” Andy Miller VP of Technical Architecture, Corporate Express
Definition of Enterprise Architecture The enterprise architecture is the organizing logic for a firm’s core business processes and IT capabilities captured in a set of principles, policies and technical choices to achieve the business standardization and integration requirements of the firm’s operating model.
Does Your IT Architecture Look Like (needed a) blueprint to bring order to “spaghetti layer of applications, boxes and wires” Toby Redshaw VP of Strategy & Architecture Motorola
Why do I need a framework? Complexity Scale Other?
Many Schools of Thought Industry models Microsoft models Zachman Framework Meta – Enterprise Architecture Microsoft solutions framework model Software factories Module map & Motion Methodology Using a model to deliver artifacts Enterprise Architectural Space Organizing Table (EASOT)
Understanding the Zachman Framework for EA Data Function Network People Time Motivation (What) (How) (Where) (Who) (When) (Why) Scope (Ballpark) view Owners View (Enterprise Model) Designers View (System Model) Builder’s View (Technology Model) Out of Context View (Detailed Model) Operational View (Functioning)
Enterprise Architecture Meta Group Information Architecture Technology Architecture Business Processes Application Portfolio Business Architecture Enterprise Strategy Applications Information Infrastructure The Meta Group Enterprise Architecture
Microsoft Solutions Framework Strata In Microsoft Model Contextual Aimed at business executives Conceptual Aimed at business process owners Logical Physical Aimed at architects and designers Aimed at designers and developers
Adding Views Business strategies & processes Conceptual Logical Physical Technology View Information View Applications View Business View Contextual Applications to facilitate business process Information needed to manage business Technology to support business & application needs
Logical Stratum Models What type of applications do we need to put in place to support the business processes? Who are the stakeholders in these applications? What does the normalized data model look like for these applications? Which application will create, read, update or delete data? What types of technology do we need to enable these applications? What is the distributed systems architecture going to look like? What standards do we need to put in place?
Logical Stratum Models Entity Relationship Models Class Models XML Schemas CRUD Affinity Matrices Application Architecture Logical Logical Data Model Distributed Systems Architecture Function/Application Affinity Matrices Technology Services Portfolio Distributed Systems Architecture Model
Viewpoints DSLs Patterns Desig Assess Plan Processes n Frameworks Strategic Components Strategic Business Objectives AspectsObjectives BusinessProcesses Processes Transforms Business andEntities Entities and Constraints Implemen t Run ManualProcedures Procedures Manual Services,Messages, Messages, Services, Contracts,Schedules Schedules Contracts, XML,Database, Database,Classes, Classes, XML, Code Code IT Technology Technology Architecture Architecture Logical Logical DataCenter Center Data Physical servers and segments
Set Of Related View Points and artifacts for Model Driven Development Business Business Capabilities Capabilities Manual Manual Procedures Reconciliation Procedures BusinessProcesses Processes Business andEntities Entities and Technology Technology Architecture Architecture Constraints Reconciliation Services,Messages, Messages, Services, Applications,Endpoints Endpoints Applications, Constraints Abstraction/ Refinement XML,Projects, Projects, XML, DBs,Classes, Classes,Code Code DBs, packaged into Logical Logical DataCenter Center Data Physical servers & segments Deployment Deployment Units Units deployed on Abstraction/ Refinement
Merging Models Business Applications Information Business Business Capabilities Contextual Capabilities Manual Manual Procedures Reconciliation Procedures BusinessProcesses Processes Business Conceptualand Entities and Entities Technology Technology Technology Architecture Architecture Constraints Reconciliation Services,Messages, Messages, Logical Services, Applications,Endpoints Endpoints Applications, Constraints Abstraction/ Refinement Physical XML,Projects, Projects, XML, DBs,Classes, Classes,Code Code DBs, packaged into Logical Logical DataCenter Center Data Physical servers & segments Deployment Deployment Units Units deployed on Abstraction/ Refinement
Module Map – Business Capabilities Customer Facing Channel Partners Customers Enterprise Suppliers 2. Generate Demand 1. Develop Product / Service 5. Collaboration 3. Fulfill Demand 3.1. Provide Service 3.2. Advanced 3.3. Procurement Planning 3.3.1 Sourcing and Supplier Contract Management 4. Plan & Manage Enterprise 3.3.2 Purchasing Request Resources Manage Requisition Approva Processl Create Purchase Requisitions Level 4 Acquire/Purchase 3. Fulfill Demand 3.3 Procurement 3.3.2 Purchasing - Request Resources - Create 3.4. Produce Purchase Product Requisitions Choose or Default Supplier for Goods Perform Encumbrance Check Create Auction Bids Resources Manage Purchase Item Catalog Manage RFI/RFQ/ RFP process Verify/ Negotiate Price Purchase Indirect Materials Purchase Outside Vendor Services Manage Automatic Replenishment Manage Purchasing Methods Consolidate Approved Requisitions by Supplier Purchase Capital Goods Manage Open to Buy/Blanket POs Purchase Direct Materials & Supplies Track Open POs Approve & Validate Contract Payments Manage Suppliers Manage Supplier Relationships Track Supplier Commitments Maintain Supplier Catalog Request Resources Create Purchase Orders Manage Buyer Performance Provide Supplier Self-Help Create Purchase Requisitions 3.3.3 Receiving of Indirect / Capital Goods and Services 3.5. Logistics Logistics Providers Financial Service Providers
Motion starts with a high-level, objective view of business, and allows capability decomposition HIGH-LEVEL VIEW DECOMPOSITION FRAMEWORK EXAMPLE DECOMPOSITION
Example - Model For Pattern Identification Business Architecture Integration Architecture Application Architecture Operational Architecture Development Architecture Extended Platform
Add Interrogatives Functi Timing Netwo People Scoreca on rk rd (What (When (Who) ) (How) ) (Wher (Test) (Why) Business Architecture e) Purpo se Data Integration Architecture Application Architecture Operational Architecture Development Architecture
Add Roles
Enterprise Architectural Space Organizing Table Architecture Framework Microsoft Confidential Viewpoints 1 2 3 4 5 6 7 Purpose (Why) Data (What) Function (How) Timing (When) Network (Where) People (Who) Scorecard (Test) Organizational units Balanced scorecard EVA, ROE, ROA A CEO - Strategic scope - Economic intent Enterprise level dashboard Enterprise process models Business events and cycles Locations where the enterprise operates B General Mgr Operational goals and objectives Operational dashboard Business unit process models Business unit master schedule Business unit logistic network (nodes and links) C Process Owner Process control objectives Process control dashboard Application process models Process schedule, events, collaborations and state transitions Communication links and devices needed for process automation Specific data inputs, processing and outputs Task and activity based process models Activity specific events, collaborations and state transitions Business unit org chart with P&L roles, security permissions DSO and skill sets Business Architecture D Integration Architecture Process Worker -Activity objectives - Extended enterprise use cases - EAI use cases Enterprise level data flows and replication strategies EAI (API, method, data, user interface) - B2B integration -Global (GXA) - Message broker -URI’s for all trading partners -Integration servers and firewalls Design level collaboration models - Integration NFR* met Enterprise Architect F Designer System level use cases G Developer Abbreviated use case descriptions Implement interfaces XLANG, source code, Profiles, database instances, scripts, batch files, stored procs executables H Enterprise Architect Enterprise level use cases Process refactorings NFR* - Enterprise data models - Data distribution strategies I Architect Application level use cases Mechanisms NFR Application level data models J Designer System level use cases Mechanisms NFR* Tables, indexes, views, queries Design level classes, component, subsystem and QoS Design level collaboration models (sequence and interaction) K Developer - Abbreviated use case descriptions - Implement interfaces Database instances , stored procs, etc. Source code Implemetation units, Executables Executable (vertical / horizontal slices) L Systems Architect Non functional requirements -Directory Design - high level -Data storage design M System Engineer N XML Schemas, Half Maps,ETL, Batch feeds Design level service, component, and subsystem models Enterprise level domain model and logical services Application level -Domain models -Analysis model XLANG Executable vertical and horizontal slices Process mapped to processors, links, protocols Enterprise level system Enterprise level collaboration architecture models -Nodes (sequence and interaction) -Links -Locations Analysis level collaboration model %Utilization Defect Rates Cycle Times Step Count Activitiy specific devices and Specific roles, accounts, Activity metrics locations passwords and permissions Define business process models -BPEL4WS -Rosetta PIPs E Process level actors with roles and permissions Application level system archtecture - Nodes, devices - Links and segments - Processors Partners. customers, suppliers, system actors - EE acceptance test - Performance against SLAs - Onboarding costs EE integration tests Roles, permissions, security - Reuse requirements - Transaction metrics Users mapped to roles within Unit tests, system tests organizations -H1 realizations Enterprise level user profiles -Cross application integration including demographics, test psychographics, -SLA metrics technographics -Reuse Information architecture, interaction maps, story boards, security requirements I1 realizations Acceptance tests App SLA metrics Reuse Executable Architecture -Monitoring and tuning -Remote management Event management Design level system architecture - addresses -subnets -processors -Processes allocated to processors - Production environ - NFR* met High level network models Traffic analysis J1 realizations Integration tests Visual designs, wire frames, Interfaces defined site maps Reuse Intuitive, easy to use Unit Tests executable interface relevant User Adoption to user needs Users, roles, permissions, security requirements -Performance against SLA’s - Operational metrics User administration Operational metrics Operational Architecture Non functional requirements - Directory Implementation - detailed level - Backup and recovery Batch files, scripts, utilities Fault management and recovery Config Mgmt Engineer - Change impact analysis - Rollbacks - Asset retention Batch files, scripts, utilities -Restore known configurations -Promote code Logical and physical device information O Buildmaster -Build quality and quantity metrics -Reports Compilers, build tools, system admin tools, test tools Development process, events and schedule Development, test, and staging environment locations and accounts P Test Engineer -Quality and predictability metrics -Reports -Test Cases -Test Data -Repository Automated test suites - integration - acceptance - performance Test plan with schedule and test cases Test environment Q Developer -Software development efficiency and effectiveness -Reports - Repository - Test Data - IDE - Bug Tracking Tools - Debugging Tools - Test Tools - Modeling tools -Repository -Dependency maps Source code, compile time dependencies, test data, results, - Detailed network models - Network monitoring Users, roles, permissions, security requirements Asset management metrics Development team, system -Build quality and quantity admin team, configuration metrics mgmt team -Reports Development Architecture -Iteration plan with schedule and features - Integration schedule Development environment including integration machine(s) Development team, buildmaster, Config mgmt team, QA mgmt -Quality and predictability metrics -Reports -Software development Users, roles and permissions efficiency and effectiveness -Reports
Enterprise Architectural Space Organizing Table Architecture Framework Microsoft Confidential Viewpoints 1 2 3 4 5 6 7 Purpose (Why) Data (What) Function (How) Timing (When) Network (Where) People (Who) Scorecard (Test) Organizational units Balanced scorecard EVA, ROE, ROA A CEO - Strategic scope - Economic intent Enterprise level dashboard Enterprise process models Business events and cycles Locations where the enterprise operates B General Mgr Operational goals and objectives Operational dashboard Business unit process models Business unit master schedule Business unit logistic network (nodes and links) C Process Owner Process control objectives Process control dashboard Application process models Process schedule, events, collaborations and state transitions Communication links and devices needed for process automation Specific data inputs, processing and outputs Task and activity based process models Activity specific events, collaborations and state transitions Business unit org chart with P&L roles, security permissions DSO and skill sets Business Architecture D Integration Architecture Process Worker -Activity objectives - Extended enterprise use cases - EAI use cases Enterprise level data flows and replication strategies EAI (API, method, data, user interface) - B2B integration -Global (GXA) - Message broker -URI’s for all trading partners -Integration servers and firewalls Design level collaboration models - Integration NFR* met Enterprise Architect F Designer System level use cases G Developer Abbreviated use case descriptions Implement interfaces XLANG, source code, Profiles, database instances, scripts, batch files, stored procs executables H Enterprise Architect Enterprise level use cases Process refactorings NFR* - Enterprise data models - Data distribution strategies I Architect Application level use cases Mechanisms NFR Application level data models J Designer System level use cases Mechanisms NFR* Tables, indexes, views, queries Design level classes, component, subsystem and QoS Design level collaboration models (sequence and interaction) K Developer - Abbreviated use case descriptions - Implement interfaces Database instances , stored procs, etc. Source code Implemetation units, Executables Executable (vertical / horizontal slices) L Systems Architect Non functional requirements -Directory Design - high level -Data storage design M System Engineer N XML Schemas, Half Maps,ETL, Batch feeds Design level service, component, and subsystem models Enterprise level domain model and logical services Application level -Domain models -Analysis model XLANG Executable vertical and horizontal slices Process mapped to processors, links, protocols Enterprise level system Enterprise level collaboration architecture models -Nodes (sequence and interaction) -Links -Locations Analysis level collaboration model %Utilization Defect Rates Cycle Times Step Count Activitiy specific devices and Specific roles, accounts, Activity metrics locations passwords and permissions Define business process models -BPEL4WS -Rosetta PIPs E Process level actors with roles and permissions Application level system archtecture - Nodes, devices - Links and segments - Processors Partners. customers, suppliers, system actors - EE acceptance test - Performance against SLAs - Onboarding costs EE integration tests Roles, permissions, security - Reuse requirements - Transaction metrics Users mapped to roles within Unit tests, system tests organizations -H1 realizations Enterprise level user profiles -Cross application integration including demographics, test psychographics, -SLA metrics technographics -Reuse Information architecture, interaction maps, story boards, security requirements I1 realizations Acceptance tests App SLA metrics Reuse Executable Architecture -Monitoring and tuning -Remote management Event management Design level system architecture - addresses -subnets -processors -Processes allocated to processors - Production environ - NFR* met High level network models Traffic analysis J1 realizations Integration tests Visual designs, wire frames, Interfaces defined site maps Reuse Intuitive, easy to use Unit Tests executable interface relevant User Adoption to user needs Users, roles, permissions, security requirements -Performance against SLA’s - Operational metrics User administration Operational metrics Operational Architecture Non functional requirements - Directory Implementation - detailed level - Backup and recovery Batch files, scripts, utilities Fault management and recovery Config Mgmt Engineer - Change impact analysis - Rollbacks - Asset retention Batch files, scripts, utilities -Restore known configurations -Promote code Logical and physical device information O Buildmaster -Build quality and quantity metrics -Reports Compilers, build tools, system admin tools, test tools Development process, events and schedule Development, test, and staging environment locations and accounts P Test Engineer -Quality and predictability metrics -Reports -Test Cases -Test Data -Repository Automated test suites - integration - acceptance - performance Test plan with schedule and test cases Test environment Q Developer -Software development efficiency and effectiveness -Reports - Repository - Test Data - IDE - Bug Tracking Tools - Debugging Tools - Test Tools - Modeling tools -Repository -Dependency maps Source code, compile time dependencies, test data, results, - Detailed network models - Network monitoring Users, roles, permissions, security requirements Asset management metrics Development team, system -Build quality and quantity admin team, configuration metrics mgmt team -Reports Development Architecture -Iteration plan with schedule and features - Integration schedule Development environment including integration machine(s) Development team, buildmaster, Config mgmt team, QA mgmt -Quality and predictability metrics -Reports -Software development Users, roles and permissions efficiency and effectiveness -Reports
Pattern Model
Integration Topologies
MOF Process Model and SMF’s
What Did We Learn? Business and IT alignment Stakeholders, viewpoints Architects need to understand other views, and translate Strata – and need for details Domain specific needs There is no end to detail Flexible – agile Need to project views in the world of connected systems
Other EA concerns Journey vs. destination Evolutionary vs. revolutionary approach IT – fixed asset or liquid asset Leading change Cross-cutting concerns Model and methodology Your EA is unique
So Why “YAF” yet another framework? Common context for conversation Context for delivering guidance/artifacts Meta context for existing frameworks Ageless, timeless Demonstrate power of software
Reconciling IT and Business IT Business strategy judgment insight tradeoffs Business Practice oversight change Applications Infrastructure Business Functions
The Agile Business Decide Insight Act Collaborate Oversight Business Practice Business Practice Applications Business Functions Business Applications Infrastructure Infrastructure
Business Imperatives “Consistency” Operational Efficiency Product Leadership “Understanding” Core Business Practices Customer Intimacy Value Chain “Sense & Act” “Innovation” “Scale”
Top-line Software Strategies Agile Infrastructure “Consistency” Operational Efficiency Product Leadership Digital Customer Relationships “Understanding” Core Digital Business Business Practices Practices “Sense & Act” “Innovation” Software Enrichment Customer Intimacy Value Chain “Scale” Information Supply Chain
Microsoft Architectural Framework “Scale” “Innovation” “Sense & Act” “Consistency” “Understanding” “Innovation” Digital Information Digital Information: data entities and relationships Software Agile Business Software Supply Customer Enrichment Infrastructure Enrichment Practice Chain Relationship Technology: software, hardware, etc. Software Strategies Transformation Business Imperatives Business: objectives, functions, processes Core Value Product Business Operational Customer Product Efficiency Chain Intimacy Leadership Practice Leadership Application: portfolio used in the organization
Value Chain “Scale” Business Imperatives Core Product Business Operational Customer Product Efficiency Intimacy Leadership Leadership Practice “Innovation” “Sense & Act” “Consistency” “Understanding” “Innovation” Compliance Systems RFID Application Enabled Supply Chain Information Technology Integration & Interoperability Using WS Digital Information Digital Software Agile Software Business Supply Customer Enrichment Infrastructure Practice Enrichment Chain Relationship Software Strategies Transformation Business
Discussion Have you adopted an architectural frameworks? Which one(s) and why? Did you change/modify it? Can you live with multiple frameworks from Microsoft? What do you think of MAF? Is it easy to understand? What would you change/add/remove?
2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.