application architecture guide 2.0 project overview€¦ · rich internet application (ria) 20....
TRANSCRIPT
![Page 1: Application Architecture Guide 2.0 Project Overview€¦ · Rich Internet Application (RIA) 20. Rich Client 21. Service 22. Web Application 23. Layers, Components, Tiers 24. Presentation,](https://reader030.vdocument.in/reader030/viewer/2022040608/5ec975923194143a89736c7e/html5/thumbnails/1.jpg)
Application Architecture Guide 2.0
Project Overview
J.D. Meier
Alex Homer
Jason Taylor
Prashant Bansode
Lonnie Wall
Rob Boucher
Akshay Bogawat09/25/08
“How to put the Legos together”
![Page 2: Application Architecture Guide 2.0 Project Overview€¦ · Rich Internet Application (RIA) 20. Rich Client 21. Service 22. Web Application 23. Layers, Components, Tiers 24. Presentation,](https://reader030.vdocument.in/reader030/viewer/2022040608/5ec975923194143a89736c7e/html5/thumbnails/2.jpg)
2
Elevator Pitches
“How to put the Legos together” …
“… Microsoft playbook for app architecture”
![Page 3: Application Architecture Guide 2.0 Project Overview€¦ · Rich Internet Application (RIA) 20. Rich Client 21. Service 22. Web Application 23. Layers, Components, Tiers 24. Presentation,](https://reader030.vdocument.in/reader030/viewer/2022040608/5ec975923194143a89736c7e/html5/thumbnails/3.jpg)
Vision
3
A story that customers get. A story around MS for how
to put the platform Legos together from an application
architecture standpoint .
Platform playbook for building apps. A thin guide that
frames out the application architecture space and maps
relevant principles, patterns, and practices for application
types, layers, quality attributes and technologies.
KB of App Arch Nuggets. A thick, browsable
knowledge base (KB) of guidelines, how tos, checklists,
patterns, videos … etc.
Successful Customers. Solution Architects, developer
leads, and developers are confident and competent
building applications on the .NET platform. Customers
using J2EE / competitive platforms can build effective
solutions on the .NET platform.
![Page 4: Application Architecture Guide 2.0 Project Overview€¦ · Rich Internet Application (RIA) 20. Rich Client 21. Service 22. Web Application 23. Layers, Components, Tiers 24. Presentation,](https://reader030.vdocument.in/reader030/viewer/2022040608/5ec975923194143a89736c7e/html5/thumbnails/4.jpg)
Key Features of the Guide
4
Canonical app frame - describes at a meta-level, the tiers and layers that an architect should
consider. Each tier/layer will be described in terms of its focus, function, capabilities, common
design patterns and technologies.
App Types - 5-7 canonical application archetypes to illustrate common application types. Each
archetype will be described in terms of the target scenarios, technologies, patterns and
infrastructure it contains. Each archetype will be mapped to the canonical app frame. They are
illustrative of common app types and not comprehensive or definitive.
Arch Frame - a common set of categories for hot spots for key engineering decisions.
Quality Attributes - a set of qualities/abilities that shape your application architecture:
performance, security, scalability, manageability, deployment, communication, etc.
Principles, patterns and practices - using the frames as backdrops, the guide will overlay
relevant principles, patterns, and practices.
Technologies and capabilities - a description/overview of the Microsoft custom app dev
platform and the main technologies and capabilities within it.
![Page 5: Application Architecture Guide 2.0 Project Overview€¦ · Rich Internet Application (RIA) 20. Rich Client 21. Service 22. Web Application 23. Layers, Components, Tiers 24. Presentation,](https://reader030.vdocument.in/reader030/viewer/2022040608/5ec975923194143a89736c7e/html5/thumbnails/5.jpg)
Key Scenarios for the Guide
Help you choose the right architecture for your application.
Help you choose the right technologies
Help you make more effective choices for key engineering decisions.
Help you map appropriate strategies and patterns.
Help you map relevant patterns & practices solution assets.
5
![Page 6: Application Architecture Guide 2.0 Project Overview€¦ · Rich Internet Application (RIA) 20. Rich Client 21. Service 22. Web Application 23. Layers, Components, Tiers 24. Presentation,](https://reader030.vdocument.in/reader030/viewer/2022040608/5ec975923194143a89736c7e/html5/thumbnails/6.jpg)
Topology Map
6
![Page 7: Application Architecture Guide 2.0 Project Overview€¦ · Rich Internet Application (RIA) 20. Rich Client 21. Service 22. Web Application 23. Layers, Components, Tiers 24. Presentation,](https://reader030.vdocument.in/reader030/viewer/2022040608/5ec975923194143a89736c7e/html5/thumbnails/7.jpg)
Execution
7
![Page 8: Application Architecture Guide 2.0 Project Overview€¦ · Rich Internet Application (RIA) 20. Rich Client 21. Service 22. Web Application 23. Layers, Components, Tiers 24. Presentation,](https://reader030.vdocument.in/reader030/viewer/2022040608/5ec975923194143a89736c7e/html5/thumbnails/8.jpg)
8
Schedule
App Arch Date
Start 08/01/08
Codeplex KB 08/30/08
App Arch Guide Beta 1 11/15/08
App Arch Guide Beta 2 12/15/08
App Arch Guide Final (PDF) 01/15/09
App Arch
Guide
Community
KB
App Arch
Guide
Complete
Rhythm 2 Week Releases (Drafts / Modules)
Approach Time-boxed results
Incremental value
Separation of risk (project focus)
App Arch Start App Arch
Guide Beta 1
App Arch Guide
Beta 2
PDC
At a Glance START: 07/15/08
END: 01/15/09
![Page 9: Application Architecture Guide 2.0 Project Overview€¦ · Rich Internet Application (RIA) 20. Rich Client 21. Service 22. Web Application 23. Layers, Components, Tiers 24. Presentation,](https://reader030.vdocument.in/reader030/viewer/2022040608/5ec975923194143a89736c7e/html5/thumbnails/9.jpg)
From KB to Guide to MSDN
9
KB (CodePlex) Guide MSDN
•Full catalog
•Guide
•Fit and finish
•Reusable nuggets
•Community KB
•Customer Test / Vette
•Story
•Frames
•Principles, patterns, practices
![Page 10: Application Architecture Guide 2.0 Project Overview€¦ · Rich Internet Application (RIA) 20. Rich Client 21. Service 22. Web Application 23. Layers, Components, Tiers 24. Presentation,](https://reader030.vdocument.in/reader030/viewer/2022040608/5ec975923194143a89736c7e/html5/thumbnails/10.jpg)
Guide / KB
10
KB / NuggetsGuide
Chapters
Frames
Principles
Patterns
Guidelines
App Patterns
App Scenarios
Cheat Sheets
Checklists
Code Examples
Explained
Guidelines
How Tos
Patterns
Videos
![Page 11: Application Architecture Guide 2.0 Project Overview€¦ · Rich Internet Application (RIA) 20. Rich Client 21. Service 22. Web Application 23. Layers, Components, Tiers 24. Presentation,](https://reader030.vdocument.in/reader030/viewer/2022040608/5ec975923194143a89736c7e/html5/thumbnails/11.jpg)
11
Modules (Conceptual Model)
Nuggets•Volatile
•Magnififying lens
•Show me how
Guides•Stable
•What to Do/Why
•High-level How
![Page 12: Application Architecture Guide 2.0 Project Overview€¦ · Rich Internet Application (RIA) 20. Rich Client 21. Service 22. Web Application 23. Layers, Components, Tiers 24. Presentation,](https://reader030.vdocument.in/reader030/viewer/2022040608/5ec975923194143a89736c7e/html5/thumbnails/12.jpg)
Appendix
12
![Page 13: Application Architecture Guide 2.0 Project Overview€¦ · Rich Internet Application (RIA) 20. Rich Client 21. Service 22. Web Application 23. Layers, Components, Tiers 24. Presentation,](https://reader030.vdocument.in/reader030/viewer/2022040608/5ec975923194143a89736c7e/html5/thumbnails/13.jpg)
Conceptual Framework
13
![Page 14: Application Architecture Guide 2.0 Project Overview€¦ · Rich Internet Application (RIA) 20. Rich Client 21. Service 22. Web Application 23. Layers, Components, Tiers 24. Presentation,](https://reader030.vdocument.in/reader030/viewer/2022040608/5ec975923194143a89736c7e/html5/thumbnails/14.jpg)
Key Trends
14
![Page 15: Application Architecture Guide 2.0 Project Overview€¦ · Rich Internet Application (RIA) 20. Rich Client 21. Service 22. Web Application 23. Layers, Components, Tiers 24. Presentation,](https://reader030.vdocument.in/reader030/viewer/2022040608/5ec975923194143a89736c7e/html5/thumbnails/15.jpg)
Key Trends / Hot Spots
15
![Page 16: Application Architecture Guide 2.0 Project Overview€¦ · Rich Internet Application (RIA) 20. Rich Client 21. Service 22. Web Application 23. Layers, Components, Tiers 24. Presentation,](https://reader030.vdocument.in/reader030/viewer/2022040608/5ec975923194143a89736c7e/html5/thumbnails/16.jpg)
Arch Styles
16
![Page 17: Application Architecture Guide 2.0 Project Overview€¦ · Rich Internet Application (RIA) 20. Rich Client 21. Service 22. Web Application 23. Layers, Components, Tiers 24. Presentation,](https://reader030.vdocument.in/reader030/viewer/2022040608/5ec975923194143a89736c7e/html5/thumbnails/17.jpg)
Arch Styles
17
Client/Server
Component-Based Architecture
Data Centered
Distributed Architecture
Layered Architecture
Object Oriented
P2P/Grid
S+S / SaaS / PaaS
SOA
REST
![Page 18: Application Architecture Guide 2.0 Project Overview€¦ · Rich Internet Application (RIA) 20. Rich Client 21. Service 22. Web Application 23. Layers, Components, Tiers 24. Presentation,](https://reader030.vdocument.in/reader030/viewer/2022040608/5ec975923194143a89736c7e/html5/thumbnails/18.jpg)
App Types (Archetypes)
18
Not Exhaustive, Just Illustrative
![Page 19: Application Architecture Guide 2.0 Project Overview€¦ · Rich Internet Application (RIA) 20. Rich Client 21. Service 22. Web Application 23. Layers, Components, Tiers 24. Presentation,](https://reader030.vdocument.in/reader030/viewer/2022040608/5ec975923194143a89736c7e/html5/thumbnails/19.jpg)
Mobile
19
![Page 20: Application Architecture Guide 2.0 Project Overview€¦ · Rich Internet Application (RIA) 20. Rich Client 21. Service 22. Web Application 23. Layers, Components, Tiers 24. Presentation,](https://reader030.vdocument.in/reader030/viewer/2022040608/5ec975923194143a89736c7e/html5/thumbnails/20.jpg)
Rich Internet Application (RIA)
20
![Page 21: Application Architecture Guide 2.0 Project Overview€¦ · Rich Internet Application (RIA) 20. Rich Client 21. Service 22. Web Application 23. Layers, Components, Tiers 24. Presentation,](https://reader030.vdocument.in/reader030/viewer/2022040608/5ec975923194143a89736c7e/html5/thumbnails/21.jpg)
Rich Client
21
![Page 22: Application Architecture Guide 2.0 Project Overview€¦ · Rich Internet Application (RIA) 20. Rich Client 21. Service 22. Web Application 23. Layers, Components, Tiers 24. Presentation,](https://reader030.vdocument.in/reader030/viewer/2022040608/5ec975923194143a89736c7e/html5/thumbnails/22.jpg)
Service
22
![Page 23: Application Architecture Guide 2.0 Project Overview€¦ · Rich Internet Application (RIA) 20. Rich Client 21. Service 22. Web Application 23. Layers, Components, Tiers 24. Presentation,](https://reader030.vdocument.in/reader030/viewer/2022040608/5ec975923194143a89736c7e/html5/thumbnails/23.jpg)
Web Application
23
![Page 24: Application Architecture Guide 2.0 Project Overview€¦ · Rich Internet Application (RIA) 20. Rich Client 21. Service 22. Web Application 23. Layers, Components, Tiers 24. Presentation,](https://reader030.vdocument.in/reader030/viewer/2022040608/5ec975923194143a89736c7e/html5/thumbnails/24.jpg)
Layers, Components, Tiers
24
![Page 25: Application Architecture Guide 2.0 Project Overview€¦ · Rich Internet Application (RIA) 20. Rich Client 21. Service 22. Web Application 23. Layers, Components, Tiers 24. Presentation,](https://reader030.vdocument.in/reader030/viewer/2022040608/5ec975923194143a89736c7e/html5/thumbnails/25.jpg)
Presentation, Business, Data
25
![Page 26: Application Architecture Guide 2.0 Project Overview€¦ · Rich Internet Application (RIA) 20. Rich Client 21. Service 22. Web Application 23. Layers, Components, Tiers 24. Presentation,](https://reader030.vdocument.in/reader030/viewer/2022040608/5ec975923194143a89736c7e/html5/thumbnails/26.jpg)
Tiers (2-Tier, 3-Tier, N-Tier)
26
![Page 27: Application Architecture Guide 2.0 Project Overview€¦ · Rich Internet Application (RIA) 20. Rich Client 21. Service 22. Web Application 23. Layers, Components, Tiers 24. Presentation,](https://reader030.vdocument.in/reader030/viewer/2022040608/5ec975923194143a89736c7e/html5/thumbnails/27.jpg)
Layers / Components
27
![Page 28: Application Architecture Guide 2.0 Project Overview€¦ · Rich Internet Application (RIA) 20. Rich Client 21. Service 22. Web Application 23. Layers, Components, Tiers 24. Presentation,](https://reader030.vdocument.in/reader030/viewer/2022040608/5ec975923194143a89736c7e/html5/thumbnails/28.jpg)
Services Layer
28
![Page 29: Application Architecture Guide 2.0 Project Overview€¦ · Rich Internet Application (RIA) 20. Rich Client 21. Service 22. Web Application 23. Layers, Components, Tiers 24. Presentation,](https://reader030.vdocument.in/reader030/viewer/2022040608/5ec975923194143a89736c7e/html5/thumbnails/29.jpg)
Arch Frame
29
![Page 30: Application Architecture Guide 2.0 Project Overview€¦ · Rich Internet Application (RIA) 20. Rich Client 21. Service 22. Web Application 23. Layers, Components, Tiers 24. Presentation,](https://reader030.vdocument.in/reader030/viewer/2022040608/5ec975923194143a89736c7e/html5/thumbnails/30.jpg)
Arch Frame
30
![Page 31: Application Architecture Guide 2.0 Project Overview€¦ · Rich Internet Application (RIA) 20. Rich Client 21. Service 22. Web Application 23. Layers, Components, Tiers 24. Presentation,](https://reader030.vdocument.in/reader030/viewer/2022040608/5ec975923194143a89736c7e/html5/thumbnails/31.jpg)
Quality Attributes
31
![Page 32: Application Architecture Guide 2.0 Project Overview€¦ · Rich Internet Application (RIA) 20. Rich Client 21. Service 22. Web Application 23. Layers, Components, Tiers 24. Presentation,](https://reader030.vdocument.in/reader030/viewer/2022040608/5ec975923194143a89736c7e/html5/thumbnails/32.jpg)
Quality Attribute Frame
32
![Page 33: Application Architecture Guide 2.0 Project Overview€¦ · Rich Internet Application (RIA) 20. Rich Client 21. Service 22. Web Application 23. Layers, Components, Tiers 24. Presentation,](https://reader030.vdocument.in/reader030/viewer/2022040608/5ec975923194143a89736c7e/html5/thumbnails/33.jpg)
patterns & practices Security Engineering
33
![Page 34: Application Architecture Guide 2.0 Project Overview€¦ · Rich Internet Application (RIA) 20. Rich Client 21. Service 22. Web Application 23. Layers, Components, Tiers 24. Presentation,](https://reader030.vdocument.in/reader030/viewer/2022040608/5ec975923194143a89736c7e/html5/thumbnails/34.jpg)
patterns & practices Performance Engineering
34
![Page 35: Application Architecture Guide 2.0 Project Overview€¦ · Rich Internet Application (RIA) 20. Rich Client 21. Service 22. Web Application 23. Layers, Components, Tiers 24. Presentation,](https://reader030.vdocument.in/reader030/viewer/2022040608/5ec975923194143a89736c7e/html5/thumbnails/35.jpg)
Deployment Patterns
35
![Page 36: Application Architecture Guide 2.0 Project Overview€¦ · Rich Internet Application (RIA) 20. Rich Client 21. Service 22. Web Application 23. Layers, Components, Tiers 24. Presentation,](https://reader030.vdocument.in/reader030/viewer/2022040608/5ec975923194143a89736c7e/html5/thumbnails/36.jpg)
Deployment Patterns
Non-Distributed
36
Distributed
Web/App Farms
![Page 37: Application Architecture Guide 2.0 Project Overview€¦ · Rich Internet Application (RIA) 20. Rich Client 21. Service 22. Web Application 23. Layers, Components, Tiers 24. Presentation,](https://reader030.vdocument.in/reader030/viewer/2022040608/5ec975923194143a89736c7e/html5/thumbnails/37.jpg)
The End
37
![Page 38: Application Architecture Guide 2.0 Project Overview€¦ · Rich Internet Application (RIA) 20. Rich Client 21. Service 22. Web Application 23. Layers, Components, Tiers 24. Presentation,](https://reader030.vdocument.in/reader030/viewer/2022040608/5ec975923194143a89736c7e/html5/thumbnails/38.jpg)
Follow Along At …
App Arch Guide 2.0 Project Site (CodePlex) –
http://www.codeplex.com/AppArch
J.D. Meier’s Blog – http://blogs.msdn.com/jmeier
Patterns & practices Home – http://msdn.com/practices
38