Visual Studio 2005 Team System: Tools for Architecture: Designing for Deployment Ajay Sudan Microsoft Corporation

Slides:



Advertisements
Similar presentations
Eralp Erat Senior Software Developer MCP,MCAD.NET,MCSD.NET.
Advertisements

Rethinking Infrastructure Architecture: Bridging the Gap Kevin Sangwell Infrastructure Architect Microsoft EMEA HQ.
Visual Studio Team System (VSTS). Richard Hundhausen Author of software development books Microsoft Regional Director Microsoft MVP (VSTS) MCT, MCSD,
Building Enterprise Applications Using Visual Studio ®.NET Enterprise Architect.
Stuart White 2 Visual Studio 2005 Vision Foster a vibrant partner ecosystem Simplify creation of Connected Systems Improve.
What’s Completely New? Visual Studio Team System! Sean Puffett Developer Evangelist
Software Factory Assembling Applications with Models, Patterns, Frameworks and Tools Anna Liu Senior Architect Advisor Microsoft Australia.
Welcome Jason McConnell Developer Evangelist Microsoft Australia
Team System and Microsoft Solutions Framework Alan Cameron Wills Architect, MSF
DEV365 Visual Studio Team Edition for Software Architects: Overview Alex Torone Lead Program Manager Enterprise Tools Microsoft Corporation.
Hans Verbeeck What We’ve Heard Continued complexity of building enterprise systems Bigger, more distributed teams More challenges.
Visual Studio 2005 Team System: Software Project Management Hans Verbeeck
Professional development with Visual Studio 2005 Team System Aali Alikoski Academic Developer Evangelist Microsoft Oy
Pedro Miguel Rosa Senior Software Engineer Developer Platform Group.
Kevin C. Kelly Microsoft
Team System and MSDN Subscriptions Summary Pricing, Licensing & Transition Plan Andreas Nordenadler Product Manager, Developer Tools.
Enabling Better Software through Better Testing Jason Anderson, Microsoft
The Visual Studio Vision Foster a vibrant partner ecosystem Build the right product for customers Improve software team communication Reduce development.
Team System Adoption Martin Woodward Teamprise. Visual Studio Editions Easy to use, easy to learn, easy to acquire tools for hobbyists, enthusiasts, and.
Visual Studio 2005 Team System: Enterprise Class Source Control & Work Item Tracking Ajay Sudan Microsoft Corporation
WEB329 ASP.NET: A Lap Around the New Enhancements for Web Developers in Microsoft Visual Studio 2005 Omar Khan Lead Program Manager Web Platform and Tools.
Visual Studio 2005 Express Editions Stephen Turner Software Design Engineer Microsoft UK.
Introduction to Microsoft Visual Studio 2005 Davin Mickelson
System Center Operations Manager 2007 Dave Northey Microsoft Ireland.
Creating Business Workflow Using SharePoint Designer 2007 Presented by Tarek Ghazali IT Technical Specialist Microsoft SQL Server MVP Microsoft SQL Server.
DEV302 - Visual Studio Team System Building Robust and Reliable Software Eric Lee Program Manager Microsoft Corporation.
The Visual Studio Vision Foster a vibrant partner ecosystem Build the right product for customers Improve software team communication Reduce development.
ARC312 Tools For Architecture: Designing For Deployment Alex Torone Program Manager Microsoft Corporation Bill.
Visual Studio 2005 Team System: Building Robust & Reliable Software Tejasvi Kumar Technology Specialist - VSTS Microsoft Corporation
Building Robust and Reliable Software Jason Anderson, Microsoft
Visual Studio 2005 Team System: Enterprise Development and Test Sean Puffet Microsoft Ltd
DEV 303 Visual Studio "Whidbey" Enterprise Tools: Source Control and Work Item Tracking Brian Harry Product Unit Manager Microsoft Visual Studio.
Prashant Sridharan Lead Product Manager, Visual Studio Visual Studio 2005.
Visual Studio 2005 Team System Winning the testing space with advanced testing tools Eric Adams Program Manager Visual Studio 2005 Team System Microsoft.
Visual Studio 2005 Team Edition for Software Architects: Developing Service-Oriented Systems Bill Gibson Senior Program Manager Enterprise Tools Microsoft.
Microsoft Virtual PC & Virtual Server 2005 Product Overview Tyler Farmer – Sr. Technology Specialist II Education Solutions
DEV 301 Visual Studio Team System Tom Arnold Program Manager Microsoft Corporation “Enabling Better Software through Better Testing”
Microsoft Australia Security Summit Design for Operations Nigel Watson, Microsoft Australia David Lemphers, TeamForce Nigel Watson, Microsoft Australia.
EMEA Beat Schwegler Architect Microsoft EMEA HQ Ingo Rammer Principal Consultant thinktecture
System Center Source: IDC 2002, Microsoft Primary Quantitative Research minute phone surveys of IT professionals in data centers with 25.
DEV364 Visual Studio Team System “Enabling Better Software Through Better Testing” Keith Brown Pluralsight LLC.
John Allwright Product Manager – Visual Studio. The Visual Studio Vision Foster a vibrant partner ecosystem Build the right product for customers Improve.
ARC310 Microsoft Visual Studio 2005 Team Edition for Software Architects: Developing Logical Datacenters Alex Torone Lead Program Manager Enterprise Tools.
ARC411 Domain Specific Language Tools For Model-Driven Development In Microsoft Visual Studio 2005 Jochen Seemann Program Manager Enterprise Tools Microsoft.
Visual Studio Team System overview Pierre Greborio Software Architect – PEWay Microsoft MVP – Solutions Architect.
Visual Studio 2005 Team System: Enabling Better Software Through Testing Tejasvi Kumar Technology Specialist - VSTS Microsoft Corporation
Visual Studio 2005 Team System: Software Project Management Brian A White Microsoft
Dynamic Systems Initiative: Technical Drilldown Infrastructure Costs Complexity 1994 Client Server N - Tier Dynamic Systems IT.
Visual Studio 2005 C#VBC++J#WebExpress Visual Studio Standard Edition Visual Studio Professional Edition Novices Enthusiasts Students Hobbyists Part-Timers.
Visual Studio Team System Change ManagementWork Item TrackingReportingProject Site Visual Studio Team Foundation Integration ServicesProject Management.
1 Introduction Bindia Hallauer & Ajay Sudan Product Management, Visual Studio Team System Microsoft Corporation.
Neil Kidd Developer Tools Technical Specialist Microsoft UK.
Welcome Auckland Brent Colbert Director | Marketing Microsoft NZ.
DEV466 Microsoft Visual Studio 2005 Team System: Enterprise-Class Source Control Doug Neumann Program Manager Visual Studio Microsoft Corporation.
Tools to support the Software Development Process Simon Davies Microsoft Ltd
Connect with life Tejasvi Kumar Developer Technology Specialist | Microsoft India
WEB330 ASP.NET: Using Microsoft Visual 2005 Studio Team System to Build Enterprise Web Applications Brian Goldfarb Product Manager Web Platform and Tools.
Advance your career with a new generation of Microsoft certifications TargetedCurrent Cost-effective Easier to Distinguish Learn more, learn better Put.
Bridging The Gap between Development and Production Kevin Sangwell Infrastructure Architect Microsoft Regional Head Quarters.
DEV304 Delving into Visual Studio 2005 Team Edition for Software Architects Richard Hundhausen Senior Consultant Accentient, Inc.
Introduction ITEC 420.
Building Enterprise Applications Using Visual Studio®
DEV260 Microsoft Visual Studio 2005 Team System: Managing the Software Lifecycle with Visual Studio 2005 Team System Bindia Hallauer Senior Product Manager.
Managing your IT Environment
Visual Studio Tools for Office 2005
Visual Studio 2005 “Personalized productivity”
DAT381 Team Development with SQL Server 2005
Jochen Seemann Program Manager Enterprise Tools Microsoft Corporation
Developing for Windows Azure
Mark Quirk Head of Technology Developer & Platform Group
Presentation transcript:

