This article was moved to MDriven Wiki – Enterprise architect information
I wrote this other article some time ago. The principle remains but we have a lot of input from real life experience what one requires to successfully maintain all the axes of information needed in Enterprise Architecture.
We have applied this knowledge to create a tool that is now part of AppComplete – we call it EA-Information.
The first axis of information is the Processes – you can define the Steps of the process and the Stakeholder’s motivation for having this process in the first place.
The second axis of EA-information is Information – here we can catch and see what the business call things – the catalog term – what states the catalog terms can have – according to the business. We can also define how this catalog term is implemented with classes or attributes. If we are 100% DDD compliant (as defined by Eric Evans book DDD – Domain Driven Design) the Catalog terms will have the exact same names as our classes. You will find that this is very good idea and it gives you the ubiquitous language between systems and business that everyone wants but very few manage to get and keep over time.
Having a separation between Catalog terms and Classes is an acceptable solution that enables both DDD implementations and also more traditional approaches.
When the language in the business and in the IT- systems are not ubiquitous this separation of axis enables us to define the lexicon between the two languages.
The Actors are the named Roles of the Business – they may have motivation to engage in processes and they may have user stories for specific steps of processes.
The fourth axis of information is Applications – we need to know the tools of the business. It is important to know the tools and in the end what information the tools contain in order answer questions about what will happen if an application is temporarily down or needs to be replaced.
The applications are one thing – but most applications are divided into modules or application parts. This is also defined in the screen above.
If you want to detail the use cases for these tools you can do so by defining ViewModels in AppComplete – the ViewModels will not only exactly explain what information that is used for that use case but also enables you to prototype or develop user interfaces to are suitable for the task at hand.
The fifth axis of information in the AppComplete – EA-Information tool is Infrastructure.
Here we can define infrastructure nodes that our applications or part of our applications depend upon.
Having this information documented makes it easy to answer questions like “can we de-commission Server X or not”. And questions like “I need to replace the router on floor 5, can I do it Thursday?” can be answered by tracking back what applications depend on it, then find what processes steps that use the applications and in the end find the Actors and Stakeholders involved.
The process steps are really the core of the EA-information and as such you can explain in detail what the inputs and outputs are – you can also express if the step needs some information from another source than the input – we call this Resources.
This information is expressed with the Catalog Terms so you get full cross reference between all the axis in the EA-Information.
Information at your fingertips
The EA-Information shows up in the other views of AppComplete. You can show single steps in Process diagrams:
And Catalog Terms show up in the classes in Class Diagrams
And Cross references are available in the Auto-Diagrams
We are humble – we do not know everything – but we still think that we are on the right track. We are open for suggestions and we want partners. We can offer very competitive terms on AppComplete; AppComplete is a the application name that combines the tools EA-Information, Modlr, Prototyper, WECPOF, Reverse Database and Documenter.