cs 4311 flight planning and management system software

26
CS 4311 2001 CS 4311 Flight Planning and Management System Software Requirements Specification Version <1.0> 2/20/2015

Upload: buinhan

Post on 01-Jan-2017

227 views

Category:

Documents


3 download

TRANSCRIPT

Page 1: CS 4311 Flight Planning and Management System Software

CS 4311

2001 CS 4311

Flight Planning and Management System

Software Requirements Specification Version <1.0>

2/20/2015

Page 2: CS 4311 Flight Planning and Management System Software

Software Requirements Specification

Software Requirements Specification

Date

2/20/2015 10:07 AM

Page

ii

Document Control

Approval

The Guidance Team and the customer shall approve this document.

Document Change Control

Initial Release: 1.0

Current Release: 1.0

Indicator of Last Page in Document: *

Date of Last Review: 2/16//2015

Date of Next Review: 3/16/2015

Target Date for Next Update: 3/16/2015

Distribution List

This following list of people shall receive a copy of this document every time a new version of this document

becomes available:

Guidance Team Members:

Dr. Ann Gates

Elsa Tai

Yadira Jacquez

Customer: Dr. Calvin Han

Software Team Members:

CS 4311

Change Summary

The following table details changes made between versions of this document

Version Date Modifier Description

1.0 1/13/2015 Yadira Jacquez Initial version

Page 3: CS 4311 Flight Planning and Management System Software

Software Requirements Specification

Software Requirements Specification

Date

2/20/2015 10:07 AM

Page

iii

TABLE OF CONTENTSDOCUMENT CONTROL ................................................................................ II

APPROVAL.................................................................................................................................................... II

DOCUMENT CHANGE CONTROL ................................................................................................................... II

DISTRIBUTION LIST ...................................................................................................................................... II

CHANGE SUMMARY ..................................................................................................................................... II

1. INTRODUCTION ................................................................................................................................. 4

1.1. PURPOSE AND INTENDED AUDIENCE ................................................................................................ 4

1.2. SCOPE OF PRODUCT .......................................................................................................................... 4

1.3. DEFINITIONS, ACRONYMS, AND ABBREVIATIONS ............................................................................. 4

1.3.1. Definitions ............................................................................................................................... 4

1.3.1. Acronyms ................................................................................................................................. 7

1.3.2. Abbreviations ........................................................................................................................... 7

1.4. OVERVIEW ....................................................................................................................................... 7

1.5. REFERENCES .................................................................................................................................... 8

2. GENERAL DESCRIPTION ................................................................................................................. 8

2.1. PRODUCT PERSPECTIVE .................................................................................................................... 8

2.2. PRODUCT FEATURES ........................................................................................................................ 9

2.3. USER CHARACTERISTICS ................................................................................................................ 10

2.4. GENERAL CONSTRAINTS ................................................................................................................ 10

2.5. ASSUMPTIONS AND DEPENDENCIES ................................................................................................ 10

3. SPECIFIC REQUIREMENTS ........................................................................................................... 11

3.1. EXTERNAL INTERFACE REQUIREMENTS ......................................................................................... 11

3.1.1. User Interfaces ...................................................................................................................... 11

3.1.2. Manage Flight Plans Screen ................................................................................................. 14

3.1.3. Manage Resources ................................................................................................................. 14

3.1.4. Start Flight ............................................................................................................................. 17

3.1.5. Google Glass Screen ............................................................................................................. 17

3.1.6. Hardware Interfaces .............................................................................................................. 18

3.1.7. Software Interfaces ................................................................................................................ 18

3.1.8. Communications Interfaces ................................................................................................... 18

3.2. BEHAVIORAL REQUIREMENTS ........................................................................................................ 18

3.2.1. Same Class of User ................................................................................................................ 18

3.2.2. Related Real-world Objects ................................................................................................... 18

3.2.3. Stimulus ................................................................................................................................. 21

3.2.4. Related Features .................................................................................................................... 26

3.2.5. Functional .............................................................................................................................. 26

3.3. NON-BEHAVIORAL REQUIREMENTS ................................................................................................ 26

3.3.1. Performance Requirements ................................................................................................... 26

3.3.2. Qualitative Requirements ...................................................................................................... 26

3.4. OTHER REQUIREMENTS .................................................................................................................. 26

Page 4: CS 4311 Flight Planning and Management System Software

Software Requirements Specification

Software Requirements Specification Date

2/20/2015 10:07 AM

Page

4

1. Introduction

1.1. Purpose and Intended Audience

The purpose of this document is to outline the requirements, both functional and non-functional, of the Flight

Planning and Management System. The document serves as a communication medium and a contract between

the developers and the stakeholders; the system must adhere to all the requirements that are listed. The intended

audience for this document includes Dr. Han, the guidance team, the software engineering team, and all other

entities who may have an interest in the FPMS.

1.2. Scope of Product

The software product to be developed is the Flight Planning and Management System (FPMS). The software is

intended to address the pilot’s problem of having to look away from the trajectory to view information that can

help guide him or her during flights on the iPad. The customer identified an additional need for the system to

assist in flight planning and management of an aircraft from a departure airport to an arrival airport.

The FPMS has the potential to improve safety by displaying in-flight information on the Google Glass directly

to the pilot’s sight. The Google Glass is a device that can communicate with the iPad; therefore, there is no need

to create new hardware or develop an interface for communication between the iPad and the Google Glass.

The software will provide the following capabilities to the pilot:

• create and edit flight plans prior to a flight

• support decision-making in case of a reroute during flight

• track in-flight status of relevant information in real-time

• maintain a repository with information that can be used in defining new flight plans or rerouting during

flights.

Ultimately, the system only provides decision making support to the pilot. It is capable of suggesting flight

plans and generating alerts if it detects that a reroute is needed, but the pilot decides which flight plan to use and

whether or not to reroute. However, the system will ensure that any decision made by the pilot does not conflict

with other flight plans created by different pilots by utilizing an external system to approve flight plans. In

providing in-flight information or any information relevant to creating a flight plan, the system is not

responsible for generating data. It will gather in-flight data, such as weather information and aircraft location,

from other devices that are part of the larger system it is embedded into. Additional data that is taken into

considered when creating a flight plan, such as aircraft characteristics and waypoint information, is acquired

from external resources. The FPMS will only manipulate the data as needed to present the information in the

correct format to the pilot.