Visual Studio 2005 Team System: Tools for Architecture: Designing for Deployment Ajay Sudan Microsoft Corporation

Visual Studio 2005 “Personalized productivity” Novices Enthusiasts Students Hobbyists Consultants Solo Professionals Enterprise Devs Architects Testers Project Managers Part-Timers VB6 Devs Web Professionals

Visual Studio Team System Version ControlWork Item TrackingTeam ReportingProject Portal Visual Studio Team Foundation Integration ServicesProject Management Process and Architecture Guidance Dynamic Code Analyzer Visual Studio Team Architect Static Code AnalyzerCode ProfilerUnit TestingCode CoverageVisio and UML ModelingTeam Foundation Client (includes CAL)Visual Studio Professional EditionLoad/Web TestingManual TestingTest Case ManagementApplication DesignerLogical Datacenter DesignerDeployment Designer Visual Studio Team Developer Visual Studio Team Test Visual Studio Industry Partners Team BuildClass Designer

Agenda Distributed system challenges & DSI Distributed system challenges & DSI Distributed System Designers Distributed System Designers Team Architect as a platform Team Architect as a platform

Monitoring Server Router/ Firewall 100 Mbps Switch Web Server 4 Web Server 3 Web Server 2 Web Server 1 Order Processing Server (with message queue, payment component, and SMTP) Admin Server (with Domain Controller & DNS) Database Server 1 Disk Array Database Server 2 Active Directory Domain Controller (with DNS)

