Download presentation
Presentation is loading. Please wait.
Published byCorey Harper Modified over 6 years ago
2
Applying UML to Enterprise Architecture using Enterprise Architect
Sam Mancarella Chief Technical Officer Sparx Systems
3
Overview Introducing Sparx Systems Value-Added UML
Who is Sparx Systems? What is Enterprise Architect? Value-Added UML Requirements modelling Traceability Domain-specific modelling Model-Driven Architecture (MDA)
4
Overview Interoperability Team-Based Modelling
Migrating from other UML tools Between different applications Team-Based Modelling Team scalability Team control Team collaboration
5
Overview Enterprise Architecture in EA Conclusion
Supporting development efforts DoDAF/MoDAF Zachman Framework Conclusion Summary Questions
6
Who is Sparx Systems? Established in 1998
Leading provider of UML modeling tools Enterprise Architect for UML 2 (2.0 2.1) Support for Integrated Development Environments (IDEs) Support for emerging modeling technologies and frameworks (BPMN, UPDM, SysML) Representation in over 60 countries Partners around the globe 160 Partners, resellers
7
Application Integration
Who is Sparx Systems? UML Modeling Platform Application Integration UML Integration Differentiate between product lines Mention support for eclipse as well.. Language Extensions
8
What is Enterprise Architect?
Our Flagship UML 2 Modelling Platform Supports the latest UML 2 standard All 13 diagrams supported Approaching 100,000 licenses worldwide Visual Requirements modelling Only tool to seamlessly integrate requirements modelling with UML 2 Tight integration with formal specifications & system models The Stand alone modeling environment has complete support for modeling from requirements – design. A sophisticated Integrated Model Environment, that goes beyond simple UML diagramming … Built with the team in mind. EA developers have significant experience working in teams and understand the challenges involved. Translations : Exist for a number of languages including Japanese, German and Spanish Used across all major industries from automotive and aerospace engineering to insurance and finance Requirements : Sparx provides extensions to UML to provide graphical modeling of formal requirements. Traditionally, Requirements Analysis has been carried out in external tools, causing a disconnect between the formal specification and the system model. Traceability, validation and visualization achieved.
9
What is Enterprise Architect?
Reporting RTF, HTML Template-based, highly customisable Code Engineering Over ten languages supported out-of-the-box Reporting : Rich-text and web-based reports Can be used for project deliverables Share and communicate with client and stakeholders Code Engineering : Integrates with Visual Studio Supports 10+ languages out-of-the-box – users able to define others Importing, visualizing and analyzing legacy systems facilitates migration to more modern .Net-based languages
10
What is Enterprise Architect?
Model Transforms Language Extensibility, automated modelling Extensible Customization framework for Domain Specific Modelling UML profiles, UML patterns & Model templates Add-In Capability Interoperable COM Interface for remote control Extensible Meta-data Interchange (XMI) for interoperability and model serialization Model Driven Generation : A customization framework that provides two key benefits : Uses the semantic information in the model to derive useful development artifacts : Code, XML fragments, Utilizes the automation interface to provide Integration to specialized tools
11
What is Enterprise Architect?
12
Value-Added UML
13
Requirements Modelling
EA extends UML to support visual requirements modelling Requirement, Feature elements Specify Requirements on the model Standard UML modelling techniques Defined within UML package hierarchy Relationships modelled with standard UML connectors Traceability within entire model Requirements can be ‘realised’ by other elements Requirements can ‘depend’ on other elements
14
UML 101 – Requirements Modelling
With integrated Requirements, we can: Search the model: Based on status, priority, other Analyse: Visualise the impact of requirement change Report: Automatically generate RTF or HTML reports Deliver: Reports or actual model – ‘Live SRS’ Search Report Deliver
15
Requirements Model.eap
EXPLORE Open Formal Requirements package diagram Explain that Requirements modeled as an hierarchy of UML packages Drill down to Functional Requirements Note Package diagram Drill down to Manage Users diagram Explain Requirement elements : Note properties dialog, files tab etc SEARCH Invoke model search (ctrl+F) Choose RequirementsPriority custom search Type “high” as search term Note option to generate report, also invoke Hierarchy window to demonstrate linkage to rest of model impact analysis! GENERATE SRS Invoke RTF editor on Formal Requirements package Explain Customization capabilities Show result in EA text editor or Word Explain equivalent for HTML Explain useful SRS delivery method! Requirements Model.eap
16
Requirements Model.eap
EXPLORE Open Formal Requirements package diagram Explain that Requirements modeled as an hierarchy of UML packages Drill down to Functional Requirements Note Package diagram Drill down to Manage Users diagram Explain Requirement elements : Note properties dialog, files tab etc SEARCH Invoke model search (ctrl+F) Choose RequirementsPriority custom search Type “high” as search term Note option to generate report, also invoke Hierarchy window to demonstrate linkage to rest of model impact analysis! GENERATE SRS Invoke RTF editor on Formal Requirements package Explain Customization capabilities Show result in EA text editor or Word Explain equivalent for HTML Explain useful SRS delivery method! Requirements Model.eap
17
Requirements Model.eap
EXPLORE Open Formal Requirements package diagram Explain that Requirements modeled as an hierarchy of UML packages Drill down to Functional Requirements Note Package diagram Drill down to Manage Users diagram Explain Requirement elements : Note properties dialog, files tab etc SEARCH Invoke model search (ctrl+F) Choose RequirementsPriority custom search Type “high” as search term Note option to generate report, also invoke Hierarchy window to demonstrate linkage to rest of model impact analysis! GENERATE SRS Invoke RTF editor on Formal Requirements package Explain Customization capabilities Show result in EA text editor or Word Explain equivalent for HTML Explain useful SRS delivery method! Requirements Model.eap
18
Requirements Model.eap
EXPLORE Open Formal Requirements package diagram Explain that Requirements modeled as an hierarchy of UML packages Drill down to Functional Requirements Note Package diagram Drill down to Manage Users diagram Explain Requirement elements : Note properties dialog, files tab etc SEARCH Invoke model search (ctrl+F) Choose RequirementsPriority custom search Type “high” as search term Note option to generate report, also invoke Hierarchy window to demonstrate linkage to rest of model impact analysis! GENERATE SRS Invoke RTF editor on Formal Requirements package Explain Customization capabilities Show result in EA text editor or Word Explain equivalent for HTML Explain useful SRS delivery method! Requirements Model.eap
19
Requirements Model.eap
EXPLORE Open Formal Requirements package diagram Explain that Requirements modeled as an hierarchy of UML packages Drill down to Functional Requirements Note Package diagram Drill down to Manage Users diagram Explain Requirement elements : Note properties dialog, files tab etc SEARCH Invoke model search (ctrl+F) Choose RequirementsPriority custom search Type “high” as search term Note option to generate report, also invoke Hierarchy window to demonstrate linkage to rest of model impact analysis! GENERATE SRS Invoke RTF editor on Formal Requirements package Explain Customization capabilities Show result in EA text editor or Word Explain equivalent for HTML Explain useful SRS delivery method! Requirements Model.eap
20
Requirements Model.eap
EXPLORE Open Formal Requirements package diagram Explain that Requirements modeled as an hierarchy of UML packages Drill down to Functional Requirements Note Package diagram Drill down to Manage Users diagram Explain Requirement elements : Note properties dialog, files tab etc SEARCH Invoke model search (ctrl+F) Choose RequirementsPriority custom search Type “high” as search term Note option to generate report, also invoke Hierarchy window to demonstrate linkage to rest of model impact analysis! GENERATE SRS Invoke RTF editor on Formal Requirements package Explain Customization capabilities Show result in EA text editor or Word Explain equivalent for HTML Explain useful SRS delivery method! Requirements Model.eap
21
EXPLORE Open Formal Requirements package diagram Explain that Requirements modeled as an hierarchy of UML packages Drill down to Functional Requirements Note Package diagram Drill down to Manage Users diagram Explain Requirement elements : Note properties dialog, files tab etc SEARCH Invoke model search (ctrl+F) Choose RequirementsPriority custom search Type “high” as search term Note option to generate report, also invoke Hierarchy window to demonstrate linkage to rest of model impact analysis! GENERATE SRS Invoke RTF editor on Formal Requirements package Explain Customization capabilities Show result in EA text editor or Word Explain equivalent for HTML Explain useful SRS delivery method!
22
Traceability EA provides end-to-end traceability support Features
Specification, through to design, to implementation Requirements, to Use Cases, to Logical Designs, to Maintenance Features Customisable Search Hierarchy View Relationship Matrix
23
EXPLORE Navigate to Use Case Model package diagram Explain Hierarchical breakdown Differentiate Use Case Model from Formal Requirements model (Formal SRS delivery to client vs behavioral analysis. And either or both can be used depending on client/project needs) Drill down to Manage Users. Note alternate (intuitive) image used to represent actor that is a system Invoke Use Case properties Explain Text based scenarios GRAPHICAL SCENARIOS Drill down to embedded diagram Explain embedded sequence diagram TRACEABILITY Navigate to Traceability Model View Explain Trace connectors used to trace use cases to requirements Explain diagrammatic approach to trace. Note : can be extended to other phases of modeling Double-click Requirements Trace hyperlink. Invokes Relationship matrix Explain Relationship matrix
24
EXPLORE Navigate to Use Case Model package diagram Explain Hierarchical breakdown Differentiate Use Case Model from Formal Requirements model (Formal SRS delivery to client vs behavioral analysis. And either or both can be used depending on client/project needs) Drill down to Manage Users. Note alternate (intuitive) image used to represent actor that is a system Invoke Use Case properties Explain Text based scenarios GRAPHICAL SCENARIOS Drill down to embedded diagram Explain embedded sequence diagram TRACEABILITY Navigate to Traceability Model View Explain Trace connectors used to trace use cases to requirements Explain diagrammatic approach to trace. Note : can be extended to other phases of modeling Double-click Requirements Trace hyperlink. Invokes Relationship matrix Explain Relationship matrix
25
EXPLORE Navigate to Use Case Model package diagram Explain Hierarchical breakdown Differentiate Use Case Model from Formal Requirements model (Formal SRS delivery to client vs behavioral analysis. And either or both can be used depending on client/project needs) Drill down to Manage Users. Note alternate (intuitive) image used to represent actor that is a system Invoke Use Case properties Explain Text based scenarios GRAPHICAL SCENARIOS Drill down to embedded diagram Explain embedded sequence diagram TRACEABILITY Navigate to Traceability Model View Explain Trace connectors used to trace use cases to requirements Explain diagrammatic approach to trace. Note : can be extended to other phases of modeling Double-click Requirements Trace hyperlink. Invokes Relationship matrix Explain Relationship matrix
26
EXPLORE Navigate to Use Case Model package diagram Explain Hierarchical breakdown Differentiate Use Case Model from Formal Requirements model (Formal SRS delivery to client vs behavioral analysis. And either or both can be used depending on client/project needs) Drill down to Manage Users. Note alternate (intuitive) image used to represent actor that is a system Invoke Use Case properties Explain Text based scenarios GRAPHICAL SCENARIOS Drill down to embedded diagram Explain embedded sequence diagram TRACEABILITY Navigate to Traceability Model View Explain Trace connectors used to trace use cases to requirements Explain diagrammatic approach to trace. Note : can be extended to other phases of modeling Double-click Requirements Trace hyperlink. Invokes Relationship matrix Explain Relationship matrix
27
Domain-Specific Modelling
UML Profiles “Lightweight” extension to UML Provide a domain-specific modeling vocabulary Define a collection of stereotypes that apply to various UML constructs Define constraints & appearance in tool Many standard profiles available: Business Process Modeling Notation (BPMN) XML Schema (XSD) CORBA, Eriksson-Penker, SysML, UPDM
28
Domain-Specific Modelling
EA Provides Powerful customization framework for Domain Specific Modelling Support for graphical notation Support for constraints, rules UML 2-based Users can define their own UML profiles Profiles extend the UML by defining a number of stereotyped elements and tagged values relevant to a particular domain Profiles are imported into EA and extend the built-in UML toolbox EA allows alternative rendering of stereotyped elements with user-customizable Shape Scripts
29
Domain-Specific Modelling BPMN Example
Business Process Modelling Notation Standard notation for defining business processes BPMN defined by BPM.org, adopted by OMG.org Online Bookstore Example EA support for BPMN: Provided as an MDG Technology add-in Supports model validation Uses shape scripting for non-standard rendering
30
Domain-Specific Modelling BPMN Example
We’re using BPMN to analyse the business processes for our bookstore Here we’ve modeled the B2B transaction that utilizes our automated (Web Services) purchasing system. Next we’ll consider how we can use MDA transformation to move to the design and implementation stages.
31
Model-Driven Architecture
Design abstract services/design model, independent of the underlying technology Platform Independent Model (PIM) Generate concrete services/design model, specific to the underlying technology Platform Specific Model (PSM) MDA Parts of the System Model overlap - we want to re-use as much as possible We require the same basic design information in the Code Model, Data Model (DDL + Schema), Services Model We define Model-driven TRANFSFORMATIONS from the abstract model to automatically derive one or more PSMs Changes to the abstract model can be automatically propagated to the PSMs, improving productivity. Enterprise Architect provides a framework to achieve MDA goals : Support for Abstract and Platform specific modeling A powerful transformation engine that automatically produces PSMs based on a set of mapping rules User customizable transformation templates : Users can define the mapping rules! Automated Transformation
32
Model-Driven Architecture
Online Bookstore Example Define abstract service model PIM Derive web services model PIMPSM Generate WSDL PSM Generate Client/Server Code PSM
33
Interoperability Migrating from other UML tools
Model Import / Export support XMI 1.0, 1.1 XMI 2.0, 2.1 Rational Rose Rhapsody MagicDraw Borland Together
34
Interoperability Between different applications
Integrated Development Environments Visual Studio.NET Visual Studio 2005 Eclipse (Java) Requirements Management Telelogic DOORS Project Management Microsoft Project
35
Team-Based Modelling Today’s software projects are increasingly challenging… Larger Systems involving hundreds, or even thousands of requirements Sparse Environments Distributed teams across continents Teamwork Importance Concurrent work and collaborative roles Communication Within and across all phases of SDLC
36
Team-Based Modelling Ever-increasing demands to meet these challenges…
Scalability A scalable model repository supporting multiple, concurrent users Complexity Management Model, version control, revision history, user management Teamwork Control Security control, settings to restrict user permission Communicate Model discussion for collaborative reviews This functionality requires specific support from the UML modeling tool Needless to say, EA is a team-based modeling tool and supports all of these! We’ll discuss some examples…
37
Team-Based Modelling – Version Control
Enterprise Architect supports version-controlled UML packages CVS, Subversion, SCC (VSS, Clear Case, etc…) Basic VC concepts apply Change history Check-in / check-out Help manage concurrent work Version control for UML models occurs at a “Package” level A given user may “lock” a package for editing Helps prevent accidental modification by others Other team members can still view locked packages. We can make use of nested, version controlled packages to control granularity of locking and maximize concurrent work
38
Team-Based Modelling – Version Control
Packages Checked-in (Locked) Packages Checked-out (Editable) With Version control enabled we can : Allow multiple, concurrent users to work on individual packages Allow the entire to have “read” access to the complete model, without accidental modification
39
Team-Based Modelling – Discussion Forum
Enterprise Architect provides a dedicated model discussion forum capability Discuss model-specific concerns Share amongst other modellers Unobtrusive model “annotation” Share forums across models (remote DBMS) Communication Developers, Architects and Analysts can discuss the system at the appropriate level of abstraction in their chosen environment The Discussion Forum can be established on a separate DBMS for “global” forum used across multiple projects Model Elements can be dropped on to specific posts.
40
Team-Based Modelling – Discussion Forum
41
Overview Enterprise Architecture in EA Conclusion
Supporting development efforts DoDAF/MoDAF Zachman Framework Conclusion Summary Questions
42
Enterprise Architecture in EA
Improvements to EA to support Architecture Frameworks Additional model elements & relationships Clickable User Interface Element Toolboxes, Taskpanes Model Templates & Patterns Diagram extensions Easier-to-use EA Version 7.0 Due out early Q2
45
Summary Introduction to Sparx Systems
Enterprise Architect MDG Addins Importance of UML in Enterprise Architecture Value added UML Requirements Models To provide traceability between specification & design Extending UML for domain-specific application Model-Driven Architecture
46
Summary Interoperability Team-Based Modelling
Support for concurrency and complexity management a must! Version control, Discussion forum Support for EA Frameworks Zachman Framework Example DoDAF/MoDAF Efforts Coming soon to version 7.0
47
For More Information Visit our website Email www.sparxsystems.com
30-day full functional trial of EA 6.5 Whitepapers, Datasheets User Forums
48
thank you for your attention!
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.