1.3. Definitions, Acronyms, and Abbreviations

1.3.1. Definitions

Active Flight Plan A flight plan for which the departure date has not passed.

Aircraft Performance

Characteristics

The characteristics of different aircraft, including altitude, speed, and other relevant

information, typically stored in XML documents.

Airspeed The rate of the aircraft’s progress through the air.

Altitude The height of an object or point in relation to sea level or ground level.

Page 5: CS 4311 Flight Planning and Management System Software

Software Requirements Specification

Software Requirements Specification Date

2/20/2015 10:07 AM

Page

5

Bluetooth Short-range wireless interconnection of cellular phones, computers, and other

electronic devices.

Coordinates Latitude and longitude.

Card A rectangular interface in the Google Glass device that displays relevant

information.

Flight mode The mode in which the system displays flight-support information to the user; this

is the mode where the Google Glass system is used with the tablet application.

Flight mode takes place while the user is piloting their aircraft and ends when they

reach their destination.

Flight Plan A document that is filed by the pilot to the FAA. The document contains

information such as departure location, waypoints, estimated time of arrival,

destination location, alternate airports, aircraft information, and the pilot’s

information.

ForeFlight An application that includes moving maps with VFR/IFR charts, approach charts,

provides information on weather maps, complete airport data, flight plan filing,

includes a document view feature that lets the pilot include any PDF or image to

view in flight or on the ground and a whole lot more that is used for pilots on the

iPad.

Garmin GDL 39 The device provides real time subscription free weather, updates for the pilot via

Bluetooth and works for either Android or iOS. The device does not require a

network connection and receives weather updates through a WAAS GPS receiver.

The device provides GPS coordinates weather information NEXRAD radar,

METARs, TAFs, winds and temperatures, PIREPs, and NOTAMs.

Garmin Pilot An application specifically for general aviation and corporate pilots. This

comprehensive app includes all digital charts, flight, en-route charts to approach

plates, plus detailed airport data, flight planning, interactive maps, weather briefing

resources and navigation capabilities.

GoGo Inc. It is a provider of in-flight Internet connectivity and wireless in-cabin digital

entertainment solutions in the United States and internationally for commercial and

business aircraft. The company uses a variety of advanced technologies to keep

connected in the air such as ATG network and satellite-based technologies that

offer a suite of connectivity solutions and other services.

Google Glass A wearable, voice-controlled device that resembles a pair of eyeglasses and

displays information directly in the user’s field of vision. The device can be

connected to other devices such as smart phones, and tablets that offer many

features.

Ground Speed The rate of the aircraft’s flight mode progress over the ground.

Knowledge Base A repository or database that is stored within the FPMS.

Pre-flight mode The mode in which the system gathers information necessary to enter flight mode.

Pre-flight mode takes place after the user logs into the system and before the user

pilots their aircraft.

Post-flight mode The mode in which information gathered during flight mode is displayed to the

user, in addition to information regarding future flights. Post-flight mode takes

place after the user reaches their destination and ends when the user logs out.

Page 6: CS 4311 Flight Planning and Management System Software

Software Requirements Specification

Software Requirements Specification Date

2/20/2015 10:07 AM

Page

6

Smart Device Any device running iOS or Android operating systems.

GPS Satellite navigation system that provides location and time information in all

weather conditions.

iFlightPlanner Provides IFR/VFR aviation charts to plan and explore flight routes, and true route

rubber banding on Google Maps interface. They also provide en-route aviation

weather, including RADAR, colored-coded, translated graphical views (METARs

and TAFs formats).

IFR Flight rules will be through instruments rather than visual reference.

iOS An operating system used for mobile devices manufactured by Apple Inc.

iPad A mobile device that is bigger than a smart phone but smaller than a laptop for

entertainment multimedia.

Latitude The angular distance of a place north or south of the earth's equator, or of a celestial

object north or south of the celestial equator. Latitude is stored as a decimal.

Longitude The angular distance of a place east or west of the meridian at Greenwich, England,

or west of the standard meridian of a celestial object. Longitude is stored as a

decimal.

Military time A method of measuring the time based on the full twenty-four hours of the day

rather than two groups of twelve hours; the twenty-four-hour clock.

Nautical miles A unit of distance that is approximately one minute of arc measured along any

meridian.

Radar A system for detecting the presence, direction, distance, and speed of aircraft, ships,

and other objects, by sending out pulses of high-frequency electromagnetic waves

that are reflected off the object back to the source.

Resources Waypoints, maps, and routes.

Route Collection of waypoints with a departure and a destination airport.

Stratus ADS-B The device provides air-to-air ADS-R, and TIS-B traffic information, as well as

subscription free ADS-B weather information. The weather service includes the

following features METARs, TAFs, animated regional Next Generation Radars

(NEXRAD and CONUS NEXRAD), NOTAMs, AIRMETs, SIGMETs, TFRs,

wind and temperature, and PIREPs.

Target Generation

Facility

FAA supplied simulator that provides information about current flights or

registered flight plans.

Time zones Pacific, Mountain, Central, and Eastern

Topological Map A georeferenced map that displays only vital elements.

Topographic Map A type of map that shows details including natural and man-made features.

True Course The intended path of an aircraft over the ground.

Universal Time

Coordinated

Primary time standard by which the world regulates clocks and times.

Use Case The use case describes interactions between an actor (s) and a system, to achieve a

goal.

Waypoint A stopping point that is along a route in which a set of coordinates identify a point

Page 7: CS 4311 Flight Planning and Management System Software

Software Requirements Specification

Software Requirements Specification Date

2/20/2015 10:07 AM

Page

7

in physical space. The coordinates are usually given by longitude and latitude.

WingX It is a valuable tool for both pre-flight planning and in-flight situational awareness.

1.3.1. Acronyms

This section lists the acronyms used in this document and their associated definitions.

TERM DEFINITION

ADS-B Automatic Dependent Surveillance – Broadcast

ATC Air Traffic Control

ID Identification

IFR Instruments Flight Rules

ETA Estimated Time of Arrival

ETD Estimated Departure Time

ETE Estimated Time Enroute

FAA Federal Aviation Administration

FPMS Flight Planning and Management System

GPS Geographic Positioning System

GUI Graphical User Interface

METAR Meteorological Terminal Aviation Routine Weather Report

MPG Miles per gallon

PIC Pilot In Command

TGF Target Generation Facility

