ADAPSMONITOR
Software Requirements Specification

Dave Lloyd
Computer Services Branch
Software Engineering Department

June 9, 2000



Signatures

Prepared by: Dave Lloyd, Signature on file
  Software Engineer,
  Raytheon, ITSS
Concurred by: Tim Baltzer, Signature on file
  Software Project Lead,
  Raytheon, ITSS
Approved by: Vicki Neuheisel, Signature on file
  Computer Operations,
  Raytheon, ITSS

Document History

Number Date and Sections            Notes                                                                                        
1 June 9, 2000 Document Created
2 June 21, 2000  Added and deleted requirements and test cases discussed in SRS review
3 July 18, 2000 Update tracebility matrix with design elements
4 Aug 31, 2000 Update traceability matrix with code elements. Added Note 1, list of code functions.
5    
6    


Contents


INTRODUCTION

Identification

ADAPSMONITOR is an application that notifies computer operations personnel of the status of critical AVHRR processes,systems and data files.

System Overview

ADAPSMONITOR will continuously monitor critical AVHRR processes to insure that they are operational. It will also monitor critical systems and data files. If one of the critical processes fails to produce output, or a system goes down or a data file is not updated, computer operations personnel will be notified. This system will be written with a with a Graphical User Interface (GUI) for notification and operator interface.

Document Overview

The purpose of this document is to record the requirements that have been established for ADAPSMONITOR.



REFERENCED DOCUMENTS

Applicable Documents

None.

Reference Documents

None.

   
REQUIREMENTS

Interface Requirements

1. Input Parameters

2. Output Parameters

3. Global Parameters

None.

   
Functional Requirements

4. The ADAPSMONITOR will be initialized by reading the file specified on the command line or, in its absence, the defaults file.

5. Display a list of all processes/systems/files with their status as of the last time they were checked.

6. Display a "Modify" popup window to allow the user to change the monitor flag for all processes/systems/files.

7. Display an "Alert" popup window.

8. Notify computer operations of files that are not updated.

9. Notify computer operations of batch processes not in batch queue.

10. Notify computer operations of hung processes.

11. Notify computer operations of systems that are not responding.

12. An Exit button will be provided on the "Main" window. Pressing the Exit button will display an "Exit Confirmation" popup window.

13. Display a "Load" popup window to allow the user to load values from a file.

Performance Requirements

None.

   
Operational Requirements

14. This application will have a Graphical User Interface (GUI).

   
Other Requirements

15. The states that will be reported are as follows:


TEST CASES

