Upgrade to Pro — share decks privately, control downloads, hide ads and more …

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
  2. jgs Grading

  3. jgs Fall 2021 | 00000001 Clean Keep It Simple (KIS)

    Do not repeat yourselves (DRY) INVEST (Valuable) This is a Contract
  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
  5. jgs Fall 2021 | 00000001

  6. jgs Fall 2021 | 00000001

  7. jgs Fall 2021 | 00000001

  8. jgs Fall 2021 | 00000001

  9. jgs Fall 2021 | 00000001

  10. jgs Fall 2021 | 00000001

  11. jgs Fall 2021 | 00000001

  12. jgs Fall 2021 | 00000001

  13. jgs Fall 2021 | 00000001

  14. jgs Fall 2021 | 00000001 Questions

  15. jgs Software Requirement Specification Document

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

  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.
  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.
  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
  20. jgs Fall 2021 | 00000001 SRS Document (part 1/3) 1.

    <system name> 2. <document version> 3. <team: names and roles> 4. <customer representative> 5. <one paragraph introduction>
  21. jgs Fall 2021 | 00000001 Example (part 1/3)

  22. jgs Fall 2021 | 00000001 SRS Document (part 2/3) 6.

    <use cases diagram> 7. <use cases list> 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 }
  23. jgs Fall 2021 | 00000001 Example (part 2/3)

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

    <non-functional requirements> 10. <glossary> 11. <revision history>
  25. jgs Fall 2021 | 00000001 Example (part 3/3)

  26. jgs Fall 2021 | 00000001 Questions

  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.