RTA Require Time of Arrival

RTD Required Time of Departure

SRS Software Requirements Specification

TCP/IP Transfer Control Protocol/ Internet Protocol

XML Extensible Markup Language.

UTS University Time Coordinated

1.3.2. Abbreviations

TERM DEFINITION

e.g. for example

i.e. that is

1.4. Overview

The information presented in the Software Requirements Specification is organized into five sections. A brief

description of each section is provided below:

Page 8: CS 4311 Flight Planning and Management System Software

Software Requirements Specification

Software Requirements Specification Date

2/20/2015 10:07 AM

Page

8

• Section 1: states the purpose of the Software Requirements Specification document and defines the

scope of the product. The scope is described in terms of what the system is intended to do in order to

fulfill the customer’s requirements. This section also includes a list of definitions and acronyms used

within the document that may be unclear to the reader.

• Section 2: provides a top-level description and the main features of the system. A description of the

different external entities that interact with the system, including the main user, is also included in this

section. Additionally, any assumptions that are made, or any dependencies and constraints that have

identified, by the development team can be found in this section.

• Section 3: lists the requirements of the FPMS. These requirements guide the development team in

designing, implementing, and testing the system. They also serve as a contract between the

development team and the customer, Dr. Han. The requirements are organized by type: interface,

behavioral, non-behavioral, and other (those requirements that do not fit under the other categories).

1.5. References

[1] Elsa Tai. (2014). FPM Need Statement. Retrieved from CS 4310 Software Engineering I: Requirements

Engineering Smart Cloud.

[2] Elsa Tai. (2014). Project Memo. Retrieved from CS 4310 Software Engineering I: Requirements

Engineering Smart Cloud.

[3] Elsa Tai. (2014). Requirements Definition Document. Retrieved from CS 4310 Software Engineering I:

Requirements Engineering Smart Cloud.

[4] About latitude and longitude. (2015, January 1). Retrieved February 11, 2015, from

https://msdn.microsoft.com/en-us/library/aa578799.aspx

[5] Darby, G. (2005, February 5). Wind Triangle. Retrieved February 12, 2015, from

http://www.delphiforfun.org/programs/math

[6] Williams, E. (n.d.). Aviation Formulary V1.46. Retrieved February 12, 2015, from

http://williams.best.vwh.net/avform.htm#Crs

[7] Navigation. (2008). In Pilot's handbook of aeronautical knowledge. Washington, D.C.: U.S. Dept. of

Transportation, Federal Aviation Administration. Retrieved February 12, 2015, from

http://www.faa.gov/regulations_policies/handbooks_manuals/aviation/pilot_handbook/media/PHAK%20-

%20Chapter%2015.pdf

[8] (2014). ForeFlight Intelligent, Apps for Pilots. Retrieved September 10, 2014, from

http://www.foreflight.com

[9] (2014). WingX Stol. Retrieved November 18, 2014, from http://www.wingxstol.com

2. General Description

2.1. Product Perspective

The FPMS will be implemented as an application that has similarities with other applications, such as

ForeFlight [8] and WingX [9], and additional features. It will assist the pilot with flight planning activities,

provide the pilot with real-time flight status information, and alert the pilot when critical conditions are

detected. The information will be processed on a tablet and displayed on the Google Glass. The user commands

will be issued to the application through the tablet’s user interface or through the touchpad on the Google Glass.

The application will conform to the API for the Google Glass and to the API for the tablet of interest, and it will

be independent of the operating system running on the tablet.

Page 9: CS 4311 Flight Planning and Management System Software

Software Requirements Specification

Software Requirements Specification Date

2/20/2015 10:07 AM

Page

9

The system will work in conjunction with other systems and the aircraft’s surroundings in order to assist a pilot

during in-flight navigation. Table 1 presents a list of the external sources that the system will be cooperating

with, along with the respective data or functions they provide.

Table 1: External Sources of Information

Source Data Function

GPS Distance and location relevant information

Situation awareness

TGF

Airspace traffic simulation Flight plan validation

Garmin GDL 39 GPS coordinates weather information,

winds and temperatures

Weather information via

Bluetooth

2.2. Product Features

The Use-Case Diagram (shown in Fig. 1) depicts the main features of the FPMS and the interactions between

the system and the external environment. A “use case,” which is depicted by an oval, represents a specific

function of the system. The stick figures represent the external entities, or “actors,” with which the system

interacts. A more detailed, textual description of the main features is also provided.

The actors are as follows:

• Pilot- the individual who will be flying the plane and setting the flight plan; the pilot is the main user

of the system.

• Weather System- the system that will be providing updates of the weather in the areas along the flight

plan

• Target Generation Facility-the system that will simulate air traffic control and validate a flight plan

The use cases are as follows:

• Create flight plan- The pilot uses the system to create new flight plans that includes defining the route.

The flight plans are submitted to the Target Generation Facility for validation.

• Track Status- The pilot can track real-time status regarding trajectory relevant information during

flight. The system provides location, RTA, ETA, heading, time, fuel, altitude, route, speed, and

weather status.

• Reroute- The pilot is able to modify the flight’s route.

• Update Knowledge System- The pilot can choose to update the knowledge system with up-to-date

information that can be used to create flight plans regarding valid waypoints, airports, aircraft, and

weather forecast information.

Page 10: CS 4311 Flight Planning and Management System Software

Software Requirements Specification

Software Requirements Specification Date

2/20/2015 10:07 AM

Page

10

Fig. 1: Use Case Diagram for the FPMS

2.3. User Characteristics

There is only one user of the system, i.e., the pilot. The user is expected to have the appropriate knowledge

needed to file a flight plan and interpret the information that is provided to him or her during the flight.

2.4. General Constraints

The general constraints of the system are as follows:

1. The system will only update resources while it is not in flight-mode.

2. The information displayed on the Google Glass is limited by the size of the screen.

3. The Google Glass will not accept verbal commands due to the high noise levels inside the cockpit.

4. The system will use TGF to validate flight plans.

5. Every route must be composed of a minimum of three waypoints. Note: we are assuming the simplest

restriction on waypoints.

2.5. Assumptions and Dependencies

The SRS is presenting the basic requirements for the system. The document notes the areas that the Software

Engineering development teams should extend with the requirements from their documents.

The development team should assume the following:

Page 11: CS 4311 Flight Planning and Management System Software

Software Requirements Specification

