Software Requirements Specification - Flight
Software Requirements Specification - Flight
Page 1
Software Requirements
Specification
Dani Vainstein
Page 1
Page 2
Table of Conten
Table of Contents..................................................................II
Table of Figures...................................................................III
Revision Log........................................................................ IV
1.
Introduction...............................................................1
1.1
Purpose..................................................................................1
1.2
Document Conventions.........................................................1
1.2.1 Abbreviations......................................................................1
1.2.2 Symbols...............................................................................2
1.3
Intended Audience.................................................................2
1.4
Project Scope.........................................................................3
1.5
References.............................................................................3
2.
Overall Description.....................................................4
2.1
Product Features....................................................................4
2.1.1 Secured Login......................................................................4
2.1.2 Inserting new reservations..................................................4
2.1.3 Confirmations......................................................................4
2.1.4 Updating existing reservations............................................4
2.1.5 Removing existing reservations..........................................4
2.1.6 Search capabilities..............................................................5
2.1.7 Reporting.............................................................................5
2.1.8 Database.............................................................................5
2.2
Known Bugs...........................................................................5
2.3
Operating Environment..........................................................5
2.4
User Documentation..............................................................6
2.5
Assumptions and Dependencies............................................6
3.
Requirements.............................................................6
3.1
Login......................................................................................6
3.1.1 Description..........................................................................6
3.1.2 Functional Requirements.....................................................7
3.1.3 Login Graphical User Interface..........................................8
3.2
Flight Reservation..................................................................9
3.2.1 Description..........................................................................9
3.2.2 Flight Reservation Graphical User Interface...................11
3.2.3 Functional Requirements...................................................19
3.3
New Order Process...............................................................20
3.3.1 Description........................................................................20
3.3.2 Functional Requirements...................................................20
3.3.3 Error Messages..................................................................24
4.
User Challenge..........................................................25
4.1
Fax Preview..........................................................................25
4.1.1 Gui Defaults.......................................................................26
4.2
Menu....................................................................................27
4.2.1 Functionality......................................................................27
Dani Vainstein
Page 2
Page 3
Table of FiguresY
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Figure
1 - Login Dialog............................................................................6
2 - Login Image............................................................................8
3 - Flights Table............................................................................8
4 - Flights Reservation Window....................................................9
5 Fax Order No. <n>...............................................................10
6 Flight Reservation Toolbar....................................................10
7 Flight Schedule Frame..........................................................10
8 Order Information Frame......................................................11
9 Summary Frame...................................................................15
10 Window Image...................................................................15
11 Order Information Frame....................................................15
12 Flights Table Image............................................................16
13 Fax Order No. <n> Dialog..................................................17
14 Fax Preview Dialog.............................................................25
15 Fax Preview Image.............................................................26
16 About Image.......................................................................29
17 Open Order Dialog.............................................................29
18 Search Results Dialog........................................................30
18 Graphical Report................................................................33
Dani Vainstein
Page 3
Page 4
Revision Log
Name
Dani Vainstein
Date
18 Dec 2007
Revision Description
Draft
Version
1.0
Dani Vainstein
31 Jan 2008
Req0013 removed
duplication (T Roopesh )
1.1
Dani Vainstein
Page 4
Page 1
1. Introduction
A Product requirements document is used in product marketing to
plan and execute new products.
A Software Requirements Specification is a complete description of
the behavior of the system to be developed. It includes a set of use
cases that describe all of the interactions that users will have with the
software.
Use Cases are also known as Functional Requirements. In addition to
use cases, the SRS also contains nonfunctional requirements.
The software requirements document is a written statement of what
the software will do.
What the software does is directly perceived by its users. When the
user performs some action, the software responds in a particular way.
Therefore you must agree on actions the users can perform and
response they should expect. This common understanding is
captured in the requirements document.
1.1 Purpose
This document contains the tests requirements for the Automation FR
Project.
These software requirements were established by Dani Vainstein.
This Software requirements document was done using our
imagination and our understanding on the Mercury "Flight
Reservation" application, and also to demonstrate and
simulate a real QA automation project.
This SRS specifies to Mercury Flight Application Version 4a.
Dani Vainstein
Page 1
Page 2
Descriptive Programming
Object Repository
Shared Object Repository
Object Oriented
Object Oriented Programming
Object Oriented Testing
Software Test Documentation
Primary Key ( Database relationships )
Foreign key ( Database relationships )
1.2.2Symbols
Exclamation
Question
Information
Critical
Project Manager
Senior Manager
Advisors
Dani Vainstein
Page 3
1.5 References
VBScript Tutorial
http://www.advancedqtp.com/knowladge-base/firststeps/vbscript-tutorial/
VBScript Basics
http://www.advancedqtp.com/knowladge-base/scriptingquicktest-professional/vbscript-basics/
VBScript Advanced
http://www.advancedqtp.com/knowladge-base/scriptingquicktest-professional/advanced-vbscript/
Databases
http://www.advancedqtp.com/knowladge-base/scriptingquicktest-professional/adodb/
Dictionary
http://www.advancedqtp.com/knowladge-base/codetechniques/code-design-101/object-dictionaries-for-genericfunctions/
Regular Expressions
http://www.advancedqtp.com/knowladge-base/scriptingquicktest-professional/regular-expressions/
CheckPoints
http://www.advancedqtp.com/knowladge-base/codetechniques/custom-checkpoints/
Dani Vainstein
Page 3
Negative Testing
http://www.advancedqtp.com/knowladge-base/codetechniques/code-design-101/negative-tests/
DP
http://www.advancedqtp.com/knowladge-base/codetechniques/dp-101/
Page 4
2. Overall Description
2.1 Product Features
2.1.1Secured Login
The system supports a secured login user/password.
Insert a new flight reservation.
2.1.3Confirmations
The application is send fax confirmations to clients, about new,
updates and cancelled flights.
2.1.6Search capabilities.
The application supports a searching mechanism by order
number customer name and/or date of flight
2.1.7Reporting
The application supports graphical and text reports of
reservations.
2.1.8Database
Dani Vainstein
Page 4
Page 5
The project was originally designed, tested and reviewed for QTP
version 9.2. If you use a different version of QTP, some
screenshots might see different from yours. Be aware that some
functionality may not work in earlier versions of QTP.
I will need MS-Excel installed on your computer, to create and
modify datasheets files.
You might need MS-Access to modify and view the flight
application database. However you can use "Snapshot Viewer for
Dani Vainstein
Page 5
Page 6
3. Requirements
This part of the requirements document serves to present the
"big picture" of the application. Here you lay out the objectives of
the application.
3.1 Login
3.1.1Description
The Login dialog, logs to the Flight Reservation application. A
shortcut to the application demo can be found in
Start Sample Applications Flight.
The user must provide an Agent Name that must be at least 4
characters long and the Password is always "Mercury". Clicking
the OK button will access the application if requested information
is correct.
3.1.2Functional Requirements
3.1.2.1
Req0001
Dani Vainstein
Page 6
3.1.2.2
Page 7
Req0003
3.1.2.3
Req0004
3.1.2.4
Req0005
3.1.2.5
Req0006
3.1.2.6
Req0007
Dani Vainstein
Page 7
3.1.2.7
Page 8
Req0008
3.1.2.8
Req0009
Req0002
Dani Vainstein
Page 8
Page 9
The system will monitor from this point the price-per-ticket and
the total amount to pay.
In addition the user can select 1 to 10 tickets and a flight class.
The information is inserted to a database, and a successful or
failure message should be displayed in the transaction progress
bar.
Dani Vainstein
Page 9
Page 10
Dani Vainstein
Page 10
Page 11
The Toolbar
3.2.2.1.1 Req0010
Req0010a Button "New Order"
enabled: True
icon:
enabled: True
icon is:
enabled: False
icon is:
enabled: True,
con is:
enabled: True
icon is:
enabled: True
icon is:
3.2.2.2
Dani Vainstein
Page 11
Page 12
3.2.2.2.1 Req0011
Req0011a "Date of Flight"
enabled: True
text: ""
formattedText: "__/__/__"
mask: "99/99/99"
focused: True
enabled: True
selection: ""
enabled: True
selection: ""
Req0011d "Flights"
enabled: False
3.2.2.3
3.2.2.3.1 Req0012
Dani Vainstein
Page 12
Page 13
Enabled: False
Enabled: False
Enabled: False
Req0012l "Business"
enabled: False
Req0012m "Economy"
enabled: False
Req0012n "First"
enabled: False
3.2.2.4
Menu Defaults
3.2.2.4.1 Req0013
Req0013a "File"
Exists: True
Enabled: True
Index: 1
Label: "File"
SubMenuCount: 4
Req0013b "Edit"
Dani Vainstein
Exists: True,
Enabled: True
Index: 2
Page 13
Label: "Edit"
SubMenuCount: 3
Page 14
Req0013c "Analysis"
Exists: True
Enabled: True
Index: 3
Label: "Analysis"
SubMenuCount: 2
Req0013d "Help"
Exists: True
Enabled: True
Index: 4
Label: "Help"
SubMenuCount: 2
Exists: True
Enabled: True
HasSubMenu: False
Exists: True
Enabled: True
HasSubMenu: False
Exists: True
Enabled: False
HasSubMenu: False
Req0013h "Exit"
Dani Vainstein
Exists: True
Enabled: True
Page 14
Label: "Exit"
HasSubMenu: False
Page 15
Exists: True
Enabled: True
Label: "Reports"
HasSubMenu: False
Req0013m "Graphs"
Exists: True
Enabled: True
Label: "Graphs"
HasSubMenu: False
Req0013n "Contents"
Exists: True
Enabled: True
Label: "Contents"
HasSubMenu: False
Req0013o "About"
Exists: True
Enabled: True
Label: "About"
HasSubMenu: False
3.2.2.5
Summary Defaults
3.2.2.5.1 Req0014
Req0014a "Order No." text: ""
Req0014b Progress bar text: ""
Dani Vainstein
Page 15
3.2.2.6
Page 16
Window Image
3.2.2.6.1 Req0015
3.2.2.7
3.2.2.7.1 Req0016
Req0016a List
enabled: True
columns count: 7
Req0016b Columns
Dani Vainstein
"Flight"
"From"
Page 16
"To"
"Departure"
"Arrival"
"Airline"
Page 17
"Price"
Req0016c Button "OK"
enabled: True
enabled: True
Req0016e Image :
3.2.2.8
Dani Vainstein
Page 17
Page 18
3.2.2.8.1 Req0018
Information match:
Req0018a Dialog
Ispopupwindow: True
Req0018b Name
text: <Name>
enabled: True
format: "(###)###-####"
FormattedText: "(___)___-____"
focused: True
Dani Vainstein
enabled: True
Page 18
Page 19
enabled: True
enabled: True
enabled: True
3.2.3Functional Requirements
3.2.3.1
Toolbar Functionality
3.2.3.1.1 Req0020
If Data displayed, selecting "New" button, should clear the
form. However if information updated without saving
changes:
Req0020a Popup dialog is displayed.
Req0020b Popup title "Flight Reservations"
Req0020c message type: Question.
Req0020d message text: "The information has changed. Save
changes?"
3.2.3.1.2 Req0021
Toolbar "Open Order" will display the Dialog "Open Order".
Req0021 - Open Order dialog exist: True
3.2.3.1.3 Req0022
Toolbar "Delete" will be enabled only after open an order.
Req0022 open an order "Delete" enabled: True
3.2.3.1.4 Req0023
Toolbar "Graphs" will open the dialog "Graph"
Req0023 Graph dialog
exist: True
3.2.3.1.5 Req0024
Toolbar "Reports" will open "report.txt" notepad file.
Req0024 Reports text file
Dani Vainstein
exist: True
Page 19
Page 20
3.2.3.1.6 Req0025
Toolbar "Help" will open the window "Flight Reservation
Help Version.*"
Req0025 Flight Reservation Help Version .*
exist: True
3.3.2Functional Requirements
3.3.2.1
Req0035
Only valid departures cities must be in list "Fly Form" and "Fly
To"
Req0035a Fly From
Req0035b Fly To
3.3.2.2
Req0036
3.3.2.3
Req0037
enabled: True.
Req0037b icon
Dani Vainstein
Page 20
3.3.2.4
Page 21
Req0038
3.3.2.5
Req0039
focused: True
Req0039b "Tickets"
enabled: True
Text: "1"
Req0039c "Economy"
enabled: True
checked: "ON"
text: <FlightNo>
text: <DepartureTime>
text: <ArrivalTime>
Req0039g "Airline"
text: <Airline>
Req0039h "Price"
text: <Price>
Req0039i "Total"
3.3.2.6
Req0040
Dani Vainstein
enabled: True
Page 21
Page 22
Req0040b "Total"
3.3.2.7
Req0041
enabled: False
enabled: True
enabled: False
enabled: False
enabled: True
enabled: True
image:
"Order_Number",
"Customer_Name",
"Departue_Date",
"Flight_Number"
"Tickets_Ordered", "Class"
"Agents_Name"
3.3.2.8
Req0042
Dani Vainstein
Page 22
Page 23
Exists: False
3.3.2.9
Req0043
Exists: False
3.3.3Error Messages
3.3.3.1
Req0044
3.3.3.2
Req0045
Dani Vainstein
Page 23
3.3.3.3
Page 24
Req0046
3.3.3.4
Req0047
3.3.3.5
Req0048
3.3.3.6
Req0049
3.3.3.7
Req0050
Dani Vainstein
Page 24
Page 25
4. User Challenge
This part of the requirements document is for students that want to go
forward and complete the whole project.
AdvancedQTP staff will help you, on the "Student Challenge" part.
Use the FR Project Forum to ask question, report errors in the
presentations, and any other issue regarding the FR Project.
In addition, you want to add more ( we know there are more )
requirements to this document, write me to [email protected]
4.1.1.1
Req0019
Information match:
Req0019a Dialog; Ispopupwindow: True
Req0019b Fax # = < faxNo >
Req0019c Customer = < customer >
Req0019d Flight Date = < flightDate>
Req0019e Flight No. = < flightNo >
Req0019f From = < flyFrom >
Req0019g To = < flyTo >
Dani Vainstein
Page 25
Page 26
enabled" True
enabled: True
Req0019s image :
4.2 Menu
4.2.1Functionality
4.2.1.1
Req0026
Dani Vainstein
Page 26
4.2.1.2
Page 27
Req0027
4.2.1.3
Req0028
4.2.1.4
Req0029
exist: True
4.2.1.5
Req0030
4.2.1.6
Req0031
4.2.1.7
Req0032
Dani Vainstein
Page 27
Page 28
4.2.1.8
Req0033
exist: True
4.2.1.9
Req0034
Menu item "Help; About" will open the dialog "About Flight
Reservation System"
About Flight Reservation System
exist: True
Req0051
4.3.1.2
Req0052
4.3.1.3
Req0053
4.3.1.4
Dani Vainstein
Req0054
Page 28
Page 29
Req0055
enabled: True
Req0055b Static "Version" text: "Version 4.0"
Req0055a Icon:
Req0055a image
Dani Vainstein
Page 29
Page 30
4.5.2Functional Requirements
4.5.2.1
Req0056
Dani Vainstein
enabled: True
focused: True
Page 30
Page 31
enabled: True
enabled: False
enabled: False
enabled: True
focused: True
enabled: False
enabled: False
enabled: False
enabled: False
enabled: True
focused: True
enabled: False
enabled: True
enabled: False
enabled: False
options
"Flight Date" field
Dani Vainstein
Page 31
Page 32
enabled: True
focused: True
enabled: True
enabled: False
enabled: False
4.5.2.2
Req0057
4.5.3Functional Requirements
4.5.3.1
Req0058
4.5.3.2
Req0059
4.5.3.3
Req0060
Dani Vainstein
Page 32
Page 33
Req0060d message text "No order found. Please try again "
4.7 Reporting
4.7.1Description
The flight application supports two report mechanism
1.
Textual Report
2.
Graphical Report
Req0061
Req0061a Dialog
ispopupwindow: True
Req0061b "Style"
Exists: True
Enabled: True
Index: 1
Label: "File"
SubMenuCount: 4
Dani Vainstein
Exists: True
Page 33
Enabled: True
HasSubMenu: False
Page 34
Exists: True
Enabled: True
HasSubMenu: False
Exists: True
Enabled: True
HasSubMenu: False
Dani Vainstein
Page 34