Upload
aamir97
View
744
Download
4
Tags:
Embed Size (px)
DESCRIPTION
Citation preview
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
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
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
Enterprise Architect Requirements UML
Visual Studio Code .NET
Sparx’s Partnership with Microsoft
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
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
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
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)
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)
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)
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
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)
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.
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
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)
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
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.
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
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
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
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
Q & A
Questions Suggestions Feedback
Please contact:
Bob Roth (Sparx Systems)[email protected]
orFrank Truyen (Cephas Consulting)