Software Requirements Specification Date

2/20/2015 10:07 AM

Page

11

� Flight plans are filed as type IFR only.

� The system will have access to the GPS in order to update aircraft position during flight.

� The development team will have access to the TGF simulator.

� The GPS will report the estimated time to waypoint, true airspeed, distance, and location in real-time

during flight.

� The system has been initialized with a database tables that contain predefined waypoints along with the

location and a description of whether the waypoint is a beacon or an airport; valid airports along with

the attributes of name, identifier and location in the form of latitude and longitude; and aircrafts of

interest along with relevant attributes and characteristics.

� There will be reliable communication between the tablet and Google Glass.

� The user will not be able to add new waypoints.

� The characteristics of the aircraft are using general parameters and the algorithms are simplified based

on this. It is important to note that there are many factors that impact fuel consumption, e.g., altitude.

� The development team will design for change, in particular considering the next version will extend

the functionality such as being able to add waypoints and view a variety of maps.

3. Specific Requirements

3.1. External Interface Requirements

3.1.1. User Interfaces

This section presents the general requirements for the main features of the interface for the proposed system.

The FPMS system is made up of two components: a tablet component and a Google Glass component. The

requirements listed under sections 3.1.1 through 3.1.4 include those related to tablet component. The tablet will

serve as a platform for creating and managing flight plans, managing resources, setting preferences, and starting

a flight. Section 3.1.5 includes the requirements for the Google Glass display. The Google Glass will display

real-time flight status information and alert the pilot when critical conditions are detected. The development

teams should include their personalized look-and-feel based on the feedback that they received during the

review of their prototypes.

3.1.1.1. General

[Req 1] The “Home” screen shall include the title “FPMS System.”

[Req 2] The “Home” screen shall display the set of buttons presented in Table 1.

Table 1: Buttons and functions presented in the main screen of FPMS.

Button label Function

Create Flight Plan Navigate to the screen that allows the user to create, save, and submit a flight plan to the TGF.

Manage Flight Plans Navigate to the screen that allows the user to manage and submit flight plans to the TGF.

Manage Resources Navigate to the screen that allows the user to view and manage aircraft, routes, and waypoints

information.

Set Preferences Navigate to the screen that allows the user to set flight preferences and map view preferences.

Start Flight Navigate to the screen that prepares the Google Glass for the selected flight.

Page 12: CS 4311 Flight Planning and Management System Software

Software Requirements Specification

Software Requirements Specification Date

2/20/2015 10:07 AM

Page

12

[Req 3] All screens shall have the title of the screen that corresponds to the button labels given in Table 1 and

other pages launched by the system.

3.1.1.2. Create Flight Plan Screen

[Req 4] The “Create Flight Plan” screen shall display the labels and GUI elements as described in Table 2.

Table 2: GUI Elements for the Create Flight Plan screen

Label GUI Element Type Comment

Name Textbox Unique name of the flight plan

Type Non-modifiable textbox Type of flight plan. IFR will be the default type

Aircraft ID

Drop-down menu

The tail number of the aircraft. The menu will be

populated by the aircraft stored in the FPMS.

Aircraft Type and

Special Equipment

Non-modifiable textbox The type of aircraft and how it is equipped.

True airspeed in

knots Textbox The planned cruise true airspeed of the aircraft in knots.

Departure Point Drop-down menu The identifier of the airport from which the aircraft is

departing.

Destination

Drop-down menu

Point of intended landing given as an identifier of the

destination airport

Date of Flight Textbox with a calendar

icon option The date of the flight using the mm/dd/yyyy

Departure Time

Textbox

Drop-down menu (time

zones)

Time will be entered using military time

Times will be stored as Universal Time Coordinated.

Cruising Altitude Textbox

The planned cruising altitude or flight level. The

textbox will be populated based on the Aircraft ID and

normal cruising altitude for this aircraft.

Route

Radio buttons labeled as

follows:

Shortest Route

Fastest Route

Archived Routes

Custom Route

Proposed route of flight. The route will be made up of a

set of waypoints.

Estimated Time

Enroute

Textbox

Planned elapsed time between departure and arrival at

the destination. Time will be calculated based on routes

and airspeed

Fuel on Board Non-modifiable textbox

The amount of fuel on board the aircraft, in hours and

minutes of flight time. The textbox will be populated

based on the Aircraft ID and characteristics such as

normal speed, and fuel consumption rate.

Alternate Airports Three dropdown menus Airports of intended landing as an alternate of the

destination airport.

Pilot's Name

Textbox

Name of the pilot

Contact Information Textbox Contact information for search and rescue purposes.

Number Onboard

Dropdown menu

Total number of people on board the aircraft with a

maximum of ten

Color of Aircraft Non-modifiable textbox The color helps identify the aircraft to search and

Page 13: CS 4311 Flight Planning and Management System Software

Software Requirements Specification

Software Requirements Specification Date

2/20/2015 10:07 AM

Page

13

rescue personnel.

Contact Information

at Destination Textbox Means of contacting the pilot

Remarks Textbox Any information the PIC believes is necessary to be

provided to ATC.

[Req 5] The “Create Flight Plan” screen shall display buttons labeled “Home,” “Save,” “Submit,” “Clear” at

the bottom of the page.

[Req 6] The “Archived Routes” screen shall display all unique stored routes that match the departure point and

destination as shown in Fig. 2.

Fig. 2: Display for Archived Routes

[Req 7] The “Archived Routes” screen shall display button labeled “Back.”

[Req 8] The “Route Details” screen shall display the routes content as shown in Fig. 3.

[Req 9] The “Route Details” screen shall display a button labeled “Back.”

Fig. 3: Display for a Route’s Details.

[Req 10] The screen content for the “Custom Routes” screen shall be as shown in Fig. 4.

Page 14: CS 4311 Flight Planning and Management System Software

Software Requirements Specification

Software Requirements Specification Date

2/20/2015 10:07 AM

Page

14

Fig. 4: Display for Custom Routes.

[Req 11] The “Custom Routes” screen shall display buttons labeled “Save,” “Back,” and “Clear.”

NOTE: The map graphical screen for “Custom Routes” is not specified. Please adopt your

team’s method for specifying routes through maps.

3.1.2. Manage Flight Plans Screen

[Req 12] The content for the “Manage Flight Plans” screen shall be as shown in Fig. 5.

