Enterprise Architect (Visual Modeling Platform)
Encyclopedia
Sparx Systems Enterprise Architect is a visual modeling and design tool based on the OMG
Object Management Group
Object Management Group is a consortium, originally aimed at setting standards for distributed object-oriented systems, and is now focused on modeling and model-based standards.- Overview :...

 UML
Unified Modeling Language
Unified Modeling Language is a standardized general-purpose modeling language in the field of object-oriented software engineering. The standard is managed, and was created, by the Object Management Group...

. 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 re-engineering, 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 through to design, construction, testing and maintenance phases, with support for traceability, project management and change control of these processes, as well as, facilities for model driven development of application code 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.

Standards

Enterprise Architect supports a range of industry standards for designing and modeling software and business systems. The following are the core standards supported:
  • UML
    Unified Modeling Language
    Unified Modeling Language is a standardized general-purpose modeling language in the field of object-oriented software engineering. The standard is managed, and was created, by the Object Management Group...

     2.4.1
  • SysML
  • BPMN
  • BPEL
  • SoaML
    SoaML
    SoaML is an open source specification project from the Object Management Group , describing a UML profile and metamodel for the modeling and design of services within a service-oriented architecture....

  • SOMF
  • WSDL
  • XSD
  • DDS
    DDS
    D.D.S. refers to the academic degree of Doctor of Dental Surgery.DDS may refer to:-Computer and information science:*Data Design System, DDS-CAD software vendor*Data Description Specifications, AS400 programming...

  • ArchiMate
    ArchiMate
    ArchiMate [Ahr-ki-meyt] is an open and independent enterprise architecture modelling language to support the description, analysis and visualization of architecture within and across business domains in an unambiguous way....



Enterprise Architect also supports industry Frameworks such as:
  • Zachman Framework
    Zachman framework
    The Zachman Framework is an Enterprise Architecture framework for enterprise architecture, which provides a formal and highly structured way of viewing and defining an enterprise...

  • TOGAF
    TOGAF
    The Open Group Architecture Framework is a framework for enterprise architecture which provides a comprehensive approach for designing, planning, implementation, and governance of an enterprise information architecture...

     (including FEAF
    FEAF
    FEAF may refer to:* Federal Enterprise Architecture Framework* Far East Air Force, which may refer to:** Far East Air Force ** Far East Air Force...

    )
  • OMG
    Object Management Group
    Object Management Group is a consortium, originally aimed at setting standards for distributed object-oriented systems, and is now focused on modeling and model-based standards.- Overview :...

     UPDM
    UPDM
    The Unified Profile for DoDAF/MODAF is the product of an Object Management Group ] initiative to develop a modeling standard that supports both the USA Department of Defense Architecture Framework and the UK Ministry of Defence Architecture Framework...

     framework that supports DoDAF, MODAF
    MODAF
    The British Ministry of Defence Architecture Framework is an Architecture Framework which defines a standardised way of conducting Enterprise Architecture, originally developed by the UK Ministry of Defence....

     and NAF
    NATO Architecture Framework
    The NATO Architecture Framework is an Enterprise Architecture framework by the NATO derived from the DoDAF Enterprise architecture.The current NATO C3 System Architecture Framework v2 , issued by NATO in September 2004 provides guidance on describing communication and information systems...

  • Service-oriented modeling framework (SOMF)

Modeling

Underlying UML modeling are several key aspects that most modeling tools support. The core aspects supported by Enterprise Architect include:
  • Profiles
    Profile (UML)
    A profile in the Unified Modeling Language provides a generic extension mechanism for customizing UML models for particular domains and platforms...

  • Patterns
  • MOF
    MOF
    MOF can mean:*The Museum of Flight*Managed Object Format, a textual representation of the Distributed Management Task Force Common Information Model...

  • OCL
    OCL
    The initialism OCL can have several meanings, depending on context:*OCl−, the hypochlorite ion, in chemistry*Object Constraint Language*Ocean Climate Laboratory *Ocean County Library*Old Colony League, a high school sports league in Massachusetts...

  • MDA
    MDA
    -Companies, organizations and government bodies:* Maritime Domain Awareness, part of a U.S. Government interagency and international maritime security effort* MDA , formerly the Museum Documentation Association...

      Transforms
  • Corba IDL
    Çorba
    Chorba , ciorbă , shurpa , shorpo , or sorpa is one of various kinds of soup or stew found in national cuisines across Middle East...



