Toward Empowering Extreme Programming from an Architectural Viewpoint
The XP method is one of the noticeable approaches among agile software development methodologies. Besides its valuable features and capabilities there is a lack and that is about how to control the quality of the system and the effects of quality attributes on each other. In the last decade, software quality requirements have been especially addressed by software architecture. Since software architecture knowledge has grown and matured in recent years, many of agile methods, like XP, have not considered the importance of architecture in their development process. This paper introduces two practices (Continuous Architectural Refactoring andReal Architecture Qualification) in order to empower XP’s development process toward improving system’s architecture. The main characteristic of proposed solution is that it is derived from values and practices of XP so as to keep its agility intact.
KeywordsQuality Attribute Class Diagram User Story Agile Method Pair Programming
- 1.Azim Sharifloo, A., Saffarian, A.S., Shams, F.: Embedding Architectural Practices into Extreme Programming. In: Proceedings of the 19th Australian Software Engineering Conference, Australia (to appear, 2008)Google Scholar
- 2.Lippert, M., Roock, S.: Refactoring in Large Software Projects: Performing Complex Restructurings Successfully, 1st edn. John Wiley & Sons, Chichester (2006)Google Scholar
- 4.Bass, L., Klein, M., Moreno, G.: Applicability of General Scenarios to the Architecture Tradeoff Analysis Method. Technical Report, CMU/SEI-2001-TR-014, Software Engineering Institute, Carnegie Mellon University (2001)Google Scholar