Class Notes (1,100,000)
CA (620,000)
UTSG (50,000)
CSC (1,000)
Lecture

CSC301H1 Lecture Notes - Test-Driven Development, User Story, Software Engineering


Department
Computer Science
Course Code
CSC301H1
Professor
Susan Elliott Sim

This preview shows pages 1-3. to view the full 11 pages of the document.
Software Engineering Lecture Notes
Software Engineering Lecture 2
Agile Planning:
- It is iterative and incremental.
Iterative: f1 f2 f3 f4
- - - - Do more = mode code / polish / robustness
- - - - and more
- - - - and more
Incremental: f1 f2 f3 f4
O O O O Do all of one then do all of the next and so on till done.
Product | Scrum team
Champion |
User Story
|
Stakeholders |
-Written descriptions
-Features------------------ -Conversations --------------- -Tasks
-Scenarios -Test cases - To do items
 Bring Value |
As a <role>, I <do>, so that <goal>
|
|
- 3 Types of Planning: Release, Sprint, and Daily

Only pages 1-3 are available for preview. Some parts have been intentionally blurred.

Release:
- a group of sprints
- resources
- product backlog (a set of stories that have been estimated and prioritized and
allocated to sprints. (A)
- story writing workshops  get together and make user stories (M) (P/S/T)
- estimate the size of stories (M) (T)
- prioritize stories (M) (P/S/T)
Sprint:
- Iteration, time box, time segment
- Product  an increment of the system. Potentially shippable. (A)
- Test cases  TDD (test driven development) (A)
- Burn Down Chart (A)
- Scrum Board (A)
- Sprint Planning  take stories from p-backlog and brake them into tasks (M) (T)
- Sprint Review  start-stop-continue. What do we need to start-stop-continue (M)
Daily:
- working days
- sustainable pace (aka 40 hour work week)
- Daily Stand Up Meeting  15 minutes. What I did last working day. What I am
going to do. What I need help with. (M) (T)
(A) = artefacts  thinks that you make
(M) = meetings
(P/S/T) = (Product Champ / Stakeholder / Scrum Team)
Sprint planning Stand up
Story writing workshop (start of sprint) (start of daily)
RELEASE ------------------------ SPRINT ---------------------- DAILY – ---------
/\ product backlog | /\ | /\ |
| (before sprint) | | | | |
------------------------------------------- ---------------------------------- --------------
Sprint review Product
(end of sprint) Test cases
Burn Down Charts
Scrum board
(between daily and sprint)

Only pages 1-3 are available for preview. Some parts have been intentionally blurred.

Software Engineering Lecture 3
Personas
Characters based on data collected on user
- Usually there are multiple for a software system.
- Each persona represents a type of us.
Purpose to increase empathy
- Change the focus from users to people
- User stories flow forward more easily
- Separate out market segments
“The only people who call their customers “users” are software developers and drug
dealers” – CSC301
Beware of creating stereotypes and caricatures
- More human, not less
- Rely on data (where possible)
Becoming hostage to personas
- Descriptions not more important than the people themselves
They are not objective truth
Cannot be used with disruptive technologies (hard to use a persona if the idea is very new
and no one knows of it).
Elements of Personas
- Gender, age, personality, family, appearance, skills, environment (setting of where
they live, work, etc)
- Attitudes towards technology, domain, etc.
- Goals when using the system
 1-2 Pages
Software Engineering Lecture 4
User Stories:
User stories are composed of three aspects:
- A written description of the story used for planning and as a reminder.
- Conversations about the story that serve to flesh out the details of the story.
You're Reading a Preview

Unlock to view full version