As enterprise architects we need to choose our tools based on three factors:
- frameworks we already have chosen
- the processes we use to support those frameworks
- how the IT domain is organized to deliver solutions resulting from those processes
In the long run, this is for the best because when an enterprise relies on a single tool it can lead to solutions that are driven more by the limitations of the tool than the needs of the business.
If we narrow the scope of our search for tools an IT-centric enterprise architectural approach (where most of the effort is focused on IT transformations in support of business goals, as opposed to the anti-pattern of enterprise architecture being about IT supporting more IT), we can identify a few tools that have moved to the head of the pack. One such tool is Enterprise Architect by Sparx Systems, which I will review in this article.
For the sake of pointing out as many features as various enterprise architect groups may find useful, I used the Ultimate Edition as the reference point for this article. Enterprise Architect also comes in five progressively narrower versions, from a Business and Software Engineering Edition to a Desktop Edition. For your own evaluation you can review what each edition offers in detail by selecting the Help at the initial set up screen the first time you run the application.
Click here for larger image
Figure 1. Select the Trial Version That Most Suits Your Needs
Modeling Language Standards Support
There are plenty of UML tools that can be adapted to enterprise architecture, and most enterprise architecture tools provide UML functionality. So it is no surprise that Enterprise Architect supports it. What is a nice change of pace is that it supports many other context-specific modeling languages, too. Round-trip mapping with Business Process Modeling Notation (see BPMI.org if this is new to you) is handy for enterprises that have been using BPMN already and decide to adopt Enterprise Architect (or vice-versa). The BPMN models can then be output as BPEL scripts, something one would generally expect only from a development tool (which Enterprise Architect can double as in a pinch).
Enterprise Architect also supports the Object Constraint Language for UML validation, a handy feature for those of us lacking an eidetic memory or who work too late doing our modeling because the day is filled with the meetings to gather details for the model. Also supported are the OMG's Service-Oriented Architecture Modeling Language (SoaML) and the Service-Oriented Modeling Framework (SOMF) to model your company's SOA strategy, as well as round-trip engineering of XSD and WSDL. Reverse engineering allows greater accuracy in creating a baseline architecture, and forward engineering helps keep the implementation on track with the design.
Click here for larger image
Figure 2. Forward Engineering Helps Kick Start Development