Software Requirement and Specification 2020

Course's objectives

At the end of this course, the students are expected to ...

  • understand the needs of SRS.

  • understand different kinds of software requirements.

  • be able to discover software requirements.

  • be able to document requirements as a SRS document.

Apart from the objectives that was mentioned above, the students are also expected to...

  • be able to continuously learn new programming language by oneself.

  • understand the Object-Oriented Programming concept.

Learning Materials

  • Please join class in MS Team for discussion and attending the class here (link)

  • Applying UML and Patterns: An Introduction to Object-Oriented Analysis and Design and Iterative Development (3rd Edition), Craig Larman (ISBN-13: 978-0131489066 ISBN-10: 0131489062) (link)

  • Object-Oriented Design and Patterns (2nd Edition), Cay S. Horstmann (ISBN-13: 978-0471744870 ISBN-10: 0471744875)

  • IEEE SRS template (link) (example (link) (link))

  • Exercise submisssion (link)

Grading

  • Super (S) >= 95

  • Average (A) >= 85

  • Bad (B+) >= 75

  • Bad (B) >= 70

  • Catastrophic (C+) >= 65

  • Catastrophic (C) >= 60

  • Disowned (D+) >= 55

  • Disowned (D) >= 51

  • Forgotten Forever (F) < 51

Evaluation

  1. Exercise (20%)

  2. SRS reports (20%)

  3. Midterm exam (20%)

  4. Final exam (30%)

  5. Class participation (10%)

Late counter:

Class Agenda & Announcements

    • Class 1 : Class introduction + Domain model

      • Project requirement & Software requirement

      • Functional & Non-functional requirement

      • What/where/when/why

      • Starting discover requirements => What are the problems? => What are the context / business model? => Derive domain model

    • Class 2 : User stories

      • Checking domain models : Interaction vs Relationship

      • Actors & Stakeholders

      • Discover requirement using User stories

      • Writing user stories exercise

      • Derive functions and features from user stories

    • Class 3 : Page flow mock-up session 1

      • Quiz on user stories and deriving a list of feature

      • Create page flow of the system

    • Class 4 : Page flow mock-up session 2

    • Class 5 : Use case diagram and Brief use case

    • Class 6 : Casual use case session 1

    • Class 7 : Casual use case session 2

------------------------------------------ Mid term week ------------------------------------------

    • Class 8 : Fully dressed use case session 1

    • Class 9 : Fully dressed use case session 2

    • Class 10 : Functional vs Non-functional requirement

    • Class 11 : SRS template (less formal)

    • Class 12 : IEEE SRS template session 1

    • Class 13 : IEEE SRS template session 2

    • Class 14 : Discover requirement with LEAN STARTUP

    • Class 15 : Review