Analysis
Posted on October 13th, 2021
Part of Notes on Software Design
Analysing a problem involves identifying the overriding problem to establish its causes and effects, plus the goals of its solution.
To analyse the goals of a system, we can first look at usability— the functional impact of a system:
- Effective to use
- Efficient to use
- Safe to use
- Have good utility
- Easy to learn
- Easy to remember how to use
We can also look at User Experience (UX) — the effect of a system on the user:
- Satisfying
- Enjoyable
- Engaging
- Pleasurable
- Exciting
- Entertaining
- Helpful
- Motivating
- Emotionally fulfilling
User Profiles
A user profile are a set of characteristics taken from a typical user of a system. A product can have any number of user profiles, depending on the scope of the system's demographic. Attributes should be all/only be relevant to the system; for example:
- Age range
- Physical competences
- Perceptual competences
- Education Level
- Domain Knowledge & experience
- Interests
- Financial status
- Social grouping
- Religion, nationality, culture
If we consider a teenager, we get:
- 13 to 18
- Limited finances
- Varied physical strength (but considerable energy)
- Likely to have good hand-eye coordination
- Education is varied but likely to be full-time
- Interests 'youth-related'
- Cohesive peer group
- Possibly limited respect for authority…
Personas
Where user profiles are a generic assessment of the user-base, user personasare rich descriptions of typical users for a system. By specifying the target user(s), designed can further tailor a product to its end-users.
They specify a theoretical or an actual end-user requiring an age, personal background, personal needs, etc., and are formatted as a paragraph.
Task Analysis
This a generic term referring to a variety of techniques for analysing and representing goals and tasks.
User goals are derived from the activities in which end-users engage: a state an end-user wishes to achieve.
User tasks describe the functionality to achieve a task: a user activity required to bring about a goal.
For example, the goal, 'know where next week's lecture is', can be described with a task, 'a user activity required to bring about a goal '.
A working design can be validated through a comparison to user goals and tasks:
- Does it reduce user effort?
- Does it improve user performance?
- Does it aid/assist their use?
Scenarios
Scenarios are an informal narrative story: simple, 'natural', personal, and not generalisable. Ultimately, these target the when and where, referred to as the system's context.
Physical context could include where the user is, what their physical situation is, and what else is happening around them. Temporal context could include: timing, order of events, and other events.
A basic outline of a scenario consists of:
- Names of the individuals
- Where they are
- Why they are doing 'it' (the action in the scenario)
- Describe what else they are doing at the same time