September 28, 2011

Software Architecture Review

Software Architecture Review  - in my opinion happens at two levels

1.  Macro Level 
2.  Micro Level 

To review an existing system for any recommendations or trouble shooting - is not a one man job especially for complex Enterprise systems. This is simply not feasible. This is a team effort -at least a team of 3 to 4 - you need strong developers, architects, designers, database architects, domain architects etc.
But for simple to medium complex applications - one person can do the review - provided he networks and seeks help in areas which he is not hands-on.

Coming to the review part, first and foremost - the reviewer (or the review team) should understand from the stakeholders: 
Why this review is being conducted? 
What are the existing concerns?
What measures have they taken already to address the issues? What have they learned till now?
Or is it a pro-active measure by the management?

These questions would set the right direction for the reviewer. He should exercise his personal judgment and be unbiased.

At Macro Level - the focus should be on the 
At the Micro level - it gets interesting because at the Macro level things can be misleading - the code would give the true picture. The reviewer should start digging into the code. 
At the end of this exercise the review team should produce a diagnostic report highlighting recommendations and best practices.

    1 comment:

    Chamila Wijayaratna said...

    Can you explain the micro level architecture and macro level architecture in developers point of view, who develops a brand new system.