Tools for Architects and Future Directions in Modeling Beat Schwegler Architect, Enterprise Team Microsoft EMEA D&PE blogs.msdn.com/beatsch Arvindra Sehmi.

Slides:



Advertisements
Similar presentations
Connected Health Framework
Advertisements

.NET Technology. Introduction Overview of.NET What.NET means for Developers, Users and Businesses Two.NET Research Projects:.NET Generics AsmL.
2009 – E. Félix Security DSL Toward model-based security engineering: developing a security analysis DSML Véronique Normand, Edith Félix, Thales Research.
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.
EMEA Beat Schwegler Architect Microsoft EMEA HQ Ingo Rammer Principal Consultant thinktecture
Software Factory Assembling Applications with Models, Patterns, Frameworks and Tools Anna Liu Senior Architect Advisor Microsoft Australia.
Team System and Microsoft Solutions Framework Alan Cameron Wills Architect, MSF
Irwin/McGraw-Hill Copyright © 2000 The McGraw-Hill Companies. All Rights reserved Whitten Bentley DittmanSYSTEMS ANALYSIS AND DESIGN METHODS5th Edition.
Tom Hollander Solution Architect Solutions Development Centre Microsoft Australia ARC308.
DEV365 Visual Studio Team Edition for Software Architects: Overview Alex Torone Lead Program Manager Enterprise Tools Microsoft Corporation.
The Software Product Life Cycle. Views of the Software Product Life Cycle  Management  Software engineering  Engineering design  Architectural design.
Microsoft Architects Forum 1 Software Factories : Assembling Applications with Patterns, Models, Frameworks and Tools Steve Cook Software Architect Enterprise.
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.
Introduction to Microsoft Visual Studio 2005 Davin Mickelson
Development Best Practices Concepts & Microsoft’s Approach.
MSR Sense The Microsoft Research Networked Embedded Sensing Toolkit Stewart Tansley, PhD Adapted from: Feng Zhao.
Software Processes lecture 8. Topics covered Software process models Process iteration Process activities The Rational Unified Process Computer-aided.
WEB 304 An Overview of ASP.NET and Windows Workflow Foundation Kashif Alam Program Manager Developer Division Microsoft Corporation.
 CS 5380 Software Engineering Chapter 2 – Software Processes Chapter 2 Software Processes1.
