One Size Does Not Fit All

So far, we have shown how to structure certain types of "documents", advised using fixed artifacts to describe particular analysis components, and lastly, have recommended setting fixed conventions and rules for writing and modeling. But at the same time, we are still emphasizing, there will never be a unified analysis approach suitable for all situations and environments. So isn't it a contradiction?

Actually not. We need to distinguish between standardizing the overall approach and standardizing the way the individual outputs are created, formatted, and structured. The approach tells what steps need to be taken during analysis activities and what outputs must be produced. This cannot effectively be standardized as each analysis is different, requiring a tailored approach. Sometimes a 100-page specification will be needed to describe each screen and each input field in detail. Sometimes a couple of screen sketches and a basic integration description will be sufficient within a small agile project. The approach needs to be tailored to the environment in which the analysis is performed. It must consider who the stakeholders are, who is the customer, what is the overall software delivery process, and how good is the development team. Each organization, project and team is unique so that each analysis approach must be unique. It cannot be prescribed what outputs should be produced and when, what can be to some extent unified though, is how the output should look and what quality attributes it should have if it is eventually created. So, standardizing analysis does not mean to always create specific outputs but rather unifying rules and conventions for them.