The System Is Down

Posted by Kevin McWilliams on Mar 21, 2017 3:21:00 PM
Find me on:

 

What Is Systems Engineering And Why Is It Important?

Engineering is a field with many areas of specialization, which frequently require engineers from different disciplines to work together to complete projects.  For instance, a modern automobile has design input from thousands of mechanical engineers but also contains miles of wiring and hundreds of sensors designed and specified by electrical engineers.  Computer engineers are responsible for extensive amounts of code which instruct the various sensors and computers as to what to do in a given situation.  In a lot of cases, these engineers may be working for different subcontractors, possibly in different parts of the world.  Making sure that all subsystems and parts will work correctly with everything else is a daunting challenge!  This is where a lesser-known discipline of engineering comes into play – systems engineering. 

From Wikipedia:

Systems engineering is an interdisciplinary field of engineering and engineering management that focuses on how to design and manage complex systems over their life cycles. At its core systems engineering utilizes systems thinking principles to organize this body of knowledge. Issues such as requirements engineering, reliability, logistics, coordination of different teams, testing and evaluation, maintainability and many other disciplines necessary for successful system development, design, implementation, and ultimate decommission become more difficult when dealing with large or complex projects. Systems engineering deals with work-processes, optimization methods, and risk management tools in such projects. It overlaps technical and human-centered disciplines such as industrial engineering, mechanical engineering, manufacturing engineering, control engineering, software engineering, electrical engineering, cybernetics, organizational studies, engineering management and project management. Systems engineering ensures that all likely aspects of a project or system are considered, and integrated into a whole.

The discipline of Systems Engineering has grown with the increasing complexity of technology.  As the systems humans use for transport, communication, energy generation/transmission, and nearly everything else have grown more complex, the difficulty of managing their development has also grown exponentially.  The original function of a systems engineer was to look at a holistic picture of how a system is supposed to function and to assist various subsystem teams with ensuring that their part will function as intended within the larger whole.  This includes defining and enforcing how mechanical, electrical, or software subsystems interface with other parts of the total system.  Another classical systems engineering responsibility is to help define requirements for subsystems, especially items like volume, mass, or power budgets again from the perspective of optimizing the system as a whole.

The modern field of systems engineering has broadened considerably from the original focus on complex electromechanical systems.  For instance, ergonomics and user experience are very much systems engineering topics that are frequently important for development of a successful consumer product.  The physical dimensions and constraints of a system may be driven as much or more by the human factors than by traditional engineering concerns. 

However, the high-level process of systems engineering is similar regardless of application.  Generally the process is not linear, but is parallel and iterative in nature.  The International Council on Systems Engineering (INCOSE) illustrates the steps of the systems engineering process with the acronym SIMILAR, which defines the following steps:

  • State the Problem – Top level description of not only what the system SHALL and SHOULD do, but now how the system does so. The problem should be stated in functional or behavioral outcomes.
  • Investigate Alternatives – Good engineering practice requires that all reasonable alternative ways of solving a problem be investigated and evaluated. This is one of the primary methods of reducing programmatic risk in complex systems.
  • Model the System – Evaluation of both the system behavior and the processes used to develop the system is a fundamental part of determining the best path to success. Modeling techniques could include: block diagrams, state machines, computer simulation, analytic equations, etc.  The models are generally re-visited every time new data is acquired.
  • Integrate – Subsystems must be connected to produce a functional product. Good subsystem design produces finished useful output to other subsystems to reduce overall system complexity.  Subsystems requiring iterative communication with another subsystem form yet a third subsystem which should produce a useful output to the entire system.
  • Launch the System – Eventually, the system must be operated, regardless of its nature, in order to be evaluated. This is where detailed design of the identified optimal alternative is performed.  It is very common that various parts of the design evolve during this phase as knowledge of the system is gained.  Requirements are validated and verified here.
    • Validation – Do the requirements actually create the desired result?
    • Verification – Does the design meet the requirements?
  • Assess performance – Regardless of whether the system being examined is a device, a manufacturing process, or a management strategy, measurement is key. There must be some reasonable metrics by which to measure the performance of a system or process.  Assessment for devices is frequently performed against a budget or a physical parameter.  If you can’t measure it, you can’t control it.  If you can’t control it, you can’t improve it. 
  • Revise – The most important and continuous step of the systems engineering process. New information uncovered in any of the other steps can lead to revision.  Revisions based on performance can be applied to a technical design, requirements, processes, or inputs to improve the overall performance of the system. 

At Boulder Engineering Studio, a systems approach is applied from the very beginning of any project that comes in the door.  This approach does involve some extra effort at the beginning of a development cycle, but the results are demonstrably worth it.  Taking the time to thoroughly understand a problem and investigate the possible solutions before attempting to solve it often leads to avoidance of major pitfalls or possibly avoidance of committing significant resources to a non-viable project.  Consideration of the entire project lifecycle can alert one to large expenditures and help map out engineering effort in a detailed way well in advance of such efforts, which is attractive for investors and reassuring to the entrepreneur. 

Topics: Systems Engineering