January 25, 2006copyright Thomas Pole , all rights reserved 1 Software Reuse: History 1980 to 2005 History: Changes to Software Reuse Driven by.
DEV 303 Visual Studio "Whidbey" Enterprise Tools: Source Control and Work Item Tracking Brian Harry Product Unit Manager Microsoft Visual Studio.
Domain-Specific Development Stuart Kent, Senior Program Manager, DSL Tools, Visual Studio Team System, Microsoft.
DEV337 Modeling Distributed Enterprise Applications Using UML in Visual Studio.NET David Keogh Program Manager Visual Studio Enterprise Tools.
Visual Studio 2005 Team System Winning the testing space with advanced testing tools Eric Adams Program Manager Visual Studio 2005 Team System Microsoft.
L8 - March 28, 2006copyright Thomas Pole , all rights reserved 1 Lecture 8: Software Asset Management and Text Ch. 5: Software Factories, (Review)
Visual Studio 2005 Team Edition for Software Architects: Developing Service-Oriented Systems Bill Gibson Senior Program Manager Enterprise Tools Microsoft.
Visual Studio Team System Frank PrengelLothar Wieske TechnologieberaterLifecycle Management Technology Specialist Microsoft Deutschland GmbH.
Name Microsoft Student Partner Overview of the Visual Studio 2005 Express Products.
Microsoft Australia Security Summit Design for Operations Nigel Watson, Microsoft Australia David Lemphers, TeamForce Nigel Watson, Microsoft Australia.
Rational Unified Process Fundamentals Module 7: Process for e-Business Development Rational Unified Process Fundamentals Module 7: Process for e-Business.
2005 Microsoft PAKISTAN DEVELOPER CONFERENCE June 13-15, 2005.
1 OO Analysis & Design - Introduction to main ideas in OO Analysis & design - Practical experience in applying ideas.
EMEA Beat Schwegler Architect Microsoft EMEA HQ Ingo Rammer Principal Consultant thinktecture
Rahul Garg National Technology Specialist Microsoft Australia SOA303.
EMEA Beat Schwegler Architect Microsoft EMEA HQ Ingo Rammer Principal Consultant thinktecture
EMEA Beat Schwegler Architect Microsoft EMEA HQ Ingo Rammer Principal Consultant thinktecture
Software Factories : Assembling Applications with Patterns, Models, Frameworks and Tools Steve Cook Architect Visual Studio.
DEV364 Visual Studio Team System “Enabling Better Software Through Better Testing” Keith Brown Pluralsight LLC.
Solution Supply Chains Jack Greenfield. Overview Learning from Other Industries Mass Customization in Software Development Implementing Supply Chains.
ARC411 Domain Specific Language Tools For Model-Driven Development In Microsoft Visual Studio 2005 Jochen Seemann Program Manager Enterprise Tools Microsoft.
Visual Studio 2005 Team System: Enabling Better Software Through Testing Tejasvi Kumar Technology Specialist - VSTS Microsoft Corporation
DEV311 Delving into Visual Studio 2005 Team Edition for Software Testers Ed Glas Group Manager, Web and Load Testing Microsoft Corporation.
Visual Studio 2005 Team System: Software Project Management Brian A White Microsoft
Visual Studio for Software Architects and Future Directions in Modeling Tools Jochen Seemann TLN311 Program Manager Microsoft Corporation.
1 Here are some quotations to get an overview of the kinds of issues of interest.
Arun Prakash Ganesan Development Lead Microsoft Corporation Office 2007 for Developers.
EMEA Beat Schwegler Architect Microsoft EMEA HQ Ingo Rammer Principal Consultant thinktecture
Irwin/McGraw-Hill Copyright © 2000 The McGraw-Hill Companies. All Rights reserved Whitten Bentley DittmanSYSTEMS ANALYSIS AND DESIGN METHODS5th Edition.
Software Factories: Assembling Applications with Patterns, Models, Frameworks and Tools Jack Greenfield Architect Enterprise Tools Microsoft Corporation.
EMEA Beat Schwegler Architect Microsoft EMEA HQ Ingo Rammer Principal Consultant thinktecture
Packaging Design and Architecture Guidance for Visual Studio Tom Hollander Wojtek Kozaczynski Harry Pierson Microsoft.
A Web Service Software Factory Introduction Don Smith Product Manager patterns & practices.
Automation Testing Trainer: Eran Ruso. Training Agenda Automation Testing Introduction Microsoft Automation Testing Tool Box Coded UI Test and Unit Test.
1 SYS366 Week 2 - Lecture Visual Modeling and Process.
Software Factories Steve Cook Architect Enterprise Tools, Visual Studio Microsoft Corporation.
EMEA Beat Schwegler Architect Microsoft EMEA HQ Ingo Rammer Principal Consultant thinktecture
Building Enterprise Applications Using Visual Studio®
Software Factories - Today and Tomorrow
Enterprise Library Overview
An Introduction to Software Factories
Modeling & Messaging for Connected Systems
Tech Ed 2004 © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express.
DAT381 Team Development with SQL Server 2005
Visual Studio 2005 Tools For Office: Creating A Multi-tier Application
Jochen Seemann Program Manager Enterprise Tools Microsoft Corporation
Mark Quirk Head of Technology Developer & Platform Group
Presentation transcript:

Tools for Architects and Future Directions in Modeling Beat Schwegler Architect, Enterprise Team Microsoft EMEA D&PE blogs.msdn.com/beatsch Arvindra Sehmi Architect & Head of Enterprise Team Microsoft EMEA D&PE

2 Agenda Modeling and Methods Software Factories Tools for Architects Domain Specific Languages Summary

3 You all know what modeling is…

4 Spend a lot of time drawing loads of these…

