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

CSC308B Lecture 04

CSC308B Lecture 04

Software Engineering I
Requirements
(202401) - two-days per week version

Javier Gonzalez-Sanchez

January 23, 2024
Tweet

More Decks by Javier Gonzalez-Sanchez

Other Decks in Programming

Transcript

  1. jgs CSC 308 Software Engineering 1 Lecture 04: Requirements Dr.

    Javier Gonzalez-Sanchez [email protected] www.javiergs.com Building 14 -227
  2. jgs Javier Gonzalez-Sanchez | CSC 308 | Winter 2024 |

    4 Definition Product Backlog Sprint Backlog
  3. jgs Javier Gonzalez-Sanchez | CSC 308 | Winter 2024 |

    6 Epic – Too Complex or Big or no INVEST Functional Requirement Story (Product or Sprint) Backlog Item INVEST 100% Task – Too Easy or Too Small (or trivial technical labor)
  4. jgs Javier Gonzalez-Sanchez | CSC 308 | Winter 2024 |

    7 a) May state what (reactions, behaviours, or services) the system should not do. b) services the system should provide, c) how the system should react to particular inputs, and d) how the system should behave in particular situations. Functional Requirement
  5. jgs Javier Gonzalez-Sanchez | CSC 308 | Winter 2024 |

    8 Analogy Chapters Sections Paragraphs or Sentences
  6. jgs Javier Gonzalez-Sanchez | CSC 308 | Winter 2024 |

    9 § 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 INVEST in good requirements
  7. jgs Javier Gonzalez-Sanchez | CSC 308 | Winter 2024 |

    10 § Can someone do this and integrate it later into the main project? § Do we all understand what this is? § Is this important for the customer? § Can we estimate the cost of this (complexity, LOC, effort, or time)? § Is this appropriate for a Sprint (period of time)? § Do we know how to test it and prove it is complete? INVEST in good requirements
  8. jgs Javier Gonzalez-Sanchez | CSC 308 | Winter 2024 |

    11 Task board … move the pacman … show the pacman … move a ghost … show a ghost … show power pills stories tasks (new) … show a maze
  9. jgs Javier Gonzalez-Sanchez | CSC 308 | Winter 2024 |

    12 Note We will talk about Quality later i.e., Non-Functional Requirements
  10. jgs Javier Gonzalez-Sanchez | CSC 308 | Winter 2024 |

    13 § Search option given to user to search from various invoices. § User should be able to mail any report to management. § Users can be divided into groups and groups can be given separate rights. Examples What about • A video game? • Canvas? • Facebook App?
  11. jgs Javier Gonzalez-Sanchez | CSC 308 | Winter 2024 |

    15 Some Ideas. It is NOT a Complete List MOVE EAT SHOW DETECT COLLISION MOVE/ HUNT SHOW SHOW/ CREATE SCORE HANDLING WINNER DETECTOR MOVE/ HUNT
  12. jgs

  13. jgs Javier Gonzalez-Sanchez | CSC 308 | Winter 2024 |

    23 Let’s Work 30 - work 30 - present + review 10% Attendance & Participation
  14. jgs Javier Gonzalez-Sanchez | CSC 308 | Winter 2024 |

    25 Reference http://blockly-spiderworld.sourceforge.io /appengine/spider.html
  15. jgs Javier Gonzalez-Sanchez | CSC 308 | Winter 2024 |

    27 Reference Read: Wettel, R. & Lanza, M. (2007). Visualizing Software Systems as Cities. 2007 4th IEEE International Workshop on Visualizing Software for Understanding and Analysis, 92–99. https://doi.org/10.1109/vissof.2007.4290706
  16. jgs Javier Gonzalez-Sanchez | CSC 308 | Winter 2024 |

    28 Let’s Work 30 - work 30 - present + review 10% Attendance & Participation
  17. jgs CSC 308 Software Engineering I Javier Gonzalez-Sanchez, Ph.D. [email protected]

    Winter 2024 Copyright. These slides can only be used as study material for the class CSC 308 at Cal Poly. They cannot be distributed or used for another purpose.