Main Menu
Home
News
Contact Us
Search
Newsletter
Company
Services
Research
Workshops
BMO
Repositories
EAS
Browsers
Web Services
Shop
Best Practices


Executable Architecture PDF Print E-mail

An executable architecture is the description of a system architecture in a formal notation, with specified syntax and semantics, together with tools that allow for the automatic generation of executable software code. A systems architecture is the conceptual model that defines the structure and behavior of a system (e.g. an enterprise, a business unit). Viewed from a slightly different angle, an executable architecture is an executable model that can illustrate dynamic structure and behavior.

Undoubtedly, an architecture created by domain experts can be considered more robust than one created by software engineers. Not surprisingly, software engineers tend to focus on technical aspects, while business architects and business analysts have a distinctly business-oriented view. The challenge lies in the approach to enable business architects and business analysts to create an executable business architecture, which is part of the enterprise architecture. A transformation mechanism is required that implements a bridge between business architecture and technical architecture. Ideally, a kind of execution engine exists that can interpret models and generate executable code at execution time. The generated code would integrate with the existing technical architecture, represented by data management systems, mail systems, operating systems, etc. As a consequence, business components and compositions represent executable architecture.

The intrinsic alignment of enterprise architecture and business capabilities life-cycle management, including business process management (BPM), data management, etc., is a major characteristic of an executable architecture. The issue of missing alignment between enterprise architecture and BPM, between enterprise architecture and data management, etc., that so many organizations experience today, is effectively eliminated.

There are many benefits that an executable architecture offers:

  • The dynamic aspects of the system can be fully described and understood.

  • The enterprise architecture can be developed iteratively with analysis and validation being performed at each iteration stage.

  • Business analysts can develop the business architecture, concentrating on business aspects.

  • The behavior of the architecture can be visualized and analyzed.

  • The architecture can be experimented with and stressed to be better able to detect deficiencies.

  • The simulation of the architecture and its visualization provides a more accurate view for the stakeholders to determine whether it meets their needs.

  • Minimize the need for extensive software experience (non IT-experts can develop the enterprise architecture).

  • The round-tripping problem, which occurs when different models need to be synchronized and model transformation works only in one direction, is eliminated.

 
< Prev   Next >
   Home