jgs
CSE 563
Software Requirements and Specification
Lecture 25: Final Review
Dr. Javier Gonzalez-Sanchez
[email protected]
javiergs.engineering.asu.edu | javiergs.com
PERALTA 230U
Office Hours: By appointment
Slide 3
Slide 3 text
jgs
Grading
Slide 4
Slide 4 text
jgs
Fall 2021 | 00000001
Grading
§ 7 Quizzes: 25 / 7 = 3.5714 per quiz.
§ 6 Assignments: 25 / 6 = 4.1666 per assignment. We are still reviewing a
couple of Academic Integrity cases. I will be in touch during the weekend.
§ Midterm Exam: 25% i.e., your current grade / 4
§ Final Exam: on Monday
A curve is a possibility but not guaranteed.
If applied, it will be applied to everyone; it is NOT case-based.
Slide 5
Slide 5 text
jgs
Quiz 07
COCOMO
Slide 6
Slide 6 text
jgs
Fall 2021 | 00000001
COCOMO II Web Tool by USC
http://softwarecost.org/tools/COCOMO/
Slide 7
Slide 7 text
jgs
Fall 2021 | 00000001
COCOMO II - Inputs
Slide 8
Slide 8 text
jgs
Fall 2021 | 00000001
Scale Drivers Rating
Scale Factors (Wi) Very Low Low Nominal High Very High Extra High
Precedentedness
(PREC)
thoroughly
unprecedented
largely
unprecedented
somewhat
unprecedented
generally
familiar
largely
familiar
throughly
familiar
Development
Flexibility (FLEX)
rigorous occasional
relaxation
some
relaxation
general
conformity
some
conformity
general
goals
Architecture/Risk
Resolution (RESL)*
little (20%) some (40%) often (60%) generally
(75%)
mostly
(90%)
full (100%)
Team Cohesion
(TEAM)
very difficult
interactions
some difficult
interactions
basically
cooperative
interactions
largely
cooperative
highly
cooperative
seamless
interactions
Process Maturity
(PMAT)
Weighted average of “Yes” answers to CMM Maturity Questionnaire
* % significant module interfaces specified, % significant risks eliminated
Slide 9
Slide 9 text
jgs
Fall 2021 | 00000001
Cost Drivers | Product Factors
1.1. Required Reliability (RELY)
1. 2. Data Base Size (DATA)
1. 3. Complexity (CPLX)
1. 4. Developed for Reusability (RUSE)
1. 5. Documentation (DOCU)
jgs
Fall 2021 | 00000001
Cost Drivers | Project Factors
Project Factors
4.1. Use of Software tools (TOOL)
4.2. Multisite development (SITE)
4.3. Required schedule - stretch-out or acceleration (SCED)
Multisite development
Slide 13
Slide 13 text
jgs
Fall 2021 | 00000001
Pacman
§ It has 1200 LOC
§ Nothing to be reuse
§ What could be its cost in the best-case scenario?
§ What could be its cost in the worse-case scenario?
§ What is the best-case scenario? (value for the factors)
§ What is the worse-case scenario? (value for the factors)
Slide 14
Slide 14 text
jgs
Fall 2021 | 00000001
Quiz 07
1. Write a paper where you describe and include COCOMO reports for the PacMan
videogame:
§ It has 1200 LOC
§ Nothing to be reuse
§ What could be its cost in the best-case scenario?
§ What could be its cost in the worse-case scenario?
§ What is the best-case scenario? (value for the factors)
§ What is the worse-case scenario? (value for the factors)
2. Do the same for another project – a project that you create in the past (a capstone
project, a Summer internship, a personal project, etc. ). You do not need to share
the code, just describe what the project is about and the LOC numbers, reuse or
not, etc.
Your paper should include (A) description of the system (B) COCOMO reports (two
reports per system); (C) your conclusions about the usefulness / correctness of the
values reported
Slide 15
Slide 15 text
jgs
Final Review
Slide 16
Slide 16 text
jgs
The following slides shows some examples
related to some topics
This is NOT a comprehensive list of topics
Topics in the exam can be found
Weeks 2 to 15
(Lectures 1 to 25)
Slide 17
Slide 17 text
jgs
Fall 2021 | 00000001
Academic Integrity
Slide 18
Slide 18 text
jgs
Fall 2021 | 00000001
Also,
§ Academic Integrity
Slide 19
Slide 19 text
jgs
Fall 2021 | 00000001
§ Academic Integrity
Slide 20
Slide 20 text
jgs
Fall 2021 | 00000001
Fall 2021 | Final Exam
Slide 21
Slide 21 text
jgs
Fall 2021 | 00000001
Fall 2021 | Final Exam
Slide 22
Slide 22 text
jgs
Fall 2021 | 00000001
Fall 2021 | Final Exam
Slide 23
Slide 23 text
jgs
Fall 2021 | 00000001
Fall 2021 | Final Exam
Slide 24
Slide 24 text
jgs
Fall 2021 | 00000001
Fall 2021 | Final Exam
Slide 25
Slide 25 text
jgs
Fall 2021 | 00000001
Slide 26
Slide 26 text
jgs
Fall 2021 | 00000001
Fall 2021 | Final Exam
Replace the Draw the Use Case Diagram for:
§ A product backlog
§ Activity and State Diagrams for an Authentication process
§ A set of tasks for one of the features (or requirements) included in the
described scenario
Slide 27
Slide 27 text
jgs
Topics to Review
Part 1
Slide 28
Slide 28 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 29
Slide 29 text
jgs
Fall 2021 | 00000001
Diagram
a) Actors
b) Use Cases
a) Relationships
child father
base addition
extension base
<< include >>
<< extend >>
Slide 30
Slide 30 text
jgs
Fall 2021 | 00000001
Remember
base
extension
base
Slide 31
Slide 31 text
jgs
Fall 2021 | 00000001
Include vs Extends
Slide 32
Slide 32 text
jgs
Fall 2021 | 00000001
Types of Non-Functional Requirements
Slide 33
Slide 33 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 34
Slide 34 text
jgs
Fall 2021 | 00000001
Behavioral Modeling
Supplements the use case by providing
§ a graphical representation of the flow of interaction. Create an activity
diagram for each use-case.
§ a list of the different states of a system. Build a state diagram for the
system.
They are not mandatory and they can be combined.
Slide 35
Slide 35 text
jgs
Fall 2021 | 00000001
Activity Diagram
Slide 36
Slide 36 text
jgs
Fall 2021 | 00000001
Example 3
Slide 37
Slide 37 text
jgs
Fall 2021 | 00000001
State Machine Diagram
Slide 38
Slide 38 text
jgs
Fall 2021 | 00000001
Use Case Template
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
Slide 39
Slide 39 text
jgs
Fall 2021 | 00000001
Test Yourselves
§ 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 40
Slide 40 text
jgs
Fall 2021 | 00000001
Test Yourselves
Slide 41
Slide 41 text
jgs
Fall 2021 | 00000001
Test Yourselves
Slide 42
Slide 42 text
jgs
Topics to Review
Part 2
Slide 43
Slide 43 text
jgs
Fall 2021 | 00000001
Strategy
Plan-based Agile
Slide 44
Slide 44 text
jgs
Fall 2021 | 00000001
Where we are?
Product Requirement Task
As a (role),
I want (feature),
So that (benefit)
Slide 45
Slide 45 text
jgs
Fall 2021 | 00000001
Creating Stories
storyboard A C … Z
B
time
epics
Epic or Story
• Does it seem difficult to estimate?
• Does it seem complex?
• Is it long?
• Are there technical or business unknowns that are unclear?
jgs
Fall 2021 | 00000001
Where we are?
… move the pacman
… show the pacman
… move a ghost
… show a ghost
… show power pills
features tasks (new)
Slide 53
Slide 53 text
jgs
Fall 2021 | 00000001
Burndown Chart
Work
Remaining
(Hours or Points)
days
Slide 54
Slide 54 text
jgs
Fall 2021 | 00000001
COCOMO II Web Tool by USC
http://softwarecost.org/tools/COCOMO/
Slide 55
Slide 55 text
jgs
Fall 2021 | 00000001
Factors of development cost
1. Software Size (Lines of Code)
2. Software Scale Drivers: sources of exponential effort variation
3. Software Cost Drivers: sources of linear effort variation. They group in 4
categories: product, platform, personnel and project
Factor are rated between very low and very high per rating guidelines
Slide 56
Slide 56 text
jgs
Fall 2021 | 00000001
Questions
Slide 57
Slide 57 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.