Architecture-Centric Methods and Agile Approaches
Agile software development approaches have had significant impact on industrial software development practices. Despite becoming widely popular, there is an increasing perplexity about the role and importance of a system’s software architecture in agile approaches [1, 2]. Advocates of the vital role of architecture in achieving quality goals of large-scale-software-intensive-systems are skeptics of the scalability of any development approach that does not pay sufficient attention to architectural issues. However, the proponents of agile approaches usually perceive the upfront design and evaluation of architecture as being of less value to the customers of a system. According to them, for example, re-factoring can help fix most of the problems. Many experiences show that large-scale re-factoring often results in significant defects, which are very costly to address later in the development cycle. It is considered that re-factoring is worthwhile as long as the high-level design is good enough to limit the need for large-scale re-factoring [1, 3, 4].
- 1.Kruchten, P.: Situated Agility. In: Proceedings of the 9th International Conference on Agile Processes and eXtreme Programming in Software Engineering, Limerick, Ireland (2008)Google Scholar
- 2.Kruchten, P.: Voyage in the Agile Memeplex. ACM Queue, 38–44 (July/August 2007)Google Scholar
- 4.Ihme, T., Abrahamsson, P.: Agile Architecting: The Use of Architectural Patterns in Mobile Java Applications. International Journal of Agile Manufacturing 8, 1–16 (2005)Google Scholar
- 6.Parsons, R.: Architecture and Agile Methodologies - How to Get Along. In: WICSA (2008)Google Scholar
- 7.Ali Babar, M., Abrahamsson, P.: Architecture-Centric Methods and Agile Approaches. In: Proccedings of the 9th International Conference on Agile Processes and eXtreme Programming in Software Engineering, Limerick, Ireland (2008)Google Scholar
- 10.Ali-Babar, M., Abrahamsson, P.: Architecture-Centric Methods and Agile Approaches. In: Proceedings of the 9th International Conference on Agile Processes in Software Engineering and Extreme Programming (XP 2008) (2008)Google Scholar