This repository has been archived by the owner on Dec 9, 2024. It is now read-only.
forked from cliveeee/dip-programming-prj-advanced-gui-evolve
-
Notifications
You must be signed in to change notification settings - Fork 4
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Refactor user_stories.md to persona.md and follow the persona template.
- Loading branch information
TAEHYUN SUNG
authored and
TAEHYUN SUNG
committed
Jun 11, 2024
1 parent
d9b4e97
commit f75416d
Showing
2 changed files
with
140 additions
and
6 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,96 @@ | ||
# Overview | ||
|
||
As part of the project, you and your team are required to evidence that you have **designed** an advanced user interface that is fit for purpose. | ||
|
||
The following guide will help you ensure that you have met the evidencing requirements while ensuring that you can work in an agile/iterative way that is appropriate for the project and modern software development practices. | ||
|
||
## Design Evidencing | ||
|
||
Modern design approaches are lightweight and combine iterations with user feedback. This is in contrast to traditional design approaches that are heavy on documentation and require a lot of up-front work. | ||
|
||
However, often we cannot access the user in the frequency that allows rapid iteration. One way to mitigate this is to develop personas and scenarios that represent the user and their goals. This allows you to make design decisions based on the user's needs and goals. | ||
|
||
### Minimum Requirements | ||
|
||
1. In your project repository, create a folder called `design`. | ||
2. In the `design` folder, create a file called `persona.md` that describes the key persona your team was focused on implementing the design (see below for detail) | ||
3. Create a subfolder with any design artefacts you created: wireframes, sketches, mockups, etc. | ||
4. If you are treating the application itself as a prototype, highlight what changes if any you made to the application by referencing the appropriate issues | ||
5. Create at least three github issues related to the design of the application: | ||
1. Tag each issue with ui-design | ||
2. Assign each issue to a team member | ||
3. Include a user story in the format "As a [persona], I want to [goal], so that [reason]" | ||
4. Add any non-functional requirements as notes in the issue | ||
6. Copy this document into your project and answer any relevant questions | ||
|
||
## Personas | ||
|
||
A persona is a fictional character that represents a user. It is a way to describe the user's goals, needs, and behaviors. They are focused on **empathy** and **understanding** the user, not demographics, and not a collection of features. | ||
|
||
> Describe the key persona your team was focused on implementing the design. You can describe the persona in a file called `persona.md` in the `design` folder. | ||
> | ||
Pick the most representative persona from your group. Write a brief (2-3 sentence) justification for why you chose this persona. | ||
|
||
"I want to be able to access all the codes at once. I'm busy with school and work, I don't have much time." | ||
|
||
### Persona Template | ||
|
||
This is an optional template for how to structure your persona: | ||
|
||
```markdown | ||
# Persona: [Persona Name] | ||
|
||
## Background | ||
Give the person's background - make sure we can understand their level of skills, knowledge, and experience. | ||
|
||
## Goals | ||
Why does this person use the application? What are they trying to achieve? | ||
|
||
## Needs | ||
What does this person need from the application? What are their pain points? | ||
|
||
``` | ||
|
||
### Relevant issue | ||
> | ||
> Link to an issue that covers a pain point relevant to the persona and explain why it is relevant. | ||
> | ||
### Validation | ||
|
||
You will validate your design by meeting with a user representative: the product owner (in this case, your lecturer). | ||
|
||
##### Meeting minutes | ||
|
||
- [ ] Meeting held on [date] | ||
- [ ] Persona discussed: [persona name] | ||
- [ ] Design artefacts reviewed: [list of artifacts] | ||
- [ ] Issues discussed: [list of issues] | ||
- [ ] Feedback provided: [feedback] | ||
|
||
##### What worked well | ||
|
||
- [ ] [list of things that worked well] | ||
|
||
##### What could be improved | ||
|
||
- [ ] [list of things that could be improved] | ||
|
||
##### What will you change before the next meeting | ||
|
||
- [ ] [list of things that will be changed before the next meeting] (no commitment to complete this) | ||
|
||
##### Were there any questions that needed to be discussed with the user | ||
|
||
- [ ] [list of questions that need to be discussed with the user] | ||
|
||
#### Lecturer's checklist (to be used by the lecturer) | ||
|
||
- [ ] Persona is well defined | ||
- [ ] Persona is relevant to the application | ||
- [ ] Design artifacts are present and easy to follow | ||
- [ ] Design decisions are based on user needs and goals | ||
- [ ] Appropriate considerations of interaction patterns appropriate for the user | ||
- [ ] Efforts towards realizing at least one significant issue involving user interaction | ||
- [ ] Whole team engagement in the design process |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,9 +1,47 @@ | ||
# User Stories | ||
- I have a Macbook and Windows desktop. Some programs do not support cross-platform. | ||
I want to make sure that the program runs well on both devices. | ||
# Persona: [Alice] | ||
|
||
- I want to see all the codes from a video at once, I don't have much time. | ||
## Background | ||
Alice is a blind computer science university student, learning to code. She carries a Macbook to school, | ||
but she uses Windows desktop at home. | ||
|
||
- When something is loading, I want to be able to know the status | ||
## Goals | ||
Alice wants to watch coding tutorials to learn how to code. | ||
|
||
- I often miss what the computer tells me, and I need to go back. | ||
## Needs | ||
"I have a Macbook and Windows desktop. Some programs do not support cross-platform. | ||
I want to make sure that the program runs well on both devices." | ||
|
||
# Persona: [Ben] | ||
|
||
## Background | ||
Ben is a blind computer science university student. Ben is a full time student and also has a part time job. | ||
|
||
## Goals | ||
Ben wants access to the whole extracted code from the video to save time. | ||
|
||
## Needs | ||
"I want to see all the codes from a video at once, I don't have much time." | ||
|
||
# Persona: [Ben] | ||
|
||
## Background | ||
Ben is a blind computer science university student. Ben is a full time student and also has a part time job. | ||
Ben wants to watch 6 hours long videos. | ||
|
||
## Goals | ||
Ben wants to watch 6 hours long videos to learn new programming languages. | ||
|
||
## Needs | ||
"I will not watch the whole 6 hours video but if there is code on screen, I want the access. | ||
And when something is loading, I want to be able to know the status." | ||
|
||
# Persona: [Dan] | ||
|
||
## Background | ||
Dan is a blind computer science university student. Dan recently lost his sight, and he is not used to relying on his listening skill. | ||
|
||
## Goals | ||
Dan uses this program to learn how to code. | ||
|
||
## Needs | ||
"I often miss what the computer tells me, and I need to go back." |