User:Leggattst/Sandbox
Developer(s) | Sparx Systems |
---|---|
Written in | C++ |
Operating system | Microsoft Windows, supports Linux, Mac OS |
Available in | English, German, Japanese, Spanish |
Type | Software modeling, Software development |
Website | www |
Based on the OMG UML, standards, Sparx Systems Enterprise Architect is a visual modeling and design tool. 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
[edit]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, [1] business process re-engineering, business analysis, and service oriented architectures and web modeling, Cite error: The <ref>
tag has too many names (see the help page). Cite error: The <ref>
tag has too many names (see the help page). through to application and database design and re-engineering, and development of embedded systems. [2]
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. [3] [4]
Standards
[edit]Enterprise Architect supports a range of industry standards for designing and modeling software and business systems. The following are the core standards supported:
Enterprise Architect also supports industry Frameworks such as:
Modeling
[edit]Underlying UML modeling are several key aspects that most modeling tools support. The core aspects supported by Enterprise Architect include:
UML Validation can be run against the model. [5]
UML based model simulation of Behavioral diagrams is also supported for;[6]
- State Machines
- Interaction (Sequence diagrams)
- Activities
General Features
[edit]Requirements Management
[edit]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 through the design and construction phases.[7] These requirements can be subject to change management, workflow processing, [8] baseline comparison and auditing.[9] There is also a model glossary that is interactive with notes for requirements.[10] [11]
Business Modeling and Analysis
[edit]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.[12] Enterprise Architect also supports the definition of Business Rules with the ability to generate executable code from these rules. [13] Business modeling can be combined with GAP analysis to view potential gaps in proposed solutions.
System Development
[edit]In line with the Model Driven design principles Enterprise Architect supports MDA transforms of PIM Class structures to PSM Class structures, Round-trip engineering of code for 10 software languages and several key embedded HDL systems languages ( Ada, VHDL and Verilog). It also supports code generation from Behavioral models. [14]
Languages supported:
- ActionScript
- C
- C# (for both .NET 1.1 and .NET 2.0)
- C++ (standard, plus .NET managed C++ extensions)
- Delphi
- Java (including Java 1.5, Aspects and Generics)
- PHP
- Python
- Visual Basic
- Visual Basic .NET
In accordance with Model Driven Development principles, Enterprise Architect provides an Integrated Development Environment that supports code editing (with Syntax highlighting and Intellisense), for Building, Debugging and Code Testing all from within the model.[15]
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
Add-ins are available for integration with MS Visual Studio and Eclipse.
Test Management
[edit]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.[16]
- 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.[17]
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
[edit]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 [18]
- Profiling summarizes, by thread and routine, the codes general efficiency [19]
System Engineering
[edit]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.[20] The executable code generation supports embedded HDL system languages ( Ada, VHDL and Verilog), or it can be coupled with behavioral code generation of the standard code languages defined above.
Data Modeling
[edit]Enterprise Architect supports Data Modeling from the Conceptual to Physical levels, Forward and Reverse Engineering of Database Schemas, [21] and MDA transformation of the Logical (platform independent) to Physical DBMS(platform dependant).[22] Diagram types supported include:
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
Project Management
[edit]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
[edit]The key facilities supporting change management are:
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
- CVS
- Team Foundation Server
- SCC interface to any SCC compatible version control system.
Team Based Development and Collaboration
[edit]The Team Interaction facilities include:
- Model Mail: Internal model based mailing system.[26]
- Team Review: Inter-repository forum for lodging discussion on issues. [27]
- 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
[edit]Supports the core Service Oriented Architectures:
Along with Round Trip engineering of WSDL, XSD used to facilitate BPEL generation.
Integration with Other Tools
[edit]The key 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 files).
- CSV import/Export
- Automation interface – supports a comprehensive API interface for use with any COM 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
[edit]Features for creating model documentation include:
- User-definable (MS Word) compatible RTF Reporting [30]
- User-definable HTML generation of the model[31]
- Model slide show presentations[32]
- User definable query based reporting[33]
Logistics
[edit]There are many scenarios for deployment. For the multi-user and multi-site development there is support for WAN based connectivity using a WAN Optimizer.[34] 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:
- 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, Vista, Windows 7 (32 bit and 64 bit)
- Linux & Mac OS installations are supported using Crossover Office
History
[edit]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
See also
[edit]References
[edit]- ^ "Developing an Enterprise-wide Architecture IAG" (PDF).
{{cite web}}
: Unknown parameter|Publisher=
ignored (|publisher=
suggested) (help) - ^ "Embedded Systems Development using SysML".
{{cite web}}
: Unknown parameter|Author=
ignored (|author=
suggested) (help); Unknown parameter|Publisher=
ignored (|publisher=
suggested) (help) - ^ "Geoscience Australia and CSIRO Developing the GeoSciML interoperability standard with Enterprise Architect" (PDF).
{{cite web}}
: Unknown parameter|Publisher=
ignored (|publisher=
suggested) (help) - ^ "Safety Standards Online".
{{cite web}}
: Unknown parameter|Publisher=
ignored (|publisher=
suggested) (help) - ^ Enterprise Architect Help. "Model Validation". Sparx Systems.
{{cite web}}
: Cite has empty unknown parameter:|1=
(help) - ^ "Model Simulation".
{{cite web}}
: Unknown parameter|Publisher=
ignored (|publisher=
suggested) (help) - ^ "Requirements Management".
{{cite web}}
: Unknown parameter|Publisher=
ignored (|publisher=
suggested) (help) - ^ "Workflow Scripting".
{{cite web}}
: Unknown parameter|Publisher=
ignored (|publisher=
suggested) (help) - ^ "Tracking Changes".
{{cite web}}
: Unknown parameter|Publisher=
ignored (|publisher=
suggested) (help) - ^ "Project Glossary".
{{cite web}}
: Unknown parameter|Publisher=
ignored (|publisher=
suggested) (help) - ^ "Glosasry Terms in Notes".
{{cite web}}
: Unknown parameter|Publisher=
ignored (|publisher=
suggested) (help) - ^ "Business Models".
{{cite web}}
: Unknown parameter|Publisher=
ignored (|publisher=
suggested) (help) - ^ "Business Rules Code Generation".
{{cite web}}
: Unknown parameter|Publisher=
ignored (|publisher=
suggested) (help) - ^ "Behavioral Code Generation".
{{cite web}}
: Unknown parameter|Publisher=
ignored (|publisher=
suggested) (help) - ^ "Software Developement".
{{cite web}}
: Unknown parameter|Publisher=
ignored (|publisher=
suggested) (help) - ^ "Unit Testing".
{{cite web}}
: Unknown parameter|Publisher=
ignored (|publisher=
suggested) (help) - ^ "Testpoint Management".
{{cite web}}
: Unknown parameter|Publisher=
ignored (|publisher=
suggested) (help) - ^ "Recording Sequence Diagrams".
{{cite web}}
: Unknown parameter|Publisher=
ignored (|publisher=
suggested) (help) - ^ "Profiling Native Applications".
{{cite web}}
: Unknown parameter|Publisher=
ignored (|publisher=
suggested) (help) - ^ "SysML".
{{cite web}}
: Unknown parameter|Publisher=
ignored (|publisher=
suggested) (help) - ^ "Database Engineering".
{{cite web}}
: Unknown parameter|Publisher=
ignored (|publisher=
suggested) (help) - ^ "Built-in MDA Transforms".
{{cite web}}
: Unknown parameter|Publisher=
ignored (|publisher=
suggested) (help) - ^ "Auditing".
{{cite web}}
: Unknown parameter|Publisher=
ignored (|publisher=
suggested) (help) - ^ "Baselines".
{{cite web}}
: Unknown parameter|Publisher=
ignored (|publisher=
suggested) (help) - ^ "Version Control".
{{cite web}}
: Unknown parameter|Publisher=
ignored (|publisher=
suggested) (help) - ^ "Internal Mail".
{{cite web}}
: Unknown parameter|Publisher=
ignored (|publisher=
suggested) (help) - ^ "Team Review".
{{cite web}}
: Unknown parameter|Publisher=
ignored (|publisher=
suggested) (help) - ^ "SoaML".
{{cite web}}
: Unknown parameter|Publisher=
ignored (|publisher=
suggested) (help) - ^ "SOMF".
{{cite web}}
: Unknown parameter|Publisher=
ignored (|publisher=
suggested) (help) - ^ "Word Compatible RTF Reporting".
{{cite web}}
: Unknown parameter|Publisher=
ignored (|publisher=
suggested) (help) - ^ "HTML Reporting".
{{cite web}}
: Unknown parameter|Publisher=
ignored (|publisher=
suggested) (help) - ^ "Model Slide Shows".
{{cite web}}
: Unknown parameter|Publisher=
ignored (|publisher=
suggested) (help) - ^ "Model Search".
{{cite web}}
: Unknown parameter|Publisher=
ignored (|publisher=
suggested) (help) - ^ "WAN Optimizer".
{{cite web}}
: Unknown parameter|Publisher=
ignored (|publisher=
suggested) (help) - ^ "File Based Repositories".
{{cite web}}
: Unknown parameter|Publisher=
ignored (|publisher=
suggested) (help) - ^ "Server Based Repositories".
{{cite web}}
: Unknown parameter|Publisher=
ignored (|publisher=
suggested) (help)
External Links
[edit]- 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
Further Reading
[edit]- Michael Blaha. Patterns of Data Modeling (Emerging Directions in Database Systems and Applications). CRC Press; (June 1, 2010). English. ISBN-13: 978-1439819890
- Matt Stevens, Doug Rosenberg. Design Driven Testing: Test Smarter not Harder. Apress; (2010). English. ISBN-13: 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-13: 978-1590597743
- Doug Rosenberg. Agile Development with the ICONIX Process: People, Process and Pragmatism. Apress; (March 2005). English. ISBN-13: 978-1590594643