SPA2005 session: Held to Account: Using Principles to Explain and Justify Architectural Decisions

One-line description:Presents a simple but powerful technique to formally map business drivers through to architectural decisions by means of architectural principles.
 
Session format: Workshop [read about the different session types]
 
Abstract:The architect's role is probably the least well-defined but amongst the most challenging on any large software development programme. You sit at the centre of a diverse stakeholder group, balancing their conflicting and often unattainable needs. You have to make important decisions based on ill-defined scope and requirements, and then you have to "sell" your solution to sponsors and stakeholders who may not understand it nor the benefits it will bring.

Architects often use ''architectural principles'' to capture and explain the essence of their architectural designs. However on a complex project the number of principles can quickly become unmanageable, and too often you end up with a confusion of bald statements ranging from the sweeping to the very specific. Furthermore, merely listing principles in this way does not bring out the ''rationale'' behind your key architectural decisions.

A powerful technique in this situation is to structure principles into a framework which formally maps ''business drivers'' right through to ''architectural decisions.'' At each stage in the process, principles drive out ''implications'' which in turn form the ''rationale'' for the next set of principles further down the chain.

This tutorial will draw upon real experiences of applying this technique on large programmes. Starting with a pre-prepared set of business drivers, we will over a couple of iterations turn these into a set of principles for an architectural design. To make the tutorial more interesting, the business drivers will be chosen to lead towards a Service-Oriented Architecture (SOA) style of solution.
 
Audience background:No specific technical skills are required, but those with some architectural or systems analysis experience will benefit most.
 
Benefits of participating:The approach and techniques you learn in this session will prove invaluable when you have to explain and 'sell' the features and benefits of your architectural design to business and technical stakeholders. It will help you structure your thoughts, especially in the architectural 'discovery' phase; it will serve to uncover aspects of your architectural vision that you hadn't even thought about; and it will give you a framework for architectural decision-making.
 
Materials provided:Presentation and accompanying background material
 
Process:* we will firstly present the concepts and explain the approach
* we will then present a small set of business drivers
* working with the audience, we will translate some of these into functional principles, technical principles and architectural decisions, justifying the progression at each stage

Note - we could also run this as a 75-minute tutorial if required, although we would not be able to explore the topic in as much depth, nor get much practice at coming up with effective principles.
 
Outputs:We will make the outputs from the tutorial available to participants after the session.
 
History:None.
 
Presenters
1. Nick Rozanski
Marks and Spencer plc
2. Eoin Woods
Zuhlke Engineering Ltd
3.