Test Number Requirement Number Description
1a 1.1.1, 1.1.2.1, 1.1.2.5, 1.1.2.6, 1.1.2.7, 4, 14 Create $ADAPSTABLES/adapsmonitor.defaults The file must contain at least two entries: one with an initial status of disable the other as enable. Run the ADAPSMONITOR which should start and provide the user with an GUI interface. The processes/systems/files listed in the defaults file should be displayed in the "Main" window. The default monitor flags should be set correctly.
1b 12, 12.1, 12.1.2 An Exit button should be on the "Main" window. Pressing the Exit button should cause an "Exit Confirmation" window to popup. There should be a Cancel button. Press the Cancel button. The popup should disappear and the application continue to run.
1c 12.1.1 Press the Exit button. There should be an Accept button on the "Exit Confirmation" popup window. Press the Accept button. The application should exit.
2 1.1.1, 2.1.4 Remove the defaults file and run the application. A fatal error message should be displayed on the command line and in the log file.
3 1.2 Create a defaults file in a directory other than $ADAPSTABLES and specify this file on the command line at startup. Each process/system/file listed in the specified file should be listed on the "Main" window with the correct monitor flag set.
4 1.2, 2.1.4 Specify a non-existent defaults file on the command line. A fatal error message should be displayed on the command line and in the log file.
5a 1.1.2.1, 1.1.2.2, 1.1.2.4, 2.1.1, 5.1, 5.2, 5.3, 7.1, 8.1, 8.2, 8.3, 15.3, 15.4 Create a defaults file with an entry for an existing file. After starting ADAPSMONITOR the "Main" window should list the file, the system on which it resides and a status of File Updated. An "Alert" popup should appear, with a File Not Updated message, after the monitor interval listed for the file elapses. The alert should be written to the log file.
5b 7.4, 2.1.3, 5.1 Press the acknowledge button. The popup should disappear and the acknowledgement written to the log file. The "Main" window should show that the file status has changed to Not Updated.
5c 7.4, 7.2, 7.3, 2.1.2, 5.1 The alert should reappear after the monitor interval elapses. The message should be written to the log. A Continue Monitoring button should be displayed on the "Alert" window. Pressing the button toggles between Continue Monitoring and Disable Warnings. Press the Apply Changes button. The popup should disappear and the change written to $ADAPSTABLES/adapsmonitor.state file. The change will be written to the log file. No further alerts for the file should be issued.
6 2.2.1, 2.2.2 Remove the $ADAPSTABLES/adapsmonitor.state file and run the ADAPSMONITOR. Press the Modify button and change the monitor state of any process/system/file and press the Accept button. After accepting the "Modify" popup exit the application. The adapsmonitor.state file should be recreated and should be the same as the adapsmonitor.defaults file.
7a 6.2, 6.4 Create the defaults file with at least two entries one with an initial status of Enable the other with Disable. Run the ADAPSMONITOR. Press the Modify button on the "Main" window. The "Modify" popup should appear.
7b 6.3, 6.4 Press the Modify button. Each process/system/file listed should have a toggle button. Pressing the buttons should toggle between Enable and Disable. Toggle each button to the other state and press the Accept button. The "Main" window should reflect the changes made and the adapsmonitor.state file will be written with the new state.
7c 6.5 Press the Modify button. Toggle each button to the other state and press the Cancel button. The "Modify" popup should disappear and no state changes made.
7d DELETED 6.6 the Modify button. There should be an Enable All button. Pressing the Enable All button should change all the toggle buttons to Enable. Press Accept. The "Main" window should reflect that each process/system/file Monitor flag is Enabled.
8 9, 1.1.2.3, 15.5, 15.7 Submit a process (such as INGEST_DAEMON) to the batch queue. Modify the defaults file to include one entry for the process with an appropriate monitor interval (five minutes for INGEST_DAEMON). Run ADAPSMONITOR. Initially the process should be listed as Process Running. Remove the process from the queue. After the monitor interval has elapsed a Not in Queue alert should be issued.
9 10, 1.1.2.3, 15.5, 15.6 Create a file called $ADAPSLOG/dummy.log. Modify the defaults file to include one entry for the process "dummy" on the current system with a monitor interval of one minute. Run ADAPSMONITOR. Initially the process should be listed as Process Running. After one minute has elapsed a Process Hung alert should be issued.
10 11, 15.1, 15.2 Modify the defaults file with two entries. One entry for an existing system that is operational and the other for a non-existent system. Both entries should have a monitor interval of one minute. Run ADAPSMONITOR. The display for the operational system should list System Responding. After one minute has elapsed a System Not Responding alert should be issued for the non-existant system.
11 9.4 Submit a process to the batch queue. Modify the defaults file to include an entry for the process but with a user other than the running process. Run ADAPSMONITOR. A "Not in Queue" alert should be issued.
12a 9.5 Submit two instances of a process to the batch queue. Modify the defaults file to include two instances of the process. Run ADAPSMONITOR. The "Main" window should list one entry for both instances of the process. Remove one instance from the queue. A "Not in Queue" should be issued after the monitor time interval elapses.
12b 9.5 Remove the other process from the queue and another alert should be issued after the monitor time interval has elapsed.
12c 9.5 Resubmit one of the batch processes. Its state should change after the monitor time interval has elapsed. Resubmit the other batch process and its state should change after the time interval has elapsed.
13a 13.1 Run ADAPSMONITOR and press the Modify button. There should be a Load button on the "Modify" window. Press the Load button and a "Load" popup should be displayed.
13b 13.2, 13.3 The "Load" popup will contain a dialog box for the user to enter the file name of a defaults file, an Accept button and Cancel button. Enter the name of an non-existant file and Press the Accept button. An Error message should be displayed. Press Okay and the error message is removed and the dialog is still displayed.
13c 13.2 Create a new defaults file with entries different than the current file. Specify the new file in the dialog box and press the Accept button. The popup should be removed and the "Modify" window changed to reflect the entries in the new defaults file.
13d 13.4 Press the Load button and enter the original defaults file in the dialog. Press the Cancel button. The popup should be removed and the "Modify" window should not be changed.
     
     

