Page 279 -
P. 279

250           PART THREE  CONVENTIONAL METHODS FOR SOFTWARE ENGINEERING


                         1. Assumptions that reduce the number of possible permutations and variations,
                            thus enabling a model to reflect the problem in a reasonable manner. As an
                            example, consider a three-dimensional rendering product used by the enter-
                            tainment industry to create realistic animation.  One domain of the product
                            enables the representation of 3D human forms. Input to this domain encom-
                            passes the ability to specify movement from a live human actor, from video,
                            or by the creation of graphical models. The system engineer makes certain
                            assumptions about the range of allowable human movement (e.g., legs can-
                            not be wrapped around the torso) so that the range of inputs and processing
                            can be limited.
                         2. Simplifications that enable the model to be created in a timely manner. To
                            illustrate, consider an office products company that sells and services a broad
                            range of copiers, faxes, and related equipment. The system engineer is mod-
         A system engineer  eling the needs of the service organization and is working to understand the
         considers the following
         factors when       flow of information that spawns a service order. Although a service order can
         developing alternative  be derived from many origins, the engineer categorizes only two sources:
         solutions: assumptions,  internal demand and external request. This enables a simplified partitioning
         simplifications,    of input that is required to generate the service order.
         limitations, constraints,
         and customer    3. Limitations that help to bound the system. For example, an aircraft avionics
         preferences.       system is being modeled for a next generation aircraft. Since the aircraft will
                            be a two-engine design, the monitoring domain for propulsion will be mod-
                            eled to accommodate a maximum of two engines and associated redundant
                            systems.
                         4. Constraints that will guide the manner in which the model is created and the
                            approach taken when the model is implemented.  For example, the technol-
                            ogy infrastructure for the three-dimensional rendering system described pre-
                            viously is a single G4-based processor. The computational complexity of
                            problems must be constrained to fit within the processing bounds imposed by
                            the processor.
                         5. Preferences that indicate the preferred architecture for all data, functions, and
                            technology. The preferred solution sometimes comes into conflict with other
                            restraining factors. Yet, customer satisfaction is often predicated on the
                            degree to which the preferred approach is realized.

                          The resultant system model (at any view) may call for a completely automated
                       solution, a semi-automated solution, or a nonautomated approach. In fact, it is often
                       possible to characterize models of each type that serve as alternative solutions to the
                       problem at hand. In essence, the system engineer simply modifies the relative influ-
                       ence of different system elements (people, hardware, software) to derive models of
                       each type.
   274   275   276   277   278   279   280   281   282   283   284