22
Presentation to SD Best Practices September 28, 2005 Bob Roth (Sparx Systems) [email protected] Frank Truyen (Cephas Consulting) [email protected] Integrating UML 2.0 into Integrating UML 2.0 into Visual Studio Team System Visual Studio Team System

Presentation to SD Best Practices September 28, 2005 Bob Roth (Sparx Systems) [email protected] Frank Truyen (Cephas Consulting) [email protected]

  • View
    213

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Presentation to SD Best Practices September 28, 2005 Bob Roth (Sparx Systems) bob.roth@sparxsystems.com Frank Truyen (Cephas Consulting) frank.truyen@cephas.cc

Presentation to SD Best Practices

September 28, 2005

Bob Roth (Sparx Systems)[email protected]

Frank Truyen (Cephas Consulting)[email protected]

Integrating UML 2.0 intoIntegrating UML 2.0 intoVisual Studio Team SystemVisual Studio Team System

Page 2: Presentation to SD Best Practices September 28, 2005 Bob Roth (Sparx Systems) bob.roth@sparxsystems.com Frank Truyen (Cephas Consulting) frank.truyen@cephas.cc

Overview

Sparx’s Mission Sparx’s Partnership with Microsoft Introduction to UML 2.0 Enterprise Architect 5.0 Features Introducing Enterprise Architect 6.0 Demonstration of EA & Visual Studio Integration

Requirements Model Use Case Model Domain Model Forward and Reverse Engineering into Visual Studio Leveraging the UML Model inside Visual Studio

Integration Roadmap with Visual Studio Team System Q&A

Page 3: Presentation to SD Best Practices September 28, 2005 Bob Roth (Sparx Systems) bob.roth@sparxsystems.com Frank Truyen (Cephas Consulting) frank.truyen@cephas.cc

Sparx’s Mission

Create a new paradigm for modeling and development tools by setting a price point that enables all members of the project team to benefit from their use.

Benefits include dramatic improvements in Documentation Traceability Collaboration Reusability Productivity Quality ROI

Page 4: Presentation to SD Best Practices September 28, 2005 Bob Roth (Sparx Systems) bob.roth@sparxsystems.com Frank Truyen (Cephas Consulting) frank.truyen@cephas.cc

Enterprise Architect Requirements UML

Visual Studio Code .NET

Sparx’s Partnership with Microsoft

Page 5: Presentation to SD Best Practices September 28, 2005 Bob Roth (Sparx Systems) bob.roth@sparxsystems.com Frank Truyen (Cephas Consulting) frank.truyen@cephas.cc

UML History in a Nutshell1

1 Based on chart on pg. 17 of http://www-cse.ucsd.edu/~ikrueger/Teaching_Documents/Winter_2005/UML_Intro_2005.pdf

Page 6: Presentation to SD Best Practices September 28, 2005 Bob Roth (Sparx Systems) bob.roth@sparxsystems.com Frank Truyen (Cephas Consulting) frank.truyen@cephas.cc

UML 2.0

A specification of the Object Management Group (OMG) Sparx is a contributing member of the OMG

Other important OMG standards include The Meta-Object Facility (MOF) The XML Metadata Interchange (XMI) The Common Warehouse Metamodel (CWM) The Common Request Broker Architecture (CORBA)

Major goals of UML 2.0 Better alignment with other constituents of the OMG’s Model

Driven Architecture (MDA) initiative Clean up the underlying architecture by making it modular,

layered and extensible Expand the notation to support a wider set of the modeling

requirements

Page 7: Presentation to SD Best Practices September 28, 2005 Bob Roth (Sparx Systems) bob.roth@sparxsystems.com Frank Truyen (Cephas Consulting) frank.truyen@cephas.cc

UML 2.0 Diagram Types UML defines 13 types of diagrams, divided into two

categories: six represent static application structure and seven represent different aspects of dynamic behavior. Structural

• Class diagram• Object diagram• Component diagram• Composite Structure diagram• Deployment diagram• Package diagram

Behavioral• Use Case diagram• State Machine diagram• Activity diagram• Interaction diagrams

– Sequence diagram– Interaction Overview diagram– Communication diagram– Timing diagram

Page 8: Presentation to SD Best Practices September 28, 2005 Bob Roth (Sparx Systems) bob.roth@sparxsystems.com Frank Truyen (Cephas Consulting) frank.truyen@cephas.cc

Enterprise Architect 5.0 Features (1)

UML 2.0 compliant, supporting all 13 diagrams

Full development lifecycle coverage – from requirements to analysis, design, testing, deployment and maintenance

Forward and reverse engineering of multiple programming languages including C#, C++ and Visual Basic

Template based code generation scripts that can be customized

Forward and reverse engineering of database schemas (DDL) for relational databases such as MS SQL Server, Oracle and others

XML Schema (XSD) forward generation

Inbuilt requirements management with full traceability to the realization elements (includes a powerful relationship matrix feature)

