Organizational Multiplexing: Patterns for Processing Satellite Telemetry with Distributed Teams


By: S.P. Berczuk
Published in: PLoPD2
Pages: 193-206

Development of ground software for satellite telemetry systems that considers organizational issues in architecture.

Category: Telemetry Processing

Summary: Development of ground software for satellite telemetry systems that considers organizational issues in architecture.

Url: http://world.std.com/~berczuk/pubs/PLoP95/HTML/BerczukPLoP95.html

Pattern: Loose Interfaces

Pages: 197

To help the development of a system with many teams proceeding at a reasonable pace, keep interfaces between subsystems loose. Limit the number of explicit, static interfaces. Use callbacks, Parser/Builder and Hierarchy of Factories

Category: Architectural, Telemetry Processing

Pattern: Parser/Builder

Pages: 198-199

Many systems need to read data from a stream and classify elements in the stream as objects. When the data stream contains tags that identify the raw data, convert the stream into object form. Use a Parser/Builder object that reads the tags and creates an object of the appropriate type.

Category: Persistence, Telemetry Processing

Pattern: Hierarchy of Factories

Pages: 199-202

Once you decide to use Parser/Builder, you need to partition the details of how to construct objects of various classes into the various groups responsible for this construction. Use a hierarchy of factories where each factory understands the criteria for making a packet of its type.

Category: Telemetry Processing

Pattern: Handlers

Pages: 202-204

After you assemble packets from a telemetry data stream, you process them, generating data products. You need a way to direct this processing. Use a callback mechanism to define connections between the assembly process and the processing process. Provide a mechanism for assigning a handler object to which a completed entity will be forwarded.

Category: Telemetry Processing