Fig. 5: Content of the “Manage Flight Plans” screen.

[Req 13] The “Manage Flight Plans” screen shall display buttons labeled “Home,” “Edit,” “Delete,” and

“Submit” at the bottom of the page.

[Req 14] The “View Details” screen shall display the information from the flight plan as described in Table 2.

[Req 15] The “View Details” screen shall display buttons labeled “Home,” “Save,” “Delete,” and “Submit” at

the bottom of the page.

3.1.3. Manage Resources

[Req 16] The “Manage Resources” screen shall display the set of buttons presented in Table 3.

Table 3: Buttons and functions presented in the main screen of the “Manage Resources” interface.

Button label Function

Aircraft View and manage the aircraft characteristics that are stored in the system.

Routes View and manage the stored routes.

Page 15: CS 4311 Flight Planning and Management System Software

Software Requirements Specification

Software Requirements Specification Date

2/20/2015 10:07 AM

Page

15

Waypoints View waypoints.

3.1.3.1. Aircraft Screen

[Req 17] The “Aircraft” screen interface shall display a checkbox followed by the following summary of the

aircraft: Name, Aircraft ID, Aircraft Model number, Aircraft Color.

[Req 18] The “Aircraft” screen shall display the following buttons display at the bottom of the page: “Home,”

“Back,” “Add,” “Edit,” “Delete.”

[Req 19] The “Add” screen shall display the fields shown in Table 4.

[Req 20] The “Add” screen shall display the following buttons display at the bottom of the page: “Home,”

“Back,” and “Save.”

[Req 21] The “View Details” screen shall display the fields shown in Table 4, which are populated with the

aircraft details from the knowledge base.

[Req 22] The “View Details” screen shall display buttons have the following buttons display at the bottom of the

page: “Home,” “Back,” and “Save.”

Table 4: GUI Elements for the “Aircraft” screen

LABEL GUI ELEMENT TYPE

Name Textbox

Aircraft ID Textbox

Aircraft Model Textbox

Aircraft Color Textbox

Minimum Cruising Speed Textbox

Normal Cruising Speed Textbox

Maximum Cruising Speed Textbox

Minimum Cruising Altitude Textbox

Normal Cruising Altitude Textbox

Maximum Cruising Altitude Textbox

Fuel Consumption Textbox

Fuel Consumption Rate Textbox

3.1.3.2. Routes Screen

[Req 23] The “Routes” screen interface shall display a summary of the route as shown in Fig. 2 for “Archived

Routes.”

[Req 24] The “Routes” screen shall display the following buttons display at the bottom of the page: “Home,”

“Add,” “Edit,” and “Delete.”

[Req 25] The “View Route Details” screen shall display as shown in Fig. 6.

Page 16: CS 4311 Flight Planning and Management System Software

Software Requirements Specification

Software Requirements Specification Date

2/20/2015 10:07 AM

Page

16

Fig 6: “View Route Details” screen.

[Req 26] The “View Route Details” screen shall display the following buttons display at the bottom of the page:

“Home,” “Save,” “Delete,” and “Back.”

NOTE: The more detailed interface for the “Routes” screen is not included. You should consider

including distance between waypoints if you are not doing so already.

3.1.3.3. Set Preferences Screen

[Req 27] The “Set Preferences” screen shall display the labels and GUI elements as described in Table 5.

Table 5: Input fields for the “User Preferences” screen.

Label GUI Element Type Comment

Flight Preferences Label for the first group of preferences

Checkbox with the following

options:

□ Avoid terrain above altitude

[textbox] feet.

□ Avoid flying over water.

□ Avoid the following airports:

[Dropdown box]

Airport dropdown box should provide the

ability to select multiple entries.

Map View Preferences Label for the second group of preferences

Checkbox with the following

options:

□ Display waypoints.

□ Display topographical map.

Page 17: CS 4311 Flight Planning and Management System Software

Software Requirements Specification

Software Requirements Specification Date

2/20/2015 10:07 AM

Page

17

□ Display topological map.

3.1.4. Start Flight

[Req 28] The “Start Flight” screen shall display the flight plan(s) scheduled for the current date using the

interface as shown in Fig. 7.

Fig 7: “Start Flight” screen.

[Req 29] The “Start Flight” screen shall display the buttons “Home” and “Start,” at the bottom of the screen.

3.1.5. Google Glass Screen

The Google Glass screen is divided into three cards. The requirements for each are provided next.

3.1.5.1. Card 1

[Req 30] Card 1 of the Google Glass screen shall display the user’s map based on the User’s Preferences, where

the displayed map is centered on the area showing the route between the waypoint the pilot has just

passed and the next waypoint on the route.

[Req 31] Card 1 of the Google Glass screen shall display the text “RTA: “directly to the right of the next

waypoint that the pilot is approaching, followed by a number value that represents the RTA value for

that waypoint.

[Req 32] Card 1 of the Google Glass screen shall display the text “ETA: “directly below the text “RTA; “of the

next waypoint that the pilot is approaching, followed by a number value that represents the real-time

ETA value for that waypoint.

3.1.5.2. Card 2

[Req 33] Card 2 of the Google Glass screen shall display a geo-referenced weather map, where the displayed

map is centered on the area showing the route between the waypoint the pilot has just passed and the

next waypoint on the route.

[Req 34] Card 2 of the Google Glass screen shall display the text “RTA: “directly to the right of the next

waypoint that the pilot is approaching, followed by a number value that represents the RTA value for

that waypoint.

[Req 35] Card 2 of the Google Glass screen shall display the text “ETA: “directly below the text “RTA; “of the

next waypoint that the pilot is approaching, followed by a number value that represents the real-time

ETA value for that waypoint.

3.1.5.3. Card 3

[Req 36] Card 3 of the Google Glass screen shall display the text “RTA:” followed by a number value that

represents the RTA value in minutes to the next waypoint.

Page 18: CS 4311 Flight Planning and Management System Software

Software Requirements Specification

Software Requirements Specification Date

2/20/2015 10:07 AM

Page

18

[Req 37] Card 3 of the Google Glass screen shall display the text “ETA:” followed by a number value that

represents the real-time ETA value in minutes, to the next waypoint.

3.1.5.4. All Cards:

[Req 38] Each card shall display the text “Speed;” followed by the number value the represents the real-time

airspeed, in knots.

[Req 39] Each card shall display the text “Altitude;” followed by the number value the represents the real-time