UML Validation can be run against the model.

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 Requirement Traceability
Requirements traceability
Requirements traceability is a sub-discipline of requirements management within software development and systems engineering. Requirements traceability is concerned with documenting the life of a requirement and to provide bi-directional traceability between various associated requirements...

 through the design and construction phases. These requirements can be subject to change management, workflow processing,
baseline comparison and auditing. There is also a model glossary that is interactive with notes for requirements.

Business Modeling and Analysis

Enterprise Architect supports a number of methods of modeling business processes using UML as the foundation modeling language. The core languages for business modeling and analysis include BPMN and BPEL, with various historic profiles such as the Eriksson-Penker profile.
Enterprise Architect also supports the definition of Business Rules with the ability to generate executable code from these rules. Business modeling can be combined with GAP analysis to view potential gaps in proposed solutions.

Simulation

Model simulation of Behavioral diagrams is supported for:
  • State Machines
  • Interaction (Sequence diagrams)
  • Activities
  • BPMN

Execution flow is defined using Triggers, Guards and Effects. The simulation is performed using a debug type scenario that supports simulation re-runs with alteration to the triggers and events.

System Development

In line with the Model Driven
Model-driven architecture
Model-driven architecture is a software design approach for the development of software systems. It provides a set of guidelines for the structuring of specifications, which are expressed as models. Model-driven architecture is a kind of domain engineering, and supports model-driven engineering of...

 design principles Enterprise Architect supports MDA
Model transformation
A model transformation, in model-driven engineering, is an automatable way of ensuring that a family of models is consistent, in a precise sense which the software engineer can define...

 transforms of PIM
Platform-independent model
A Platform-Independent Model in software engineering is a model of a software system or business system, that is independent of the specific technological platform used to implement it...

 Class structures to PSM
Platform-specific model
A platform-specific model is a model of a software or business system that is linked to a specific technological platform . Platform-specific models are indispensable for the actual implementation of a system.For example, a need to implement an online shop...

 Class structures, Round-trip engineering
Round-trip engineering
Round-trip engineering is a functionality of software development tools that synchronizes two or more related software artifacts, such as, source code, models, configuration files, and other documents...

 of code for 10 software languages and several key embedded HDL
Hardware description language
In electronics, a hardware description language or HDL is any language from a class of computer languages, specification languages, or modeling languages for formal description and design of electronic circuits, and most-commonly, digital logic...

 systems languages (Ada
Ada (programming language)
Ada is a structured, statically typed, imperative, wide-spectrum, and object-oriented high-level computer programming language, extended from Pascal and other languages...

, VHDL and Verilog
Verilog
In the semiconductor and electronic design industry, Verilog is a hardware description language used to model electronic systems. Verilog HDL, not to be confused with VHDL , is most commonly used in the design, verification, and implementation of digital logic chips at the register-transfer level...

). It also supports code generation from Behavioral models.

Languages supported:
  • ActionScript
    ActionScript
    ActionScript is an object-oriented language originally developed by Macromedia Inc. . It is a dialect of ECMAScript , and is used primarily for the development of websites and software targeting the Adobe Flash Player platform, used on Web pages in the form of...

  • C
    C (programming language)
    C is a general-purpose computer programming language developed between 1969 and 1973 by Dennis Ritchie at the Bell Telephone Laboratories for use with the Unix operating system....

  • C# (for both .NET 1.1 and .NET 2.0)
  • C++
    C++
    C++ is a statically typed, free-form, multi-paradigm, compiled, general-purpose programming language. It is regarded as an intermediate-level language, as it comprises a combination of both high-level and low-level language features. It was developed by Bjarne Stroustrup starting in 1979 at Bell...

    (standard, plus .NET managed C++ extensions)
  • Delphi
    Object Pascal
    Object Pascal refers to a branch of object-oriented derivatives of Pascal, mostly known as the primary programming language of Embarcadero Delphi.-Early history at Apple:...

  • Java
    Java (programming language)
    Java is a programming language originally developed by James Gosling at Sun Microsystems and released in 1995 as a core component of Sun Microsystems' Java platform. The language derives much of its syntax from C and C++ but has a simpler object model and fewer low-level facilities...

     (including Java 1.5, Aspects and Generics)
  • PHP
    PHP
    PHP is a general-purpose server-side scripting language originally designed for web development to produce dynamic web pages. For this purpose, PHP code is embedded into the HTML source document and interpreted by a web server with a PHP processor module, which generates the web page document...

  • Python
    Python (programming language)
    Python is a general-purpose, high-level programming language whose design philosophy emphasizes code readability. Python claims to "[combine] remarkable power with very clear syntax", and its standard library is large and comprehensive...

  • Visual Basic
    Visual Basic
    Visual Basic is the third-generation event-driven programming language and integrated development environment from Microsoft for its COM programming model...

  • Visual Basic .NET
    Visual Basic .NET
    Visual Basic .NET , is an object-oriented computer programming language that can be viewed as an evolution of the classic Visual Basic , which is implemented on the .NET Framework...