Monitoring Server Router/ Firewall 100 Mbps Switch Web Server 4 Web Server 3 Web Server 2 Web Server 1 Order Processing Server (with message queue, payment component, and SMTP) Admin Server (with Domain Controller & DNS) Database Server 1 Disk Array Database Server 2 Active Directory Domain Controller (with DNS) Challenges Span the IT Lifecycle

How do I build applications that will successfully deploy? Development IT Operations How do I set and enforce operational policies? How do I communicate application requirements to Operations? Distributed System Challenges How do I keep design documentation up to date with code?

Model based development tools to capture & edit system knowledge and facilitate collaboration across IT. Leverage knowledge in models to fully automate deployment, updating, configuration and monitoring Fully instrumented platform and technologies with rich support for automation and hardware virtualization Dynamic Systems Initiative Applications “Designed For Operations” “Operationally Aware Platform” “Model Based Management Tools” Instrumentation Automation Hardware Virtualization Architect, Dev and Testing Tools Application Management Packs Deploy/Update/Configure Monitoring and Reporting Microsoft-led, industry effort to dramatically simplify and automate how businesses design, deploy, and operate distributed IT systems. System Definition Model (SDM) Schematization of “services”

Dynamic Systems Initiative System Definition Model (SDM) Applications Application Hosting Logical Machines & Network Topology Hardware System Definition Model

Visual Studio Team Architect Distributed System Designers Application Designer Application Hosting Applications Deployment Designer System Designer System Definition Model Logical Datacenter Designer

