Requirements.doc - Assembla

outstandingmaskΔιαχείριση Δεδομένων

29 Νοε 2012 (πριν από 4 χρόνια και 9 μήνες)

228 εμφανίσεις

L
ASP
V
IEW




R
EQUIREMENTS

April

22

, 2009

Benjamin Link

Garston Tremblay

Nawaf Alghamdi

Jacob Wisnesky

Alex Woods

CSCI 4308
-
4318. Software Engineering Project 1 & 2

Department of Computer Science

University of Colorado at Boulder

2008
-
2009


sponsored by

Ken Griest

Laboratory of Atmospheric and Space Physics

1234 Innovation Drive

Boulder, CO 80303




i

PROJECT PROPOSAL

We currently control four Earth
-
orbiting satellites from our mission operations center here at the
Laboratory for Atmospheric and Space Phy
sics (LASP), located in Boulder at CU's East Campus Research
Park. The most important interaction we have with our satellites is via a ground station contact, wherein
recorded data and telemetry is downlinked and new commands are uplinked to the satellite.

In order to
facilitate this interaction, a three
-
dimensional visualization of the satellite flying over the ground station
would be very helpful to the flight controllers running the command pass
.

In particular, the visualization should meet the following

requirements:



Must make use of OpenGL to render the viewpoint(s) in three
-
dimensional space (and must not
use Java 3D, DirectX, etc.).



Must be able to run on at least two different computer platforms, one of which must be UNIX
-
derived (e.g. Linux, Mac OSX
, Solaris, etc.).



Must retrieve the satellite position and velocity data for a given time frame from a SQL server
(PostgreSQL or Sybase are preferred, but other databases are OK).



Must support multiple viewpoints (e.g. view from satellite looking down at g
round station
antenna, view from ground station antenna looking up at satellite) and the ability to
rotate/manipulate the view from a given viewpoint.



Must display satellite event information (such as when it is above/below commanding masks
and when it is
at maximum elevation) in a graphical fashion.

Other than these requirements, we are very open to any ideas the project group may have as to the best
way to display the satellite and the ground stations on the Earth as well as to any other useful features
t
he project group may wish to add to the simulation.

ii

iii

TABLE OF CONTENTS

PROJECT PROPOSAL

................................
................................
................................
................................
.......

i

TABLE OF CONTENTS

................................
................................
................................
................................
....

iii

TABLE OF FIGURES

................................
................................
................................
................................
........

v

INTRODUCTION

................................
................................
................................
................................
.............

1

2. REQUIREMENTS

................................
................................
................................
................................
........

2

2.1.

Supporting Environments

................................
................................
................................
.............

2

2.1.1 Software Runtime Environment

................................
................................
................................
..

2

2.1.2 Hardware Runtime Environment

................................
................................
................................

2

2.1.3 Development Environment

................................
................................
................................
.........

2

2.2.

Functional Requirements

................................
................................
................................
..............

2

2.2.1 Data Collection

................................
................................
................................
............................

3

2.2.2 Display

................................
................................
................................
................................
.........

3

2.3.

Performance Req
uirements

................................
................................
................................
..........

3

2.4.

Documentation Requirements
................................
................................
................................
......

4

2.5.

Release Requirements

................................
................................
................................
..................

4

3. SUMMARY

................................
................................
................................
................................
.................

5

4. REFERENCES

................................
................................
................................
................................
.............

6

iv

v

TABLE OF FIGURES

Figure 1. Conceptual Overview of the LaspView System

................................
................................
.............

1

vi

1

INTRODUCTION

The goal of LASP (Laboratory for Atmospheric and Space Physics) is “to make discoveries through the
research and techno
logy efforts of our atmospheric, space physics, solar, planetary, engineering, and
mission ops divisions”
[LASP 07]
. LASP is located at the University of Colorado at Boulder, and has been
in existence since 1948, when it was known as the Upper Atmosphere
Lab (UAL). UAL’s primary focus
during its early years was to help initiate the era of space exploration. Presently, the focus of LASP’s
satellites is exploring our Earth’s atmosphere. The company currently has approximately 350 employees
at its Boulder
location.

LASP currently controls four Earth
-
orbiting satellites from its mission control center at CU’s East Campus.
The most important interaction that LASP has with their satellites is through various ground stations.
When a satellite can connect to a

ground station, recorded data and telemetry is downloaded to Earth,
and new commands are uploaded to the satellite. Therefore, LASP would like an application that
displays a three
-
dimensional visualization of the satellite flying over the ground station
in real
-
time.

A conceptual diagram of the overall system is presented in
Fi
gure
1
. The figure shows the software to
be implemented, the LaspView application, retrieving the positions and velocities of satellites f
rom
SPICE. The three
-
dimensional visualization of the satellite passing over a ground station is displayed in a
GUI window, through which a user can manipulate the view of the current satellite or ground station, or
switch to another satellite or ground s
tation. In addition, users can import scripts telling the application
at what times it should switch to various viewpoints. The application’s only output is the visualization of
the satellites and ground stations, which is displayed through the GUI.


Fi
gure
1
.
Conceptual Overview of the LaspView System

This paper defines the current set of requirements for LaspView. These requirements will be updated as
they evolve over the course of the project. A list of references is also
provided at the end of this paper.

