The Community for Technology Leaders
RSS Icon
Subscribe
Issue No.02 - March/April (2010 vol.27)
pp: 41-48
ABSTRACT
Agile development delivers value quickly, using a series of short-term goals based on immediate priorities. Architecture grows value carefully, using a set of long-term objectives based on fundamental principles. The two seem at odds, but the architect can bring them together at four well-defined points in agile projects: during project initiation by setting architectural direction, through storyboarding by introducing specific architectural tasks, within sprints by close collaboration on challenging issues, and as working software gets delivered by performing direct inspection. This requires four critical skills: decomposing architectural work into iterative form, advocating the merits of architecture throughout development, tracking the architectural state of the project as it executes, and driving toward a broader enterprise architecture to which all agile projects contribute. When done effectively, this approach achieves a pragmatic balance between business and architectural priorities while delivering both with agility.
INDEX TERMS
agile development, enterprise architecture, software engineering, project management, team organization
CITATION
James Madison, "Agile Architecture Interactions", IEEE Software, vol.27, no. 2, pp. 41-48, March/April 2010, doi:10.1109/MS.2010.27
REFERENCES
1. K. Schwaber, Agile Project Management with Scrum, Microsoft, 2004.
2. K. Beck and C. Andres, Extreme Programming Explained: Embrace Change, 2nd ed., Addison-Wesley Professional, 2004.
3. M. Fowler, Patterns of Enterprise Application Architecture, Addison-Wesley Professional, 2002.
4. E. Gamma et al., Design Patterns: Elements of Reusable Object-Oriented Software, Addison-Wesley Professional, 1995.
5. L. Bass, P. Clements, and R. Kazman, Software Architecture in Practice, 2nd ed., Addison-Wesley Professional, 2003, pp. 71–98.
6. R. Kazman, M. Klein, and P. Clements, ATAM: Method for Architecture Evaluation, tech. report CMU/SEI-2000-TR-004, ESC-TR-2000-004, Software Eng. Inst., Carnegie Mellon Univ., 2000.
7. M. Poppendieck and T. Poppendieck, Lean Software Development: An Agile Toolkit for Software Development Managers, Addison-Wesley Professional, 2003, pp. 38–45, 103–111.
8. K. Schwaber and M. Beedle, Agile Software Development with Scrum, Prentice Hall, 2002, pp. 23–30.
9. R. Kimball and M. Ross, The Data Warehouse Toolkit: The Complete Guide to Dimensional Modeling," John Wiley & Sons, 2002, pp. 78–88.
10. V. Subramaniam and A. Hunt, Practices of an Agile Developer: Working in the Real World, Pragmatic Bookshelf, 2006, pp. 155–157.
11. M. Fowler, "Who Needs an Architect?" IEEE Software, vol. 20, no. 5, 2003, pp. 11–13.
12. M. Ross and R. Kimball, "Differences of Opinion," Intelligent Enterprise,6 Mar. 2004.
13. J. Madison, Very Large Calculation Systems, Casualty Actuarial Soc., 2009.
14. J. Shore and S. Warden, The Art of Agile Development O'Reilly, 2008, pp. 214.
15. G. Hohpe and B. Woolf, Enterprise Integration Patterns: Designing, Building, and Deploying Messaging Solutions, Addison-Wesley Professional, 2003.
16. "Best Practices in Business Intelligence: Creating an Agile BI Infrastructure," Computerworld 2009; www.biperspectives.comawards.aspx.
34 ms
(Ver 2.0)

Marketing Automation Platform Marketing Automation Tool