Page 176 - DCAP405_SOFTWARE_ENGINEERING
P. 176
Unit 10: Creating an Architectural Design
10.1 Data Design Notes
Data such as event lists and images need to be kept in files as they are received. They also need
to be correlated with engineering and other ancillary data which arrive as a continuous time
stream and to be associated with a calibration test or an observation ID. A level of isolation
between the data and users is desirable for security, performance and ease of administration.
The following design was chosen. Files are kept in simple directory structures. Metadata about
the files, extracted from file headers or supplied by the archiving process, is stored in databases.
This allows file searches on the basis of their contents. Continuous time data extracted from
engineering files is also stored in databases so the correct values can be easily associated with an
image or an event list with defined time boundaries. In addition to partial or entire file contents,
file external characteristics such as its location in the archive, size, compression, creation time
are also stored in databases for archive internal use.
Notes In addition to databases with contents originating in files, there are also databases
which are updated independently, such as the AXAF observing catalog and the AXAF
users database.
Figure 10.1: Data Design
A naive instance of the data design is shown on Figure 10.1. The archive contains a number of
proposal files submitted by users. It also contains a number of event files, products of observed
data processing. A table in a database contains the characteristics of each file. The proposal table
contains a record for each proposal which points to the associated file in the file table. The
observation table contains a record for each observed target and has a pointer to the associated
proposal. An observation is also associated with files in the file table which contain observed
LOVELY PROFESSIONAL UNIVERSITY 169