DDQ WED 2023-02-15
16. User-Centered Requirements Analysis¶
16.1. Agenda¶
Released |
Category |
Assignment |
Day |
Date |
---|---|---|---|---|
2023-01-10 |
Term Project |
FRI |
2023-01-20 |
|
2023-01-19 |
Paper Pres. |
THU |
2023-01-26 |
|
2023-01-19 |
Term Project |
Milestone 1: Problem Proposal (Part 1) |
FRI |
2023-01-27 |
2023-01-19 |
Paper Pres. |
THU |
2023-02-09 |
|
2023-01-19 |
Term Project |
Milestone 1: Problem Proposal (Part 2) |
FRI |
2023-02-10 |
2023-02-07 |
Exams |
FRI |
2023-02-10 |
|
2023-02-07 |
Exams |
TUE |
2023-02-14 |
|
2023-02-16 |
Term Project |
FRI |
2023-03-17 |
|
2023-03-20 |
Term Project |
FRI |
2023-04-14 |
|
2023-03-28 |
Exams |
FRI |
2023-04-21 |
|
2023-03-28 |
Exams |
THU |
2023-04-27 |
|
2023-03-28 |
Term Project |
TUE |
2023-05-09 |
General Announcements
Important: Figma Education Accounts
See Piazza @60 to setup a Figma Education account if you have not done so already.
Activity
16.2. Activity¶
16.2.1. Introduction¶
In an interaction design process, requirements analysis is a phase that collects and validates all of the necessary requirements of various stakeholders for an interactive system or device, and yields the requirements specification that will be used and possibly iterated on throughout the remainder of the design process.
16.2.2. Requirements Analysis Activities¶
The exact activities that take place during a requirements analysis may differ based on development methodology, business reporting guidelines, or even legal requirements; however, the following list captures a representative subset of activities that designers should be familiar with:
Identify stakeholders.
Elicit (or gather) requirements from stakeholders.
Document requirements using user stories, use cases, etc.
Analyze requirements for relevance, clarity, consistency, completeness, uniqueness, etc.
16.2.3. Separation of Concerns¶
It is not uncommon to categorize requirements based on their concerns, impacts, and other factors related to the scope of a project. Here are some different requirement categories (or types) that are often used in software engineering and interaction design:
- functional requirements¶
Requirements that define the specific behavior that the system should support.
Example: Mobile App
The app shall be able to send messages at all times, even when out of the service area (in which case they are saved for later sending).
Example: Mobile App
The app shall force users to preview a message before sending it.
- non-functional requirements¶
Requirements that specify overall criteria governing the operation of the interactive system without being tied to a specific action or behavior (e.g., hardware, software, system performance, reliability, etc.).
Example: Mobile App
Messages should send within 2 seconds, returning the user to the new message window (continuing in the background if necessary).
Example: Web App
Messages should be saved to the browser’s local storage, then synchronized with a remote MariaDB instance.
- user experience requirements¶
Any user-centered requirement directly related to the user experience or user interface of the interactive system. (e.g., navigation, input, colors, etc.).
Example: User Experience Requirement: Mobile App
The mobile app shall support customization such as color schemes, skins, and sounds.
16.2.4. Expressing Requirements¶
Requirements can be expressed in different ways. Here are some examples:
- user story¶
An agile requirement, stated as a sentence or two without jargon. A user story is often expressed from the user’s point of view, and describes a unit of desired functionality.
User Story Template
As a
type of user
, I wantsome goal
so thatsome reason
.Example: User Experience Requirement: Mobile App
As a regular user, I want to customize the notification sounds based on type so that I can differentiate or group different notification types.
Important
If you are asked to write a user story for this class, then use the template provided above and make sure that all three parts are clear and easily discernible.
- use case¶
A formalized scenario that captures an operation between an actor and the system in a step-by-step manner [TB:2].
16.2.5. User Advocacy¶
When eliciting UX requirements, it is important to advocate for the users.
- user advocacy¶
The practice of representing user perspectives in product design, regardless of whether one is a user, designer, developer, researcher, manager, etc.
Advocating for a user or group of users can be hard, especially in cases where the designer’s conceptual model differs significantly from that of user(s). To do it properly, a designer must attempt to take on a user’s point of view, without personal judgment or bias, and make a good faith effort to see things as the user might see them.
All of this requires insight into what what users do, think, and feel when performing relevant tasks. Ideally, this information is ascertained from studies involving a representative sample of users, feedback provided by users, or both. In addition to utilizing models like the seven stages of action, it is also common to explicitly consider the following:
16.3. Mapping Activity¶
An empathy map is a visualization that captures knowledge about a user’s behaviors and attitudes, and is a useful tool when exploring paint points, touchpoints, and user experience requirements.
When instructed, click here or use the QR code to access a Mural canvas for this part of the activity. You do not need a Mural account to participate.
Once you have access to the canvas, click on the
Outline
button in the upper right-hand corner, then click on each step to see some instructions related to a particular part of the canvas.
A copy of the Mural canvas that resulted from this activity is embedded below this message.
16.4. Breakout Groups¶
No breakout group activity today. Students are expected to participate in today’s mapping activity.
16.5. After Breakout Groups¶
Not applicable.
16.6. After Class¶
Before the next class period, individually reply to the following prompt in a followup discussion to Piazza @59:
Prompt
Provide one user experience requirement for an app or system in the form of a user story (use the template), then try to describe potential issues that a developer might run into when attempting to meet that requirement.
Finish reading the Usability module and start reading the Design module.
Here is a list of current assignments:
Released
Category
Assignment
Day
Date
2023-01-10
Term Project
FRI
2023-01-20
2023-01-19
Paper Pres.
THU
2023-01-26
2023-01-19
Term Project
Milestone 1: Problem Proposal (Part 1)
FRI
2023-01-27
2023-01-19
Paper Pres.
THU
2023-02-09
2023-01-19
Term Project
Milestone 1: Problem Proposal (Part 2)
FRI
2023-02-10
2023-02-07
Exams
FRI
2023-02-10
2023-02-07
Exams
TUE
2023-02-14
2023-02-16
Term Project
FRI
2023-03-17
2023-03-20
Term Project
FRI
2023-04-14
2023-03-28
Exams
FRI
2023-04-21
2023-03-28
Exams
THU
2023-04-27
2023-03-28
Term Project
TUE
2023-05-09