Posts Tagged ‘DFD’

A Brief Introduction to Systems Engineering

Wednesday, June 27th, 2012

Systems engineering is a specialized set of skills that deal with how large and complex projects are acquired for customers like the US Government. Often applied to the development of weapon systems by the defense industry, this approach was also applied for a time in the software development community.

The benefit of the approach, when practiced properly, is that large acquisitions will be more efficient during their development, they will be more likely to be delivered within their cost and schedule constraints, and they will more likely function as required once deployed.

Introduced in the late 1970’s the approach relies on use of diagrammatic models as a means of understanding the context of the systems, its interfaces and its functional requirements. A seminal textbook on the underlying modeling technique was Structured Analysis and System Specification, written by Tom DeMarco.

The goal for a system, as a prerequisite to full-scale development is to have a complete, correct, and executable specification. To do that, the system’s context, boundary, external entities, interfaces, functions, and data needs are defined throughout the process of modeling the system.

The method uses the power of abstraction to define each level appropriate to its implementation. Abstraction means that only the level of detail required is dealt with at that level, and subordinate details are abstracted and pushed down to the correct level where they are meaning full. For example if the system is military airlift, the highest specification only speaks to the distance, volume, frequency and reliability of transport that is required. The fact fact there may be a new airplane as part of the acquisition, or a ground transportation infrastructure, those are to be considered as lower level components and are separately modeled and specified.

Once potential problems are identified and solved in a process called functional analysis, the resulting models can be converted to a common language set of specification that represent each applicable level of implementation.

Realities of the modern economy, changes in acquisition, including likely reductions in defense funding will affect, and possibility displace, many in the workforce. Even though not in vogue outside of defense, the method still has merit. It simply remains as a challenge to the engineer in transition (from defense to commercial) to discover what concepts and portions of the method are reusable and will complement current commercial development techniques. Understanding these systems engineering concepts will be helpful in preparing for that transition. Although specific techniques may have evolved, the need for correctness in understanding the system being built has not.

Is there an OODA Loop in your Future?

Thursday, June 21st, 2012

Being out and about in today's dismal economyJohn Boyd’s OODA Loop as Data Flow Diagram by Michael LaRue presents an array of opportunities and challenges. Since the word displaced is a euphemism for laid-off/unemployed, let's face it, restoring an income stream is one of the most important of those challenges. One way or another, doing that will require some situational assessment and decision-making.

Regardless of how well an aerospace engineering degree and decades of professional experience may equip a person, there is no silver bullet solution, or natural growth path towards a comfortable future, once displaced. A person in this position has to be resourceful and purposeful in moving forward.

Presented with this exact situation myself, I wondered what decision-making framework from my prior experience might serve well? Fortunately for me, something came to mind pretty quickly, the famous OODA loop!

My exposure to this concept came while working on an enhanced threat assessment feature of the Space-Based Space Surveillance system. Don't worry, it's unclassified, or at least it was at the time.

Briefly, OODA is a method for effective decision-making which is composed of a recurring cycle of the following steps: Observe – Orient – Decide – Act. This loop was created by Air Force Colonel John Boyd for application to military tactics in aerial combat. To paraphrase, the objective is to defeat an enemy in combat, and survive, by operating at a tempo faster than their ability to effectively make their own decisions. An excellent introduction to the subject can be found within this wikipedia entry.

For a person in my position, this seems like useful strategy to employ. If you are in a similar situation and don't think it's good, then perhaps you married rich, are already otherwise financially independent, or you've got a better idea yourself. If that's the case I'd love to hear from you; let me in on your secret, please!

To illustrate the OODA Loop I've created a Data Flow Diagram. This is a notation by Tom DeMarco in his excellent book, Structured Analysis and System Specification. I've used this notation frequently, to great effect in my aerospace engineering days. Most other times I've seen it presented though, it's been in a classical flowchart style. Rather than just regurgitate that form, I thought a fresh look might be helpful.

In my next post I will outline how I've applied, and will continue to apply, this approach, to the ongoing process of recreating myself for my future.

Until then, if you've lacking for something constructive to do, at least start doing the first of the two O's – start observing your environment and your circumstances. What could be more important that being aware of where you're at?