One problem with large projects is managing multiple architects working on the one architecture. You need to be able to decompose the problem space into chunks that you can assign to individual architects to focus on. Then there is how to document the architecture, do you produce one architecture document or multiple architecture documents.
Unfortunately this seems to be one of those problems where there is no perfect solution. Every way you decide to tackle it you will get to the end and not want to use that approach again because of the issues it introduced. From previous projects there seem to be three logical ways to tackle a problem like this:
- Have multiple architects editing the one architecture document
- Break the project into domains and write an architecture document for each domain
- Have an architect document a domain and then consolidate into a single architecture document
The first problem is defining the domains that people will work on. For the recent migration project I was on we used a reference architecture to do this. Once you have the break up of the problem space you then have to deal with how you tackle documenting it.
1. Have multiple architects editing the one architecture document
Pros
- The architecture of the project is in one document
- Don’t need to repeat content across multiple documents
- Easy to identify if there are any gaps in the architecture
Cons
- Complexity of multiple people editing a single document
- Domains don’t necessarily align to the document sections
- Different people have different writing styles
- Hard to track progress
2. Break the project into domains and write an architecture document for each domain
Pros
- Architects are largely self-sufficient
- Easy to track progress
Cons
- Have to read multiple documents to understand the architecture of the project
- Some content will need to be repeated across document
- Hard to manage things like issues, risks, dependencies etc across documents
- Gaps in the architecture aren’t always relevant
3. Have an architect document a domain and then consolidate into a single architecture document
Pros
- The architecture of the project is in one document
- Easy to track progress
- Architects are largely self-sufficient
- Don’t need to repeat content across multiple documents
Cons
- Different people have different writing styles when consolidating
For the recent migration project that I was on we went for the “Have an architect document a domain and then consolidate into a single document”. We produced a lite version of the architecture document that we called a Solution Brief. This was just a cut down version of the architecture document with only some of the sections. But at the end of the process we were able to just cut and paste the content of the Solution Briefs into the single architecture document.
Look it wasn’t perfect but I think the process was the better of the three. The big learning was to define the domains that people are working on well as if you don’t get this right up front you are constantly addressing scope issues for the domains you have defined.
Tags: Best Practice, Leadership, Migration
7 January 2011 at 8:09 am |
[...] a team of architects presented several challenges one simple problem of having multiple architects but one architecture to document. A simple habit that the team got into which helped develop a culture of knowledge [...]