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

CSE563 Lecture 04

CSE563 Lecture 04

Software Requirements and Specification
Storyboarding
(202201)

Javier Gonzalez-Sanchez

August 19, 2021
Tweet

More Decks by Javier Gonzalez-Sanchez

Other Decks in Programming

Transcript

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

    View full-size slide

  2. jgs
    Previously …

    View full-size slide

  3. jgs
    Spring 2022 | 00000100
    Examples
    a) Search option given to user to search from various invoices.
    b) User should be able to mail a report to management.
    c) Users can be divided into groups and groups can be given separate
    rights.
    d) Move the ghost in the Pac-man video game

    View full-size slide

  4. jgs
    Spring 2022 | 00000100
    Verbs (& subject)
    (actions)
    Careful with adjectives
    Functionality: Services, behavior, reaction

    View full-size slide

  5. jgs
    Spring 2022 | 00000100
    Examples (Constraints)
    a) Should comply FERPA regulations.
    b) Software is developed keeping downward compatibility intact.
    c) Use Java as programming language

    View full-size slide

  6. jgs
    Spring 2022 | 00000100
    Adjectives
    (quality)
    Careful with verbs + adjectives
    Quality or Constraint

    View full-size slide

  7. jgs
    Spring 2022 | 00000100
    A well-formatted
    sentence with context
    A Verb
    or an
    adjective
    Actor(s)
    Requirement:
    • Is it I.N.V.E. .T. ?
    • Is it Small but it is a composition of more than one activity?
    (it is NOT too small)

    View full-size slide

  8. jgs
    Spring 2022 | 00000100
    Requirements
    Main Title: name of the system
    Heading: name for a requirement
    (service, behavior, or reaction)
    (a sentence with subject and verb and
    small context as you consider necessary
    for a header)
    Paragraphs: the explanation of the requirement
    (do not mix ideas)
    (focus in the goal of the section)
    You can list here the activities, algorithm, details, etc.
    (using bullets is a good idea)
    1
    2
    3

    View full-size slide

  9. jgs
    Test Yourselves

    View full-size slide

  10. jgs
    Spring 2022 | 00000100
    Test Yourselves
    1.The system must be able to capture federal and state tax table
    information.
    2.The system must provide the ability to merge two accounts/records
    where one account is for the same person with an incorrect social
    security number by allowing the user to click the incorrect, make the
    changes to the correct account, and then delete the incorrect account
    automatically after an account has been locked for this purpose
    3.Right after the game gets started, a dialog will show up to prompt the
    player enter his/her name.
    4.The player rolls a dice by clicking on a button labeled “role dice”. A
    dialog pops-up to indicate the value of the dice roll. In this game, there
    are two six-faced dice.

    View full-size slide

  11. jgs
    Spring 2022 | 00000100
    Case 1
    Requirements:
    § The system must be able to capture federal t tax table information.
    § The system must be able to capture state tax table information.

    View full-size slide

  12. jgs
    Spring 2022 | 00000100
    Case 4
    Requirement:
    § The player must be able to roll two six-faced dices
    Notes, details, extra information, verification criteria, others:
    (not requirements by themselves)
    § clicking on a button
    § Label for the button: “role dice”.
    § Use dialog boxes to show dice values.

    View full-size slide

  13. jgs
    Spring 2022 | 00000100
    Test Yourselves
    § Can you fix the case 2 and 3?
    § When fixed, are they functional or non-functional?

    View full-size slide

  14. jgs
    Test Yourselves II

    View full-size slide

  15. jgs
    Spring 2022 | 00000100
    Test Yourselves
    5. The system shall allow a user to interface with it through mouse
    events on buttons and drop-down boxes and keyboard events on
    text fields.
    6. All code development shall be done with the Java programming
    language.
    7. Modified data in a database should be updated for all users
    accessing it within 2 seconds
    8. The system shall be accessible to people with disabilities in
    accordance with the Americans with Disabilities Act of 1990.

    View full-size slide

  16. jgs
    Spring 2022 | 00000100
    Test Yourselves
    5. The system shall allow a user to interface with it through mouse
    events on buttons and drop-down boxes and keyboard events on
    text fields.
    6. All code development shall be done with the Java programming
    language.
    7. Modified data in a database should be updated for all users
    accessing it within 2 seconds
    8. The system shall be accessible to people with disabilities in
    accordance with the Americans with Disabilities Act of 1990.
    NF
    NF
    NF
    NF

    View full-size slide

  17. jgs
    Spring 2022 | 00000100
    Test Yourselves
    9. All monetary amounts must be accurate to two decimal places
    (integrity).
    10.The new product shall be easy to use by adult members (age 18 to
    80) of the public who may only have one hand free.
    11.No piece of text that might be displayed to a user shall reside in
    program source code. Every piece of text that a user might see must
    be modifiable without changing source code. That is, no user‐visible
    text will be “hard‐coded.”
    12.The payment subsystem design is based on the payment module
    from the ALPHA product line. The PAGO system should not be
    modified unless absolutely necessary.

    View full-size slide

  18. jgs
    Spring 2022 | 00000100
    Test Yourselves
    9. All monetary amounts must be accurate to two decimal places
    (integrity).
    10.The new product shall be easy to use by adult members (age 18 to
    80) of the public who may only have one hand free.
    11.No piece of text that might be displayed to a user shall reside in
    program source code. Every piece of text that a user might see
    must be modifiable without changing source code. That is, no
    user‐visible text will be “hard‐coded.”
    12.The payment subsystem design is based on the payment module
    from the ALPHA product line. The PAGO system should not be
    modified unless absolutely necessary.
    NF
    NF
    NF
    NF

    View full-size slide

  19. jgs
    Spring 2022 | 00000100
    Questions

    View full-size slide

  20. jgs
    CSE 563 Software Requirements and Specification
    Javier Gonzalez-Sanchez, Ph.D.
    [email protected]
    Spring 2022
    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 full-size slide