Title: The Design and Implementation of an Operational Data Telemetry Extraction and Analysis Toolkit
1The Design and Implementation of an Operational
Data Telemetry Extraction and Analysis Toolkit
- NOAATECH 2006 Workshop and Expo
- National Environmental Satellite Data Information
Service (NESDIS) - National Oceanic and Atmospheric Administration
(NOAA) - U.S. Department of Commerce
- Shahram Tehranian, Subir Vasanth, Anand Swaroop
- (stehranian_at_ac-tech.com, svasanth_at_ac-tech.com,
aswaroop_at_ac-tech.com) - AC Technologies, Inc.
- Advanced Computation and Information Services
- 4640 Forbes Blvd, Suite 320
- Lanham, MD 20706
2Agenda
- System Overview of the Modernized History Browser
- MHBR Software Design and Architecture
- Visual Modeling with UML
- UML Diagrams and Design Patterns
- Data Extraction and Analysis Toolkit
- Technologies, APIs and Tools used
- Current Status
- Future Work
3Modernized History Browser Overview
4Modernized History Browser Overview
- Provides an interface for displaying a summary of
the contents of the MSPS archives - Provides a toolkit to extract and analyze data
stored in the archives - The following historical archives are
continuously maintained by the MSPS Server - Imager Regression Coefficients history files
- Imager 10-day Gain history files
- Imager Short Term Gain history files
- Imager Blackbody Calibration history files (raw
IR data and statistics) - Imager Spacelook Calibration history files (raw
IR data and statistics) - Imager Header/Trailer/Telemetry history files
(raw and compressed data) - Imager Raw Sector history files (raw visible, IR,
IMC, servo error data) - Imager Star Sense history files (raw visible, IR,
and servo error data) - Sounder Regression Coefficients history files
- Sounder 10-Day Gain history files
- Sounder Short Term Gain history files
- Sounder Raw Data history files
- Provides an interface to send requests to record
Imager Raw Sector data
5MSPS Server
Modernized History Browser
Sends requests for map data
Map data is interpreted and displayed using data
description of map files (specified in XML format)
Replies with map data
Gets the records and data fields that the user
wants to extract
Archives Telemetry data
Uses data descriptions of the data files
(specified in XML format), to extract data from
the archives stored on the MSPS server
Data Extraction and Analysis Toolkit
6Old History Browser Deficiencies
- Less flexible to accommodate data changes for
GOES NOP series of satellites. Data formats and
structures are almost entirely hard-coded. - Difficult to maintain due to the use of now
unsupported SUN legacy packages - XView and
DevGuide. - Not-well documented Users Manual and Software
Maintenance Manual. - Not User-friendly.
- Consists of legacy code with no standards for
software development.
7Old History Browser
8Old History Browser
9Modernized History Browser (MHBR) Advantages
- Supports data changes for GOES NOP series of
satellites - Provides built-in toolkit for Data Extraction and
Analysis - Uses XML to define the data stored in the map and
data files in the Archive Manager - Uses a layered architecture separating the
Communication, Data Engine and Presentations
layers - Developed using Unified Modeling Language
- Interfaces with PV-Wave for data analysis
- Integrated with an online help tool
- Allows users to connect and disconnect to various
MSPS servers without closing the application
10MSPS Archive Data Format Description
- MSPS Archive Map and Data Formats are described
in XML - 1 XML Schema file for all archives, which defines
the structure, content and semantics of the XML
documents - 1 XML data description file for each Archive,
which defines the data format for data stored in
the map and data files. - Example
- XML Schema for XML documents
- Imager Blackbody Calibration XML Data Description
11XML provides Flexibility
Describing the data formats in XML allows changes
to be made to the data structures without
breaking the application that depends on that
data. For example if a new detector needs to
be added for BlackBody Calibration Data, only a
new tag for Detector with DetIDbbraw8 needs
to be added to the XML description for that data
file format.
12MHBR Design and Software Architecture
13Visual Modeling with UML
- Visual modeling is the process of taking the
information and displaying it graphically using a
standard set of graphical notations. - Primary purpose of visual modeling is
COMMUNICATION between Users, Developers,
Analysts, Testers, Managers and others involved
in the project. - Visual modeling allows the system to be modeled
independent of the implementation language.
14Benefits of Using UML
- UML is a standard across the software industry.
- UML provides a common language for business
analysts and developers. - UML is visual.
- UML is object oriented.
- UML describes business processes both
structurally and dynamically. - UML helps you derive better system requirements.
15Use Case Diagram
- Use case diagrams show interactions between use
cases and actors. - Use cases represent system functionality.
- Actors represent the people or systems that
provide or receive information from the system.
16Use Case Realizations, Sequence Diagram
- A use case realization ties together the use
cases and the classes needed to implement each
use case. - Sequence diagrams are one way to realize a use
case. - Sequence diagrams are used to show a time-based
flow of functionality through a use case. - Each arrow represents a message passed between
actor and object or object and object to perform
the needed functionality.
17(No Transcript)
18Class Diagram
- Class diagrams illustrate the specification for
software classes and interfaces. - Class diagrams show the interactions between
classes in the system. - The lines connecting classes show the
communication relationships between the classes.
19(No Transcript)
20(No Transcript)
21Design Patterns
- A Pattern describes a proven solution to a
recurring design problem - Advantages
- They have been proven
- Patterns reflect the experience, knowledge and
insights of developers who have successfully used
these patterns in their own work. - They are reusable
- Patterns provide a ready-made solution that can
be adapted to different problems as necessary.
22Observer Pattern
- Defines a one-to-many dependency between objects
so that when one object changes state, all its
dependents are updated automatically. - Observers are loosely coupled in that the
Subjects knows nothing about them, other than
they implement the Observer interface. - Java GUI framework Swing, makes heavy use of
the Observer pattern. - Facilitates loosely coupled design between
objects that interact.
23Command Pattern
- Action objects encapsulate a request by defining
the binding between the Action and Receiver. - A Receivers know how to perform the work needed
to carry out the request. - An Invoker makes a request for a service on the
Action objects.
24Simple Factory Pattern
- Simple way to decouple client from a concrete
class. - Promotes loose coupling by reducing the
dependency of your application on concrete
classes. - Promotes coding to abstractions, not concrete
classes.
25MHBR User Interface
26MHBR User Interface
27MHBR User Interface (Cont.)
28MHBR User Interface (Cont.)
29MHBR User Interface (Cont.)
30MHBR User Interface (Cont.)
31MHBR User Interface (Cont.)
32Data Extraction and Analysis Toolkit
- Used to extract archived data from the MSPS
server - Provides a data visualization workspace to plot
graphs and visualize 3D data - Provides a quick and easy tool for scientists to
examine telemetry data archived by the MSPS
server - Pure Java implementation for data extraction and
visualization - Uses JFreeChart to draw line and area charts,
scatter plots, bar and pie charts. - Uses VisAD for plotting 3D images
33Data Analysis Workspace
34Data Visualization Workspace
35Data Visualization Workspace
36Data Visualization Workspace
37Technologies, APIs and Tools used to build MHBR
and Data Extraction and Analysis Toolkit
38Current Status
- Modernized History Browser was formally tested at
SOCC and accepted in September 2005. - Currently we are waiting for the software freeze
for the GOES-N launch to be lifted, in order to
deploy the application on all SOCC workstations
used for telemetry data analysis. - The Data Analysis and Extraction toolkit is
currently being implemented as a prototype model.
39Conclusions Future Work
- Provides support for data changes for GOES NOP
series of satellites - Provides built-in toolkit for Data Extraction and
Analysis - Uses XML to define the data stored in the map and
data files in the Archive Manager - Uses a layered architecture separating the
Communication, Data Engine and Presentations
layers - Developed using Unified Modeling Language
- Future work involves the Design and
Implementation of a Long-Term Archive and its
integration with the Modernized History Browser
(MHBR)
40Contact Information Subir Vasanth svasanth_at_ac-tec
h.com