$30 off During Our Annual Pro Sale. View Details »

CSE563 Lecture 17

CSE563 Lecture 17

Software Requirements and Specification
The Agile Approach I
(202111)

Javier Gonzalez-Sanchez
PRO

September 01, 2021
Tweet

More Decks by Javier Gonzalez-Sanchez

Other Decks in Programming

Transcript

  1. jgs
    CSE 563
    Software Requirements and Specification
    Lecture 17: The Agile Approach I
    Dr. Javier Gonzalez-Sanchez
    [email protected]
    javiergs.engineering.asu.edu | javiergs.com
    PERALTA 230U
    Office Hours: By appointment

    View Slide

  2. jgs
    Software Requirement Specification
    Document

    View Slide

  3. jgs
    Fall 2021 | 00000001
    Strategy
    Plan-based Agile

    View Slide

  4. jgs
    Fall 2021 | 00000001
    Example (part 1/3)

    View Slide

  5. jgs
    Fall 2021 | 00000001
    Example (part 2/3)

    View Slide

  6. jgs
    Fall 2021 | 00000001
    SRS Document (part 2/3)
    6.
    7.
    8. for-each use case {
    a. Id number
    b. Name – the goal as a short active verb phrase.
    c. Goal – a longer statement of the goal in context if needed
    d. Preconditions – what we expect is already the state of the world
    e. Post-conditions (also called success condition) - the state of the
    world upon successful completion
    f. failed condition (exception sequence) – the state of the world if goal
    abandoned.
    g. Description, base sequence or flows – it can be a paragraph or a
    diagram (use activity diagrams and state diagrams in this place)
    h. Actors – a role name or description for user or other systems
    }

    View Slide

  7. jgs
    Fall 2021 | 00000001
    Example (part 3/3)

    View Slide

  8. jgs
    Fall 2021 | 00000001
    Homework 05
    Fix the SRS for the Monopoly Game (file on Canvas)

    View Slide

  9. jgs
    Fall 2021 | 00000001
    Homework 05
    § Submit one PDF file
    § Due date: you have a week
    § Work in a team of 1, 2 or 3. No, more that 3 are not allowed.
    It is a team assignment for you to have the chance to share ideas and
    brainstorm a solution
    § Follow academic integrity policies.
    Yes, helping friends in need by sharing your work with them IS an academic
    integrity violation (if they decided to submit what you share as their own)

    View Slide

  10. jgs
    What is Next?

    View Slide

  11. jgs
    Fall 2021 | 00000001
    Strategy
    Plan-based Agile

    View Slide

  12. jgs
    Fall 2021 | 00000001
    Requirements
    mary raj …
    john jane …
    Ira O
    X
    -
    Product Requirement Task

    View Slide

  13. jgs
    Fall 2021 | 00000001
    Requirements
    mary raj …
    john jane …
    Ira O
    X
    -
    Product PBI Task
    As a (role),
    I want (feature),
    So that (benefit)
    • Features
    • Technical Infrastructure
    • Knowledge Acquisition
    • Bug Fixing

    View Slide

  14. jgs
    Fall 2021 | 00000001
    User Stories | Template
    § As a
    § I want to _____
    § So that I can _____
    § Conditions of satisfaction
    (verify _____ statements)

    View Slide

  15. jgs
    Fall 2021 | 00000001
    Some Ideas. It is NOT a Complete List
    SHOW EAT
    MOVE
    DETECT
    COLLISION
    HUNT AS
    INKY
    SHOW
    HUNT
    HUNT AS
    PINKY
    HUNT AS
    BLINKY
    <>
    <>

    View Slide

  16. jgs
    Fall 2021 | 00000001

    View Slide

  17. jgs
    Fall 2021 | 00000001
    We are here
    Burndown
    Chart

    View Slide

  18. jgs
    Fall 2021 | 00000001
    Product Backlog

    View Slide

  19. jgs
    User Stories
    A Structured Natural Language Notation

    View Slide

  20. jgs
    Fall 2021 | 00000001
    User Stories | Examples
    Examples of user stories are:
    § As a user, I want to upload photos so that I can share photos with
    others.
    § As an administrator, I want to approve photos before they are posted so
    that I can make sure they are appropriate.

    View Slide

  21. jgs
    Fall 2021 | 00000001
    Quantify and Prioritize
    As a (role),
    I want (feature),
    So that (benefit)
    As a (role),
    I want (feature),
    So that (benefit)
    As a (role),
    I want (feature),
    So that (benefit)
    As a (role),
    I want (feature),
    So that (benefit)
    As a (role),
    I want (feature),
    So that (benefit)
    As a (role),
    I want (feature),
    So that (benefit)
    As a (role),
    I want (feature),
    So that (benefit)
    As a (role),
    I want (feature),
    So that (benefit)
    As a (role),
    I want (feature),
    So that (benefit)
    As a (role),
    I want (feature),
    So that (benefit)
    As a (role),
    I want (feature),
    So that (benefit)
    As a (role),
    I want (feature),
    So that (benefit)
    As a (role),
    I want (feature),
    So that (benefit)
    As a (role),
    I want (feature),
    So that (benefit)
    As a (role),
    I want (feature),
    So that (benefit)
    As a (role),
    I want (feature),
    So that (benefit)
    As a (role),
    I want (feature),
    So that (benefit)
    As a (role),
    I want (feature),
    So that (benefit)
    As a (role),
    I want (feature),
    So that (benefit)
    As a (role),
    I want (feature),
    So that (benefit)
    As a (role),
    I want (feature),
    So that (benefit)
    As a (role),
    I want (feature),
    So that (benefit)
    As a (role),
    I want (feature),
    So that (benefit)

    View Slide

  22. jgs
    Fall 2021 | 00000001
    Estimation |
    Pseudo – Fibonacci: 1, 2, 3, 5, 8, 13, …
    Binary – 1, 2, 4, 8, 16, 32 ….
    Linear – 1, 2, 3, 4, 5, 6, …

    View Slide

  23. jgs
    Fall 2021 | 00000001
    Estimation | Planning Poker Technique
    https://www.planitpoker.com

    View Slide

  24. jgs
    Fall 2021 | 00000001
    Priorities
    1
    .
    .
    .
    N

    View Slide

  25. jgs
    Fall 2021 | 00000001
    Quantify and Prioritize
    As a (role),
    I want (feature),
    So that (benefit)
    As a (role),
    I want (feature),
    So that (benefit)
    As a (role),
    I want (feature),
    So that (benefit)
    As a (role),
    I want (feature),
    So that (benefit)
    As a (role),
    I want (feature),
    So that (benefit)
    As a (role),
    I want (feature),
    So that (benefit)
    As a (role),
    I want (feature),
    So that (benefit)
    As a (role),
    I want (feature),
    So that (benefit)
    As a (role),
    I want (feature),
    So that (benefit)
    As a (role),
    I want (feature),
    So that (benefit)
    As a (role),
    I want (feature),
    So that (benefit)
    As a (role),
    I want (feature),
    So that (benefit)
    As a (role),
    I want (feature),
    So that (benefit)
    As a (role),
    I want (feature),
    So that (benefit)
    As a (role),
    I want (feature),
    So that (benefit)
    As a (role),
    I want (feature),
    So that (benefit)
    As a (role),
    I want (feature),
    So that (benefit)
    As a (role),
    I want (feature),
    So that (benefit)
    As a (role),
    I want (feature),
    So that (benefit)
    As a (role),
    I want (feature),
    So that (benefit)
    As a (role),
    I want (feature),
    So that (benefit)
    As a (role),
    I want (feature),
    So that (benefit)
    As a (role),
    I want (feature),
    So that (benefit)
    t t
    t
    t
    t
    t
    t
    t
    t

    View Slide

  26. jgs
    Fall 2021 | 00000001
    Sprints
    As a (role),
    I want (feature),
    So that (benefit)
    As a (role),
    I want (feature),
    So that (benefit)
    As a (role),
    I want (feature),
    So that (benefit)
    As a (role),
    I want (feature),
    So that (benefit)
    As a (role),
    I want (feature),
    So that (benefit)
    As a (role),
    I want (feature),
    So that (benefit)
    As a (role),
    I want (feature),
    So that (benefit)
    As a (role),
    I want (feature),
    So that (benefit)
    As a (role),
    I want (feature),
    So that (benefit)
    As a (role),
    I want (feature),
    So that (benefit)
    As a (role),
    I want (feature),
    So that (benefit)
    As a (role),
    I want (feature),
    So that (benefit)
    As a (role),
    I want (feature),
    So that (benefit)
    As a (role),
    I want (feature),
    So that (benefit)
    As a (role),
    I want (feature),
    So that (benefit)
    As a (role),
    I want (feature),
    So that (benefit)
    As a (role),
    I want (feature),
    So that (benefit)
    As a (role),
    I want (feature),
    So that (benefit)
    As a (role),
    I want (feature),
    So that (benefit)
    As a (role),
    I want (feature),
    So that (benefit)
    Sprint 1
    t t
    t
    t
    t
    t
    t
    t
    t
    t
    Sprint 2

    View Slide

  27. jgs
    Fall 2021 | 00000001
    We are here
    Burndown
    Chart

    View Slide

  28. jgs
    Fall 2021 | 00000001
    Sprints
    Sprint 1 Sprint 2
    Plan
    Build
    Test
    Deploy
    Plan
    Build
    Test
    Deploy

    View Slide

  29. jgs
    Fall 2021 | 00000001
    Questions

    View Slide

  30. jgs
    Fall 2021 | 00000001
    References
    § Somerville Chapter 3 and 4

    View Slide

  31. jgs
    CSE 563 Software Requirements and Specification
    Javier Gonzalez-Sanchez, Ph.D.
    [email protected]
    Fall 2021
    Copyright. These slides can only be used as study material for the class CSE563 at ASU.
    They cannot be distributed or used for another purpose.

    View Slide