An Overview of Systems Engineering
Over the last few years I have made the transition from focusing on software architecture to systems engineering. It’s a field that incorporates a number of different roles, processes, and technologies. No, it’s not systems administrator with “engineer” patched on the end. This field does not have much in the way of overlap with qualifications such as Microsoft Certified Systems Engineer. To avoid confusion I often talk about being an INCOSE-style systems engineer. The International Council on Systems Engineering is the peak body for this kind of work.
There are two basic ways to look at what a systems engineer does. One is top down while the other is bottom up. The bottom up perspective is roughly
When we build complex systems we quickly reach a level where one small, well-disciplined team is not sufficient to deliver it. A systems engineering team is one that sits above several nuts and bolts delivery teams. Their job is to coordinate between the teams by:
- Instructing the teams as to what they each individually will need to build
- Taking input from the teams as to what is feasible, and adjusting the overarching design as needed to deliver the system as a whole
- Taking product from the individual teams and assembling it into a cohesive, verified whole in line with the design and end user requirements.
The top-down perspective is a little more like this
Customers need complex systems built that no one team can deliver. Someone needs to sit as the customer representative ensuring that a customer delivery focus exists at every level of the design. That means,
- Having someone who can connect low level design decisions to real customer requirements and need
- Being able to eliminate gold plating in excess of the user need
- Ensuring that the product at the end really does meet the user need
Systems engineering works across all engineering disciplines to coordinate their activities and to align them to customer needs. It adds a technical chain of command to a large project alongside the project management chain of command that maximises efficiency and minimises risk. While the core focus of project management is on controlling scope and budget, the core focus of technical management is on controlling quality, value, and delivery efficiency. Together project and systems disciplines work to control project risk.
INCOSE defines Systems Engineering as:
an interdisciplinary approach and means to enable the realization of successful systems. It focuses on defining customer needs and required functionality early in the development cycle, documenting requirements, then proceeding with design synthesis and system validation while considering the complete problem:
- Operations
- Performance
- Test
- Manufacturing
- Cost & Schedule
- Training & Support
- Disposal
Systems Engineering integrates all the disciplines and specialty groups into a team effort forming a structured development process that proceeds from concept to production to operation. Systems Engineering considers both the business and the technical needs of all customers with the goal of providing a quality product that meets the user needs.
Systems engineering is a recursive approach to deliver large projects that meet stakeholder needs.
Benjamin