Sparx Systems Enterprise Architect is a visual modeling and design tool based on the
OMG
OMG may refer to:
* Oh my God (sometimes also Oh my Goodness or Oh my Gosh), a common abbreviation, often used in SMS messages and Internet communication
Acronyms
* OMG is the IATA code for Omega Airport, Omega, Namibia
* Operational manoeuvre ...
UML
The Unified Modeling Language (UML) is a general-purpose, developmental modeling language in the field of software engineering that is intended to provide a standard way to visualize the design of a system.
The creation of UML was originally ...
. The platform supports: the design and construction of software systems; modeling business processes; and modeling industry based domains. It is used by businesses and organizations to not only model the architecture of their systems, but to process the implementation of these models across the full
application development life-cycle.
Overview
Systems modeling using UML provides a basis for modeling all aspects of organizational architecture, along with the ability to provide a foundation for designing and implementing new systems or changing existing systems. The aspects that can be covered by this type of modeling range from laying out organizational or systems architectures,
business process reengineering
Business process re-engineering (BPR) is a business management strategy originally pioneered in the early 1990s, focusing on the analysis and design of workflows and business processes within an organization. BPR aims to help organizations fund ...
, business analysis, and service-oriented architectures and web modeling,
through to application and database design and re-engineering, and development of embedded systems.
Along with system modeling, Enterprise Architect covers the core aspects of the application development life-cycle, from
requirements management
Requirements management is the process of documenting, analyzing, tracing, prioritizing and agreeing on requirements and then controlling change and communicating to relevant stakeholders. It is a continuous process throughout a project. A requi ...
through to design, construction, testing and maintenance phases, with support for traceability,
project management
Project management is the process of leading the work of a team to achieve all project goals within the given constraints. This information is usually described in project documentation, created at the beginning of the development process. T ...
and
change control
Within quality management systems (QMS) and information technology (IT) systems, change control is a process—either formal or informal—used to ensure that changes to a product or system are introduced in a controlled and coordinated manner. I ...
of these processes, as well as, facilities for model driven development of
application code
This glossary of computer software terms lists the general terms related to computer software, and related fields, as commonly used in Wikipedia articles.
Glossary
See also
* Outline of computer programming
* Outline of softw ...
using an
internal integrated-development platform.
The user base ranges from programmers and business analysts through to enterprise architects, in organizations ranging from small developer companies, multi-national corporations and government organizations through to international industry standards bodies.
Sparx Systems initially released Enterprise Architect in 2000. Originally designed as a UML modeling tool for modeling UML 1.1, the product has evolved to include other OMG UML specifications 1.3, 2.0, 2.1, 2.3, 2.4.1 and 2.5.
Standards
Enterprise Architect supports a range of open industry standards for designing and modeling software and business systems. The following are the core standards supported:
*
UML
The Unified Modeling Language (UML) is a general-purpose, developmental modeling language in the field of software engineering that is intended to provide a standard way to visualize the design of a system.
The creation of UML was originally ...
2.5
*
SysML 1.5
*
BPMN 2.0
*
DMN
*
BMM
*
MARTE 1.2
*
BPEL
The Web Services Business Process Execution Language (WS-BPEL), commonly known as BPEL (Business Process Execution Language), is an OASIS standard executable language for specifying actions within business processes with web services. Process ...
*
SoaML
*
SPEM
*
WSDL
The Web Services Description Language (WSDL ) is an XML-based interface description language that is used for describing the functionality offered by a web service. The acronym is also used for any specific WSDL description of a web service (also ...
*
XSD
*
DDS
*
ArchiMate 3.0
*
ArcGIS
ArcGIS is a family of client, server and online geographic information system (GIS) software developed and maintained by Esri. ArcGIS was first released in 1999 and originally was released as ARC/INFO, a command line based GIS system for mani ...
*
IFML
*
CMMN
*
Geography Markup Language
The Geography Markup Language (GML) is the XML grammar defined by the Open Geospatial Consortium (OGC) to express geographical features. GML serves as a modeling language for geographic systems as well as an open interchange format for geographi ...
(GML)
*
ODM,
OWL
Owls are birds from the order Strigiformes (), which includes over 200 species of mostly solitary and nocturnal birds of prey typified by an upright stance, a large, broad head, binocular vision, binaural hearing, sharp talons, and feathers a ...
and
RDF
*
VDML 1.0
Enterprise Architect also supports industry frameworks such as:
*
Zachman Framework
The Zachman Framework is an enterprise ontology and is a fundamental structure for enterprise architecture which provides a formal and structured way of viewing and defining an enterprise. The ontology is a two dimensional classification schem ...
*
TOGAF
The Open Group Architecture Framework (TOGAF) is the most used framework for enterprise architecture as of 2020 that provides an approach for designing, planning, implementing, and governing an enterprise information technology architecture. TO ...
(including
FEAF)
* UAF -
UPDM framework that supports
DoDAF
The Department of Defense Architecture Framework (DoDAF) is an architecture framework for the United States Department of Defense (DoD) that provides visualization infrastructure for specific stakeholders concerns through viewpoints organized ...
,
MODAF and
NAF
*
Service-Oriented Modeling Framework (SOMF)
Enterprise Architect supported frameworks supplied by industry bodies:
*
TRAK
*
GeoSciML
*
NIEM
NIEM ( ) originated as an XML-based information exchange framework from the United States. NIEM also supports NIEM JSON exchanges. NIEM is currently developinthe NIEM Metamodel and Common Model Formatwhich can be expressed in any data serializa ...
Supports the core
service-oriented architecture
In software engineering, service-oriented architecture (SOA) is an architectural style that focuses on discrete services instead of a monolithic design. By consequence, it is also applied in the field of software design where services are provided ...
s:
*
SoaML
*
Service-Oriented Modeling Framework (SOMF) – Enterprise-Level Architecture
Along with Round Trip engineering of
WSDL
The Web Services Description Language (WSDL ) is an XML-based interface description language that is used for describing the functionality offered by a web service. The acronym is also used for any specific WSDL description of a web service (also ...
,
XSD used to facilitate
BPEL
The Web Services Business Process Execution Language (WS-BPEL), commonly known as BPEL (Business Process Execution Language), is an OASIS standard executable language for specifying actions within business processes with web services. Process ...
generation.
Standards development
Models published by industry standards development bodies using Enterprise Architect include:
* Aeronautical Information Exchange Model (
AIXM),
Flight Information Exchange Model (FIXM),
ICAO Weather Information Exchange Model (IWXXM)
[ IWXXM]
* International Air Transport Association
IATA
* Telecommunications framework
Business Process Framework (eTOM) and TAM
* AUTomotive Open System ARchitecture
AUTOSAR
*
GENIVI Alliance automotive industry alliance involved in developing
in-vehicle infotainment (IVI)
*
TRAK Transport framework for systems engineers based on MODAF
*
Datex II
Datex II or Datex2 is a data exchange standard for exchanging traffic information between traffic management centres, traffic service providers, traffic operators and media partners. It contains for example traffic incidents, current road works an ...
specifications for exchanging traffic information Datex2
* Geoscience Markup Language
GeoSciML
* Geospatial Interoperability Specification
ISO/TC 211
ISO/TC 211 is a standard technical committee formed within ISO, tasked with covering the areas of digital geographic information (such as used by geographic information systems) and geomatics. It is responsible for preparation of a series of I ...
* ArcGIS Pipeline Data Model (APDM)
* International Defence Enterprise Architecture Specification
IDEAS Group
* Smartgrid
Common Information Model (electricity) (IEC CIM)
* HL7 – international standard for transferring data between Hospital information systems
Health Level 7
Health Level Seven or HL7 refers to a set of international standards for transfer of clinical and administrative data between software applications used by various healthcare providers. These standards focus on the application layer, which is "la ...
EHR-S FIM
*
caBIG Cancer Biomedical Informatics Grid
* BRIDG Biomedical Research Integrated Domain Group
*
UN/CEFACT's Modeling Methodology for
UN/CEFACT
*
UnifiedPOS managed by
Association for Retail Technology Standards (ARTS)
Modeling
Underlying UML modeling are the key aspects that most modeling tools support. The core aspects supported by Enterprise Architect include:
profiles, patterns,
MOF,
OCL,
MDA transforms, and
CORBA IDL.
UML validation can be run against the model.
General features
Requirements management
The common features of requirements management supported by Enterprise Architect include customization of how requirements are documented, linking requirements to the design and implementation details, and providing
requirements traceability Requirements traceability is a sub-discipline of requirements management within software development and systems engineering. Traceability as a general term is defined by the IEEE Systems and Software Engineering Vocabulary as (1) the degree to whi ...
through the design and construction phases.
These requirements can be subject to change management, workflow processing,
baseline comparison and auditing.
Business modeling and analysis
Enterprise Architect supports a number of methods of modeling business processes using
UML
The Unified Modeling Language (UML) is a general-purpose, developmental modeling language in the field of software engineering that is intended to provide a standard way to visualize the design of a system.
The creation of UML was originally ...
as the foundation modeling language. The core languages for business modeling and analysis include
BPMN,
BMM and
VDML, along with various historic profiles.
Enterprise Architect supports the simulation of:
* BPMN models using BPSim
* Business Rules definitions using
DMN models.
BPMN can be integrated with DMN models for simulation. This includes the ability to generate executable code from these business rules.
Business modeling can be combined with Gap analysis to view potential gaps in proposed solutions.
Simulation
Model simulation is supported for behavioral diagrams including: state machines, interaction (sequence diagrams) and activity diagrams. For state machine and activity diagrams the execution flow is defined using triggers, guards and effects. The simulation supports re-runs with alteration to the triggered events and supports viewing variables, the call stack and setting debug markers. Simulation can interact with emulated user-interface screens containing common UI fields. Graphical Plots of the simulation can be generated.
There is also support for generating executable code from State Machines for both simulation, as well for use in applications.
BPMN models (using BPSim), can be simulated creating tabulated results for analysis. BPSim also supports Monte Carlo probability-based simulations.
SysML simulation is supported for IBD and Parametric models using Open Modelica or Matlab (using Simulink and Simscape). Mathematical formulas in SysML's Internal Block diagrams and Parametric models can be simulated for plotting graphs used in the analysis.
Simulation is also supported for DMN (
Decision Model and Notation). The simulation involves generating code usable in applications and supports interaction between DMN models and BPMN models using BPSim.
System development
In line with the
model-driven design principles Enterprise Architect supports
MDA transforms of
PIM class structures to
PSM class structures,
round-trip engineering
Round-trip engineering (RTE) is a functionality of software development tools that synchronizes two or more related software artifacts, such as, source code, models, configuration files, and even documentation. The need for round-trip engineering a ...
of code for ten software languages and several key embedded
HDL systems languages (
Ada,
VHDL
The VHSIC Hardware Description Language (VHDL) is a hardware description language (HDL) that can model the behavior and structure of digital systems at multiple levels of abstraction, ranging from the system level down to that of logic gat ...
and
Verilog
Verilog, standardized as IEEE 1364, is a hardware description language (HDL) used to model electronic systems. It is most commonly used in the design and verification of digital circuits at the register-transfer level of abstraction. It is a ...
). It also supports code generation from behavioral models.
Languages supported include
ActionScript
ActionScript is an object-oriented programming language originally developed by Macromedia Inc. (later acquired by Adobe). It is influenced by HyperTalk, the scripting language for HyperCard. It is now an implementation of ECMAScript (meani ...
,
C, C# and
C++,
Delphi
Delphi (; ), in legend previously called Pytho (Πυθώ), in ancient times was a sacred precinct that served as the seat of Pythia, the major oracle who was consulted about important decisions throughout the ancient classical world. The oracl ...
,
Java
Java (; id, Jawa, ; jv, ꦗꦮ; su, ) is one of the Greater Sunda Islands in Indonesia. It is bordered by the Indian Ocean to the south and the Java Sea to the north. With a population of 151.6 million people, Java is the world's mo ...
,
PHP
PHP is a General-purpose programming language, general-purpose scripting language geared toward web development. It was originally created by Danish-Canadian programmer Rasmus Lerdorf in 1993 and released in 1995. The PHP reference implementati ...
,
Python,
Visual Basic Visual Basic is a name for a family of programming languages from Microsoft. It may refer to:
* Visual Basic .NET (now simply referred to as "Visual Basic"), the current version of Visual Basic launched in 2002 which runs on .NET
* Visual Basic (c ...
and
Visual Basic .NET
In accordance with model-driven development principles, Enterprise Architect provides an
integrated development environment
An integrated development environment (IDE) is a software application that provides comprehensive facilities to computer programmers for software development. An IDE normally consists of at least a source code editor, build automation tools a ...
that supports code editing (with
syntax highlighting
Syntax highlighting is a feature of text editors that are used for programming, scripting, or markup languages, such as HTML. The feature displays text, especially source code, in different colours and fonts according to the category of terms. ...
and
Intellisense
Intelligent code completion is a context-aware code completion feature in some programming environments that speeds up the process of coding applications by reducing typos and other common mistakes. Attempts at this are usually done through auto-c ...
), for building, debugging and code testing all from within the model.
Compilers and interpreters supported: Microsoft Windows Native C, C++, Visual Basic, .NET family (C#, VB); Java, PHP, and GNU compilers for C++, C and Ada (
GCC and
GDB). Includes features for importing
MS Visual Studio and
Eclipse
An eclipse is an astronomical event that occurs when an astronomical object or spacecraft is temporarily obscured, by passing into the shadow of another body or by having another body pass between it and the viewer. This alignment of three ce ...
projects.
Wireframing
Wireframe modeling supports using templates for modeling the appearance of dialogs presented to users when interacting with an application. The supported device dialogs include: Screen Dialogs, Webpages, Android, Apple, and Windows 8.1 phones and Tablets.
Test management
For code based testing there is support for both xUnit Testing (This involves
MDA transformation of Classes to
NUnit or
Junit Classes with the ability to generate unit tests from the model and automatically record the results against the tested Classes).
and Testpoint testing ( a model based code testing. It is parallel to test contracts defined in ‘Design by Contract’ and it runs using debug definitions.
Both methods support the test definitions and test results being logged against related Classes in the model.
Visual execution analysis
Integrated with building and debugging code Enterprise Architect allows the developer to perform abstract analysis of the software using profiling and sequence diagram generation: Sequence diagram generation provides a means to analyze the general process flow and iron out inconsistencies,
and Profiling summarizes, by thread and routine, the code's general efficiency
System engineering
System Engineering is supported with SysML 1.4 modeling which can be coupled with executable code generation.
SysML supports modeling from requirement definition and system composition using SysML Blocks and Parts, through to parametric model simulation.
The executable code generation supports embedded
HDL system languages (
Ada,
VHDL
The VHSIC Hardware Description Language (VHDL) is a hardware description language (HDL) that can model the behavior and structure of digital systems at multiple levels of abstraction, ranging from the system level down to that of logic gat ...
and
Verilog
Verilog, standardized as IEEE 1364, is a hardware description language (HDL) used to model electronic systems. It is most commonly used in the design and verification of digital circuits at the register-transfer level of abstraction. It is a ...
), or it can be coupled with behavioral code generation of the standard code languages defined above.
Data modeling
Enterprise Architect supports data modeling from the conceptual to physical levels, forward and reverse engineering of database schemas,
and MDA transformation of the logical (platform independent) to physical DBMS (platform dependent).
Diagram types supported include: DDL notation,
ERD
ERD may refer to:
* Érd, a city in Hungary
* Berdyansk Airport, in Ukraine
* Economic Relations Division (Bangladesh), of the Bangladeshi Ministry of Finance
* Elastic recoil detection
* Emergency repair disk
* Emergency Reserve Decoration, a Bri ...
notation,
IDEF1X
Integration DEFinition for information modeling (IDEF1X) is a data modeling language for the development of semantic data models. IDEF1X is used to produce a graphical information model which represents the structure and semantics of informati ...
notation, Information Engineering notation.
Supported DBMSs include:
DB2
Db2 is a family of data management products, including database servers, developed by IBM. It initially supported the relational model, but was extended to support object–relational features and non-relational structures like JSON and ...
,
Firebird/InterBase,
MS Access 97, 2000, 2003, 2007, 2013,
MS SQL Server
Microsoft SQL Server is a relational database management system developed by Microsoft. As a database server, it is a software product with the primary function of storing and retrieving data as requested by other software applications—which m ...
, all editions from 2005 including Express and Azure,
MySQL
MySQL () is an open-source relational database management system (RDBMS). Its name is a combination of "My", the name of co-founder Michael Widenius's daughter My, and "SQL", the acronym for Structured Query Language. A relational database ...
,
MariaDB
MariaDB is a community-developed, commercially supported fork of the MySQL relational database management system (RDBMS), intended to remain free and open-source software under the GNU General Public License. Development is led by some of the ...
,
SQLite
SQLite (, ) is a database engine written in the C programming language. It is not a standalone app; rather, it is a library that software developers embed in their apps. As such, it belongs to the family of embedded databases. It is the mo ...
,
Oracle
An oracle is a person or agency considered to provide wise and insightful counsel or prophetic predictions, most notably including precognition of the future, inspired by deities. As such, it is a form of divination.
Description
The wor ...
from 9i (all editions),
PostgreSQL
PostgreSQL (, ), also known as Postgres, is a free and open-source relational database management system (RDBMS) emphasizing extensibility and SQL compliance. It was originally named POSTGRES, referring to its origins as a successor to the In ...
,
ArcGIS
ArcGIS is a family of client, server and online geographic information system (GIS) software developed and maintained by Esri. ArcGIS was first released in 1999 and originally was released as ARC/INFO, a command line based GIS system for mani ...
,
Informix
IBM Informix is a product family within IBM's Information Management division that is centered on several relational database management system (RDBMS) offerings. The Informix products were originally developed by Informix Corporation, whose ...
,
Ingres
Jean-Auguste-Dominique Ingres ( , ; 29 August 1780 – 14 January 1867) was a French Neoclassical painter. Ingres was profoundly influenced by past artistic traditions and aspired to become the guardian of academic orthodoxy against the a ...
,
Sybase Adaptive Server Anywhere (Sybase ASA) and Sybase Adaptive Server Enterprise (Sybase ASE).
Project and change management
Features supporting project management include: Resource allocation and tracking using
Gantt chart
A Gantt chart is a type of bar chart that illustrates a project schedule, named after its popularizer, Henry Gantt (1861–1919), who designed such a chart around the years 1910–1915. Modern Gantt charts also show the dependency relationsh ...
s, Kanban diagrams, event logging using model calendars, Workflow scripting for setting workflow processes, security, and model metrics.
The key facilities supporting change management are: auditing, baseline difference and merge, and version control.
The version control interface supports the major version control applications:
Subversion
Subversion () refers to a process by which the values and principles of a system in place are contradicted or reversed in an attempt to transform the established social order and its structures of power, authority, hierarchy, and social norms. Sub ...
,
CVS,
Team Foundation Server, and SCC interface to any SCC compatible version control system.
Integration with other tools
Features that support integration with other tools include:
XMI Import/Export: Supports the XMI 1.1, 1.2 and 2.1 specifications (and import of .emx and Rhapsody files),
Open Services for Lifecycle Collaboration (OSLC),
CSV Import/Export,
ArchiMate Open Exchange Format Import / Export.
The Pro Cloud Server Integration supports integrating data from external providers including Application Lifecycle Management, Jazz (DOORS, Rhapsody DM, Team Concert CCM & QM), Jira, Confluence, TFS, Wrike, ServiceNow, Autodesk, Bugzilla, Salesforce and SharePoint.
The Data Miner provides a means of extracting data from a range of external data sources including: databases (ODBC, ADO, OLEDB, JET), text files (XML, JSON, plain text), Excel (xls, CSV), and online files or URLs.
The Automation interface – supports a comprehensive
API for use with any
COM based language (and Java). This supports defining internal scripts, as well as accessibility for writing external add-ins. There is also support for model based event driven add-ins using Javascript.
Among the Add-ins available are interfaces to
Microsoft Office
Microsoft Office, or simply Office, is the former name of a family of client software, server software, and services developed by Microsoft. It was first announced by Bill Gates on August 1, 1988, at COMDEX in Las Vegas. Initially a ma ...
and DOORS, along with third party add-ins.
See also
*
List of UML tools
A ''list'' is any set of items in a row. List or lists may also refer to:
People
* List (surname)
Organizations
* List College, an undergraduate division of the Jewish Theological Seminary of America
* SC Germania List, German rugby unio ...
*
Glossary of Unified Modeling Language terms
References
External links
* {{official website, http://www.sparxsystems.com/products/ea/index.html
Enterprise Architect resources and articles on umlchannelEnterprise Architect YouTube Channel
UML tools
Enterprise architecture
Enterprise modelling
Data modeling tools
Integrated development environments
Web service development tools
Diagramming software