Documenting software architecture
Architecture documentation refers to recording guidelines, practices, architecture intents, decisions, rule books, reference architectures, and patterns using various tools such as wiki-style documentation tools, modeling tools, and Agile team tools. This section elaborates on this idea.
Different proposals for documenting architecture
Architecture documentation evolved over the years from rigid template-based documentation to an essential information-based approach. While many of those legacy ideas proposed by traditional frameworks such as Rational Unified Process (RUP) are still valid in Agile software development, the ways of documenting and the depth of documenting are different.
View-centric approaches were popular in the early 2000s. The essence of architectural viewpoints is that different stakeholders want to see different architectural views based on their interests. The different view frameworks are as follows:
- The 4 +1...