In accordance with Model Driven Development principles, Enterprise Architect provides an Integrated Development Environment that supports code editing (with Syntax highlighting
Syntax highlighting
Syntax highlighting is a feature of some text editors that display text—especially source code—in different colors and fonts according to the category of terms. This feature eases writing in a structured language such as a programming language or a markup language as both structures and...

 and Intellisense
IntelliSense
IntelliSense is Microsoft's implementation of autocompletion, best known for its use in the Microsoft Visual Studio integrated development environment...

), for Building, Debugging and Code Testing all from within the model.

Compilers and interpreters supported:
  • Microsoft Windows Native C
  • Microsoft Windows Native C++
  • Microsoft Windows Visual Basic
  • Microsoft .NET Family (C#, J#, VB)
  • Sun Microsystems Java.
  • PHP
  • GNU Compilers for C++, C and Ada (GCC
    GNU Compiler Collection
    The GNU Compiler Collection is a compiler system produced by the GNU Project supporting various programming languages. GCC is a key component of the GNU toolchain...

     & GDB )

Add-ins are available for integration with MS Visual Studio and Eclipse
Eclipse
An eclipse is an astronomical event that occurs when an astronomical object is temporarily obscured, either by passing into the shadow of another body or by having another body pass between it and the viewer...

.

Test Management

For code based testing there is support for:
  • 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.
  • Testpoint testing
This is a model based code testing. It is parallel to test contracts defined in ‘Design by Contract’ and it runs using debug definitions.

In terms of model based testing; both of these 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
  • Profiling summarizes, by thread and routine, the code's general efficiency

System Engineering

System Engineering is supported with SysML 1.2 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
Hardware description language
In electronics, a hardware description language or HDL is any language from a class of computer languages, specification languages, or modeling languages for formal description and design of electronic circuits, and most-commonly, digital logic...

 system languages (Ada
Ada (programming language)
Ada is a structured, statically typed, imperative, wide-spectrum, and object-oriented high-level computer programming language, extended from Pascal and other languages...

, VHDL and Verilog
Verilog
In the semiconductor and electronic design industry, Verilog is a hardware description language used to model electronic systems. Verilog HDL, not to be confused with VHDL , is most commonly used in the design, verification, and implementation of digital logic chips at the register-transfer level...

), 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 dependant).
Diagram types supported include:
  • DDL notation
  • ERD
    Entity-relationship model
    In software engineering, an entity-relationship model is an abstract and conceptual representation of data. Entity-relationship modeling is a database modeling method, used to produce a type of conceptual schema or semantic data model of a system, often a relational database, and its requirements...

     notation
  • IDEF1X
    IDEF1X
    IDEF1X is a data modeling language for the developing of semantic data models. IDEF1X is used to produce a graphical information model which represents the structure and semantics of information within an environment or system.IDEF1X permits the construction of semantic data models which may serve...

     notation
  • Information Engineering notation