REQUIREMENTS TRACEABILITY

SW Requirement Number Test Number Design Code (See Note 1)
1.1.1 1a, 2 21, 26 
1.1.2.1 1a, 5a 21, 26 
1.1.2.2 5a 21, 26 
1.1.2.3 8, 9 21, 26 
1.1.2.4 5a 21, 26 
1.1.2.5 1a 21, 26 
1.1.2.6 1a 21, 26 
1.1.2.7 1a 21, 26 
1.2 1a 1, 2  24 
2.1.1 5a 1, 28 
2.1.2 5c 9, 12  4, 28 
2.1.3 5b 10  16, 28 
2.1.4 2, 4 2, 17  2, 7, 8, 9, 10, 11, 17, 18, 20, 21, 22, 24, 26, 28 
2.2 6 17, 26 
2.2.1 6 26 
2.2.2 6 626   
4 1a 1, 2  21 
5.1 5a, 5b, 5c 24 
5.2 5a 13, 15 
5.2.1 5a 12, 13, 14, 27 
5.2.2 5a 12, 13, 14, 27 
5.2.3 5a 12, 13, 14, 27 
5.2.4 5a 12, 13, 14, 27 
5.3 5a 13 
6.1 DELETED 1a    
6.2 7a 1, 11  13 
6.3 7b 11  14 
6.4 7a, 7b 11  4, 14 
6.5 7c 11  5, 14 
6.6 DELETED 7d    
7.1 5a 3, 8  11 
7.2 5c
7.3 5c 8, 9  1, 4 
7.4 5b, 5c 8,10  1, 16 
8 5a 3, 8  1, 11 
8.1 5a 3, 8 
8.2 5a 11, 21 
8.3 5a 11, 21 
9 8 3, 8  1, 6, 11 
9.1 8 3, 8  1, 6, 8 
9.2 8 11, 21 
9.3 8 11, 21 
9.4 11 2, 3  8, 11, 21 
9.5 12a, 12b, 12c 2, 3  8, 11, 21 
10 9 3, 8  1, 11 
10.1 9 3, 8  6, 10 
10.2 9 2, 3  11, 21 
10.3 9 11, 21 
11 10 3, 8  1, 11 
11.1 10 3, 8  6, 9 
11.2 10 2, 3  11, 21 
12 1b 1, 5  13, 17 
12.1 1b 17 
12.1.1 1c 17 
12.1.2 1c 17 
13.1 13a 11, 14  14 
13.2 13b, 13c 14  14, 23 
13.3 13b 16  14, 23 
13.4 13d 15  14, 23 
14 1a 24 
15 5a, 8, 9, 10 2 11 
       
       
       
       
       
       


NOTES

1. The number in the code section of the "Requirements Tracebility" table correspond to the following functions in the code implementation:

ACRONYMS

AVHRR Advanced Very High Resolution Radiometer
ADAPS AVHRR Data Acquisition and Production System
ADAPSTABLES System environment variable that points to ADAPS specific tables and files
ADAPSLOG System environment variable that points to ADAPS specific log files
GUI Graphical User Interface