Enterprise Architecture Tool Selection Guide Editorial Writer: J. Schekkerman Version 5. 0 2009 Preface An enterprise architecture (EA) establishes the organization-wide roadmap to achieve an organization’s mission through optimal performance of its core business processes within an efficient information technology (IT) environment. Simply stated, enterprise architectures are ”blueprintsl for systematically and completely defining an organization’s current (baseline) or desired (target) environment. Enterprise architectures are essential for evolving information systems and developing new systems that optimize their mission value.
This is accomplished in logical or business terms (e. g. , mission, business functions, information flows, and systems environments) and technical terms (e. g. , software, hardware, communications), and includes a transition plan for transitioning from the baseline environment to the target environment. If defined, maintained, and implemented effectively, these blueprints assist in optimizing the interdependencies and interrelationships among the business operations of the enterprise and the underlying IT that support these operations. It has shown that without a complete and enforced EAolution Architects Strategic Planners / Management; Enterprise Program Managers Software Architects / engineers External Partners. EA Methodologies and Models Model Development Interface Tool Automation Solution Architects Strategic Planners / Management Requirements Enterprise Program Managers Requirements Software Architects / Engineers Requirements External Partners Overall Requirements List =
Requirements Requirements Requirements Extendibility & Customization Analysis and Manipulation Repository Deployment Architecture Costs and Vendor Support Architecture Results Weigh Factors 1. 2. Functionality Dimension This dimension of the EA Tools review framework attempts to capture how well the tool performs the core functions needed to support the enterprise architecture development activity. This dimension breaks the functionality of an enterprise architecture tool into eight key areas. 1. 2. 1 .
Methodologies and Models The most important feature of an enterprise architecture tool the methodologies and odeling the approaches it supports. The approaches the tool supports dictate the types of enterprise architectures the tool is capable of supporting, and to an extent, the type of analysis and manipulation functions the tool is capable of performing. As well as reviewing the methodologies and modeling approaches, this functional area also reviews how well, or how completely, the tool implements the methodologies and modeling approaches it claims to support.
For tools that are capable of supporting multiple methodologies and modeling approaches, this functional area also examines ow well the different approaches are integrated. For example, when complementary methodologies and modeling approaches (for example process modeling and data modeling) are used, how well can the different approaches be used together in an overall enterprise architectural approach? Enterprise Architecture Tool Selection Guide v5.
O Copyrights, Institute For Enterprise Architecture Developments, 2001-2009 2 May 2009 When a tool supports competing approaches (for example two approaches to data modeling) how well can the data being modeled be moved between the different perspectives offered by the competing approaches? . 2. 2. Model Development Interface The model development interface is the most obvious part of an enterprise architecture development tool. It is the interface used to design, build, maintain and often manipulate, the models that make up the architecture.
Generally, models are built and maintained graphically, by manipulating icons and the connections between them. The tool’s model development interface may also use textual interfaces to allow additional information to be appended to the graphical models. The overall quality of the model development interface is an important characteristic f any enterprise architecture development tool. The interface must support the modeling activity well, for example by automating some of the drawing functions, by appropriate places during the modeling activity.
The model development interface must also be intelligently structured, make good use of limited screen space, be logical and consistent to use and navigate. The tool should ideally follow the graphical user interface conventions and guidelines that apply to its host operating system. 1. 2. 3. Tool Automation Developing and populating enterprise architecture models is often the most time onsuming part of the enterprise architecture development activity. By providing support for automating parts of the enterprise architecture development processes, a tool can help speed up the overall development activity.
A tool may support the creation of macros or scripts, to automate common functions or actions, or to group several functions together into one action. These may be used to automate parts of the model development activity. This feature is closely related to the tool’s ability to be customized, which is described in the next section. The tool may also provide the bility to automatically generate enterprise architecture models based on data held within the tool’s repository, or have the ability to generate enterprise architecture models as a result of data manipulation functions. . 2. 4. Extendibility and Customization This functional group captures how well an enterprise architecture tool can be modified to meet the unique enterprise architectural requirements of a unique organization. Enterprise Architecture tools may support customization by allowing users to add new modeling approaches or to modify the modeling approaches already supported by the tool. A tool may also support modification by providing a programming interface, allowing the functions of the tool to be modified, or allowing the tool to be integrated with other software products.
Most enterprise architecture tools that support high levels of customization allow the underlying meta-models of the tool to be modified, and new meta-models added. Metamodels are literally models about models. They describe what entities can exist Enterprise Architecture Tool Selection Guide v5. O Copyrights, Institute For Enterprise Architecture Developments, 2001-2009 3 May 2009 ithin particular models, the legal relationships between the different entities, and their properties. By modifying the existing meta-models, or adding completely new meta-models, a tool can be customized to support new modeling approaches.
The ability to modify the tool via a programming interface allows the functionality and behavior of the tool to be customized to meet the unique requirements of the organization. Programming customization may be achieved though the use of an application scripting language, for example Visual Basics for Applications (VBA), or components. Enterprise Architecture tools may be extended by integrating them with other software products. This may be achieved via direct integration through an exposed API within the tool, or via a middleware layer, for example ActiveX/DCOM, CORBA, and so on.
Integration may also be supported via importing and exporting data into and out of the tool via standard file types; for example, character delimited or fixed width delimited text files, HTML, or SYLK files and so on. 1. 2. 5. Analysis and Manipulation As well as supporting the development of enterprise architecture models, an nterprise architecture tool may also provide support for analysis and manipulation of the developed models. The type of analysis and manipulation support provided by the tool is often tied to the particular modeling approaches supported by the tool.
For example, Flow Analysis is often tied to process/workflow modeling. Analysis support provided by a tool may simply examine how correct or complete the model is, relative to a particular modeling approach used. More sophisticated analysis support may allow the model to be interrogated in some way, or be subjected to particular analysis methods. Analysis support may include the ability to compare different versions of models, allowing current and to-be enterprise architectures to be compared.
Manipulation functions capture a tool’s ability to change the way the models are represented and viewed. This may include the ability to view models from particular perspectives, for example showing only particular classes of entities, or the ability to amalgamate separate models into a single model. 1. 2. 6. Repository Most of the tools on the market make use of some kind of data repository to hold the developed models. The functions provided by the tool’s repository have a significant mpact on the overall functionality, scalability and extendibility of an enterprise architecture tool.
Some tools make use of commercial relational database management systems, or commercial Object Orientated or ObJect/Relational database systems, while others use proprietary repository systems. A tool’s repository often dictates the way users can collaborate. A repository may provide support for collaboration by supporting multiple, concurrent, users on the one repository, or by providing the ability to combine models developed by different modelers into one model. 4 May 2009