altitude.

[Req 40] Each card shall display the text “Remaining Fuel;” followed by the number value represents real-time

amount of remaining fuel, in gallons.

[Req 41] Each card shall display the current heading in degrees relative to true north.

3.1.6. Hardware Interfaces

There are no hardware interface requirements.

3.1.7. Software Interfaces

[Req 42] The FPMS shall interface with the TGF simulator as follows: TBD

3.1.8. Communications Interfaces

[Req 43] The system shall use the National Marine Electronics Association protocol to communicate with the

GPS receiver.

3.2. Behavioral Requirements

3.2.1. Same Class of User

There is only one class of user. As a result, there are no requirements specified for this section.

3.2.2. Related Real-world Objects

3.2.2.1. Flight Plan

[Req 44] The types and constraints for the attributes of a flight plan shall conform to those given in Table 6.

Table 6: Types for the attributes for the flight plan.

Label Type Constraints

Name String

Type Constant: IFR

Aircraft ID

Char

Aircraft Type and Special

Equipment

String 120 characters

True airspeed in knots Integer

Page 19: CS 4311 Flight Planning and Management System Software

Software Requirements Specification

Software Requirements Specification Date

2/20/2015 10:07 AM

Page

19

Departure Point String Three characters

Destination

String Three characters

Date of Flight Date Format: mm/dd/yyyy

Departure Time Integer 0001-2400

Cruising Altitude Integer

Route

Ordered list of 8-tuples, where the

elements of the tuple are of the following

types: string, string, float, float, integer,

integer, integer, integer)

Tuple represents: route name,

waypoint, latitude, longitude, true

course, distance to next waypoint,

speed, RTA to next waypoint

The “true course” is measured in

0 to 360 degrees clockwise from

true north.

Latitude: The “latitude” is

measured in degrees from 0 to

(+/-)90 degrees. The longitude is

preceded by a minus sign if it is

west of the prime meridian (a

positive number implies east).

Longitude: The “longitude” is

measured in degrees from 0 to

(+/-)180 degrees. The longitude is

preceded by a minus sign if it is

west of the prime meridian (a

positive number implies east). Estimated Time Enroute

Integer

Fuel on Board Integer

Alternate Airports Ordered list of airports of type string

Pilot’s Name

String

Contact Information String

Number Onboard

Integer

Color of Aircraft String

Contact Information at

Destination String

Remarks String 100 characters

TGF Approval Boolean Default: False

[Req 45] The FPMS shall not allow the departure airport to be the same as the destination airport.

[Req 46] The time of departure from the departure point shall be within the operational hours of the selected

airport.

[Req 47] The time of arrival to a destination shall be within the operational hours of the selected airport.

3.2.2.2. Waypoints

[Req 48] The FPMS shall obtain the set of waypoints from the waypoint.xml file upon initialization of the

system.

Page 20: CS 4311 Flight Planning and Management System Software

Software Requirements Specification

Software Requirements Specification Date

2/20/2015 10:07 AM

Page

20

[Req 49] Each waypoint shall be identified with a unique name consisting of five letters beginning with the

characters “VP.”

[Req 50] Each airport shall be associated with a waypoint.

[Req 51] TBD Description of the waypoint data.

3.2.2.3. Routes

[Req 52] A route shall consist of a list of waypoints.

[Req 53] A route shall have a minimum of three waypoints.

3.2.2.4. User Preferences

[Req 54] The types of the attributes for User Preferences shall conform to those given in Table 7.

[Req 55] The user shall be able to display either topographical maps or topological maps, but not both.

Table 7: Type for attributes of User Preferences

3.2.2.5. Weather Forecast

Note: The wind direction and predicted weather will be taken from the weather forecast. This

version of the system will not be parsing the information to be used in the calculations for the

route.

3.2.2.6. Airport

[Req 56] The FPMS shall obtain the list of airports from the airport.xml file upon initialization of the system.

[Req 57] The types for attributes for an airport shall be as defined in Table 8.

Table 8: Attributes for the Airport file.

Attribute Type Comments

Name String

Runway closures String

Operational hours Integer 0001 to 2400 hours

3.2.2.7. Aircraft

[Req 58] The FPMS shall obtain a list of aircraft from the AircraftCharacteristic.xml file upon initialization of

the system.

Attribute Type

Avoid Terrain Above Boolean

Altitude Integer

Avoid Flight Over Water Boolean

Airports to Avoid Boolean

Airports List of airports of type string

Display Waypoints Boolean

Display Topographical Maps Boolean

Display Topological Maps Boolean

Page 21: CS 4311 Flight Planning and Management System Software

Software Requirements Specification

Software Requirements Specification Date

2/20/2015 10:07 AM

Page

21

[Req 59] The attributes stored from the AircraftCharacteristics..xml file shall be as defined in Table 9.

Table 9: Attributes of the Aircraft file.

ATTRIBUTE TYPE

Name String

Aircraft ID String

Aircraft Model String

Aircraft Color String

Minimum Cruising Speed Integer

Normal Cruising Speed Integer

Maximum Cruising Speed Integer

Minimum Cruising Altitude Integer

Normal Cruising Altitude Integer

Maximum Cruising Altitude Integer

Fuel Consumption Integer

Consumption Rate Integer

3.2.2.8. Real-Time Data

[Req 60] The FPMS system shall obtain GPS data as described in Table 10 during the flight.

Table 10: Attributes and types of real-time data

Attribute Type Valid Values

Current time Integer

ETA Integer

Distance Float 0.0 to 200.0 nautical miles

3.2.3. Stimulus

[Req 61] When the user selects “Home” on any screen, FPMS shall redirect the user to the “Home” screen.

[Req 62] When the user selects “Back” on any screen, the FPMS shall return to the previous screen.

3.2.3.1. Home

[Req 63] When user starts the FPMS, the system shall display the “Home” screen.

[Req 64] If the user selects the “Create Flight Plan” button, the system shall display the “Create Flight Plan”

screen with a form for data entry as noted in Table 2.

[Req 65] If the user selects the “Manage Flight Plans” button, the system shall display the “Manage Flight

Plans” screen with all active flight plans.

[Req 66] If the user selects the “Manage Resources” button, the system shall display the “Manage Resources”

screen.

[Req 67] If the user selects the “Set Preferences” button, the system shall display the “Set Preferences” screen.