Page 9: Presentation to SD Best Practices September 28, 2005 Bob Roth (Sparx Systems) bob.roth@sparxsystems.com Frank Truyen (Cephas Consulting) frank.truyen@cephas.cc

Enterprise Architect 5.0 Features (2)

Export & import of packages as XMI files for purposes such as model backup, transfer between projects or version control

Creation of model baselines (at the package branch level) as compressed XMI files inside the EA repository

Comparison of the structural aspects of models (at the package level) against stored XMI representations

Powerful WYSIWYG template based report generator in RTF format

HTML report generator Version control via links to external Configuration

Management systems XMI support for versions 1.0, 1.1 and 1.2 Support for managing tests at all levels (unit, integration,

system and acceptance)

Page 10: Presentation to SD Best Practices September 28, 2005 Bob Roth (Sparx Systems) bob.roth@sparxsystems.com Frank Truyen (Cephas Consulting) frank.truyen@cephas.cc

Enterprise Architect 5.0 Features (3) Built-in model-to-model (MDA) transformations

Customizable transformation templates for C#, Java, EJB Entity, EJB Session, DDL and XSD

Powerful scripting language for creating additional templates

Import of binary modules Java archives (.jar files) .NET assembly data PE files (.exe, .dll) Intermediate Language (.il) files

Tool extensibility using Model Driven Generator (MDG) Technologies Allows bundling of related resources such as UML profiles,

patterns, code templates, transformation templates, etc. Available MDG modelling extensions include CORBA, Python

and EJB

Plug-in extensions to both Visual Studio .Net and Eclipse (using MDG Technologies)

Page 11: Presentation to SD Best Practices September 28, 2005 Bob Roth (Sparx Systems) bob.roth@sparxsystems.com Frank Truyen (Cephas Consulting) frank.truyen@cephas.cc

EA Highlights - Model Repository

Every aspect of the UML model—including graphical data—is persisted in an industry-standard database in one of the following formats Native .EAP file (Microsoft Access/JET) RDBMS repository

• SQL Server / MSDE• MySQL• Oracle• PostgreSQL• Adaptive Server Anywhere

Provides scalability from a single user all the way up to very large teams

Permits common SQL reporting tools such as Crystal Reports to be used to manipulate and query the UML model, both from within EA and externally

Page 12: Presentation to SD Best Practices September 28, 2005 Bob Roth (Sparx Systems) bob.roth@sparxsystems.com Frank Truyen (Cephas Consulting) frank.truyen@cephas.cc

EA Highlights - Configuration Management

Supports versioning of packages and their nested sub-packages into a Configuration Management repository The repository is maintained by third-party version control

applications that control access and manage versions. Support for any version control system which is either CVS or

SCC compliant (e.g. Visual Source Safe, Clear Case, Accurev, Perforce and others).

All versioned packages are stored in standard XMI format for portability

Entire models can be reconstructed from a single root package using a “get all” feature

Check-in/check-out functionality is available from within EA Projects can be configured to load packages from multiple

version control repositories (and providers)

Page 13: Presentation to SD Best Practices September 28, 2005 Bob Roth (Sparx Systems) bob.roth@sparxsystems.com Frank Truyen (Cephas Consulting) frank.truyen@cephas.cc

EA Highlights - Project Management & Metrics

EA provides “lightweight” project management support through

Project estimates  A comprehensive project estimation tool that calculates effort from use case and actor objects, coupled with project configurations defining the technical and environmental complexity of the work environment.

Resource management  Allows the project manager to assign resources directly to model elements and track progress over time.

Risk management  The Metrics and Estimations tool may be used to assign Risk to an element within a project. The interface allows the project manager to name the risk, define the type of risk, and give it a weighting.

Maintenance  Allows the Project Manager to assign and track maintenance related work items to elements within EA. This enables the rapid capture and record keeping of issues, changes, defects and tasks.

Page 14: Presentation to SD Best Practices September 28, 2005 Bob Roth (Sparx Systems) bob.roth@sparxsystems.com Frank Truyen (Cephas Consulting) frank.truyen@cephas.cc

EA Highlights - Advanced Capabilities

Programmatically manipulate models using an automation interface ActiveX and .NET technologies can be used to create add-ins

that can be easily plugged into EA Create UML profiles, and share these profiles as XML files

across teams and projects Commonly used profiles are available for download from the resources section of the Sparx website

Model the information (data) viewpoint using a built-in UML profile featuring tables, columns, keys, foreign keys and complex relationships

Develop user interfaces (mockups) using another built-in UML profile featuring screens and standard UI widgets

Leverage predefined analysis and design patterns (Gang of Four) or build your own from class diagrams

Page 15: Presentation to SD Best Practices September 28, 2005 Bob Roth (Sparx Systems) bob.roth@sparxsystems.com Frank Truyen (Cephas Consulting) frank.truyen@cephas.cc

EA Version 6.0 (Fall 2005) Live code generation Source compilation and debugging Integrated nUnit and jUnit support Perspectives to manage current user focus New MDG Technology extensions for

