Welcome to the comprehensive overview of the capabilities of Sparx Systems Enterprise Architect 15.2. Each section focuses on a particular aspect of Enterprise Architect, providing an introduction to the purpose and benefits of each capability.
Enterprise Architect is a visual platform for designing and constructing software systems, for business process modeling, and for more generalized modeling purposes.
Enterprise Architect is based on the latest UML® 2.5 specification (see www.omg.org). UML defines a visual language that is used to model a particular domain or system (either proposed or existing).
Enterprise Architect is a progressive tool that covers all aspects of the development cycle, providing full traceability from the initial design phase through to deployment, maintenance, testing and change control.
- Comprehensive UML 2.5 based modeling
- Built-in Requirements Management
- Extensive Project Management support, including resources, tasks, project calendar and metrics
- Test Management built-in: Testpoint management, model-based test execution, test case specification and support for JUnit and NUnit
- Flexible documentation options: HTML and Rich-Text (RTF) report writers
- Code engineering support for many languages out of the box
- An integrated Visual Execution Analyzer to profile, debug and document executing applications; instantiate run-time model objects; and record sequence diagrams from a stack trace
- Extensible modeling environment that can host user-defined profiles and technologies
- Usability: Enterprise Architect makes it easy to get up and running quickly with UML
- Speed: Enterprise Architect is a spectacularly fast performer
- Scalability: Enterprise Architect can handle extremely large models and many concurrent users with ease
- Price: Enterprise Architect is priced to outfit the entire team, making collaboration and team development cost effectivelity from the initial design phase through to deployment, maintenance, testing and change control.
With 850,000+ effective users worldwide, Enterprise Architect has proven remarkably popular across a wide range of industries and is used by thousands of companies world-wide. From large, well-known, multi-national organizations to smaller independent companies and consultants, Enterprise Architect has become the UML modeling tool of choice for developers, consultants and analysts in over 130 countries.
Sparx software is used in the development of many kinds of software systems in a wide range of industries, including:
- Banking and Finance
- Electrical Engineering
- Research and Academia
- Transport and Utilities
It is also used effectively for UML and business architecture training in many prominent colleges, training companies and universities around the world. Actual implementations range from single users to companies with over 1000 seats working on large, distributed projects.
Enterprise Architect enables you to:
- Model complex information, software and hardware systems using UML-compliant notation
- Model, manage and trace requirements to deployed solutions
- Produce detailed and quality documentation in RTF, PDF and HTML formats
- Leverage industry-standard enterprise architecture frameworks
- Generate and reverse engineer code in 10+ programming languages*
- Model databases, generate DDL scripts, and reverse database schema via ODBC*
- Manage, track and control change using baseline model merge and auditing capabilities
- Centralize enterprise-wide documentation of processes and information systems
- Model dependencies between elements, system dynamics and state
- Model class hierarchies, deployment, components and implementation details
- Record project issues, tasks and system glossary
- Assign resources to model elements and track effort expended against required effort
- Share models using the latest XMI 2.1 format. (Earlier versions also supported)
- Import models in XMI format from other tools
- Manage version control through XMI using SCC, CVS and Subversion configurations
- Use UML Profiles to create custom extensions for domain-specific modeling
- Save and load complete diagrams as Patterns
- Analyze and trace relationships between elements using the tabular Relationship Matrix
- Script and automate common tasks using the Automation Interface and Model Scripts
- Connect to shared database repositories using MS SQL Server, MySQL, Oracle and more*
- Migrate changes across a distributed environment using Controlled XMI Packages
- Perform model-to-model transformations using Model Driven Architecture (MDA)*
- Create and share dynamic views of model elements and diagram sets using Model Views
- Create Mind Maps, Business Process Models and Data Flow Diagrams using UML
- Generate BPEL scripts automatically from business process models in BPMN© notation*
- Generate executable business logic from rule tasks and trace to natural language business rules*
- Visualize executing applications using the Visual Execution Analyzer
- Transform behavioral models into executable source code both for software and for hardware description languages (HDLs) such as Verilog, VHDL, and SystemC*
- Simulate SysML parametric models.*
Enterprise Architect supports all UML 2.5 models and diagrams. You can model business processes, web sites, user interfaces, networks, hardware configurations, messages and many other aspects of your development.
In brief, Enterprise Architect:
- Was the first UML tool to introduce comprehensive UML 2 support in April 2004
- Continues to refine and update UML 2 support
- Supports all 14 diagram types from UML 2.
In addition to UML, Enterprise Architect supports the latest Business Process Modeling Notation (BPMN) and Systems Modeling Language (SysML) specifications. Enterprise modeling notations are also supported out-of-the-box, including ArchiMate© 2.0, SoaML and SOMF©.
Enterprise Architect supports numerous other diagram types that extend core UML diagrams for strategic modeling, mind mapping, formal requirements specifications, data-flow diagrams, user interface prototyping and domain-specific modeling. The tool also provides alternative views that make editing the core UML diagrams more intuitive and effective. One example is the State Table editor, which renders a standard UML State Machine diagram as an editable logic table.
- Business Modeling
- Business Process Modeling and Simulation
- Information and Data Modeling
- Requirements Management
- Spatial Information Modeling with GML and ArcGIS
- Strategic Modeling
- Systems Engineering
- Test Management
- UI, Tools and Productivity Boosters
- Document Generation and Reporting
- Traceability and Accountability
- Distributed Teams Collaboration
- Project Management
- Change Management and Version Control
- Enterprise Architecture and SOA
- Model Driven Architecture (MDA)
- AWS, Azure and Google Cloud Icons
- Code Engineering
- Visualize, Debug and Profile Executing Code
- Model Simulation
- Extending Enterprise Architect
- Pro Cloud Server
- Complete Modeling Platform for Business Analysis
- Implementing BABOK® with Enterprise Architect
- Requirements Managment in Enterprise Architect
- Enterprise Architect MDG Technology for TOGAF
- Heat Maps in Enterprise Architect
- Agile Enterprise Architecture
- The Schema Composer
- National Information Exchange Model
- SysML Simulation with OpenModelica
Model and Manage Complex Information
Enterprise Architect helps individuals, groups and large organizations model and manage complex information. Often this relates to software development and IT systems design and deployment, but it can also relate to business analysis and business process modeling.
Enterprise Architect integrates and connects a wide range of structural and behavioral information, helping to build a coherent and verifiable architectural model, either what-is or what-will-be. Tools to manage versions, track differences, audit changes and enforce security help control project development and enforce compliance with standards.
Model, Manage and Trace Requirements
Capture requirements and use full traceability from base requirements to design, build, deployment and beyond. Use impact analysis to trace from proposed changes to original requirements. Build the 'right' system.
Integrate Teams and Share a Vision
A scalable, easily deployed, multi-user environment, Enterprise Architect integrates team members from all sections and all phases of a product's (or system's) development and maintenance life-cycle, providing significant benefits from built-in collaboration and inherent information sharing.
A single repository for business analysts, software architects, developers, project managers, testers, roll-out and support staff. A 'unified' view of a complex system having many view points and many possible sub-systems.
Design and Build Diverse Systems using UML
UML 2.5, an open standard, provides a rich language for describing, documenting and designing software, business and IT systems in general. Enterprise Architect allows you to leverage the full expressive power of UML 2.5 to model, design and build diverse systems in an open and well understood manner. Generate code, database structures, documentation and metrics. Transform models. Specify behavior and structure as the basis for contractual agreements.
Visualize, Inspect and Understand Complex Software
Software is complex and often hard to understand. Use Enterprise Architect to reverse engineer a wide variety of source code to understand static structure. To complete the picture, use the unique built-in profiling and debugging tools at run-time to capture and visualize executing software. Create run-time instances of model elements and invoke methods using the built in Object Workbench. Integrate existing data models by reverse engineering database schema for a wide range of systems.
Use Full Life-Cycle Modeling and Project Management
Capture and track information about model elements that are important to success: for example, Testing, Project Management and Maintenance details. Use this information to drive and track product development and delivery.
Share and Re-Use Information Across Tools
Enterprise Architect supports a number of mechanisms for exporting and importing models using industry standard XMI. This allows modelers to use information created in other tools, to copy information between Enterprise Architect models and even to write and use custom tools that take XMI directly as input.
Create Platform Independent Models using Model Driven Architecture
Model Driven Architecture (MDA) is an open standard designed to facilitate rapid application development in a platform independent manner. Models can be built at a high level of abstraction and using MDA based tools, transformed into models and code targeting a specific platform or domain. Enterprise Architect has a rich set of tools built-in to support MDA.
As a contributing member of the Object Management Group, Sparx Systems understands the importance of open standards to communicate effectively to a wide range of stakeholders. To this end, Enterprise Architect helps you to:
- Visualize systems using the latest UML 2.5 notation
- Document and describe business processes with BPMN 2.0
- Model and simulate systems engineering projects with SysML 1.3
- Leverage numerous other open modeling standards all in the one modeling environment!
"Business Models are graphical representations of business processes, software and systems in an easy-to-understand visual format. These models are used to efficiently and accurately analyze and design business systems and IT strategy."
Software and systems are increasingly at the core of business operations and crucial to supporting innovation. In the constant cycle of adaptation and change, those responsible for designing and implementing IT systems need to be know how their systems behave and interact, in order to get an integrated view of what is, what could be, and how to get there.
Business modeling allows professionals like Business Analysts to model and analyze existing software, processes, databases, etc., to optimize, integrate and adapt them effectively. Business modeling in Enterprise Architect keeps IT solutions in-line with businesses strategy, with traceability from corporate strategy through to code. It further supports collaboration so stakeholders and teams share the same view.
Enterprise Architect extends the Universal Modeling Language (UML) (the de-facto standard for modeling software and systems), to support industry-standard Business Modeling techniques in an easily understood and traceable manner.
One popular notation among business analysts is the Business Process Modeling Notation (BPMN). This notation specifically targets the business modeling community and is mapped to UML through a BPMN Profile. Enterprise Architect provides built-in support of the latest BPMN 2.0 profile.
Requirements are created as elements directly within the model with interrelationships and dependencies.Data including short descriptions of the requirement, status, difficulty, priority, type, functional, non-functional, etc. are included.
Dashboard diagrams display repository information in a visually compelling way such as charts and graphs depicting for example, Requirement Priorities.
Business Rules are used to define the implementation of a policy. In Enterprise Architect Business Rules can be traced to Policies (from which they derive), Requirements (which they realize) and the application services that implement them.
Describes the primary strategic goals that are important to an organization or business team.
Used to simulate business processes in BPMN diagrams with operational data. The resulting information is then used to compare and contrast solutions.
Mind Mapping diagrams are a flexible, visual way of conveying and analyzing conceptual thinking. It can be well suited to collaborative discussions, problem solving, brainstorming, presenting complex ideas and decision making.
Used to describe systems and interactions between a user and the system.
Documents and models repeatable decisions, which can then facilitate the sharing of decision models between organizations.
Defining the roles, responsibilities and reporting structure of an organization.
- Business Modeling Guidebook
- Requirements Management Video Collection
- UML Tutorial
- Modeling Basics - Creating UML Class Models with Enterprise Architect
- Requirements Engineering in Enterprise Architect
- Requirements Management using Enterprise Architect's Specification Manager
- Using Enterprise Architect and the BABOK® Guide v3 to achieve better business outcomes
There are numerous approaches to business process modeling (BPM) using UML as the base modeling language. In particular, Activity diagrams, Object diagrams and custom Profiles provide a wealth of modeling possibilities for BPM analysts to use. Enterprise Architect complements the basic UML 2.4 language palette with custom analysis, requirements management and process management elements (such as change, feature and issue elements).
One popular notation among business analysts is the Business Process Modeling Notation (BPMN). This notation specifically targets the business modeling community and is mapped to UML through a BPMN Profile. Enterprise Architect provides built-in support of the latest BPMN 2.0 profile.
BPMN 2.0 models are simulated using Enterprise Architect's built-in simulation engine. This allows you to dynamically examine process flows, validate the model and collect timing and resource information on proposed or legacy processes with a view to business process improvement.
Enterprise Architect generates Business Process Execution Language (BPEL) scripts from BPMN models. Generated BPEL scripts can then be executed using a third-party execution engine. Specific model validation rules help to ensure that models generate valid BPEL code.
Enterprise Architect allows you to capture conceptual, logical and physical data models with one tool in the same model repository. You can import schemas from existing databases or automatically generate database scripts from your modeled schema, providing end-to-end traceability from concept to implementation.
Enterprise Architect's built-in Data Modeling profile extends the UML to provide an intuitive mapping from the database concepts of tables and relationships onto the UML concepts of classes and associations. These extensions model database keys, triggers, constraints, RI and other relational database features. Enterprise Architect also supports Entity-Relationship (ER) notation.
When designing or documenting databases, Enterprise Architect will help to:
- Create a Data Model diagram to visualize your database schema
- Create tables and views
- Create columns, primary keys, foreign keys
- Create stored procedures
- Create indexes, sequences, functions and triggers
- Generate DDL for a table or an entire package
- Convert datatypes for a table, package or entire DBMS
- Import a database schema from an ODBC data source.
Enterprise Architect models and generates database schemas for numerous DBMS products:
- Microsoft Access
- Microsoft SQL Server
Gathering requirements is typically the first step in developing a solution, be it a software application or a business process. Requirements are essentially what the system needs to do.
Enterprise Architect's built-in requirements management features help you to:
- Define an organized and hierarchical formal requirements model
- Clearly differentiate requirement types, such as functional and non-functional requirements
- Link and trace system requirements to analysis and design elements and implementation artifacts
- Search on requirements and perform impact analysis with respect to requirement changes
- Generate custom reports or a complete requirements specification directly from the model
- Create custom attributes or properties appropriate to your organization or project
- Relate formal requirement elements directly to use case scenario steps, connecting early analysis artifacts to subsequent system development.
Enterprise Architect is distinguished among UML tools by its built-in requirements management capabilities. Being able to create requirements directly in the model resolves a number of traditional development issues such as traceability, interdisciplinary team divisions, integration with change and configuration management systems.
Enterprise Architect allows you to maximize connectivity of the requirements model with downstream processes, external artifacts, such as files or other resources, and technical documentation including architecture and implementation models.
See it in action!
Enterprise Architect supports model-based engineering of spatial data and geodatabase designs to aid development of geographic information systems (GIS). Interoperable spatial data is modeled in Enterprise Architect using Open Geospatial Consortium's Geography Markup Language (GML).
You can also design commercial geospatial databases specifically for the ArcGIS platform developed by Esri Inc. Enterprise Architect provides a built-in UML profile for ArcGIS, which means your spatial database design is directly traceable to your corporate information model and leverages industry standard modeling notation. You can export geodatabase models to ArcCatalog as an XML Workspace document that contains feature class definitions, feature datasets, spatial references, domains and more.
Existing spatial databases can be documented and visualized with ease - simply pass the XML Workspace document to Enterprise Architect and reverse engineer the ArcGIS geodatabase schema!
Enterprise Architect supports the latest ArcGIS 10.1 platform and the GML 3.2.1 specification.
The UML Profile for GML was released as a beta implementation with Enterprise Architect 10.0.
ArcGIS and ArcCatalog are trademarks, registered trademarks, or service marks of Esri in the United States, the European Community, or certain other jurisdictions.
Strategic Modeling enables an organization to plan for the future and make decisions in accordance with its mission and values. Enterprise Architect can model every stage of the planning and development process, taking an idea 'from the clouds to reality'.
You can document initial concepts using mind mapping diagrams and capture important strategic goals, business objectives and structure using:
- Strategy Maps
- Value Chains
- Decision Trees
- Balanced Scorecards
- Flow Charts
- Org. Charts.
Each of these high-level models can be traced directly to the analysis and design of systems and business processes that implement corporate strategy helping to verify that resources are committed to initiatives that reflect business priorities.
Integrating many high-end features for systems engineers, the Ultimate and Unified editions of Enterprise Architect provide SysML modeling, parametric model simulation, executable code generation, and model-to-code transformations for Hardware Description Languages (HDLs) and Ada 2012.
Enterprise Architect enables you to develop SysML models quickly and simply, through a tightly integrated profile. The SysML profile for Enterprise Architect supports each of the nine SysML 1.4 diagram types and model guidance using the Quick Linker.
The Systems Engineering and Ultimate editions of Enterprise Architect also provide simulation of SysML Parametric diagrams. This supports engineering analysis of critical system parameters, including the evaluation of key metrics such as performance, reliability and other physical characteristics.
Enterprise Architect can associate detailed behaviors with UML Activity and Interaction elements, allowing for executable code to be generated from Interaction (Sequence) and Activity models. This allows for more than just code stubs to be derived from models, by generating any nested behavioral models that define executable statements such as conditional logic, looping constructs and assignments.
The Systems Engineering and Ultimate editions of Enterprise Architect support code generation from State Machine models into Hardware Description Languages (HDLs) such as VHDL, Verilog and SystemC.
- Specify system requirements, design deeply-nested structures of systems using blocks and block diagrams.
- Analyze system-to-system behavior using Interaction Diagrams, Activity Diagrams and State Charts.
- Define system dynamics and enforce correctness with parametric and constraint blocks.
- Includes support for simulating constraint models with results graphing capabilities. Simulate the behavior of Activity, State, Business Process, User Interface and Interaction Models.
- Verify system behavior, manage complexity, control execution and understand complex systems.
- Specify Data-Centric Publishers, Subscribers, Topics and QoS Policies.
- Define Data Local Reconstruction mappings for effective DDS data access.
- Create heterogeneous DDS applications across different host environments.
- Drive rapid downstream development with automatic test generation and Structured Scenarios with automatic Activity diagram creation.
- All 14 UML 2.4.1 diagrams supported!
- Generate functional code directly from UML State, Activity and Interaction models.
Scripting and Automation
- Extend the core toolset and take advantage of Enterprise Architect’s repository with it’s powerful Automation Interface.
Visualize, Validate, Debug & Profile
- Better understand the workings of your software with the Visual Execution Analyzer.
- Define Test Points using Programming by Contract principles.
- Manage your teams, workload, projects and requirements from the one platform.
- Streamline your projects with version control and model security.
- Deliver a consistent message with built in RTF, HTML and PDF documentation.
- Use model documents, custom reporting and report templates for consistent, up to the second project reporting.
Testing and Quality Control
- Employ auditing, baseline comparison, issue, bug and change tracking to help you meet and exceed project requirements and quality levels.
- Keep everyone on the same page with the powerful integrated project glossary!
Proven tools to visualize, create and plan. Guide your vision from concept to design, build, delivery and beyond.
A scalable and multi-user, domain-specific modeling platform. Coupled with technologies like SysML and DDS; Enterprise Architect is the complete systems modeling environment.
With over 850,000+ effective users in 130+ countries around the world, Enterprise Architect is the trusted, award winning, UML powered modeling platform with a proven track record for delivering Systems, Software and Business solutions globally.
Download your FREE Trial today and discover how Enterprise Architect helps you ‘Think it Through’.
UML and SysML are trademarks of Object Management Group, Inc. in the United States and/or other countries.
Radically transform the business value of SysML
Enterprise Architect helps you to define test specifications, execute tests and record results directly from model elements. Keeping model elements and testing documentation in one integrated model can significantly improve the communication between quality assurance teams, software developers, analysts and architects.
Enterprise Architect provides the tools you need for numerous test-related activities including:
- Testpoint management, which provides powerful model-based test execution. You can define Testpoints on your system design elements, execute these in the modeling environment and record the results in real-time as your application runs - without the need to manually construct test harness code. Testpoints can also be aggregated into reusable Test Suites, saving you valuable time.
- Test specification: You can attach detailed test specifications to any element in Enterprise Architect, along with a record of test results, when tests were last run, and by whom. Unit, System, Integration, Acceptance and Scenario tests can all be captured and reported on, providing tight traceability between architecture and test information. Enterprise Architect can even automatically generate test cases from your structured Use Case scenarios!
- JUnit and NUnit support: Enterprise Architect provides model transformations that automatically create testing elements from your system design elements. Code stubs can then be automatically generated by Enterprise Architect, allowing you to focus on defining the testing logic. You can compile, execute and record test results using your unit testing program, all without leaving Enterprise Architect.
Enterprise Architect is not only a modeling environment, it is also a complete Test Management environment.
One of the key principles of unit testing is that you should always write your tests first. Enterprise Architect helps you to do this. When you add a new method to a class, run the test case transformation on the class. Enterprise Architect creates a corresponding test method that you can generate and fill in the details. This can easily be done before the code you are testing has been created.
Enterprise Architect's user interface consists of a range of high-impact windows, menus and toolbars that you can arrange to suit your work methods.
User Interface Tools
The Project Browser
The Project Browser displays the model hierarchy of your project and facilitates adding, selecting, reorganizing or deleting packages, diagrams and elements.
The Diagram Toolbox
The Diagram Toolbox, which is context-sensitive to the diagram being edited, and provides an efficient means of creating appropriate model elements or connectors.
The Diagram View
The Diagram View, which brings the model to life visually:
- Stylize and color connectors and elements for enhanced presentation and identification
- Display diagrams in 'Hand-drawn' and 'Whiteboard' styles to denote draft status and encourage feedback
- Edit multiple views concurrently, easily transferring elements between several open diagrams
- View elements in tabular or list format, browse search results, trace seamlessly between visual representations and underlying source code, and more...
Context menus provide options specific to the type of object and its environment.
Floating diagram and docking views
It is often useful to see multiple views simultaneously for comparisons, editing of related diagrams or referring to downstream representations of a given model. Enterprise Architect allows you to open several diagrams at once and dock these anywhere on screen.
You can do the same for other views, such as:
- Model Search
- Linked Document Editor
- Source Code Editor
- State Table
- Element List
This means, for example, you can edit a diagram with all its related views immediately visible. Easily move or copy elements between open diagrams and can take advantage of large or multiple monitors. Maintain context and continuity between editing sessions simply by saving your window layouts and open views to a Working Set in Enterprise Architect.
In-line editing of diagram elements
Enterprise Architect enables fast editing of element properties directly from the diagram. Using in-place edit commands, you can rapidly add and update element features such as attributes, operations and parameters, all without leaving the Diagram View. Rapid editing of diagram elements is further enhanced by numerous keyboard shortcuts for creating and connecting elements.
- Export diagrams to a range of image formats (.bmp, .jpg, .png, .gif, .emf and .wmf)
- Swimlanes enable logical partitioning of diagrams
- Pan and Zoom window provides a preview and easy navigation of complex diagrams
- Diagram Filters dynamically compare 'as-is' and 'to-be' architectures or highlight changes
- Compare and merge diagram baselines visually and roll-back changes between revisions
- Locks on diagrams prevent accidental modification
- Shape Scripts customize rendering of elements and support alternative modeling notations
- Alternative Images can be superimposed on elements, to replace the standard image.
Model and application patterns
Enterprise Architect ships with a number of predefined model and application patterns to assist in the creation of new projects and models. Each pattern contains useful notes, references and starter elements that together provide a framework on which you can build your model. For example, Enterprise Architect includes Java and .Net application patterns that get you started with a basic implementation model, generated code and appropriate scripts to build, run and debug your application.
Model validation checks UML and SysML models against known rules from the specification, as well as any constraints defined within the model using the Object Constraint Language (OCL). You can perform model validation against a single UML element, a diagram or an entire package. The Model validation capability is therefore a powerful tool during your model review review process.
The production of documentation is essential to realizing the full benefit of Enterprise Architect. Enterprise Architect generates high quality documentation in RTF, PDF and HTML formats. You can easily report on an entire project, selected parts of the model, or even group packages together in a manner different from the project view using Virtual Documents or Model Searches.
Rich-Text Format (RTF) reports
Compatible with Microsoft® Word® or OpenOffice, Enterprise Architect's RTF document generator is capable of creating entire specification documents directly from the model. Documents are generated from customizable templates, helping you to create reports and project deliverables that suit your corporate standards. You can selectively include or exclude specific information items to create tailored reports for a wide range of stakeholders. To reach a wider audience, reports can also be generated in PDF format.
The HTML report writer
Enterprise Architect can export an entire model or a single branch of the model to HTML pages for convenient browsing via the web or corporate intranet. The HTML report provides an easy-to-use and highly detailed model tree. In addition, hyperlinked elements make browsing to related information very easy. The HTML documentation is based on user-customizable HTML templates, so you can tailor the generated web-pages to suit your company's standards.
Built-in document editor and linked documents
Enterprise Architect can attach rich-text documents to any element in the model. These Linked Documents are created from customizable templates and are included in generated web and Rich-Text Format reports. Linked Documents thus provide a way to reuse and trace to existing office documentation, or to associate rich, free-form information with model elements.
Structured use case scenarios
Use case scenarios capture vital analysis information using natural language. Enterprise Architect's Structured Scenario editor lets you use this information to drive downstream development and maximize traceability across the development life-cycle.
You can link scenario steps to domain elements, business rules and glossary terms. From structured scenarios, you can generate test cases, Activity diagrams and other UML behavior diagrams. You can even reverse engineer existing process diagrams into structured, textual specifications to produce documentation deliverables.
Traceability helps to identify the way a given requirement or process has been implemented in a system, enabling you to follow the path of dependencies from the initial request, through a modeled solution and up to the deployed physical system or process.
Enterprise Architect's Auditing feature tracks and record changes made to the model over time. Model administrators can use Auditing to monitor information about changes, such as:
- Who changed an element
- How many elements they changed
- When they changed the data
- What the previous values were, and
- What type of elements they changed
The Audit View can be tailored to display specific types of change, and to filter changes by time period or user.
Gap and dependency analysis
Gap Analysis Matrix
Enterprise Architect's built-in Gap Analysis Matrix helps you to model gaps between your as-is and to-be architectures. The matrix provides a convenient interface for defining and monitoring identified gaps elements, which can be traced to other elements in the enterprise model.
The Relationship Matrix helps you to study the relationships between model elements in a tabular view. Use it to easily identify traceability gaps and to conveniently create, modify or delete relationships. Document which relationships form CRUD operations using textual overlays, or customize the matrix overlays to suit your particular modeling domain.
The Traceability Window provides a dynamic, navigable view of the current element's relationships to other elements in the model. Relationships shown include Aggregation, Inheritance and Dependency; embedded elements are also shown. By highlighting interconnections between levels of abstraction in the model, the Traceability Window provides a powerful impact analysis tool helping you to see the effect of changing requirements on downstream elements.
Finding Elements and Searching Meta-data
The powerful Model Search facility retrieves each element in the model that meets the versatile criteria you define. The elements listed in the search results are selectable for printing, reporting, editing, adding to documentation and inserting into Team Review topics.
Enterprise Architect's Model Views window provides a dynamic, filtered view of elements from the underlying model hierarchy. You can organize elements according to search criteria, favorite elements and diagrams, or technology-specific information, such as elements belonging to a particular framework view point. Views can be stored locally for use by individuals or included in a shared repository to achieve collaborative views. Automatic notifications can be set for a given Model View to alert you when an element created by another author is added to the view.
The Element Browser provides a context-sensitive view of all meta-data related to the selected element. This allows you to trace information on testing, project management, structured scenarios, maintenance and model semantics. The Element Browser thus provides a central hub for dynamic model reviews and a launchpad for related actions.
The Package Browser is a tabular, editable view of elements use it to streamline the process of creating and updating elements in a given package. This can be particularly useful for analysts to edit formal requirement definitions within the model. You can also print the list or generate an RTF document directly from the entries in the Package Browser.
Track element usage
Enterprise Architect makes it easy to track and display the use of an element. The 'Find' and 'Usage' features for Enterprise Architect's diagrams, Project Browser and Package Browser show all occurrences of a given element throughout the model, and enables you to easily navigate to any occurrence.
Create diagrams with related elements
Enterprise Architect can automatically populate a diagram with all elements that relate to a given element. You can filter the inserted elements based on the type, direction and depth of the relationship. The 'Insert Related Element' feature provides a fast and powerful way to build up specific relationship overviews for your frameworks or reverse engineered source code.
Enterprise Architect supports a variety of useful out-of-the-box reports including: Resource and Task Details, Project Issues, Project Glossary, Project (size) Statistics, Dependency and Implementation Details and Testing Details.
Enterprise Architect offers specific functionality for sharing projects in team-based and distributed development environments. Projects can be shared through network deployment of model repositories, replication, XMI Import/Export, Version Control, Package Control and User Security.
Support for large models and many concurrent users
The Corporate Edition of Enterprise Architect enables the use of dedicated DBMS (server based) repositories rather than the standard .EAP files to store shared model data. Enterprise Architect supports the following DBMSs as model repositories:
- MS SQL Server
- MS Access 2007
Role-based (user) security in Enterprise Architect helps you to control access to various editing functions by requiring that authors log in to the model with certain privileges. It also allows model authors to lock elements per-user or per-group.
This can help to improve collaborative modeling by preventing different users unintentionally editing the same information at the same time. It also limits the possibility of inadvertent model changes by users not designated as model authors.
XML import and export
Enterprise Architect supports an XML-based model interchange format known as XML Metadata Interchange (XMI). You can use Enterprise Architect's XMI facility to share model information between developers. XMI enables you to export discrete packages or entire model branches into XML files, which can be imported into other models or maintained in a version control repository.
The Team Review facility
The Enterprise Architect Team Review facility helps users to discuss the development and progress of a project. Team members can view and post messages within the modeling environment and can link their posts directly to elements within the model. For distributed team environments, users can connect their Enterprise Architect model to a Team Review hosted in a remote model repository.
Enterprise Architect provides support for managing your project. Project managers can use Enterprise Architect to assign resources to elements, to measure risk and effort and to estimate project size.
Project estimation with use case metrics
The Use Case Metrics capability within Enterprise Architect makes it easy to assess the relative complexity of a software project, based on the number and type of use cases within the model, and on the type of development project and the capabilities of the development environment.
With experience, the use case metrics approach is a great way to quickly assess the scope of a project.
Enterprise Architect can store resource information along with the model. This helps to connect the Project Manager and development team, allowing for up-to-the-minute reporting and assessment of how a project is developing.
What 'hot spots' have occurred, what elements are overdue and other critical resource issues can be tied directly to model elements and searched with ease using the comprehensive Model Search facility.
Enterprise Architect adds a model glossary to each development project, making it simple to define and disseminate new terms and definitions, which may be unfamiliar to team members new to the project or the problem domain.
Model tasks, Gantt View and Project Calendar
Tracking, prioritizing and assigning tasks is a critical part of managing a model's development over time. Enterprise Architect allows you track model tasks against individual resources and against the project as a whole. Task allocations can be viewed as a Gantt chart, allowing you to monitor progress visually.
The built-in Project Calendar allows you to define and track important events, milestones and meetings directly within the modeling environment. Each model author has access to a personalized view of the project via the Personal Information window, which allows users to record progress of their own tasks, send and receive Model Mail and define Working Sets of diagrams and other views specific to their roles.
Enterprise Architect supports version control of model packages and their sub-packages. Package revisions can be stored and managed in an Enterprise Architect project directly, or they can be maintained using a dedicated third-party version control application.
Apply Version Control
Applying version control to Enterprise Architect models provides two key benefits:
- The ability to coordinate sharing of packages between users
- A history of changes to Enterprise Architect packages, facilitating retrieval of prior versions.
Enterprise Architect supports Subversion, CVS and Microsoft Team Foundation Server (TFS) version control applications, as well as any version control product that complies with the Microsoft Common Source Code Control (SCC) standard, version 1.1 or higher. For example Visual Source Safe or Clear Case.
Model baseline, compare and merge
Enterprise Architect Corporate edition provides a facility to 'Baseline' (snapshot) a model package at a particular point in time. The baseline can then be used with Enterprise Architect's Compare (diff) utility to visually explore changes to the package, its elements or its diagrams at a later point in development. Differences can be merged from the baseline into the current model, allowing you to 'roll-back' changes to a previous revision of that package. Multiple users can thus contribute revisions to a package offline and later incorporate them back into the common model.
Baseline Diagram Comparison
A powerful diagram compare utility helps you to visually analyze changes to diagrams between revisions. Color-coded change items and connectors help you to see what has been added, deleted or moved in the diagram with the ability to instantly restore any element to a previous state if required.
As well as comparing and merging changes from a baseline stored within the current model, Enterprise Architect's Compare utility allows you to compare a package against:
- A file on disk, created using the Enterprise Architect XMI export facility on the package
- A version-controlled XMI file for the selected package
- Any baseline of the package residing in an external model to which you have access.
Sparx Systems supports industry-standard architectural frameworks to facilitate enterprise modeling.
Enterprise architecture frameworks
Framework implementations in Enterprise Architect are based on the UML and its related specifications, which maximizes architectural rigor and allows users to exchange enterprise model information using standards such as XMI. The following architectural frameworks are available as plug-in extensions to Enterprise Architect:
In addition to architectural frameworks, Enterprise Architect has built-in support for The Open Group's latest ArchiMate 2.0 enterprise modeling notation.
Service oriented architecture (SOA)
Enterprise Architect implements the OMG's Service oriented architecture Modeling Language (SoaML), which provides a standards-based approach to modeling SOA solutions using the UML.
As a natural complement to SoaML, Enterprise Architect also supports the Service Oriented Modeling Framework (SOMF), which encourages a holistic view of enterprise software entities via a technology-independent notation. The SOMF modeling notation provides an intuitive approach to visualize 'used-to-be', 'as-is' and 'to-be' states of the enterprise service portfolio.
XSD and WSDL capability
Enterprise Architect can model, forward engineer and reverse engineer two key W3C technologies: XML Schema (XSD) and Web Service Definition Language (WSDL).
XSD and WSDL support is critical for the development of a complete Service Oriented Architecture. The coupling of UML with XML provides a natural mechanism for specifying, constructing and deploying XML-based SOA artifacts within an organization.
Enterprise Architect's XSD and WSDL capabilities also support BPEL generation from UML models.
Enterprise Architect provides the capability of executing Model Driven Architecture (MDA) transforms. It provides a fully configurable method of converting model elements and model fragments from one domain to another. This typically involves converting Platform-Independent Model (PIM) elements to Platform-Specific Model (PSM) elements. A single element from the PIM could be responsible for creating multiple PSM elements across multiple domains.
Transformations are a huge productivity boost, and reduce the need to manually implement stock classes and elements for a particular implementation domain. For example, database tables can be automatically derived from persistent PIM classes.
Enterprise Architect's MDA capabilities allow you to:
- Leverage built-in transformations to automatically derive:
- Data Models (DDL)
- Code Models, including C# and Java
- XML models, such as XSD and WSDL
- Test Models for JUnit and Nunit
- Activity diagrams and test scripts from Structured Use Case Scenarios
- Define new transformations using a powerful, template driven approach
- Repeat transformations to ensure consistency between source and target models as they change over time.
Document your Cloud Architectures using Icon Sets
Model cloud architecture diagrams in Enterprise Architect to align strategy, analysis and deployment. Enterprise Architect combines the strength of architectural models with the convenience of Amazon Web Servces (AWS), Microsoft Azure and Google Cloud Platform (GCP) architecture icons, for exceptional diagramming power and clarity.
Access a range of Model Patterns and deliver your deployment architecture faster.
Rapidly Build Diagrams
Use the range of Model Wizard patterns to select and generate deployment architecture diagrams saving time and development costs. View the complete range of model pattens in our Diagram Gallery.
Simply drag and drop architecture icons from the toolbox onto your diagram to quickly adapt and build diagrams.
Complete Modeling Platform
Use the traceability features to connect your cloud architecture to your modeling on strategy, testing, analysis, cloud requirements and deployment.
Enterprise Architect is a powerful platform that can be used to define the strategic context for architectural strategy, the architecture itself, and the implementation initiatives that realize those designs.
Publish and share your architectural diagrams with those that matter most using documentation generation, WebEA, and Prolaborate. Ensure that stakeholders and implementation teams can access and provide instant feedback, stored within the model.
Build a View of Your Enterprise
Enterprise Architect helps organizations model and manage complexity. By integrating and connecting a wide range of structural and behavioral information spanning systems, software, processes and architectures, you can build a coherent, verifiable model of what-is or what-will-be.
Code engineering encompasses automated code generation, reverse engineering of source code and synchronization between the source code and model. Enterprise Architect supports code engineering for more than than ten programming languages out of the box!
10+ Languages out of the box
- C++ (and .NET managed extensions)
- Java (including Aspects and Generics)
- Visual Basic
- Visual Basic .NET
- Hardware Description Languages - HDLs (Ada, VHDL more.)
Import .jar files and .NET assemblies
In addition to source code files, Enterprise Architect reverse-engineers binary modules from:
- Java Archive files (.jar)
- .Net PE files (.exe, .dll)*
- Intermediate Language files (.il)
Customizable source code generation
Enterprise Architect's Code Template Framework provides powerful, flexible forward engineering of UML models into source code. Code templates specify customizable transformations from UML elements into a target programming language. This means you can tailor generated source code to suit your standards. Furthermore, you can use the Code Template Framework to forward engineer additional languages, that not already built into Enterprise Architect.
On-demand and live-generation of code
Enterprise Architect provides a Live Code Generation feature that automatically updates your source code as you make changes to your model.
For example, when you create new operations and attributes for a class in the model, these are instantly written out to the source file.
Built-in syntax highlighting source code with dynamic source 'outliner'
You can use the built-in source code editor to open, view and modify source code files. Simply select an element in the model and the editor displays its source code with syntax highlighted and a navigable code outline.
Use the editor's toolbar to quickly generate code or synchronize the model.
Enterprise Architect's Visual Execution Analyzer provides facilities to model, develop, debug, profile and manage an application from within the modeling environment.
Outputs generated by the Visual Execution Analyzer benefit the development process by:
- Giving you a better understanding of how your system works
- Enabling you to document system features automatically
- Providing information on the sequence of events that lead to erroneous events or unexpected system behavior.
Analysis tools provided by the Visual Execution Analyzer can be used to:
- Generate Sequence diagrams, recording live execution of an application or specific call stacks. Visualize how multiple instances of each class interact at run-time
- Derive State Transition diagrams, illustrating changes in data structures
- Dynamically build Object diagrams as you control a debug session. Selectively add objects with their run-state information and their relationships to other objects
- Create Profiler reports, showing application sequences and operation call frequency
- Optimize existing system resources and understand resource allocation
- Ensure that the system is following the rules as designed
- Produce high quality documentation that accurately reflects system behavior
- Understand how and why systems and existing code work
- Train new employees in the structure and function of a system
- Identify costly or unnecessary function calls
- Illustrate interactions, data structures and important relationships within a system
- Trace problems to a specific line of code, system interaction or event
- Visualize why a sequence of events is important
- Establish the sequence of events that occur immediately prior to system failure
- Debug .Net, C++ and Java applications, including remote debugging and support of Android physical devices and emulator using the JDWP protocol.
Enterprise Architect's model simulation brings your behavioral models and user interface designs to life with real-time execution.
Simulating models offers several benefits by helping you to:
- Gain a better understanding of how a model actually works at run-time
- Validate that your behavioral models describe the correct process or event flow
- Verify the behavior of user interface wire-frames before committing to implementation
- Identify potential bottlenecks, inefficiencies and other problems in your system model or business process
- Detect errors early in the development cycle prior to committing resources for implementation.
Model simulation can be applied to four types of behavioral models in Enterprise Architect, including:
- UML Activities
- UML Interactions
- UML State Machines, including those rendered as a State Table
- Business Process Models using BPMN notation.
You can also simulate the behavior of dialogs and controls that have been modeled using Enterprise Architect's Win32 profile for user interface designs.
You control the speed of the simulation and the pathways through the simulated model: Either manually control the choices taken at each decision point or script in advance how each trigger fires.
Using the latter approach you can automate several simulations of the same model, revealing how the system behaves under different run-time scenarios.
With the ability to set arbitrary breakpoints, Enterprise Architect's model simulation capability is a powerful tool for analyzing decision making, and improving business processes or executable system models in a risk-free environment.
Enterprise Architect provides numerous facilities for extending functionality that is provided with the tool out-of-the-box. Users are able to expand the range of modeling notations for specific domains, add custom modeling resources such as model patterns, or even implement entirely new tools that operate on the model using the automation interface and add-ins.
UML Profiles extend the UML language for constructing models in particular domains. Enterprise Architect has a generic UML Profile mechanism that allows users to create, share and use profiles as seamless extensions to the core modeling environment.
For example, the UML Profile for XML Schema defined by David Carlson in Modeling XML Applications with XML is available for Enterprise Architect. This profile describes a set of extensions to UML class models for accurate modeling of XSD schemas.
Enterprise Architect's support for Patterns provides an excellent means of achieving re-use and robustness. Patterns represent a group of collaborating objects and classes that can be abstracted from a general set of modeling scenarios.
As patterns are discovered in any new project, the basic pattern template from previous engagements can be re-used with the appropriate variables renamed to suit the current project.
Patterns generally describe how to solve an abstract problem, and it is the task of the pattern user to modify elements in the pattern to meet the demands of the current engagement.
MDG Technologies encapsulate a logical collection of resources (such as patterns and profiles) that pertain to a specific technology or modeling domain. These are 'pluggable' resources for Enterprise Architect that reside either in a physical directory or URL.
Users may create their own MDG Technologies with the aid of Profile Helpers, which guide you through the process of creating a UML profile, associated toolboxes and new diagram types. Furthermore, users can take advantage of MDG Technologies that are packaged with the Enterprise Architect installer, such as ArchiMate and Mind Mapping. Free plug-in technologies that support such activities as CORBA code engineering and BPMN model validation are also available for download from: http://www.sparxsystems.com/resources/mdg_tech.
The Automation Interface enables you to access the internals of Enterprise Architect models. For example, using the Automation Interface you could:
- Perform repetitive tasks, such as update the version number for all elements in a model
- Generate code from a state machine diagram
- Produce custom reports
- Execute ad hoc queries against the model
All development environments capable of generating ActiveX Com clients should be able to connect to the Enterprise Architect Automation Interface.
Add-ins enable you to add functionality to Enterprise Architect and extend its user interface. Enterprise Architect's Add-in framework builds on the Automation Interface, providing several key advantages over stand-alone automation clients:
- Add-ins can define Enterprise Architect menus and sub-menus
- Add-ins receive notifications about various Enterprise Architect user-interface events including menu clicks and file changes
- Add-ins can (and should) be written as in-process (DLL) components; this provides lower call overhead and better integration into the Enterprise Architect environment
- Because a current version of Enterprise Architect is already running there is no need to start a second copy of Enterprise Architect via the automation interface
- Because the add-in receives object handles associated with the currently running copy of Enterprise Architect, more information is available about the current user's activity, such as which diagram objects are selected
- You are not required to do anything other than install the add-in to make it usable; that is, you do not have to configure add-ins to run on your systems
The Sparx Systems Pro Cloud Server application provides a convenient mechanism for hosting models. It provides easy access to people within your team, and optionally to external customers and consultants anywhere around the world.
This page aims to do the following:
- Familiarize you with the concepts involved
- Highlight the main functionality available with the Pro Cloud Server
- Discuss considerations for when and where you should use a Pro Cloud Server
Introducing Pro Cloud Server for Enterprise Architect
Enterprise Architect models are stored in databases. Prior to the introduction of Pro Cloud Server (and its predecessor, Cloud Services), Enterprise Architect required users to install the appropriate drivers for each DBMS they connected to and in some cases define a ODBC DSN to each database. Enterprise Architect would then use the ODBC DSN to connect directly to the database and retrieve data from the model. With the introduction of the Pro Cloud Server all that is needed is a URL to the model, which provides the following extended benefits:
- The process of setting up drivers and connections can now be performed once by an administrator during the server configuration. The only set-up required on a user machine is to install Enterprise Architect and connect to any model required on the cloud server.
- Database servers no longer need to be exposed through a firewall. The Pro Cloud Server can be run from inside a corporate firewall. All model connections are now created using http allowing firewalls to completely isolate your database server.
- A Pro Cloud Server can be configured to ensure all communication is encrypted. Using standard TLS/SSL protocols, you can be sure that your data is not intercepted during transmission on insecure networks.
- A Pro Cloud Server can be configured to provide http level authorization to any model directly from the model user list. Even when the model is exposed on a public network you can be assured that only authorized users are able to access your model.
In addition to the core functionality of providing a model over a http connection, Pro Cloud Services offer three standard features that add further incentives for setting up a server.
Open Services for Lifecycle Collaboration (OSLC) v1
Open Services for Lifecycle Collaboration (OSLC) is an initiative to allow easier integration between requirement tools. It uses HTTP to list, add, modify and delete requirements.
The service provider definition to direct any OSLC client to will be:
For example, if you are connecting to a server running on your own machine using the default settings the connection will be:
See http://open-services.net/ for more information.
Re-usable Asset Service
The re-usable asset service (RAS) portion of the Pro Cloud Server allows packages to be defined that can be used in any model. Enterprise Architect and the Pro Cloud Server will track cross-package dependencies and ensure everything required by a package is available when a package is requested.
The Pro Cloud Server includes optional support for running time based updates to data.
At this stage this is limited to updating a Time Series chart automatically to provide a dynamic view into how a model is changing over time. Please see the Enterprise Architect help file for more information.
In addition to the standard functionality, the purchase of a Pro Cloud Server license adds even more functionality, like:
WebEA provides a real-time view of content contained in an Enterprise Architect Cloud repository to be shared with anyone with a smart phone, tablet or computer simply using a web-browser.
The Integrations feature provides the ability to link Enterprise Architect elements to objects and elements within external systems. External Systems such as: Dropbox, Jira, Share Point. For a full list of supported external systems see user guide.
Prolaborate provides the ability to create fully customized views of your Enterprise Architect models, thereby allowing views to be tailored for different user groups.
- Customizable views
- Limit what parts of the model each user can view
- Rich user experience
- Social Collaboration
- Interactive Graphs and Charts
Open Services for Lifecycle Collaboration (OSLC) v2
Version 2 of Pro Cloud Server's implementation of OSLC has greater expanded the amount and type of model information that can be retrieved, added, modified and deleted.
The OSLC v2 implementation is what powers both WebEA and Prolaborate!
When to use a Pro Cloud Server
A Pro Cloud Server offers benefits whenever:
- You would like to reduce the set-up requirements for each of your users
- You would like to expose any models outside of a private network
- Any users are connecting over slow connections
Use the links below to access more documentation, webinars and trial.