Slide 1

Slide 1 text

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

Slide 2

Slide 2 text

jgs Previously … Where can I put the details ?

Slide 3

Slide 3 text

jgs Fall 2021 | 00000001 Number and Name < the name is the goal as a short active verb phrase> Goal / Description < a longer statement of the goal in context if needed > Pre-conditions Success End Condition Failed End Condition Actors Trigger Description step action 1 2 <...> 3 Use Case Template

Slide 4

Slide 4 text

jgs Fall 2021 | 00000001 Example 1 Note: Astah will ask you for the Decision and Merge

Slide 5

Slide 5 text

jgs Fall 2021 | 00000001 Example 2 (Astah version)

Slide 6

Slide 6 text

jgs Fall 2021 | 00000001 Example 3

Slide 7

Slide 7 text

jgs Pac-Man Video Game Examples of State machine Diagrams

Slide 8

Slide 8 text

jgs Fall 2021 | 00000001 Pac-Man http://gameinternals.com/post/2072558330/ understanding-pac-man-ghost-behavior

Slide 9

Slide 9 text

jgs Fall 2021 | 00000001 The Red Ghost (Blinky) – Activity Diagram

Slide 10

Slide 10 text

jgs Midterm Review

Slide 11

Slide 11 text

jgs The following slides shows some examples related to some topics This is NOT a comprehensive list of topics

Slide 12

Slide 12 text

jgs Fall 2021 | 00000001 FAQ § Should I create state and activity diagrams for the assignment or just mention how many I think are needed? § Are state diagrams included in the exam? § Are the questions in the exam objective or subjective? § Do we need to add ovals in a Use Case diagram for the non-functional requirements? § I need a good grade in this class because I have internship/scholarship/… What can I do?

Slide 13

Slide 13 text

jgs Fall 2021 | 00000001 Accommodations

Slide 14

Slide 14 text

jgs Questions Concepts

Slide 15

Slide 15 text

jgs Fall 2021 | 00000001 Thoughts?

Slide 16

Slide 16 text

jgs Fall 2021 | 00000001 Thoughts?

Slide 17

Slide 17 text

jgs Fall 2021 | 00000001 Thoughts?

Slide 18

Slide 18 text

jgs Questions Diagrams

Slide 19

Slide 19 text

jgs Fall 2021 | 00000001 Email

Slide 20

Slide 20 text

jgs Fall 2021 | 00000001 Email

Slide 21

Slide 21 text

jgs Fall 2021 | 00000001 Email

Slide 22

Slide 22 text

jgs Fall 2021 | 00000001 Thoughts?

Slide 23

Slide 23 text

jgs Fall 2021 | 00000001 Thoughts?

Slide 24

Slide 24 text

jgs Fall 2021 | 00000001 Thoughts?

Slide 25

Slide 25 text

jgs Fall 2021 | 00000001 Thoughts? Explain the errors in the red ovals?

Slide 26

Slide 26 text

jgs Fall 2021 | 00000001 Test Yourselves

Slide 27

Slide 27 text

jgs Fall 2021 | 00000001 Test Yourselves

Slide 28

Slide 28 text

jgs Fall 2021 | 00000001 Test Yourselves

Slide 29

Slide 29 text

jgs Questions Open Questions

Slide 30

Slide 30 text

jgs Fall 2021 | 00000001 Problem This is an app for money investment. Invest in stocks on over 80 stock exchanges in the US, Canada, Europe and Asia. Also for investment in Crypto Currencies User can perform 2 kind of transactions: buy or sell. Both are complex processed that requires access to user bank accounts. Buying has 2 options buy stocks or buy crypto currencies. The user click un the menu to select one of these options and then specify the stock or crypto to buy and the amount of money to be used. Money is taken from user bank account and the transaction applied. If the system cannot get Money from the user bank account the transaction is automatically cancelled. Every time that the user make a transaction (buy or sell) the system ask for authentication. We need to know that the user is requesting the action and that it is not somebody using the app that the user leave open. Also, every time a transaction is made an email is sent to the user with all the specifics of the transaction. Optionally, the user could configure that a Text Message would be send.

Slide 31

Slide 31 text

jgs Fall 2021 | 00000001 Create the Following Diagrams § Activity Diagram for Game of Life rules § State machine diagram for an Assignment on Canvas § Use case diagram for your operating system § State machine diagram for a webpage (URL) on your browser § Activity diagram for enrollment on a new course on MyASU

Slide 32

Slide 32 text

jgs References Core Topics

Slide 33

Slide 33 text

jgs Fall 2021 | 00000001 Concepts § Step § Task § Requirement § Functional § Non-Functional § Use case § Use case diagram § Use case document § Actor § Scenario § Activity § State

Slide 34

Slide 34 text

jgs Fall 2021 | 00000001 Storyboarding storyboard Who? What (What if)?, why?, time

Slide 35

Slide 35 text

jgs Fall 2021 | 00000001 INVEST in good requirements § Independent – loosely coupled with one another § Negotiable – Stories are what and why , not how ( 99% ). § Valuable – for the customer! § Estimatable – Effort/Cost of design, build, and test. § Small (sized appropriately) § Testable – pass or fail

Slide 36

Slide 36 text

jgs Fall 2021 | 00000001 Types of Non-Functional Requirements

Slide 37

Slide 37 text

jgs Fall 2021 | 00000001 Diagram a) Actors b) Use Cases a) Relationships child father base addition extension base << include >> << extend >>

Slide 38

Slide 38 text

jgs Fall 2021 | 00000001 Diagram | Example Nurse Medical receptionist Manager Register patient View personal info. View record Generate report Export statistics Doctor Edit record Setup consultation

Slide 39

Slide 39 text

jgs Fall 2021 | 00000001 Include vs Extends

Slide 40

Slide 40 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.