Microsoft Application Architecture Guide, 2nd Edition
This guide is available online here in the MSDN Library and as a Microsoft Press book, ISBN# 9780735627109, that you can purchase through local and online booksellers such as Amazon, Barnes & Noble and BORDERS.
The guide is intended to help developers and solution architects design and build effective, high quality applications using the Microsoft platform and the .NET Framework more quickly and with less risk; it provides guidance for using architecture principles, design principles, and patterns that are tried and trusted. The guidance is presented in sections that correspond to major architecture and design focus points. It is designed to be used as a reference resource or to be read from beginning to end.
The guide helps you to:
- Understand the underlying architecture and design principles and patterns for developing successful solutions on the Microsoft platform and the .NET Framework.
- Identify appropriate strategies and design patterns that will help you design your solution's layers, components, and services.
- Identify and address the key engineering decision points for your solution.
- Identify and address the key quality attributes and crosscutting concerns for your solution.
- Create a candidate baseline architecture for your solution.
- Choose the right technologies for your solution.
- Identify patterns & practices solution assets and further guidance that will help you to implement your solution.
Note that although the guide is extensive, it is should not be considered a complete and comprehensive treatise on the field of application architecture and design. The guide is intended to serve as a practical and convenient overview of, and reference to, the general principles of architecture and design on the Microsoft platform and the .NET Framework.
In particular, the guide does not attempt to provide a definitive or authoritative solution architecture for any particular scenario. Instead, it provides a concise overview of the principles and patterns that underpin good architecture and design. It also highlights and provides recommendations for some of the most important issues you should consider.
The bulk of the guide is technology-agnostic and principles-based; therefore, it is applicable regardless of application platform or technology. However, this edition includes specific Microsoft and .NET Framework technology considerations to help you choose the best technology for your solution from among the available technologies; it also includes information about how to make the most of these technologies in particular situations.
The guide contains the following topics:
- Introducing the Guide
- Foreword by S. Somasegar
- Foreword by Scott Guthrie
- Preface by David Hill
- Software Architecture and Design
- Design Fundamentals
- Chapter 5: Layered Application Guidelines
- Chapter 6: Presentation Layer Guidelines
- Chapter 7: Business Layer Guidelines
- Chapter 8: Data Layer Guidelines
- Chapter 9: Service Layer Guidelines
- Chapter 10: Component Guidelines
- Chapter 11: Designing Presentation Components
- Chapter 12: Designing Business Components
- Chapter 13: Designing Business Entities
- Chapter 14: Designing Workflow Components
- Chapter 15: Designing Data Components
- Chapter 16: Quality Attributes
- Chapter 17: Crosscutting Concerns
- Chapter 18: Communication and Messaging
- Chapter 19: Physical Tiers and Deployment
- Application Archetypes
- Chapter 20: Choosing an Application Type
- Chapter 21: Designing Web Applications
- Chapter 22: Designing Rich Client Applications
- Chapter 23: Designing Rich Internet Applications
- Chapter 24: Designing Mobile Applications
- Chapter 25: Designing Service Applications
- Chapter 26: Designing Hosted and Cloud Services
- Chapter 27: Designing Office Business Applications
- Chapter 28: Designing SharePoint LOB Applications
- Appendix A: The Microsoft Application Platform
- Appendix B: Presentation Technology Matrix
- Appendix C: Data Access Technology Matrix
- Appendix D: Integration Technology Matrix
- Appendix E: Workflow Technology Matrix
- Appendix F: patterns & practices Enterprise Library
- Appendix G: patterns & practices Pattern Catalog
This edition replaces Application Architecture for .NET: Designing Applications and Services from 2002.