By David Gelperin, CTO, ClearSpecs Enterprises
Seeking sites to refine and use a hybrid Agile process containing two phases. The second phase is “pure” Agile development and focuses on user functions. The first phase (Quality-First) identifies and manages quality goals such as reliability, understandability, or response time, which matter to your application.
Quality-First contains the following steps:
1. Identify relevant quality goals and their acceptable quality levels early (workshop).
Some quality goals are universal that are relevant to most applications. These include: reliability, response time, modularity, ease of use and learning, and all basic qualities (compliance, sufficiency, understandability, and verifiability).
The remaining (nonuniversal) quality goals are reviewed to identify those which matter to your application.
<A comprehensive quality model will be supplied to speed this step>
2. Refine quality goal information and identify “quality champions” among your team.
3. Create master lists of development restrictions including quality constraints and design, coding, and verification tactics derived from your quality goals.
Each quality goal restricts verification, coding, or design of modules, data, or interfaces, or a combination of these. A set of quality goals has a matching set of restrictions.
Start with master lists of universal quality goal restrictions and develop the restrictions for the (nonuniversal) goals that matter to your application.
During the Agile phase, consult the restriction master lists at the beginning of each iteration and as a part of the acceptance review at the end.
This process is based on the following assumptions:
1. Identifying relevant qualities only needs an understanding of the type of application (e.g. flight control or e-commerce) to be acquired and not details of its behavior.
2. A comprehensive, multilevel quality model should be used on every project.
3. Identification of quality goals is the responsibility of PMs, Customers, Technical leads, and SMEs.
4. Cost-effective iterative development should be aware of restrictions from quality goals early in each iteration.
5. With experience, master list development takes no more than a week. At first, it takes 2 to 3 weeks.
Questions about and comments on these ideas are most welcome. To be considered as a beta site, drop me an email (firstname.lastname@example.org).