The demand for Enterprise Architecture (EA) seems to be growing fast. There are dozens of Enterprise Architecture frameworks and tools available. Which one to choose? What is important in Enterprise Architecture?
If you are confused and don’t know where to start, here’s a simplified model. There are also other ways to do it, but based on my experience, this model works very well in most cases. There are also many other subtopics in Enterprise Architecture, but I have collected here the most important ones.
In this simplified model, an Enterprise Architecture consists of four sub areas. The same sub areas are in many widely accepted EA frameworks:
It’s advisable to focus on all these sub areas. If you have limited resources or very tight schedule, you can leave technology architecture out of focus. Never leave business architecture out of your focus. Enterprise Architecture is meant to help aligning business and ICT. If you leave business architecture out of focus, you have totally wrong approach.
In the following paragraphs I describe a basic process for creating first version of an Enterprise Architecture. It is advisable to think this as an iterative process. During the first iteration, try to reach results fast and keep the abstraction level high. Try not to get lost in all the details.
Step 1: Get organized
Architecture is not a project, which has start and end points. It is an ongoing process, way of life. Thus, it is important to think how you are going to maximize the benefits of you EA effort. It is not very useful to perform one iteration of EA work, and then forget the results.
Main topics to think are:
Step 2: Create architecture principles
Architecture principles are general rules and guidelines, intended to ensure that all your EA effort is targeting to correct goal. Both business and ICT management should agree and accept the principles.
Create 10-20 architecture principles, thinking of two main topics:
It is advisable to create the first version of your architecture principles at an early stage of your EA development process. After you have finalized the first version of your architecture, you probably will need to refine your architecture principles, especially principles related to EA implementation.
Step 3: Understand your EA entities
First you need to collect and document core entities in each of the EA sub areas.
Step 4: Describe relationships between different types of EA entities
Enterprise architecture is not only about understanding the entities described above. Thus, the next step is to map the relationships between them. A simple matrix is a good starting point in most cases
Step 5: Think!
At this stage, you already have a good understanding of your EA’s current state. It’s time figure out, what you have learned so far. Make a list of issues you found. Keep in mind the business goals you listed earlier.
There’s a good chance that during your 1st EA iteration you’ll find some quick wins, issues that are easy to fix. It’s worth thinking, if it’s wise to fix them even before you have created your to-be architecture.
Step 6: Create architecture vision
Again, read business strategies, check business goals you have listed. Interview your business management. Based on the future of the business, create an architecture vision. If possible, try to focus for at least 5-10 years to the future, further than your business strategy covers. Business and applications are most important areas to cover in your architecture vision.
The purpose of the architecture vision is to guide your architecture implementation. All your development projects should lead your enterprise towards your architecture vision. Architecture vision describes the future far, far away. It’s like a beacon guiding you to the correct route. It is not necessary to describe the architecture vision to a detailed level, but don’t totally skip this step. Without an architecture vision agreed with the business management, there’s a risk that you change your development direction too often.
Living without an architecture vision is like travelling without a map. In each intersection you have to choose the direction which looks the best at the moment. But you don’t have any idea where you’ll find yourself at the end the day. It might be fun, but you have to admit that that’s not the best way to actually reach something.
Step 7: Create Target Architecture
The final step is to create a concrete to-be architecture and roadmap. Take your architecture vision as a starting point. Also keep in mind the observations you made when analyzing your as-is architecture in Step 5.
When you have reached Step 7, remember that it is not a finishing line or end of a project. You just created a first, probably a high level version of your Enterprise Architecture. Now it’s time to start living with it. Check back to check what you decided in Step 1.
Remember to guide your development projects and offer them architectural support. Audit their plans.
Make sure that your as-is architecture will always be up-to-date. Also, every now and then, check the architecture vision and target architecture. It is advisable to tie them into your organizations strategic and annual planning processes. Also, keep in mind that soon it might be wise to iterate again the whole EA process described above, maybe to a more detailed level.
Have “less is more” as a guiding principle. Keep things simple as possible. You need to handle and understand all the details, but you also have to be able to communicate your EA. Make simplified versions of your diagrams, highlight the most important topics. Remember, your business management also has to be able to understand your architecture. Don’t confuse them with an overwhelming amount of technical details. Avoid acronyms. Make everything understandable also to people who are not ICT professionals.
That should do it. Bon voyage!