Chapter 16 Formulating and Solving System Architecture Optimization Problems

16.1 Introduction

Chapter 14 introduced the mental model of the “system architecture as a set of decisions.” We argued that one can build a model of a system architecture by encoding architectural decisions as variables with a set of allowed alternatives. We saw some examples of architectural models in both Chapter 14 (Apollo example) and Chapter 15 (guidance, navigation, and control systems) but did not discuss in detail how to build an architectural model. In this chapter, we study the formulation of these models.

Recall the definition of the term “system architecture”:

System architecture is the embodiment of concept, the allocation of function to elements of form, and the definition of relationships among the elements and with the surrounding context.

Several decision-making problems are explicitly or implicitly mentioned in this formulation, such as defining the main elements of form and function, their mapping or allocation, and defining the ­relationship between elements. We begin this chapter by identifying a subset of recurring architecting tasks that can be formulated as programmed decisions or architecture ­optimization problems, shown in Table 16.1.

Table 16.1 | Tasks of the system architect that are amenable to the use of automatic decision support tools

Task Consists of Described in In the Context of
1. Decomposing Form and Function Choosing a system ­decomposition—that is, clustering elements of form or function

Chapter 3

Chapter 4

Chapter 5

Chapter 6

Chapter 8

Chapter 13

Managing complexity

Form decomposition

Function decomposition

Architecture analysis

Modularization

Choosing a decomposition

2. Mapping Function to Form Defining concept by assigning elements of function to elements of form

Chapter 6

Chapter 7

Chapter 8

Chapter 12

Architecture analysis

Concept fragments

Developing architecture from concept

Refining integrated concept

3. Specializing Form and Function Going from solution- neutral to solution- specific by choosing one among several ­alternatives for a ­certain element of form or function

Chapter 4

Chapter 7

Specialization of form

Solution-neutral versus solution-specific

4. Characterizing Form and Function Choosing one among several alternatives for the attributes of an element of form or function

Chapter 7

Chapter 13

Chapter 14

Characterization of function (data network example)

Characterization of form (Saturn V example)

Characterization of form (Apollo example)

5. Connecting Form and Function Defining system topology and interfaces

Chapter 4

Chapter 5

Chapter 7

Connectivity in form

Functional flow

Sequence of operations

6. Selecting Goals Defining scope by choosing among a set of candidate goals Chapter 11 Prioritizing goals

By studying the features of the architecture optimization problems resulting from these six tasks, we observe that they share some characteristics. We introduce six Patterns, or classes, of programmed architectural decisions: the DECISION-OPTION Pattern, the ASSIGNING Pattern, the PARTITIONING Pattern, the DOWN-SELECTING Pattern, the PERMUTING Pattern, and the CONNECTING Pattern. We will discuss the mapping of the six tasks to the six Patterns as we introduce them. Note that the fact that there are the same number of tasks as of Patterns should not lead the reader to think that there is a one-to-one correspondence between them. The mapping between tasks and Patterns is described in more detail later in the chapter.

Our intent is that these six Patterns will help the system architect identify opportunities to treat programmed decisions analytically. However, an important secondary intent is to ­identify mental models (like we made mental models for architectural decisions and the architectural tradespace) that help system architects reason about architectural decisions, regardless of whether the ­problem is ever encoded in a computational tool.

We begin Chapter 16 by outlining, in Section 16.2, a generic formulation for system architecture optimization problems that will provide a common basis for expressing the Patterns. Section 16.3 introduces the example of NEOSS, an Earth observation satellite system, that is used throughout the rest of the chapter to illustrate several concepts. Section 16.4 describes the six Patterns individually, including their formulation and typical examples, and ends with a summary of the mapping among the six Patterns and the tasks presented earlier in this ­chapter. Section 16.5 provides some guidance in applying the Patterns to a real system architecture ­problem; it also discusses the issues of decomposition and overlap between Patterns. Finally, Section 16.6 focuses on solving system architecture optimization problems using full-factorial enumeration or heuristic algorithms.

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset
18.226.187.233