[Req 68] If the user selects the “Start Flight” button, the system shall display the “Start Flight” screen.

3.2.3.2. Create Flight Plan

[Req 69] When the user enters information via a textbox or pull-down menu and selects the “Save” button, the

FPMS shall store the information.

[Req 70] When the user enters Aircraft ID in the Flight Plan form, the FPMS shall populate the following fields

from the information stored in FPMS for that aircraft:

Page 22: CS 4311 Flight Planning and Management System Software

Software Requirements Specification

Software Requirements Specification Date

2/20/2015 10:07 AM

Page

22

a) Aircraft Type and Special Equipment

b) True Airspeed in Knots

c) Cruising Altitude

d) Color of Aircraft

[Req 71] When the user enters Aircraft ID in the Flight Plan form, the FPMS shall calculate the following fields

using the formulas given in Table 11 (Note: the True Airspeed and the Route fields are required prior

to calculating these values).

a) Estimated Time Enroute: Formula 12

b) Fuel on Board: Formula 13

Table 11: Formulas

Attribute Formula Notes

1 WCA - Wind Correction

Angle

WCA = arcSin(sinWCA)

n/a

2 sinWCA -

SinWindCorrectionAngle

sinWCA = WindSpeed

*sin(WTA)/Airspeed

The WindSpeed value is

obtained from the weather

information.

3 WTA - Wind Track

Angle

WTA = TrueCourse -

WindDirection

The WindDirection value is

obtained from the weather

information.

4 GS - Ground Speed GS = Airspeed*cos(WCA)+

WindSpeed*cos(WTA) n/a

5 EF - Estimated Fuel EF = AvailableFuel-FC The AvailableFuel value is

obtained from the aircraft

characteristics informaion.

6 FC - Fuel Consumption FC = TIF*ConsumptionRate The ConsumptionRate value is

obtained from the aircraft

characteristics information.

7 H – Heading H = TC+WCA n/a

8 TIF - Time In Flight TIF = CurrentTime-StartTime n/a

9 RTA - Required Time of

Arrival

RTA = Distance/GS

n/a

10 TC - True Course TC = mod(atan2(sin(lon1-lon2)*

cos(lat2), cos(lat1)*sin(lat2)-

sin(lat1)*cos(lat2)*cos(lon1-

lon2)), 2*pi)

lat1, lat2, lon1, and lon2 are

waypoint coordinates

11 D – Distance D =

acos(sin(lat1)*sin(lat2)+cos(lat1)*

cos(lat2)*cos(lon1-lon2))

lat1, lat2, lon1, and lon2 are

waypoint coordinates

12 ETE- Estimated Time

Enroute

ETE = DestinationRTA – time of

departure

Assumption that the time of

arrival is on the same date

13 Fuel on Board Fuel on Board = ETE *

ConsumptionRate

The ConsumptionRate value is

obtained from the aircraft

characteristics information.

[Req 72] When the user selects “Shortest Route” for “Route,” the FPMS shall calculate the shortest route from

the Departure Point to the Destination i.e., the set of waypoints that constitute the shortest distance.

Page 23: CS 4311 Flight Planning and Management System Software

Software Requirements Specification

Software Requirements Specification Date

2/20/2015 10:07 AM

Page

23

[Req 73] When the user selects “Fastest Route” for “Route,” the FPMS shall calculate the fastest route from the

Departure Point to the Destination i.e., the set of waypoints that constitute the fastest distance.

[Req 74] When the user selects “Archived Routes,” the FPMS shall display the “Archived Routes” screen that is

populated with the routes that are stored in the system.

[Req 75] When the user selects a route on the “Archived Routes” screen and clicks on “Back,” the FPMS shall

return to the “Flight Plan” screen and add the route summary, i.e., the selected line as shown in Fig. 2,

to the form.

[Req 76] When the user selects “View Details” on the “Archived Routes” or the “Start Flight” screen, the FPMS

shall display the route details as shown in Fig. 3, where the Speed and Estimated Time Enroute is

based on the entries in the flight plan.

[Req 77] When the user selects “Custom Route,” the FPMS shall display the “Custom Route” screen, as shown

in Fig. 4, with the following fields populated from the flight plan data entries:

a) Departure time

b) Speed

c) Departure point city, latitude, and longitude

d) Departure point true course and distance are blank

e) Destination city, latitude and longitude

[Req 78] When the user selects “Add” on the “Custom Route” screen, the FPMS shall insert a new set of

waypoint data-entry fields.

[Req 79] When the user selects “Delete” on the “Custom Route” screen, the FPMS shall remove the previous

waypoint and associated fields.

[Req 80] When the user selects a waypoint on the pull-down menu on the “Custom Route” screen, the FPMS

shall populate the latitude and longitude.

[Req 81] When the user selects a waypoint on the pull-down menu on the “Custom Route” screen, the FPMS

shall populate the latitude and longitude.

[Req 82] When the user selects a waypoint on the pull-down menu on the “Custom Route” screen, the FPMS

shall calculate the true course and distance based on the formulas given in Table 11.

[Req 83] When the user selects “Save” on the “Custom Route” screen, the FPMS shall calculate Total Distance,

Total Time Enroute, and the Destination Distance and RTA.

[Req 84] When the user selects “Back” on the “Custom Route” screen, the FPMS shall return to the “Flight

Plan” screen and add the route summary that has been saved, if any.

[Req 85] When the user selects “Clear” on the “Custom Route” screen, the FPMS shall clear all fields other than

the prepopulated fields.

[Req 86] When the user selects “Save” on the “Create Flight Plan” screen, the FPMS shall save the flight plan in

the knowledge base.

[Req 87] When the user selects “Submit” on the “Create Flight Plan” screen, the FPMS shall do the following:

a. Check that all entries are valid according to any constraints given in Table 2;

b. Save the flight plan in the knowledge base, and

c. Submit the flight plan file to the TGF for approval.

[Req 88] When the user selects “Cancel” on the “Create Flight Plan” screen, the system shall clear all fields of

the Flight Plan form.

Page 24: CS 4311 Flight Planning and Management System Software

Software Requirements Specification

Software Requirements Specification Date

2/20/2015 10:07 AM

Page

24

3.2.3.3. Manage Flight Plans

The requirements in this section are related to the “Manage Flight Plans” screen unless otherwise noted.

[Req 89] When the user clicks on the checkbox, FPMS shall highlight the flight plan associated with the