2

2. REQUIREMENTS

To make requirements more manageable, they have been divided into several logical sections. These
sections include the requirements of the Supporting Environment, Functional Requirements,
Performance Requ
irements, Documentation Requirements and Release Requirements.

2.1.

Supporting Environments

The Supporting Environment includes the software and hardware environments within which LaspView
must work as well as the development environment that must be used
to create LaspView.

2.1.1 Software Runtime Environment

The software runtime environment includes the basic software tools to be used with this project.



Must execute on two operating systems, one of which must be Linux
[Linux]
.



Must use OpenGL 2.0 or 2.1
[OpenGL]
.



Must use SPICE toolkit (a free toolkit for spacecraft vectors)
[NAIF]
.

2.1.2 Hardware Runtime Environment

LaspView must execute correctly on an “average 2008 consumer laptop” that supports the software
runtime environment with the following hardw
are:



2.0 GHz Processor



10 GB available disk space



1 GB RAM



256 MB video memory



OpenGL capable video card



minimum 1024x768 16 bit color display



one button pointing device



standard ISO/IEC 9995 keyboard
[Wikipedia 08]

2.1.3 Development Environment

LaspView
must be developed in an environment which supports the hardware and software runtime
environments.

2.2.

Functional Requirements

LaspView has a number of functional requirements

− functions that it needs to provide to users.


Those
include collecting data f
rom SPICE
[NAIF]
, providing multiple views (cameras), and displaying the
satellite's event information on the screen.

3

2.2.1 Data Collection

Input given to LaspView is a satellite's position and velocity at certain times. This information will be
retrieved

from
SPICE.

LaspView should be able t
o update this information everyday

without having to
restart the program.

2.2.2 Display

LaspView will be used to simulate several satellites. Therefore, the software should have the user
choose which satellite is to b
e displayed. After that, LaspView should do the following:



Support

multiple views that can be manipulated as follows:

o

A general view of the earth, sun, moon, few stars, the satellite, and the ground stations.

o

A view of the satellite looking down at a parti
cular ground station.

o

A view of a ground station looking up at the satellite.



Use input scripts to decide which view to display at a certain time without requiring user
interaction:

o

When the satellite is near a ground station, LaspView should display the v
iew from that
ground station looking at the satellite.

o

When the satellite passes that ground station, the satellite's view should be displayed.

o

Scripts will be written in Python.

o

Scripts will interact with an API that provides useful camera functions

and a
ccess to
spacecraft data
.



Simulate, in 3D graphics, when it's possible for a ground station to communicate with satellite:

o

The region around a ground station in which communication cannot take place with the
satellite is known as a mask
.

o

A mask is defined
by
list of
pair
s

of angles, the azimuth angle and the elevation angle.
These angles define a line above the ground around the ground station. From thi
s line
to the ground is the region

in which the ground station cannot communicate with the
satellite.



Di
splay satellite’s position, velocity, and elevation on the screen.

2.3.

Performance Requirements

This section specifies requirements related to speed of the software, given the hardware and software
configuration specified in the Hardware and Software Runt
ime Environment sections.



Real
-
time system, reflecting current satellite telemetry and mask information



Mask information accurate to within 1 second



Startup time less than one minute



Average framerate of “around” 30 frames per second



Minimum framerate of 2
4 frames per second



Video memory consumption of less than 256MB



Mathematics accurate to 32
-
bit float precision



Descriptive error messages and immediate termination upon
unrecoverable
errors

4

2.4.

Documentation Requirements

These requirements specify the do
cumentation that is to be provided.



End User Documents:

o

API

Tutorial

o

API

Reference



Development Documents:

o

Requirements

o

Design

o

Test Plan

o

Release Notes

Development documents should be of sufficient depth, detail, and clarity to allow future modification by
d
evelopment teams unfamiliar with the software.

2.5.

Release Requirements

Release Requirements deal with issues related to the release and delivery of the final product to the
customer.



Release includes all project source code



Release includes all developer

documentation



Release includes all end user documentation



Release includes a makefile to automate builds on different operating systems

5

3. SUMMARY

This document describes the set of requirements for the LaspView Senior Project. This document
includes all

software, hardware, development, functional, performance, documentation and release
requirements as required by the sponsor. The document will continue to evolve as the project
progresses
.


6

4. REFERENCES

There are a number of documents related to this p
aper that are useful for further reading.


[LASP 07]

“About LASP.”
LASP: Laboratory for Atmospheric and Space Physics
. January 24, 2007.
Laboratory for Atmospheric and Space Physics. (September 12, 2008)

< http://lasp.colorado.edu/other/about_lasp.htm
>.

[Wikipedia 08]

"ISO/IEC 9995."
Wikipedia
. April 3, 2008. Wikimedia Foundation, Inc. (September 21, 2008)
<http://en.wikipedia.org/wiki/ISO/IEC_9995>.


[OpenGL]

“OpenGL” September 28, 2008. Gold Standard Group. (2008) <http://OpenGL.org>.

[NAIF]

“SPIC
E Toolkit”. September 28, 2008. (September 28, 2008)
<http://naif.jpl.nasa.gov/naif/toolkit.html>.

[Linux]

“Linux”. September 30, 2008. (September 29, 2008)

http://www.linux.org
.