Agility and Architecture May 18 2010
Agility and Architecture: An Oxymoron? Philippe Kruchten Saturn May 18, 2010
Philippe Kruchten, Ph.D., P.Eng., CSDP
Professor of So ware Engineering NSERC Chair in Design Engineering Department of Electrical and Computer Engineering University of Bri sh Columbia Vancouver, BC Canada [email protected]
Founder and president Kruchten Engineering Services Ltd Vancouver, BC Canada [email protected]
Philippe Kruchten 1 Agility and Architecture May 18 2010
Agile & Architecture? Oil & Water?
• Paradox • Oxymoron • Conflict • Incompa bility
Outline • Agility??
• So ware architecture?
• A story • Seven viewpoints on a single problem • The zipper model • A clash of two cultures • Summary
Philippe Kruchten 2 Agility and Architecture May 18 2010
Agility
• A defini on – Agility is the ability to both create and respond to change in order to profit in a turbulent business environment. Jim Highsmith (2002) • Characteris cs – Itera ve and incremental – Small release – Colloca on – Release plan/ feature backlog – Itera on plan/task backlog
Sanjiv Augus ne (2004)
Agile Values: the Agile Manifesto
We have come to value: • Individuals and interac ons over process and tools, • Working so ware over comprehensive documents, • Customer collabora on over contract nego a on, • Responding to change over following a plan. That is, while there is value in the items on the right, we value the items on the le more
Source: h p://www.agilemanifesto.org/
Philippe Kruchten 3 Agility and Architecture May 18 2010
Ge ng at the Essence of Agility • So ware development is a knowledge ac vity – Not produc on, manufacturing, administra on… • The “machines” are humans • Dealing with uncertainty, unknowns, fear, distrust • Feedback loop -> – reflect on business, requirements, risks, process, people, technology • Communica on and collabora on -> – Building trust
Named Agile Methods
• XP = eXtreme Programming (K. Beck) • SCRUM (K. Schwaber, J. Sutherland) • Adap ve development process ( J. Highsmith) • Lean So ware Development (M.&T. Poppendieck) • Crystal (A. Cockburn) • Feature Driven Development (S. Palmer) • Agile Unified Process (S. Ambler) • etc., etc…
Philippe Kruchten 4 Agility and Architecture May 18 2010
Different methods for different issues
XP prac ces
Scrum management
Lean principles
So ware Architecture: A Defini on