Problem Space Customers have communication problems between Customers have communication problems between  Architects and Developers  Developers do not work within architectural guidelines  Development and Operations  Deployment problems caught too late Customers recognize value of modeling tools Customers recognize value of modeling tools  Visualization of designs  Higher level abstractions simply design and development  Generation `of code and other artifacts can improve productivity Modeling tools have poor history of success Modeling tools have poor history of success  Positive: good for documentation  Negative: CASE baggage, round-tripping complexities, not used for software development

Visual Studio Team Architect Goals Reduce the complexity of distributed system design and development 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 Increase predictability of deployment  Enable communication of requirements between development and operations  Enable validation of system design against model of target environment

SDM Models Models  Web Services  ASP.Net applications  IIS  Existing SQL Server or OLE DB  Windows Application, … An XML schema for SDM An XML schema for SDM  Definitions, Systems, Resources, EndPoints  Communication, Hosting, Containment, Delegation Constraint language Constraint language Flow Language Flow Language SDM Compiler SDM Compiler VSTA, DSI, and SDM Distributed System Designers SDM Compiler Constraint validation errors “system” models models Application and Server configuration and specification “Deployable SDM” SDM” Deployment Reports Dynamic Load of SDM models

Designing connected systems Designing connected systems Code first or contract first Code first or contract first

Application Designer Service-Oriented Architecture model Port Details editor

Why do we need a logical datacenter? Because “we know” it works on your machine… Because “we know” it works on your machine… Because you can’t afford a data center for every developer Because you can’t afford a data center for every developer Because it’s expensive to troubleshoot production problems and re-architect applications Because it’s expensive to troubleshoot production problems and re-architect applications Because developers don’t understand why it will break in the deployment environment Because developers don’t understand why it will break in the deployment environment

The “right” information…

What is a logical datacenter? Describes the types of servers and what application types they can host Describes the types of servers and what application types they can host  not how many Describes what services are on the machine Describes what services are on the machine  not physical characteristics Describes what protocols are available Describes what protocols are available  not what IP routing table is used Describes communication boundaries Describes communication boundaries  not firewalls, vlans, switches & routers Describes application authentication requirements Describes application authentication requirements  not wire level encryption Describes the configuration settings of the server Describes the configuration settings of the server  not the raid configuration Describes constraints on application configuration Describes constraints on application configuration  w/o having to page the developer Communicates the “right” information

Settings Settings are “configuration” elements on an application or a run-time hosting environment Settings are “configuration” elements on an application or a run-time hosting environment  System.web  Authentication Mode=Forms  IIS Meta-base  AccessFlags=Execute  System.Data  Authentication=mixed Settings can also be user defined Settings can also be user defined  MySetting=Foo

Constraints Developers express their “requirements” of the datacenter Developers express their “requirements” of the datacenter Operators express their “requirements” of the applications Operators express their “requirements” of the applications Constraints are authored against configuration settings and relationships Constraints are authored against configuration settings and relationships  Hosting constraints  Can I bind or connect these “systems”?  Pre-defined constraint dialogs  Constrain logically-grouped settings, with custom dialogs for desired value entry.  User-defined constraints  Let a user constrain against any values on any setting  Implicit constraints  Defined by system, not the user—“laws of physics.”

Describing the Logical Datacenter Describing the Logical Datacenter Specifying & Importing Settings Specifying & Importing Settings Specifying constraints Specifying constraints Validation Validation Deployment Report Deployment Report

Logical Infrastructure Designer Services assigned to logical infrastructure Architecture validated against operational settings and constraints

Extensibility SDK – Beta 2 Support the ability to add new SDM resources as additional properties on any logical server or application Support the ability to add new SDM resources as additional properties on any logical server or application  Associate with any existing types  Fully Constrainable  Generic Logical Servers and Applications  Prototypes Support the ability to define new SDM types Support the ability to define new SDM types  New System Definitions  New Endpoints  New relationships  New Constraints

Extensibility SDK – Beta 2 Goal Goal  Model and visualize “other aspects” of a distributed system What you do… What you do…  Add new Application Definitions to the Application Designer  Add new Host Definitions to the Logical Data Center Designer  Model new endpoint types  Create new communication, and hosting relationships  Add custom constraints to new or existing Definitions  Extend existing definitions with new meta-data What you get… What you get…  Integration with existing drag-drop-connect metaphor  Integration with exiting user experience for Settings and Constraints  Integration with existing validation experience  Integration with existing user experience for Deployment Validation

Extensibility – How Does it Work? 2) Customer uses SDK: Architect models product in SDM definition Dev codes constraints and managers Install package is created SDM SDM SDK Docs Visual Studio 1) Customer wants to: Create or extend SDM models Define new settings Define new constraints Use new types in Visual Studio 3) Customer uses VS Extensibility to: Install new types Create rich application models using new types Associate resources with existing definitions 4) Service is visible and available for modeling: Integrated modeling experience Integrated setting editing experience Integrated Validation experience New types persisted as SDM files

Future releases… Extensibility to allow partners to … Extensibility to allow partners to …  Integrate new SDM types with the design type environment to control code and config  Provide the benefit of design-time validation for 3 rd party systems Deployment & management Deployment & management  Test & automated deployments  Integration with System Center Support for Indigo service framework Support for Indigo service framework Contract designer Contract designer

Team Architect as a Platform Customers want their own custom graphical designers Customers want their own custom graphical designers  To work with useful abstractions (models) integrated with their architecture and software development processes  Reduces overall IT costs and increases business agility It’s too expensive to build these now It’s too expensive to build these now  They give up the graphical aspect and use XML  They put up with limited customization in UML tools  They kludge together a combination of the above

Team Architect as a Platform The V1 mission is The V1 mission is  Rapidly create custom graphical designers for new problem domains  Enable integration of custom graphical designers with enterprise architecture and development processes  Foster an ecosystem of partners, customers and community

How To: Create a New Designer

Result of Running Wizard

Example: Using the new DSL

A More Complex Example Class Designer and two-way code synch

Summary Distributed system challenges & DSI Distributed system challenges & DSI Distributed System Designers Distributed System Designers Team Architect as a platform Team Architect as a platform

Questions Ajay Sudan