An introduction to Enterprise Architect

Date/Time:
Thursday 10 April 2008

Speaker:
Gillian Adens, Managing Director of Tassc

Description:

This half-day seminar was presented by Gillian Adens, Managing Director of Tassc, who gave a most informative and interesting talk about the capabilities of Enterprise Architect when used for planning, design and construction of software intensive systems. There were three sessions: UML and EA, Team Working with EA, Project Management.

The creation of UML

In the first session on UML and EA, Gillian posed the question “Why Model?” then outlined how the use of graphical notations and the evolution of modelling techniques have supported communication of complex team endeavours. Modelling techniques around early software programs, structured and object-oriented methods were mentioned. Gillian explained the rationale for object technology, its benefits of reuse and how models exhibit stability.

Including the advantages of object technology around traceability from requirements to solution, how requirements drive the whole development process, and how extensibility can be achieved. A brief history of the method wars was given, where many of the OO methods and notations developed ended with three of the most popular Rumbaugh (OMT), Jacobson (OOSE), Booch (OOD) merged to create the UML.

UML stands for “Unified Modelling Language” which is a graphical language for visualizing, specifying, constructing, and documenting the artefacts of a software intensive system. UML is a standard for modern software design; a language that is understood industry-wide; and a succinct and unambiguous communication mechanism.

Introducing Enterprise Architect

Next Gillian introduced EA (Enterprise Architect), which is a CASE tool (Computer Assisted Software Engineering) designed to support all UML diagram types. Its use facilitates team working. It can generate and reverse engineer code, generate database schemas and helps manage your projects.

The EA User Interface was introduced, with its layout of Main Menu, Toolbars, Toolbox, Project Browser, Start Page and Diagram windows, etc. This UI is easy to customise with floating / dockable windows, which can be saved as a number of Custom Layouts to suit your working environment. Diagrams types are held in categories, these include all UML types held under either Structured or Behavioural categories.

There are also additional diagram types. Under the category Extended are: Custom; Requirements; Maintenance; Analysis; User Interface; Data Modelling. There are also special categories for BPMN (Business Process Modelling Notation) and Mind Mapping. New diagrams delivered in the latest EA Version 7.1 are Model Document; Data Flow; and Web Modelling.

An example using Enterprise Architect

To give attendees a flavour of what available functionality is incorporated within EA, Gillian discussed how easily EA can be used to capture and document Use Cases, Requirements and then cross reference these with the Relationship Matrix. We looked at Activity and Class diagrams, Skeletal code generation from class and interface specifications.

Reverse engineering from source code and how to keep model and code synchronised. The ability to create relational database tables and columns and Import/Export a database schema. Both Sequence diagrams and State machine were discussed followed by a demonstration of EA to end the first session.

After the first networking break we returned for session two “Team Working with EA” in which the capabilities of the three different editions of EA were outlined (Desktop, Professional and Corporate). We looked at how packages can be used to structure projects into ideal units of responsibility.

Including the use of controlled packages and version control to maintain a history of changes and enable roll-back by using the XMI standard to store controlled packages. Gillian introduced us to the template project, sharing project files over networks, replication for geographically distributed teams, large project team DBMS repository and related security mechanisms.

Project management

Following the second networking break we settled down for the third and final session “Project Management”. In this session Gillian showed us how to record management information in EA (issues, tasks, changes, test cases, tagged values).

Create a project glossary to understand terminology, generate documentation and share XMI export / import of any model view or package information with other tools. To demonstrate how shared XMI can add project management value, Gillian finally showed us how Tassc’s Circa (latest generation of estimation and planning software) could take an import of use cases and classes from EA (using XMI), then applying Circa’s built-in metrics to estimate effort.

Circa can also help define the project team, estimate overall duration and add contingency to take account of risks. The ability to produce Gantt charts to schedule the work and create dependencies between tasks, use colour coding to show task status and optionally export the project plan to Microsoft Project.

Conclusion

High praise and positive feedback was recorded on the delegate feedback forms collected at the end of this event.