ARC312 Tools For Architecture: Designing For Deployment Alex Torone Bill Gibson alextor@microsoft.com Program Manager Microsoft Corporation billgib@microsoft.com Program Manager Microsoft Corporation Agenda Visual Studio Team System Distributed System Challenges Dynamic Systems Initiative Demo Visual Studio Visual Studio Visual Studio Team Architect Team Developer Team Test Application Modeling Dynamic Code Analyzer Load Testing Logical Infra. Modeling Static Code Analyzer Manual Testing Deployment Modeling Code Profiler Test Case Management Distributed System Unit Testing Designers Code Coverage Class Modeling Visio and UML Modeling Team Foundation Client VS Pro Visual Studio Team Foundation Change Management Reporting Integration Services Work Item Tracking Project Site Project Management Visual Studio Industry Partners Process and Architecture Guidance Visual Studio Team System Distributed System Challenges How do I build applications that will successfully deploy? Development How do I communicate application requirements to Operations? How do I set and enforce operational policies? IT Operations How do I keep design documentation up to date with code? Visual Studio Team Architect Distributed System Designers Reduce the complexity of distributed system design and development Enable communication between architects and developers Keep system design documents synchronized with code Increase predictability of deployment Enable communication of requirements between development and operations Enable validation of system design against model of target environment Dynamic Systems Initiative System Definition Model Development IT Operations System Definition Model Applications System Definition Model Application Hosting Logical Machines & Network Topology Hardware Visual Studio Team Architect System Design Applications Modeling support for all application types ASMX+WSE Full design support for web services Service Orientation An Application is an individually deployable unit of function Which may consume or provide services via endpoints A System is a configured set of one or more applications May expose application endpoints Can be composed to create more complex systems Is the unit of deployment and management System Definition Model Applications System Definition Model Application Hosting Logical Machines & Network Topology Hardware System Definition Model Logical Datacenter Design Application Hosting Datacenter Design A Logical Datacenter describe a configured set of logical servers A Logical Server describes the application hosting characteristics of a type of server System Definition Model Deployment Design Applications Application Hosting Deployment Design A Deployment Definition describes the deployment of a system to a logical datacenter Visual Studio Team Architect Distributed System Designers Application Connection System Designer Definition System Designer Model Applications Deployment Designer Logical Datacenter Designer Application Hosting Design a connected system Describe operational requirements Validate system design Implementation & code sync Visual Studio Team Architect… Reduces complexity of designing service-oriented applications Increases the probability of successful application deployments Improves communication within development teams Looking ahead… Next release Deep design and validation support for Web Services & IIS High level modeling of commonly used services Shallow extensibility Visual Studio Team Architect 2005 Contract design Deployment Support for more application and logical server types Deep extensibility Other Sessions Day Time Session Topic Tuesday 12:15 DEVPNL2 Visual Studio Team System Partners Tuesday 1:30 DEV 300 Project Management Tuesday 1:30 ARC 304 Bridging the Gap Between IT and Dev Tuesday 3:15 ARC 400 Developing SOAs Tuesday 5:00 DEVC08 Contract-first Web Service design Wednesday 8:30 DEV 301 Software Testing Thursday 1:30 DEV 302 Advanced Development Thursday 3:15 DEV 303 Enterprise-Class Source Control Friday 9:00 ARC 312 Designing for Deployment Friday 10:45 DEVC20 Logical Datacenter and Validation Friday 12:15 DEVPNL5 Implementing Software Processes http://msdn.microsoft.com/vstudio/teamsystem Attend a free chat or web cast http://www.microsoft.com/communities/chats/default.mspx http://www.microsoft.com/usa/webcasts/default.asp List of newsgroups http://communities2.microsoft.com/ communities/newsgroups/en-us/default.aspx MS Community Sites http://www.microsoft.com/communities/default.mspx Locate Local User Groups http://www.microsoft.com/communities/usergroups/default.mspx Community sites http://www.microsoft.com/communities/related/default.mspx © 2003-2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary. Please fill out a session evaluation on CommNet Q1: Overall satisfaction with the session Q2: Usefulness of the information Q3: Presenter’s knowledge of the subject Q4: Presenter’s presentation skills Q5: Effectiveness of the presentation © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.