Overview

How it works
- Start with collecting issues — mainly in the Analyze phase. Based upon your findings, maintain an issue list.
- Evaluate those, determine values, preferably cost. This ensures you later solve important and relevant issues.
- Collect opportunities for improvement and evaluate those too.
- Align issues and potential improvements; plan improvements in an Improvement Backlog.
- Continuously strive to increase your architectural understanding, as this facilitates identification of additional issues and improvements.

Cross-cutting patterns and practices
-
Document relevant structures, concepts, decisions, interfaces etc. of the system to locate issues, risks and opportunities for improvement.
-
Keep a list of problems, issues and risks. Regularly match those to your collection of possible remedies.
-
Collect Opportunities for Improvement
Keep a list of possible and potential measures, remedies, tactics, strategies for improvements. Regularly match those to your collection of issues.
-
Document Problems stub
See Improvement Backlog.
-
Some people will oppose your findings, will whitewash or sugarcoat issues, problems or root causes. Regardless on how careful you prepared your analysis, they will try to diminish or attack your findings.
-
Compensate missing facts (especially requirements, goals, estimates, opinions) by explicit (usually written) assumptions about those facts.
-
Identify quality issues as early as possible and aim to fix them.
-
Evaluate the quality of work artifacts and processes as early as possible. Enables teams to apply corrective actions or take countermeasures as early as possible.
-
Make the overall goals and constraints of the improvement efforts understandable to every stakeholder.
-
Determine what impact (in code, concepts, data and the organization) a specific action or issue (e.g. refactoring, recurring problem) will or might have. Identify the resultant effects on system development and operations.
-
Collect all known issues and problems within a system or its associated processes, and make them comparable by evaluating each one.
-
Collect all known issues and problems within a system or its associated processes. Make the issues comparable by evaluating each one, usually using economical units like money or time.
-
Conduct long- and short-term planning of improvement activities. Balance or align issues and improvements, considering existing goals and constraints.
-
A generic structure for written audit or review reports, usually following an Analyze phase.
-
Explicitly differentiate between symptom (effect) and cause: identify root causes of symptoms, problems or issues.
-
Consider format and structure of the review report early.
-
Stakeholder-Specific Communication stub
Communicate with stakeholders by actively applying their specific or favored terminology and/or communication channels.
-
Systematic Decisions stub
Systematically prepare and take decisions by finding appropriate options, check assumptions, overcome emotion and prepare to be wrong. See Decisive (by C+D Heath).
-
When discussing problems, some stakeholders will question or doubt your findings (see pattern Expect Denial). Keeping thorough references to the origins or original sources of major findings keep eventual critics in check.
-
Widen Your Options stub
Before taking decisions it’s often a good idea to widen your decision space, look for additional options. Sometimes it’s not only “yes-or-no” decisions, but a spectrum of additional options are available - at least if you allow your brain to deviate from conventional path or your own preliminary conclusions.
