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

CSE563 Lecture 16

CSE563 Lecture 16

Software Requirements and Specification
SRS Document
(202110)

Javier Gonzalez-Sanchez
PRO

August 31, 2021
Tweet

More Decks by Javier Gonzalez-Sanchez

Other Decks in Programming

Transcript

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

    View Slide

  2. jgs
    Grading

    View Slide

  3. jgs
    Fall 2021 | 00000001
    Clean
    Keep It Simple (KIS)
    Do not repeat yourselves (DRY)
    INVEST (Valuable)
    This is a Contract

    View Slide

  4. jgs
    Fall 2021 | 00000001
    Key Ideas
    § Actors Trigger Actions
    § Requirements are Services, NOT trigger spots.
    § Primary vs. Secondary Actors
    § The reader will learn something, i.e., Understand better the system

    View Slide

  5. jgs
    Fall 2021 | 00000001

    View Slide

  6. jgs
    Fall 2021 | 00000001

    View Slide

  7. jgs
    Fall 2021 | 00000001

    View Slide

  8. jgs
    Fall 2021 | 00000001

    View Slide

  9. jgs
    Fall 2021 | 00000001

    View Slide

  10. jgs
    Fall 2021 | 00000001

    View Slide

  11. jgs
    Fall 2021 | 00000001

    View Slide

  12. jgs
    Fall 2021 | 00000001

    View Slide

  13. jgs
    Fall 2021 | 00000001

    View Slide

  14. jgs
    Fall 2021 | 00000001
    Questions

    View Slide

  15. jgs
    Software Requirement Specification
    Document

    View Slide

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

    View Slide

  17. jgs
    Fall 2021 | 00000001
    SRS Document
    § SRS is a description of a software system to be developed. It lays
    out functional and non-functional requirements.
    § Establishes the basis for an agreement between customers and
    contractors or suppliers on what the software product is to do as well as
    what it is not expected to do.
    § Permits an assessment of requirements before design can begin and
    reduces later redesign.

    View Slide

  18. jgs
    Fall 2021 | 00000001
    IEEE Standars
    § IEEE Standard 830-1998, IEEE Recommended Practice for Software
    Requirements Specifications Standard 830, last revised in 1998.
    § IEEE Standard ISO/IEC/IEEE 29148:2011, with an update in 2018.
    § Like many IEEE standards for software engineering, they includes guidance
    and recommended approaches for specifying software requirements. It's
    not a complete tutorial on requirements development, but it does contain
    some useful information.
    § The IEEE standard provides several suggestions of how to organize
    functional requirements. There is no single organizational approach that's
    best.
    § Tailor and customize templates to best suit the nature and scale of your
    projects.

    View Slide

  19. jgs
    Fall 2021 | 00000001
    Homework
    § Review the SRS template from IEEE
    § Review the SRS for the Monopoly Game.
    Can you identify opportunities for improvement (errors)?
    http://agile.csc.ncsu.edu/SEMaterials/UseCaseRequirements.pdf
    § Review the SRS for the Pac-Man Game.
    Can you identify opportunities for improvement (errors)?
    (No, it is not a 100% good solution – be aware!)
    § Review the SRS for Gephi.
    Can you identify opportunities for improvement ?
    https://gephi.org/users/gephi_srs_document.pdf
    Nothing to submit yet

    View Slide

  20. jgs
    Fall 2021 | 00000001
    SRS Document (part 1/3)
    1.
    2.
    3.
    4.
    5.

    View Slide

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

    View Slide

  22. 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

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

    View Slide

  24. jgs
    Fall 2021 | 00000001
    SRS Document (part 3/3)
    9.
    10.
    11.

    View Slide

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

    View Slide

  26. jgs
    Fall 2021 | 00000001
    Questions

    View Slide

  27. 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