Supported DBMSs:
  • DB2
  • Firebird/InterBase
  • Informix
  • Ingres
  • MS Access 97, 2000, 2003
  • Access 2007
  • MS SQL Server 2000, 2005, 2008
  • MySQL
  • SQLite
  • Oracle 9i, 10g and 11g
  • PostgreSQL
  • Sybase Adaptive Server Anywhere (Sybase ASA)
  • Sybase Adaptive Server Enterprise (Sybase ASE)
  • ArcGIS
    ArcGIS Server
    ArcGIS Server is the core server geographic information system software made by Esri. ArcGIS Server is used for creating and managing GIS Web services, applications, and data...


Project Management

Features supporting project management include:
  • Resource Allocation and Tracking using Gantt charts
  • Event Logging using model calendars
  • Workflow scripting for setting workflow processes
  • Security
  • Model Metrics
  • API Scripting (macros).

Change Management

The key facilities supporting change management are:
  • Auditing
  • Baseline Difference and Merge
  • Version Control

The auditing feature supports logging changes to the model.
The Baseline Management feature allows snapshots of parts of a model to be created periodically. A baseline can be compared and merged with the current model or a branch of that model. This supports Branching model information to another repository, then adding updates and merging them back.

The Version Control interface supports the major version control applications:
  • Subversion
    Subversion
    Apache Subversion is a software versioning and a revision control system distributed under a free license. Developers use Subversion to maintain current and historical versions of files such as source code, web pages, and documentation...

  • CVS
    Concurrent Versions System
    The Concurrent Versions System , also known as the Concurrent Versioning System, is a client-server free software revision control system in the field of software development. Version control system software keeps track of all work and all changes in a set of files, and allows several developers ...

  • Team Foundation Server
    Team Foundation Server
    Team Foundation Server is a Microsoft product offering source control, data collection, reporting, and project tracking, and is intended for collaborative software development projects...

  • SCC interface to any SCC compatible version control system.


Team Based Development and Collaboration

The Team Interaction facilities include:
  • Model Mail: Internal model based mailing system.
  • Team Review: Inter-repository forum for lodging discussion on issues.
  • Model Views: User definable Views, prompting users on relevant model updates

Client Customer Collaboration:
  • User definable Word Compatible RTF reporting
  • HTML reporting
  • EAlite – provides free read-only viewing of models with support for client/customer interaction via the Team Review

Service Oriented Architectures

Supports the core Service Oriented Architectures:
  • SoaML
    SoaML
    SoaML is an open source specification project from the Object Management Group , describing a UML profile and metamodel for the modeling and design of services within a service-oriented architecture....


  • SOMF

Along with Round Trip engineering of WSDL, XSD used to facilitate BPEL generation.

Integration with Other Tools

The key features that support integration with other tools include:
  • XMI
    XML Metadata Interchange
    The XML Metadata Interchange is an Object Management Group standard for exchanging metadata information via Extensible Markup Language .It can be used for any metadata whose metamodel can be expressed in Meta-Object Facility ....

     Import/Export: Supports the XMI 1.1, 1.2 and 2.1 specifications (and import of .emx files).
  • CSV
    Comma-separated values
    A comma-separated values file stores tabular data in plain-text form. As a result, such a file is easily human-readable ....

     import/Export
  • Automation interface – supports a comprehensive API
    Application programming interface
    An application programming interface is a source code based specification intended to be used as an interface by software components to communicate with each other...

     interface for use with any COM
    Component Object Model
    Component Object Model is a binary-interface standard for software componentry introduced by Microsoft in 1993. It is used to enable interprocess communication and dynamic object creation in a large range of programming languages...

     based language (and Java).
  • MDG Add-ins are available, supporting interfaces to:
    • VS .Net
    • Eclipse
    • TcSE
    • HP Quality Center
    • Import Visio diagrams
    • Import DOORS requirements
    • Atlassion JIRA integration
    • SAP netweaver Integration

Reporting

Features for creating model documentation include:
  • User-definable (MS Word) compatible RTF
    Rich Text Format
    The Rich Text Format is a proprietary document file format with published specification developed by Microsoft Corporation since 1987 for Microsoft products and for cross-platform document interchange....

     Reporting
  • User-definable HTML
    HTML
    HyperText Markup Language is the predominant markup language for web pages. HTML elements are the basic building-blocks of webpages....

     generation of the model
  • Model slide show presentations
  • User definable query based reporting

Deployment