checkbox and de-emphasize any other flight plan that may have previously been selected.

[Req 90] When the user selects the “View Details” button, FPMS shall display the corresponding flight plan as

shown in Table 2.

[Req 91] When the user selects “Submit,” the FPMS shall do the following:

d. Check that all entries are valid according to any constraints given in Table 2;

e. Save the flight plan file in the knowledge base, and

f. Submit the flight plan file to the TGF for approval.

[Req 92] When the user selects “Edit” and a flight plan has not been selected, FPMS shall display a standard OK

message box that states “Flight plan has not been selected.”

[Req 93] When the user selects “Edit” and a flight plan has been selected, FPMS shall display the “View

Details” screen.

[Req 94] When the user selects “Save” on the “View Details” screen, FPMS shall save the flight plan in the

knowledge base.

[Req 95] When the user selects “Delete” and a flight plan has not been selected, FPMS shall display a standard

OK message box that states “Flight plan has not been selected.”

[Req 96] When the user selects “Delete” and a flight plan has been selected, FPMS shall display a standard Yes-

No message box that states “Are you sure that you want to delete this flight plan?”

[Req 97] When the user clicks on “Yes” in the “Delete” message box, FPMS shall delete the flight plan from the

knowledge base.

3.2.3.4. Manage Resources

[Req 98] When the user selects “Aircraft” on the “Manage Resources” page, FPMS shall display the “Aircraft”

screen as described in Section 3.1.3.1, which is populated with the summary of all aircraft in the

knowledge base.

[Req 99] When the user selects “View Details” on the “Aircraft” screen, FPMS shall display the screen, as

described in Table 4, which is populated with the information from the knowledge base.

[Req 100] When the user selects “Add,” FPMS shall display the “Aircraft” screen as described in Table 4 with

blank fields.

[Req 101] When the user selects “Edit” and an aircraft has not been selected, FPMS shall display a standard OK

message box that states “Aircraft has not been selected.”

[Req 102] When the user selects “Edit” and an aircraft has been selected, FPMS shall display the “View Details”

screen.

[Req 103] When the user selects “Save” on the “View Details” screen for an aircraft, FPMS shall save the aircraft

information in the knowledge base.

[Req 104] When the user selects “Delete” and an aircraft has not been selected, FPMS shall display a standard

OK message box that states “Aircraft has not been selected.”

[Req 105] When the user selects “Delete” and an aircraft has been selected, FPMS shall display a standard Yes-

No message box that states “Are you sure that you want to delete this aircraft?”

[Req 106] When the user clicks on “Yes” in the “Delete” message box, FPMS shall delete the aircraft.

Page 25: CS 4311 Flight Planning and Management System Software

Software Requirements Specification

Software Requirements Specification Date

2/20/2015 10:07 AM

Page

25

[Req 107] When the user selects “Routes” on the “Manage Resources” page, FPMS shall display the “Routes”

screen as described in Fig. 2, which is populated with the summary of all routes stored in the

knowledge base.

[Req 108] When the user selects “View Details” on the “Routes” screen, FPMS shall display the screen, as

described in Fig. 3, which is populated with the information from the knowledge base.

[Req 109] When the user selects “Add,” FPMS shall display the “Custom Routes” screen as described in Fig. 4

with blank fields.

[Req 110] When the user selects “Edit” and a route has not been selected, FPMS shall display a standard OK

message box that states “Route has not been selected.”

[Req 111] When the user selects “Edit” and a route has been selected, FPMS shall display the “Custom Route”

screen for the route.

[Req 112] When the user selects “Save” on the “Custom Route” screen for a route, FPMS shall save the route

information in the knowledge base.

[Req 113] When the user selects “Delete” and a route has not been selected, FPMS shall display a standard OK

message box that states “Route has not been selected.”

[Req 114] When the user selects “Delete” and a route has been selected, FPMS shall display a standard Yes-No

message box that states “Are you sure that you want to delete this route?”

[Req 115] When the user clicks on “Yes” in the “Delete” message box, FPMS shall delete the route from the

knowledge base.

[Req 116] When the user selects “Waypoints,” FPMS shall display all waypoints that are stored in the knowledge

base, sorted by latitude and longitude.

3.2.3.5. Set Preferences

[Req 117] When the user selects “Avoid terrain above altitude,” FPMS shall not generate any routes in which the

terrain is above the specified altitude.

[Req 118] When the user selects “Avoid flying over water,” FPMS shall not generate any routes that fly over

water.

[Req 119] When the user selects airports from the “Avoid the following airports” dropdown box, the system shall

save the list of airports in the knowledge base.

[Req 120] The FPMS shall display a warning message when a destination airport is selected that is on the list of

airports to avoid.

[Req 121] If the user selects “Display waypoints,” the FPMS shall display waypoints on all maps that are

displayed.

[Req 122] If the user selects “Display topographical map,” the FPMS shall display all maps as topographical

maps.

[Req 123] If the user selects “Display topological map,” the FPMS shall display all maps as topological maps.

3.2.3.6. Start Flight

[Req 124] When the user selects “Start Flight” on the “Home Screen,” the FPMS shall display all TGF-approved

flights that are scheduled for the current date, as shown in Fig. 7.

[Req 125] When the user selects “Start Flight” and there are no flights scheduled, FPMS shall display the

message, “No flights scheduled for today.”

Page 26: CS 4311 Flight Planning and Management System Software

Software Requirements Specification

Software Requirements Specification Date

2/20/2015 10:07 AM

Page

26

[Req 126] When the user selects, “View Details” on the “Start Flight” screen, FPMS shall display the route

details as shown in Fig. 3.

[Req 127] If the user selects a flight plan and selects the “Start” button, the FPMS shall initiate the

communication with the Google Glass.

3.2.4. Related Features

[Req 128] If the TGF simulator approves a flight plan, the FPMS shall update the flight plan record to indicate

that it has been approved, i.e., the field “TGF Approval” shall be set to true.

3.2.5. Functional

The functional requirements are integrated into other sections of the SRS.

3.3. Non-behavioral Requirements

3.3.1. Performance Requirements

No performance requirements specified at this time.

3.3.2. Qualitative Requirements

No qualitative requirements are specified at this time.

3.4. Other Requirements

Note: There are no constraints on the programming language used to implement the system, the

operating system that the application runs on, or on the version of the operating system.