Download presentation
Presentation is loading. Please wait.
Published byAlyson Holland Modified over 9 years ago
1
.NET Enterprise Architecture Michael Platt Architect Emeritus Platform Strategy Group Microsoft Corporation
3
Agenda Enterprise Architecture Microsoft.NET Enterprise Architecture Michael Platt: Architect Emeritus, Platform Strategy Group Microsoft.NET Patterns Lars Laakes: Product Manager, patterns & practices Microsoft OTG perspective - Enterprise Architecture & Patterns Bryan Krieger, Director, OTG – Technology Integration and Planning
4
Enterprise IT Today Managing ever-increasing complexity Modeling business processes Managing costs Smart infrastructures make for simple solutions Minimize development cost Enhancing business agility Minimize “Time to Market” Integration by design
5
The Agile Organization Billing CustomerSystems Product 3 Product 2 Product 1 Core Product
6
IT Today How do you minimize total cost ? How do you manage complexity? How do you integrate what I have today/tomorrow? How do you align business and IT? (Sarbanes-Oxley)
7
Models Patterns, Models, Architectures Patterns Conceptual Logical Implementation Architecture
8
IT Space COBIT IPTech Process Tech People Tools Models SDLC Ops & Admin
9
Architectural Models Zachmann BATI DADI LayersBusinessApplicationTechnicalInformationConceptualRTESOA Web Services KM Logical B2B etc OO, UML Diagram N Tier Information & Schema Physical Business Transaction Code Products & Hardware Data Architectural Models
10
Making EA Actionable Business principles and goals EA project office 8 concrete steps to an implemented EA As is/To be EA generation Governance and Measurement EA is an element of IT not a solution
11
Patterns Lars Laakes Product Manager patterns & practices Microsoft Corporation
12
What is a Pattern? Context ProblemSolution
13
Singleton Pattern Context: Control access to a class by controlling its instantiation process Problem: Certain types of data need to be globally accessed and maintained This data is often unique in the system E.G. counter class
14
Singleton Pattern Solution: public class Counter { private static Counter _instance = null; private Counter() {} public static Counter getInstance() { if (_instance==null) { _instance = new Counter(); } return _instance; } //... functions provided by Counter }
15
Layered Architecture Pattern Context: You are designing a complex enterprise application composed of a large number of components across multiple levels of abstraction Problem: How do you structure an application to support such operational requirements such as maintainability, reusability, scalability, robustness and security?
16
Layered Architecture Pattern User Interface Components User Process Components Service Interfaces Business Workflows Business Components Business Entities Data Access Logic Components Service Agents Data Source Service Security Operational Management Communication
17
Example: Struts vs. ASP.NET J2EE Web Presentation Patterns Model View Controller Front Controller View Dispatcher Service To Worker View Helper Intercepting Filter
18
Example: Struts vs. ASP.NET Reuse Design Decisions: Struts Struts contains: Front Controller Tag Libraries Model View Controller
19
Web Presentation Patterns Design MVC Front Controller Page Cache Intercepting Filter Implementing MVC with ASP.NET Implementing Front Controller with ASP.NET Implementing Intercepting Filter with ASP.NET Implementing Page Cache with ASP.NET Page Controller Implementing Page Controller with ASP.NET Implementation
20
Example: Struts vs. ASP.NET Conclusion ASP.NET – Range of sound solutions, simple to complex Struts – Excessive complexity for many solutions
21
Packaged Software Custom Software Hardware Engineered Solution Patterns and Solutions Business Requirements Patterns Packaged Software Custom Software Hardware
22
Organizing Our Thinking Design Architecture Impl. DataAppDeploy Infrastructure
23
Architecture Design Implementation InfrastructureDeploymentApplicationData The Pattern Graph
24
Architecture Design Implementation InfrastructureDeploymentApplicationData Patterns – Solutions Language Three Layered Application Layered Application Simple Web Complex Web Rich Client Ext. Enterprise 4-Tier3-Tier Tiered Distribution Layered Services Application
25
Architecture Application Infrastructure Deployment Tiered Distribution Scalability Availability Performance Secure Discrete Logical Layers Data & Functional Analysis Design Flexibility Maintainability Loose Coupling Complex Web App Security Component Reuse Manageability Performance Tradeoff DADIA D I
26
Design Application Infrastructure Deployment Clusters Zones Policies Protocols Links Design Classes & Mechanisms – eg: Security Communication Data Access Exception Handling Logging Runtime Dependencies Map Processes to Processors DADIA D I
27
Implementation Application Infrastructure Deployment Hardware Spec & Configuratio n IP Addressees Ports Server & Files Names Implementation Classes & Mechanisms Product usage – eg:.NET remoting Configuration Dependencies Distribution Manifest – Components, Machines, Files… DADIA D I
28
Architecture Design Implementation DataApplicationDeploymentInfrastructure The Pattern Graph - Clusters Components Components PresentationFramework Security Security Smart Client
29
Conclusion Patterns are a problem/solution pair in a context Patterns are an effective way to convey guidance Patterns are ‘first class citizens’ when architecting systems We are building a pattern graph for business applications using Microsoft technologies
30
Microsoft’s application architecture model and patterns Bryan Krieger Director OTG – Technology Integration and Planning Microsoft Corporation
31
Sydney Chofu & Otemachi Les Ulis TVP Dublin Benelux Madrid Dubai Singapore Johannesburg Sao Paulo 72,000 mailboxes Microsoft Operations Canyon Park Redmond Los Colinas Charlotte Chicago Milan Stockholm Munich 400+ supported MS sites worldwide 4.5M+ e-mail messages per day internally 50K employees 150,000+ PCs >7,000 servers Single Instance SAP Silicon Valley
32
IT Challenges Security and privacy Controlling IT spend Manageability Productivity End User education and training
33
OTG Application Landscape Diverse business unit needs Federated IT model Centralized core systems SAP Siebel Data warehouse Large number of internal applications
34
OTG Viewpoint Architecture technology and planning Application architecture Infrastructure architecture Technology integration Provides Guidance Principles Review
35
Why OTG Likes This Microsoft can now deliver this to IT Allows IT to focus more on business instead of technology Loosely coupled services Streamline and promote common architecture, components
36
Questions?
37
Microsoft Confidential © 2003 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. MICROSOFT MAKES NO WARRANTIES, EXPRESS OR IMPLIED, IN THIS SUMMARY.
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.