Documente Academic
Documente Profesional
Documente Cultură
Software Engineering
Project Report
(CSHP - 410)
Supervisor:
Dr. Anjali Thukral
2014
Table of Contents
Problem Statement..........................................................................................................................4
Process Model................................................................................................................................5
1.
Overall Description...........................................................................................................6
Functional Requirements..................................................................................................7
1.3.1 Booking.......................................................................................................................7
1.3.2 Cancellation................................................................................................................7
1.3.3 Flight Status................................................................................................................7
1.4
Performance Requirement................................................................................................8
1.5
Design Constraints............................................................................................................8
1.6
Data Dictionary...............................................................................................................11
Estimations.........................................................................................................................12
2.1
Function Points...............................................................................................................12
2.2
3.
Efforts.............................................................................................................................13
Scheduling..........................................................................................................................14
3.1
Schedule table.................................................................................................................14
3.2
Timeline..........................................................................................................................15
4.
Risk Management...............................................................................................................17
5.
Design.................................................................................................................................18
5.1
System Design................................................................................................................18
5.2
Data Design.....................................................................................................................18
6.
Coding................................................................................................................................20
7.
Testing................................................................................................................................21
7.1
Flowgraph.......................................................................................................................21
7.2
Cyclomatic Complexity..................................................................................................22
Test cases........................................................................................................................23
References..........................................................................................................................25
Problem Statement
The main aim of this project is to develop the software for the process of reserving airway ticket
which should lead to increased efficiency and reduced drawbacks which were present in the previous
procedures of airline reservation and makes it convenient for the customers to book,modify or cancel a
particular reservation. The software should control redundancy so that no two customers can access the
same seat at the same time and transactions should be independent. Moreover, ticket booking is a
hassle for customer,they are left with just three options,that is, book the ticket by visiting an airport,by
visiting airline booking office or through agents .Technical system is fast, accurate ,reliable ,informative
and user friendly .The proposed system enables the customer to do things such as search for airline
flights that are available between two travel cities on a specified date, namely the departure city and
arrival city for a particular departure and arrival date. The system displays all the flights details such
as flight number ,name ,price and duration of journey etc. Some agents or the organization with the idea
of eyeing increased profit through the extra taxes for the comfort they give to buy the ticket just by a
single click of the mouse.
Process Model
We choose Waterfall model because of the following reasons:
Its relatively simple and easier to understand approach as compared to other models.
In this model we have to complete one stage before proceeding to next. So ,we have
clearly defined stages and well understood milestones.
The advancement in program does not need to be checked upon by the customer during
the process. So this model does not create problem.
The requirements are fixed and work can proceed to completion in a linear manner.
Has a default flight rate that is adjusted automatically with the choice of the flight.
When a customer reserves a flight, the flight number will be changed to occupied in the
database
When no flights are available and a customer would like to extend their reservation their
information will be placed in a database and when there are flights available the first
customer on the list will have the information of the flight
Once the ticket is booked, it can be cancelled or seen by this module. It accepts PNR, name of
first passenger and email-id, verifies it with the database and presents the itinerary. On successful
confirmation by the traveller it can cancel the ticket of the passengers on that itinerary. Further, it will
update the airline database and the payment gateway to issue refund.
1.3.3 Flight Status
This module retrieves the updated status of the flights. It accepts flight no. or Origin-Destination
and then retrieves the schedule of the particular flight or all the flights of that sector.
a
ell
nc
Ca
tio
St
at
us
lip
nS
Se
a
t
ch
ar
t
Get info
Cancellation & Modification Panel
Fligh
t no,
date
Depa
rture
,a
rriva
l,N.O
.P.,na
m
Customer panel
s
rge
a
rch
Su
Charges
e
rg
ha
rc
Su
Charges
r
nfi
Co
n
tio
Data
Validate Payment
Description
Journey details
Flight Selection
Flight details
Surcharge
[ ADF + CUTE ]
Cost
Payment details
Itinerary
Flight Status
Confirmation details
[ PNR + flightno
Confirmation
+ flightpassenger_name + DATE ]
tai
de
n
o
ati
m
r
nfi
Co
ls
Refu
2. Estimations
2.1 Function Points
Estimation of Complexity Weighing Factors
Factor
Value
2. Data Communication
3. Distributed Processing
4. Performance Critical
(Fi)
45
1.10
MEASUREMENT
PARAMETER
OPT
LIKELY
PESS
EST.
WEIGHING
FP
COUNT
FACTOR
COUNT
Number of
inputs
Number of
outputs
Number of
inquiries
Number of
logical files
Number of
interfaces
external
16
48
external
12
external
internal
21
external
10
Count total 97
2.2 Efforts
Assuming that Average productivity for such a system is 6.5FP/pm i.e. 6.5 functional
points per person month, then the estimates are:
Effort= Total Functional Points/Average Productivity
=64.117 /6.5
= 9.864 pm
i.e. 9.864 person month
Assuming that the cost is Rs.8000/pm i.e. Rs.8000 per person month
Cost =Cost per person month * Effort
= 8000*9.864 = Rs.78913
3. Scheduling
3.1 Schedule table
WORK TASKS
1. IDENTIFY NEEDS AND
BENEFITS
Meet with concerned members
Identify needs and project
constraints
Establish problem statement
Milestone
2.
REQUIREMENT
ANALYSIS
Detailed discussion of the
project
Creating Data flow Diagram
Data Dictionary
Milestone
3.
PROJECT
MANAGEMENT
Computing F.P. and Effort
Schedule table
Risk table
Timeline Chart
Milestone
4. DESIGN ENGINEERING
Architectural Design
Data Design
Pseudo Code
Milestone
5. TESTING
SCHEDULE
Week 1
Week 1
Week 2
Week 2
Week 3
Week 4
Week 5
Week 5
Week
Week
Week
Week
Week
5
6
7
8
8
Week
Week
Week
Week
8
9
9
10
Week 12
3.2 Timeline
W
Work Task
W1
1.Theme
project
of
the
project
constraints
Milestone : Project
statement
defined
2.Specify
product
requirement
Product Perspective
Product functions
User characteristics
General constraints
Milestone : Product
requirements
specified
3.Forming Data Flow
Diagram
DFD Level 0
Data Dictionary
DFD Level 1
Milestone :Data design
complete
4.Project Management
Cost Estimation
Efforts
W
W2
W
W3
W
W4
W
W5
W
W6
W
W7
W
W8
W
W9
W
W10
W
W11
W
W12
Risk Table
Milestone :
5.Design
Engineering
Architectural Design
ER Diagram
Data Design
Milestone : Design
document complete
6.Creating
plans
testing
Milestone : Testing
complete
4. Risk Management
Risks
Category
Probability
Impact
PS
60%
PS
80%
Staff inexperienced
ST
30%
BU
50%
CU
30%
BU
40%
PS
50%
Loss of database
PS
50%
DE
70%
PS Product Size
IMPACT VALUES
1.CATASTROPHI
2.CRITICAL
3.MARGINAL
4.NEGLIGIBLE
DATE:10/04/14
PROB: 50%
IMPACT:CATASTROPHIC
DESCRIPTION:
Due to various technical reasons or natural calamities, Database of the system may be
lost or damaged.
Refinement:
Subcondition1: Certain check points are recorded in the system periodically
Subcondition 2:As a part of check-pointing ,after every update in the database,
checkpoints are updated which states that the database is updated correctly till that point.
Mitigation/Monitoring:
1. A copy of all the databases must be maintained side by side on a different system. Also, it
must be updated simultaneously.
2.A recovery tool must be designed which could recover the database according to the
checkpoints.
Management
A special team is allocated for the recovery of the database as soon as possible. The secondary
databases which were maintained as a copy must be made primary so that the working of the
software is not affected.
Originator:
Assigned:
5. Design
5.1 System Design
ARS
Booking
Payment options
Validate payment
Update
Generate itinerary
PNR
Has
Fu
el
_
s
u
rc
ha
rg
e
Fuel_surcharge
Customer
Email_id
Name
Mobi
Time
Origi
Destination
ADF
Flight
Flight_no
Charges
Origin
Itinerary
PNR
Name
Flight_
Passenger
PNR
Names
Payment
Mode
Transaction_id
6. Coding
found=0;
cin>>a;
(1)
if(a=='Y')
(2)
{
gets(fno);
(3)
(4)(5)
{
ifile.read((char*)&S1,sizeof(detail));
(6)
if(strcmp(fno,S1.flightno)==0)
(7)
(8)
found=1;
}
}
}
else
(9)
{
gets(orig);
(10)
gets(desti);
(11)
while(!ifile.eof())
(12)
{
ifile.read((char*)&S1,sizeof(detail));
(13)
if(strcmp(orig,S1.origin)==0&&strcmp(desti,S1.dest)==0)
(14)
{
found=1;
(15)
}
}
}
exit();
(16)
7. Testing
7.1 Flowgraph
Paths:
Path 1: 1 2 3 4 16
Path 2: 1 2 3 4 5 6 7 8 16
Path 3: 1 2 3 4 5 6 7 4 16
Path 4 : 1 2 9 10 12 16
Path 5: 1 2 9 10 11 12 13 14 15 16
Path 6: 1 2 9 10 11 12 13 14 12 16
3
9
Using Regions: 10
Number of regions = 6
Therefore, cyclomatic complexity = 6
11
12
=20 16 + 2
=6
Therefore, cyclomatic complexity = 6
13
8
14
15
Test Case 2:
When the user enters , Y(to the Ques. that whether he knows the flight no.).
Then the User enters the flight no.
Then program enters in while loop, searches the whole file & the corresponding flight no. is
found.
& it exits
Test Case 3:
When the user enters, Y(to the Ques. that whether he knows the flight no.).
Then the User enters the flight no.
Then program enters in while loop, searches the whole file but the corresponding flight no. is
not found .
& it exits
Test Case 4:
When the user enters N(to the Ques. that whether he knows the flight no.)
Then the user enters the origin and destination
Program enters in while loop but the file does not exist or is empty.
& it exits.
Test Case 5:
When the user enters N (to the Ques. that whether he knows the flight no.)
Then the user enters the origin and destination
Then program enters in while loop, searches the whole file but the corresponding set of origin
and destination is not found.
& it exits.
Test case 6:
When the user enters N(to the Ques. that whether he knows the flight no.)
Then the user enters the origin and destination
Then program enters in while loop , searches the whole file & the corresponding sets of origin
and destination is found.
& it exits.
8. References
www.google.co.in
en.wikipedia.org