There are many scenarios for deployment. For the multi-user and multi-site development there is support for WAN
Wide area network
A wide area network is a telecommunication network that covers a broad area . Business and government entities utilize WANs to relay data among employees, clients, buyers, and suppliers from various geographical locations...

 based connectivity using a WAN Optimizer. Information can be exchanged and merged between repositories for off-site analysis and development or for exchanging models between diverse development groups. The core logistics are:
  • Repository Types:
Supports .eap files as well as DBMS repositories (the 10 more commonly used DBMS).
  • Tool Deployment:
Supports a simple workstation installation and, if required, a simple DBMS installation.
  • Scalability:
The tool is very scalable with options for large scale cross-corporate or WAN based interconnections.

Platforms supported
  • Windows XP
    Windows XP
    Windows XP is an operating system produced by Microsoft for use on personal computers, including home and business desktops, laptops and media centers. First released to computer manufacturers on August 24, 2001, it is the second most popular version of Windows, based on installed user base...

    , Vista
    Vista
    Vista usually refers to a distant view.Vista may also refer to:-Software:*Windows Vista, the line of Microsoft Windows client operating systems released in 2006 and 2007...

    , Windows 7 (32 bit and 64 bit)
  • Linux
    Linux
    Linux is a Unix-like computer operating system assembled under the model of free and open source software development and distribution. The defining component of any Linux system is the Linux kernel, an operating system kernel first released October 5, 1991 by Linus Torvalds...

     & Mac OS
    Mac OS
    Mac OS is a series of graphical user interface-based operating systems developed by Apple Inc. for their Macintosh line of computer systems. The Macintosh user experience is credited with popularizing the graphical user interface...

     installations are supported using Crossover Office
    CrossOver Office
    CrossOver, known before version 6.0 as CrossOver Office, is the collective name for four commercial and proprietary programs developed by CodeWeavers that allow many Windows-based applications to run on Linux and Mac OS X using a compatibility layer...


History

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 and 2.4.1.

Further reading

Michael Blaha. Patterns of Data Modeling (Emerging Directions in Database Systems and Applications). CRC Press; (June 1, 2010). English. ISBN 978-1439819890
Matt Stevens, Doug Rosenberg. Design Driven Testing: Test Smarter not Harder. Apress; (2010). English. ISBN 978-1-4302-2943-8
Ringle Lai. Team Developement manual with Enterprise Architect 7.5. Publishing House of Electronics Industry; (March 2010). Chinese. ISBN 978-7-121-10291-2
Ringle Lai. Workflow and Management for Team development with UML. Delight press; (June 2009). Chinese. ISBN 978-986-6761-90-4
Doug Rosenberg. Use Case Driven Object Modeling with UML: Theory and Practice. Apress; (January 11, 2007). English. ISBN 978-1590597743
Doug Rosenberg. Agile Development with the ICONIX Process: People, Process and Pragmatism. Apress; (March 2005). English. ISBN 978-1590594643
Michael Bell. SOMF Fundamentals. "Service-Oriented Modeling: Service Analysis, Design, and Architecture." February 2008. Wiley & Sons. ISBN 978-0-470-14111-3
Michael Bell. SOMF Patterns. "SOA Modeling Patterns for Service-Oriented Discovery and Analysis." January 2010, Wiley & Sons. ISBN 978-0470481974

See also

  • UML tool
    UML tool
    A UML tool or UML modeling tool is a software application that supports some or all of the notation and semantics associated with the Unified Modeling Language , which is the industry standard general purpose modeling language for software engineering.UML tool is used broadly here to include...

  • List of UML tools
  • Glossary of Unified Modeling Language terms
    Glossary of Unified Modeling Language terms
    This glossary of Unified Modeling Language terms covers all versions of UML. Individual entries will point out any distinctions that exist between versions.-A:...


External links

Object Management Group
UML org
Sparx Systems - About Us
Features of Enterprise Architect UML Modeling tool:
References
List of Articles
Case Study for using Enterprise Architect
Sparx Systems Enterprise Architect Community site
User Community (run by users)
Enterprise Architect You Tube Channel
The source of this article is wikipedia, the free encyclopedia.  The text of this article is licensed under the GFDL.
 
x
OK