Professional Documents
Culture Documents
2
Example – 1
3
Example – 2
The application stores the registered
customer information. The app has two
tables in its database. In info table, there
are fields about customer’s code, name
credit card number and active status. In
address table, the fields; code, city name,
street name and pin code exist. The app
connects to the credit card’s bank to
validate the status of the credit card. It
sends the credit card number and
receives status information.
Estimate the size of the application.
4
Example – 2
Step 1: # of functions
One screen → One function
5
Example – 2
Step 2: # of external inputs
EI = 3
Add Customer
Update Customer
Delete Customer
6
Example – 2
Step 3: # of external outputs
EO=0
7
Example – 2
Step 4: # of external inquiries
EQ=1
8
Example – 2
Step 5: # of internal logical files
ILF=1
9
Example – 2
Step 6: # of external interface files
EIF=1
10
Example – 2
Step 7: functional complexity of
each external input
FTR=2
DET=7
11
Example – 2
Step 8: functional complexity of
each external output
No External Outputs
12
Example – 2
Step 9: functional complexity of
each external inquiry
FTR=1
DET=1
13
Example – 2
Step 10: functional complexity of each
internal logical file
RET=2
Credit Card Info Group
Address Info Group
DET=7
customer code, customer name, credit card
number, active, city name, street name, pin
code
1 Low ILF
14
Example – 2
Step 11: functional complexity of
each external interface file
RET=1
DET=2
15
Example – 2
Step 12: UFP = ?
UFP = (3 * 4) + (1 * 3) + (1 * 7) + (1 * 5)
UFP = 27 FPs
16
Example – 2
Step 13: VAF = ?
17
Example – 2
Step 14: AFP = ?
AFP ≈ 24 FPs
The size of this screen is 24 FPs.
18
Example – 3
Find the critical path for the below work plan of an agile project.
Activity Activities Preceding Activity Duration Estimation
# (in days)
1 Identify Key Stakeholders – 5
2 User Story Preparation 1 20
3 Create Product Backlog 2 5
4 Story Duration Estimation 2, 3 5
5 Create Project Timeline 4 5
6 Sprint – 1 5 10
7 Sprint – 2 5 10
8 Integration 6, 7 5
19
Example – 3
D=5 TE=30 TL=30 D=10 TE=50 TL=50
3 6
1 2 4 5 8
D=5 D=20 D=5 D=5 7 D=5
D=55 days
TE=5 TE=25 TE=35 TE=40 D=10 TE=55
TL=5 TL=25 TL=35 TL=40 TE=50 TL=55
TL=50
Are 1 – 2 – 4 – 5 – 6 – 8 and 1 – 2 – 4 – 5 – 7 – 8 critical paths? No! Because you have to complete #3.
Is there any non-critical task? No! Because all activities have zero slack time.
20
Example – 4
Prepare a use case scenario about the check-in process with
luggage for an international flight in the airport. The
passenger goes to the check-in desk, submits passport,
reserves seat, leaves the luggage and receives the boarding
pass.
21
Example – 4
Use case name: Check-in with luggage for an international flight
Description: This use case involves the steps handled by the check-in
representative when the passenger submits the passport. The check-in
representative checks the validity of the passenger’s ticket. If the ticket is
valid, the check-in representative checks the size and the weight of the
luggage. If the size of the luggage fits with the specifications and the weight
is not over the upper limits, the luggage is received by the baggage
transportation. If the size is not OK, the luggage is rejected. If the luggage has
excess weight, the passenger is asked to pay an additional fee. Finally, a seat
is reserved, a boarding pass is printed. The passenger receives the boarding
pass and the use case is ended.
22
Example – 4
Actors: Passenger having a flight, check-in representative checking the
validity of the reservation, baggage transportation receiving the
luggage
Preconditions: The passenger must have a valid ticket. The passenger
must be at the desk before 30 minutes to flight.
Postconditions: Accepted luggage and printed boarding pass.
23
Example – 4
Flow of events:
Step 1. The passenger submits the passport at the check-in desk.
Step 2. The check-in representative checks the ticket for its validity.
Step 3. If the ticket is valid, the check-in representative checks the luggage.
Step 4. If the luggage has appropriate size and weight, the baggage
transportation receives the luggage.
Step 5. The passenger receives the boarding pass.
24
Example – 4
Alternative flow of events:
Alt-Step 1. (Step 3) If the ticket is not valid, the passenger is referred to the
customer service. Use case is ended.
Alt-Step 2a. (Step 4) If the luggage has an inappropriate size, the passenger
is referred to the customer service. Use case is ended.
Alt-Step 2b. (Step 4) If the luggage has excess weight, the passenger is
asked to pay an additional fee.
25
Example – 4
Business Rules:
The passenger should get to the airport 2 hours prior to the departure time.
26
Example – 5
Write a functional requirement for an online test management tool.
Instructors shall set the duration of a test.
Instructors shall restrict the students not to navigate between the
questions back and forth.
Instructors shall enter the number of attempts of the students to a test.
Instructors shall set the time span for a test being active.
27
Example – 6
Write a non-functional requirement for an online test management tool.
The system shall allow the students to submit the answers at any time
during the test.
The system shall end the test when system clock reached the ending
time of the test.
The system shall provide four different question types in a test:
multiple choice, free format, true-false, fill in the blanks.
The system shall be executed both on web and mobile based
environment.
28
Example – 7
Write a user story for an online test management tool.
As an instructor, I want to set the time span for a test being active so
that I can set up the duration of the test.
As a student, I want to submit my answers at the end of every
question so that I can finish my exam at any time.
As an instructor, I want to choose the time to publish the results so
that I can let the students to learn the test results at the same time.
29