5..throw them away and get on with the code But isn’t the code also a model? So what exactly do we mean by “model”? Using Microsoft.Fabriq. EnterpriseInstrumentation.Schema; namespace Microsoft.Fabriq.Util { /// /// /// This class provides unified /// This class provides unified /// management, eventing, … /// management, eventing, … /// /// public class Logger public class Logger { public static void LogErrorMessage( string message, int severity, string errorCode) public static void LogErrorMessage( string message, int severity, string errorCode) { ErrorMessageEvent.Raise( FabriqEvents.FabriqEventSource, message, severity, errorCode ); ErrorMessageEvent.Raise( FabriqEvents.FabriqEventSource, message, severity, errorCode ); } }}

6 Are our models “mathematical models”?

7 Are they “scale models”?

8 Are they “theoretical models”?

9 Definitely not this kind of model… Copyright:

10 A software “model” is Partly about visualisation Abstraction for clarity Because picture worth a thousand words Sometimes about algorithms Expression in a convenient form Because compact and efficient Often a set of instructions A recipe Because can be automated

11 We need models because… We need to capture the “method” in the madness of software development? Bad Stuff Happens!

12

13

14 Agenda Modeling and Methods Software Factories Tools for Architects Domain Specific Languages Summary

15 Software Development as Craftsmanship Labor Intensive Generic Tools Generic Processes One off applications Hand stitched from scratch Minimal reuse Overruns, defects, security holes, project failures

16 Exploiting Commonality We already exploit economies of scale to automate production Stamping out many identical copies of a prototype Used to produce CDs/DVDs Does nothing to help development

17 Exploiting Commonality We can also exploit economies of scope Reuse designs & components Build many similar but distinct prototypes Key is supporting variability Define only the unique pieces of each system

18 Software Factories Domain-specific process Domain-specific tools & languages Domain-specific content Automate rote and menial tasks General-purpose IDEs become domain-specific software factories

19 Software Factories Pillars Process, Tools & Languages, Content, Automation Software Factories Visual Studio 2005 DSL Tools GAT Project Management Guidance Automation Modeling Platform MSF Processes (Agile / Formal) Trustworthy Metadata-Rich Platform

20 Agenda Modeling and Methods Software Factories Tools for Architects Domain Specific Languages Summary

21 Software Factories Vision BusinessRequirements BusinessProcess System Design ApplicationDesign ContractDesign DatabaseDesign DeploymentDesign OrchestrationDesign Viewpoints of an application ModelsPatternsProcessToolsFrameworks

22 Systems Design BusinessRequirements Two Designers And Mapping Use Case Designer ActivityDesigner

23 Application & Logical Datacenter Designers in Visual Studio 2005

24 Agenda Modeling and Methods Software Factories Tools for Architects Domain Specific Languages Summary

25 Domain Specific Languages In The Software Life Cycle The aim is to create languages… To understand or define requirements To understand or define design To generate parts of the solution To implement design patterns for specific frameworks and architectures To customize applications and application components To visualize existing systems …

26 Building A Designer For Visual Studio Toolbox PropertiesWindow ModelExplorer Validation Drawing surface with domain- specific notation

27 Microsoft Modeling Platform In Visual Studio Modeling Platform Architecture Domain Model Framework Design Surface FrameworkTemplateEngineShellFrame-workValidationFrame-work In-memory graph database with rich services (e.g., transactions, serialization…) and queries Extensible drawing surface with support for routing and auto-layout Artifact generation Checks constraints and guides user to resolve issues Visual Studio UI integration for components like Toolbox and menus

28 The Modeling Platform MicrosoftDesignerMicrosoftDesignerPartnerDesigner Your Own Domain-SpecificDesigner ? Microsoft Modeling Platform in Visual Studio ArchitectDeveloper Business Analyst Developer

29 A Simple Activity Language Attend DSL Session Download & Try out DSL Tools Drink Beer Fascinated by DSL Tools Alreadythirsty Amazed Thirsty now Thirsty now

30 Building A DSL Define the domain model Attend DSL Session Download & Try out DSL Tools Drink Beer

31 Building Use Case Designer with DSL Tools

32 Artifact Generation

33 Interaction Design using Statecharts

34 Agenda Modeling and Methods Software Factories Tools for Architects Domain Specific Languages Summary

35 Summary - Key Points Software Factories Consolidate implicit knowledge Increase productivity and predictability Reduce cost and risk DSLs Exploit commonality & support variability Generate executable domain specific designers based language description Goal Modeling support everywhere

36 What’s Next? DSL Tools are in an early stage CTP releases for Visual Studio 2005 available on the Web RTW for Version 1 planned for first quarter of 2006 Templates for Enterprise Modeling Version 2 planned for next release of Visual Studio Designer Integration Framework

37 Resources Book Software Factories: Assembling Applications with Patterns, Models, Frameworks, and Tools, Jack Greenfield, Keith Short, et al, ISBN , Wiley Publishing Inc., Websites Software Factories DSL Tools Homepage DSL Tools Community Forum Visual Studio 2005 Team System Visual Studio Team System Workshop Domain-Specific Language (DSL) Tools NewsgroupsMicrosoft.private.whidbey.teamsystem.architectMicrosoft.private.whidbey.teamsystem.architect.modeling

© 2005 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.