·
System Engineering
·
Software engineering occurs as a consequence of a
process called system engineering.
·
Instead of concentrating solely on software,
system engineering focuses on a variety of elements, analyzing, designing, and
organizing those elements into a system that can be a product, a service, or a
technology for the transformation of information or control.
The system engineering process usually begins with a
―world view.‖ That
is, the entire business or product domain is examined to ensure that the proper
business or technology context can be established.
The world view is refined to focus more fully
on specific domain of interest. Within a specific domain, the need for targeted
system elements (e.g., data, software, hardware, people) is analyzed. Finally,
the analysis, design, and construction of a targeted system element is
initiated.
At the top of the hierarchy, a very broad
context is established and, at the bottom, detailed technical activities,
performed by the relevant engineering discipline (e.g., hardware or software
engineering), are conducted.
Stated in a slightly more formal
manner, the world view (WV) is composed of a set of domains (Di), which can each be a system or
system of systems in its own right.
WV = {D1, D2, D3, . . .
, Dn}
Each domain is composed of
specific elements (Ej) each of
which serves some role in accomplishing the objective and goals of the domain
or component:
Di = {E1, E2, E3, . . . , Em}
Finally, each element is
implemented by specifying the technical components (Ck) that achieve the necessary function for an element:
Ej = {C1, C2, C3, . . . , Ck}
System Modeling
System engineering is a
modeling process. Whether the focus is on the world view or the detailed view,
the engineer creates models that
• Define the processes that
serve the needs of the view under consideration.
• Represent the behavior of
the processes and the assumptions on which the behavior is based.
• Explicitly define both
exogenous and endogenous input3 to the model.
• Represent all linkages
(including output) that will enable the engineer to better understand the view.
To construct a system model,
the engineer should consider a number of restraining factors:
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 entertainment industry to create realistic animation. One
domain of the product enables the representation of 3D human forms. Input to
this domain encompasses 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 cannot 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 modeling the needs of the service organization and is
working to understand the flow of information that spawns a service order.
Although a service order can be derived from many origins, the engineer
categorizes only two sources:
internal demand and external request. This enables
a simplified partitioning of input that is required to generate the service
order.
3. Limitations that help to bound the system. For
example, an aircraft avionics 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 modeled 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 technology infrastructure for the three-dimensional rendering
system described previously 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.
System
Simulation
Software
tools for system modeling and simulation are being used to help to eliminate
surprises when reactive, computer-based systems are built. These tools are
applied during the system engineering process, while the role of hardware and
software, databases and people is being specified. Modeling and simulation
tools enable a system engineer to "test drive" a specification of the
system. The technical details and specialized
modeling techniques that are used to enable a test drive.
No comments:
Post a Comment