Systems Modeling Language (SysML - http://www.sysml.org/) Business Process Modeling Notation (BPMN - http://www.bpmn.org/)

Shape script language for deriving highly customisable shapes based on stereotypes and tagged values

Model discussions forum Advanced search facility MOF Meta-modelling support (import/export support for MOF 1.3,

MOF 1.4) XSD modelling (fwd & reverse engineering) WSDL SOA modelling support (forward and reverse engineering) Comprehensive model validation (including OCL-based constraints)

Page 16: Presentation to SD Best Practices September 28, 2005 Bob Roth (Sparx Systems) bob.roth@sparxsystems.com Frank Truyen (Cephas Consulting) frank.truyen@cephas.cc

Integrating UML 2.0 into theVisual Studio 2005 and VSTS environment

- Objectives - Provide the UML Analyst/Designer/Architect with the tools to build

detailed and precise UML 2.0 models Give the Visual Studio developer focused access to UML model

content Offer the development team strong traceability features, from

requirements to model, to code, to tests and finally to deployed artifacts

Increase productivity by linking UML models to Domain Specific Language (DSL) tools and artifacts

Release a preliminary (beta) version of the integration into Visual Studio 2005 by product launch date

Release a stable and complete version in early 2006 Make available a first version of the integration with Visual Studio

Team System by end of first quarter 2006

Page 17: Presentation to SD Best Practices September 28, 2005 Bob Roth (Sparx Systems) bob.roth@sparxsystems.com Frank Truyen (Cephas Consulting) frank.truyen@cephas.cc

Teaming up the UML Architect with the .Net Developer

Browse the EA model inside the Visual Studio environment The UML model is included as a Solution item within VS 2005.

Two additional tool views are made available• The UML Model window presents a Project View to navigate through

the EA model in order to view its entire content• The UML Property window provides a real-time view of model

diagrams and elements. Drill down into the model directly from the diagram elements

Invoke EA features from within Visual Studio Via the context menu of the class browser in VS the user can

• Select the “Open and Edit in EA” option to open EA with the class visible

• Update the properties of UML elements directly!• Open a selected diagram inside EA• Generate documentation, import libraries, etc.

Page 18: Presentation to SD Best Practices September 28, 2005 Bob Roth (Sparx Systems) bob.roth@sparxsystems.com Frank Truyen (Cephas Consulting) frank.truyen@cephas.cc

Teaming up the UML Architect with the .Net Developer

Navigate from UML artifacts to related VS elements Navigate from a UML class in the UML Project View window to

the source code item in the Solution Explorer or Class View

Invoke the DSL Class Diagram from a UML class context The Class Diagram is created automatically if it does not already

exist. The corresponding VS class is highlighted in the Diagram Automatically add the VS class to the Diagram if not present

Invoke the DSL Application Diagram from a UML element context The Application Diagram is created automatically if it does not

already exist The corresponding VS element is highlighted in the Diagram

Page 19: Presentation to SD Best Practices September 28, 2005 Bob Roth (Sparx Systems) bob.roth@sparxsystems.com Frank Truyen (Cephas Consulting) frank.truyen@cephas.cc

EA Integration with Visual StudioTeam System - Roadmap

VSTS user displays EA requirements Query and view in VSTS work items created in EA as

requirements

EA user visualizes VSTS Work Items Query and view in EA requirements, tasks, and other artifacts

created as work items in VSTS, including any complex dependencies between work items

EA user leverages VSTS CM system Check-in or check-out files within EA using the VSTS

Configuration Management system

Page 20: Presentation to SD Best Practices September 28, 2005 Bob Roth (Sparx Systems) bob.roth@sparxsystems.com Frank Truyen (Cephas Consulting) frank.truyen@cephas.cc

EA Integration with Visual StudioTeam System - Roadmap

EA pre-populates a VS Application Diagram (AD) from a UML deployment diagram

EA renders VSTS test results on a UML diagram EA renders on a diagram test coverage data from the results

of the test suites executed in VSTS

EA shows VSTS test case dependencies EA visualizes the VSTS test cases and their dependencies on

a UML diagram

Page 21: Presentation to SD Best Practices September 28, 2005 Bob Roth (Sparx Systems) bob.roth@sparxsystems.com Frank Truyen (Cephas Consulting) frank.truyen@cephas.cc

Summary

EA – A full lifecycle, UML 2.0 tool with support for .NET and other platforms

Objective – to bring detailed, traceable UML Models to all members of the .NET development team via Visual Studio and VSTS

Beta integration into Visual Studio 2005 by VS product launch date. Release in early 2006

Integration with Visual Studio Team System towards the end of first quarter 2006

Page 22: Presentation to SD Best Practices September 28, 2005 Bob Roth (Sparx Systems) bob.roth@sparxsystems.com Frank Truyen (Cephas Consulting) frank.truyen@cephas.cc

Q & A

Questions Suggestions Feedback

Please contact:

Bob Roth (Sparx Systems)[email protected]

orFrank Truyen (Cephas Consulting)

[email protected]