100 likes | 261 Views
Feasibility and Desirability analysis. Colin Potts Georgia Tech. Requirements’ priorities. Not all requirements are equal Even contractual requirements are often renegotiated Product requirements are often assigned priorities low priority reqts. may be jettisoned to reduce time-to-market
E N D
Feasibility and Desirability analysis Colin Potts Georgia Tech
Requirements’ priorities • Not all requirements are equal • Even contractual requirements are often renegotiated • Product requirements are often assigned priorities • low priority reqts. may be jettisoned to reduce time-to-market • Priorities may be {1, 3, 9} or {possible, deferred, rejected}, etc. • Priorities depend on stakeholders • Different stake value reqts. differently
Overview: QFD and prototyping • Quality Function Deployment (QFD) • Highly structured approach for tabulating reqts./design interactions & evaluating alternatives • Prototyping • Early development of executable models for customer to evaluate system concept
Quality function deployment (QFD) • Japanese technique for design & manufacturing • Principal tool is the “house” of quality • Complex matrix showing dependencies & trade-offs • Simultaneous analysis of customer needs, engineering design & market data lends QFD to multi-function teams
Building a “house” Design attributes Customer needs (named reqts.) Customer evaluations Eng. measures
Prototypes • Prototype construction is standard practice in engineering • cf. wind tunnels, computational models, artist's impression, etc • Design involves much exploration • Requirements can be validated by prototyping • To explore whether requirements really reflect users' needs • Prototypes reduce risk • Prototypes are used during feasibility studies • Prototypes can be constructed from reusable parts • Typically use 4GL, interface builders, application libraries, etc.
Effectiveness of prototyping • Empirical studies • Boehm et al (Proc. ICSE, 1986) • Alavi et al (CACM, 1986) • Most evidence is anecdotal • Experiment: incremental development (P) vs. specification-based design (S) • Student team projects to build estimation package • No difference in performance • P led to 40% smaller code • P required 55% effort of S • P led to less functionality, poorer reliability and poorer maintainability, but was easier to use and learn
Effectiveness of prototypes (cont.) • Analyst and manager survey • $5K to $630K projects • Perceived benefits of prototyping • Better feedback about requirements • Prototype provided common medium of communication (users and experience develop better working relationship) • Users become more enthusiastic • Perceived limitations of prototyping • Easy to oversell • Difficult to plan and control prototype development • Temptation not to throw away
Feasibility & desirability: how to find out more • QFD • Articles in HBR etc. • Prototyping • Many articles in IEEE Software and elsewhere • Book by Vonk