Question:
Software architecture
The traditional software development process changes profoundly when software architecture is its technical foundation. Consider issues such as the experience needed to successfully exploit an architecture, productivity gains, potential to overlook novel solutions, advantages for evolving product families, and architectural degradation. Propose a situation where a software architecture would be helpful, and one where it would be detrimental. Explain your reasoning.