Slide 1

Slide 1 text

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

Slide 2

Slide 2 text

jgs Grading

Slide 3

Slide 3 text

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

Slide 4

Slide 4 text

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

Slide 5

Slide 5 text

jgs Fall 2021 | 00000001

Slide 6

Slide 6 text

jgs Fall 2021 | 00000001

Slide 7

Slide 7 text

jgs Fall 2021 | 00000001

Slide 8

Slide 8 text

jgs Fall 2021 | 00000001

Slide 9

Slide 9 text

jgs Fall 2021 | 00000001

Slide 10

Slide 10 text

jgs Fall 2021 | 00000001

Slide 11

Slide 11 text

jgs Fall 2021 | 00000001

Slide 12

Slide 12 text

jgs Fall 2021 | 00000001

Slide 13

Slide 13 text

jgs Fall 2021 | 00000001

Slide 14

Slide 14 text

jgs Fall 2021 | 00000001 Questions

Slide 15

Slide 15 text

jgs Software Requirement Specification Document

Slide 16

Slide 16 text

jgs Fall 2021 | 00000001 Strategy Plan-based Agile

Slide 17

Slide 17 text

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.

Slide 18

Slide 18 text

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.

Slide 19

Slide 19 text

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

Slide 20

Slide 20 text

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

Slide 21

Slide 21 text

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

Slide 22

Slide 22 text

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 }

Slide 23

Slide 23 text

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

Slide 24

Slide 24 text

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

Slide 25

Slide 25 text

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

Slide 26

Slide 26 text

jgs Fall 2021 | 00000001 Questions

Slide 27

Slide 27 text

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.