Information Technology Projects

Requirements gathering - RUP vs. GDD

Professor Arthur Goldberg



Name

Rational Unified Process (RUP)

Goal-directed design (GDD)

Vendor

Rational Software

Cooper

People

Booch, Jacobson, Rumbaugh

Alan Cooper, (father of visual basic)

founder/chair Cooper http://www.cooper.com1

Summary

Agile programming methodologies

Interaction design methodology

Style

Bottom up

Top down

Goals

Help development organizations achieve quality, predictability, efficiency, and productivity on large and complex software projects

Design computer interactions that serve the inner user

Philosophy

Optimize development practices around managing and responding to change (since many requirements change)

Use Cases come from customers and users, and subsequently require prototyping, iteration (of code), and repeated customer/user feedback to validate, reconcile, and consolidate the Use Cases and the software they define. This … assumes it is impossible to obtain correct requirements without letting users and customers run code, because otherwise they cannot accurately report their wishes.

Possible (and preferable) to define the top-level functional requirements of a product early in the design/construction process … gathering functional requirements directly from users and customers is like doctors gathering diagnoses and treatments from their patients … anticipating and serving users’ needs can be achieved in advance, via personas and scenarios. By determining motivations (rather than simply tasks), anticipate and proactively serve needs and requirements our users and customers can’t yet identify. The personas and scenarios serve as our evaluation criteria that the design evolves and iterates (on paper).

Iteration

Through working prototypes

On whiteboards, paper, and in bitmaps

Process overview …

Iterate product development during construction to react to changing product requirements while still producing shipping code …

Define specific product requirements and interface behavior based on research and user needs … understanding not only what they think the product must do, but also their motivations and workflow context …

Process details

Use Cases: “a sequence of actions a system performs that yields a valuable result for a particular actor.”

Qualitative user research to create models of users, known as personas (archetypal users) which serve as design targets

Personas’ goals fall into the categories: life goals, experience goals, end goals

Interaction designer:

  1. Scenarios, starring those personas, to drive needs and feature requirements

  2. Converts user needs via design principles and design patterns to create an interface structure that is easy to use and powerful

  3. Populates the structure with the specific layout of screens, tools, etc.

  4. Document this and pass it to developers

Construction

Reduces risks of single delivery … when developing complex software, integrate and test frequently to assess the fitness of the code, and to fix problems, rather than at the end of construction

Separate responsibility for design and construction; complete design before coding.

Inception

business case, scope, and initial definition of Use Cases and requirements … primarily the responsibility of business decision-makers

consolidate the hypothesis or vision that is driving the inception of the project

Elaboration

Substantial

The problem domain is analyzed, Use Cases are identified and fleshed-out, high-level requirements are defined, and system architecture is determined and prototyped

user and customer research, analyze research findings, define personas (similar to Actors in RUP) and scenarios (similar to Use Cases in RUP), determine high-level functional requirements, and design an interaction framework that would inform the architectural model and prototype … also, engineering team to determine technical requirements (related to compatibility, interoperability, platforms, protocols, load, etc.) … definition of the Interaction Framework, a visual and textual description of major interactions and flows, illustrating how the proposed requirements and design satisfy the identified Use Cases




1 Author of , The Inmates are running the Asylum: Why High-tech Products Drive Us Crazy and How to Restore the Sanity, 1998 and Alan Cooper & Robert Reimann,, About Face 2.0: The Essentials of Interaction Design, John Wiley & Sons, 2003; ISBN: 0764526413