Systems Engineering For Dummies
Systems Engineering For Dummies
Systems Engineering For Dummies
Systems i n e e ri n g E ng
Learn:
What systems engineering is How systems engineering can help you develop smart, connected products How to expedite time-to-market, ensure business agility, and deliver high-quality smart products How to cut costs
Cathleen Shamieh
These materials are the copyright of Wiley Publishing, Inc. and any dissemination, distribution, or unauthorized use is strictly prohibited.
Systems Engineering
FOR
DUMmIES
Cathleen Shamieh
These materials are the copyright of Wiley Publishing, Inc. and any dissemination, distribution, or unauthorized use is strictly prohibited.
Published by Wiley Publishing, Inc. 111 River Street Hoboken, NJ 07030-5774 www.wiley.com Copyright 2011 by Wiley Publishing, Inc., Indianapolis, Indiana Published by Wiley Publishing, Inc., Indianapolis, Indiana
No part of this publication may be reproduced, stored in a retrieval system or transmitted in any form or by any means, electronic, mechanical, photocopying, recording, scanning or otherwise, except as permitted under Sections 107 or 108 of the 1976 United States Copyright Act, without the prior written permission of the Publisher. Requests to the Publisher for permission should be addressed to the Permissions Department, John Wiley & Sons, Inc., 111 River Street, Hoboken, NJ 07030, (201) 748-6011, fax (201) 748-6008, or online at http://www.wiley.com/go/permissions. Trademarks: Wiley, the Wiley Publishing logo, For Dummies, the Dummies Man logo, A Reference for the Rest of Us!, The Dummies Way, Dummies.com, Making Everything Easier, and related trade dress are trademarks or registered trademarks of John Wiley & Sons, Inc. and/or its affiliates in the United States and other countries, and may not be used without written permission. All other trademarks are the property of their respective owners. Wiley Publishing, Inc., is not associated with any product or vendor mentioned in this book. LIMIT OF LIABILITY/DISCLAIMER OF WARRANTY: THE PUBLISHER AND THE AUTHOR MAKE NO REPRESENTATIONS OR WARRANTIES WITH RESPECT TO THE ACCURACY OR COMPLETENESS OF THE CONTENTS OF THIS WORK AND SPECIFICALLY DISCLAIM ALL WARRANTIES, INCLUDING WITHOUT LIMITATION WARRANTIES OF FITNESS FOR A PARTICULAR PURPOSE. NO WARRANTY MAY BE CREATED OR EXTENDED BY SALES OR PROMOTIONAL MATERIALS. THE ADVICE AND STRATEGIES CONTAINED HEREIN MAY NOT BE SUITABLE FOR EVERY SITUATION. THIS WORK IS SOLD WITH THE UNDERSTANDING THAT THE PUBLISHER IS NOT ENGAGED IN RENDERING LEGAL, ACCOUNTING, OR OTHER PROFESSIONAL SERVICES. IF PROFESSIONAL ASSISTANCE IS REQUIRED, THE SERVICES OF A COMPETENT PROFESSIONAL PERSON SHOULD BE SOUGHT. NEITHER THE PUBLISHER NOR THE AUTHOR SHALL BE LIABLE FOR DAMAGES ARISING HEREFROM. THE FACT THAT AN ORGANIZATION OR WEBSITE IS REFERRED TO IN THIS WORK AS A CITATION AND/OR A POTENTIAL SOURCE OF FURTHER INFORMATION DOES NOT MEAN THAT THE AUTHOR OR THE PUBLISHER ENDORSES THE INFORMATION THE ORGANIZATION OR WEBSITE MAY PROVIDE OR RECOMMENDATIONS IT MAY MAKE. FURTHER, READERS SHOULD BE AWARE THAT INTERNET WEBSITES LISTED IN THIS WORK MAY HAVE CHANGED OR DISAPPEARED BETWEEN WHEN THIS WORK WAS WRITTEN AND WHEN IT IS READ.
For general information on our other products and services, please contact our Business Development Department in the U.S. at 317-572-3205. For details on how to create a custom For Dummies book for your business or organization, contact info@ dummies.biz. For information about licensing the For Dummies brand for products or services, contact BrandedRights&[email protected].
ISBN: 978-1-118-10001-1 Manufactured in the United States of America 10 9 8 7 6 5 4 3 2 1
These materials are the copyright of Wiley Publishing, Inc. and any dissemination, distribution, or unauthorized use is strictly prohibited.
Publishers Acknowledgments
Were proud of this book and of the people who worked on it. For details on how to create a custom For Dummies book for your business or organization, contact info@ dummies.biz. For details on licensing the For Dummies brand for products or services, contact BrandedRights&[email protected]. Some of the people who helped bring this book to market include the following: Acquisitions, Editorial, and Media Development Project Editor: Carrie A. Burchfield Editorial Manager: Rev Mengle Sr. Acquisitions Editor: Katie Feltman Business Development Representative: Sue Blessing Custom Publishing Project Specialist: Michael Sullivan Composition Services Sr. Project Coordinator: Kristie Rees Layout and Graphics: Melanee Habig Proofreader: Jessica Kramer
Publishing and Editorial for Technology Dummies Richard Swadley, Vice President and Executive Group Publisher Andy Cummings, Vice President and Publisher Mary Bednarek, Executive Director, Acquisitions Mary C. Corder, Editorial Director Publishing and Editorial for Consumer Dummies Diane Graves Steele, Vice President and Publisher, Consumer Dummies Composition Services Debbie Stailey, Director of Composition Services Business Development Lisa Coleman, Director, New Market and Brand Development
These materials are the copyright of Wiley Publishing, Inc. and any dissemination, distribution, or unauthorized use is strictly prohibited.
Contents at a Glance
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1 Chapter 1: Generating Smarter Products . . . . . . . . . . . . .3 Chapter 2: Taming the Tiger with Systems Engineering . . . . . . . . . . . . . . . . . . . . . . . . . . .13 Chapter 3: Revolutionizing Requirements . . . . . . . . . . . .23 Chapter 4: Getting Abstract with System Modeling . . .35 Chapter 5: Ensuring Tip-Top Quality . . . . . . . . . . . . . . . .43 Chapter 6: Enabling Large Teams to Collaborate and Manage Changes . . . . . . . . . . . . . . . . . . . . . . . . . .51 Chapter 7: Ten Ways to Win with Systems Engineering . . . . . . . . . . . . . . . . . . . . . . . . . . .61
These materials are the copyright of Wiley Publishing, Inc. and any dissemination, distribution, or unauthorized use is strictly prohibited.
Introduction
mart products are everywhere. They track your packages, control traffic lights, fly aircraft, and guide you to your destination. Theyre at the heart of the systems and services you use every day from smartphones to smart cars, to medical systems, and to aerospace and defense systems. Intelligent, instrumented, and interconnected products are revolutionizing the way we interact with each other and perform everyday tasks. Through a combination of electronics, software, sensors, and other hardware, we have the technology to create multifunctional customized products. And with our unlimited imaginations, we have the potential to define hundreds of innovative, value-driven, and personalized systems and services. The real challenge in creating smart products is one of organization: how can we effectively and efficiently integrate a complex combination of technologies to create an intelligent system of systems that fulfills its promises and lives up to its potential? The solution lies with systems engineering. Systems Engineering For Dummies, IBM Limited Edition, explains what systems engineering is and how it can help you harness the complexity inherent in developing smart, connected products. If youre looking for ways to expedite timeto-market, ensure business agility, and deliver high-quality smart products while cutting costs, Systems Engineering For Dummies, IBM Limited Edition, is the book for you.
These materials are the copyright of Wiley Publishing, Inc. and any dissemination, distribution, or unauthorized use is strictly prohibited.
These materials are the copyright of Wiley Publishing, Inc. and any dissemination, distribution, or unauthorized use is strictly prohibited.
Chapter 1
icture this: As you back down your driveway, your car sends a signal to your home to arm the alarm system and close the garage door. Your cell phone automatically synchronizes with your cars voice command system, and the built-in global positioning system (GPS) analyzes live traffic patterns and suggests a time-saving alternate route to work. Your car announces its due for an oil change, checks your schedule on your smartphone, suggests possible appointment times, and offers to initiate a call to your favorite service station. Your car can even inform you of potential flooding conditions expected during your commute home. Is it possible that a vehicle that was once known as a horseless carriage could be so incredibly smart and helpful? Absolutely! In this chapter, you discover what makes smart products tick, how they collaborate with each other, and why you should adopt new business processes for developing them.
These materials are the copyright of Wiley Publishing, Inc. and any dissemination, distribution, or unauthorized use is strictly prohibited.
These materials are the copyright of Wiley Publishing, Inc. and any dissemination, distribution, or unauthorized use is strictly prohibited.
These materials are the copyright of Wiley Publishing, Inc. and any dissemination, distribution, or unauthorized use is strictly prohibited.
These materials are the copyright of Wiley Publishing, Inc. and any dissemination, distribution, or unauthorized use is strictly prohibited.
Catering to Customers
A sizable chunk of the worlds population consists of experienced users of smart products. In 2010 alone, roughly 40 million personal navigation devices were sold throughout the world, and in 2008, over 55 million people snatched up iPods. If youre a frequent flyer, you dont fret if the weather turns ugly during a cross-country flight because you know the airplane youre flying on is equipped with smarts that ensure your safe passage. Savvy users are well aware of the capabilities of todays smart products and are driving demand for even smarter ones. Todays customers are demanding reliable, real-time, interactive products and they want them now! And if youre lucky (and smart) enough to deliver on time, dont rest yet, because before you know it, your customers will already be expecting an upgrade! By incorporating personalization and integration capabilities into your designs, you create products that cater to the users individual needs and adapt to the users environment. Customers want products that promise to make their lives easier and more enjoyable, yet each of them has a unique way of getting things done, and a distinct set of values, pet peeves, and idiosyncrasies. Customers want smart products as easy to customize as downloading the latest smartphone app!
These materials are the copyright of Wiley Publishing, Inc. and any dissemination, distribution, or unauthorized use is strictly prohibited.
Driver assisted safety alarms 360degree surround vision Hybrid & electric vehicle control
Software-intensive subsystems
These materials are the copyright of Wiley Publishing, Inc. and any dissemination, distribution, or unauthorized use is strictly prohibited.
These materials are the copyright of Wiley Publishing, Inc. and any dissemination, distribution, or unauthorized use is strictly prohibited.
10
These materials are the copyright of Wiley Publishing, Inc. and any dissemination, distribution, or unauthorized use is strictly prohibited.
11
If youre unable to develop complex products in a shorter cycle without compromising quality, you stand to lose revenue and tarnish your brand. Yet, smart, interconnected products often have hundreds even thousands of unique requirements, making it difficult to imagine how you can possibly maintain quality while shrinking development cycles. If youre not equipped to respond quickly to new market demands or competitive threats, dont be surprised if you lose market share to more nimble organizations. For many organizations, just getting the initial design right is challenging enough: nearly one-third of all devices produced today simply fail to meet performance or functional specifications. You can bet these devices will be voted off the island early! Just because you have top-notch technical talent working diligently on system design doesnt guarantee a successful outcome. Its many a system that has fallen short as a result of failures in subsystem interface specifications, requirements fidelity, or communication of key knowledge not engineering.
These materials are the copyright of Wiley Publishing, Inc. and any dissemination, distribution, or unauthorized use is strictly prohibited.
12
Planning
Requirements Analysis
Requirements
Design
CAD design BOM
Development
Implementation
In todays world, that sort of sequential, document-driven development process simply doesnt cut the mustard. Imagine trying to respond rapidly to unexpected market events or to new feature requests. Each change requires that you start from the beginning and work through the entire sequential process. Your business would dwindle away in no time flat! If your business depends on a smart system for its livelihood, you need to let go of the sequential, document-centric processes of the past and develop an entirely new set of core business processes for the future.
These materials are the copyright of Wiley Publishing, Inc. and any dissemination, distribution, or unauthorized use is strictly prohibited.
Chapter 2
ave you ever wondered how NASA successfully managed to develop as complex a system as the Apollo spacecraft? How disparate teams of design engineers, programmers, third-party manufacturers, and others worked together to pull off the first manned flight to the moon? Well, they couldnt have done it without the help of systems engineering. Systems engineering is an interdisciplinary approach to creating large, complex systems that meet a defined set of business and technical requirements. The aerospace and defense industries have been using systems engineering for a long time, and much of what theyve learned is now being applied in other industries. As transport systems, powergrids, and telephone and network systems become smarter, you need space-age methods to build them.
Systems engineering has been around since the 1940s, but it started gaining traction beyond the likes of NASA in the 1990s. Thats when manufacturers began to transform ordinary products into smart systems by incorporating information technology marking a turning point in product development. Only recently has software crept in to assume a leading role.
These materials are the copyright of Wiley Publishing, Inc. and any dissemination, distribution, or unauthorized use is strictly prohibited.
14
These materials are the copyright of Wiley Publishing, Inc. and any dissemination, distribution, or unauthorized use is strictly prohibited.
15
System
System
System
System
concept, design, creation, operation
Subsystem
Subsystem
Subsystem
Electrical Component
Software Component
Mechanical Component
Software Component
No matter how you slice it, systems engineering is all about applying discipline to the system development process. And that discipline comes in two distinct flavors: Technical discipline ensures that you rigorously execute a sensible development process, from concept to production to operation. Management discipline organizes the technical effort throughout the system lifecycle, including facilitating collaboration, defining workflows, and deploying development tools.
These materials are the copyright of Wiley Publishing, Inc. and any dissemination, distribution, or unauthorized use is strictly prohibited.
16
These materials are the copyright of Wiley Publishing, Inc. and any dissemination, distribution, or unauthorized use is strictly prohibited.
17
Over the past 20 or so years, experts in complex system design have developed and refined whats known as the V-model of the systems engineering process (see Figure 2-2). The V-model is a graphical representation of a series of steps and procedures for developing complex systems.
Concept of Operations (ConOps) System Specication
Acceptance Testing
Detailed Design
Unit/Device Testing
Software/Hardware Development
Implementation
Tracing the V from left to right, you execute the systems engineering process in a series of steps, as follows: Concept of Operations (ConOps): Identify and document key stakeholder needs, overall system capabilities, roles and responsibilities, and performance measures for system validation at the end of the project. System Specification: Map out a set of verifiable system requirements that meet the stakeholder needs defined during ConOps. High-Level Design: Design a high-level system architecture that satisfies the system requirements and provides for maintenance, upgrades, and integration with other systems.
These materials are the copyright of Wiley Publishing, Inc. and any dissemination, distribution, or unauthorized use is strictly prohibited.
Inte
gra
tion
and
High-Level Design
Rec
Subsystem Testing
om
pos
De com pos itio n
itio
System Testing
De ni tion and
18
These materials are the copyright of Wiley Publishing, Inc. and any dissemination, distribution, or unauthorized use is strictly prohibited.
19
These materials are the copyright of Wiley Publishing, Inc. and any dissemination, distribution, or unauthorized use is strictly prohibited.
20
These materials are the copyright of Wiley Publishing, Inc. and any dissemination, distribution, or unauthorized use is strictly prohibited.
21
SysML uses a simple diagram approach to model systems (so simple, some have called them cave paintings), where the basic unit of structure a block can be used to represent hardware, software, facilities, personnel, or any other element of a system. Through a series of nested structure diagrams, you define the internal structure and intended use of a particular system element (for instance, an antilock braking system). Then, through a separate series of nested behavior diagrams, you show how that system element interacts with others, and with actors (users, outside systems, or the environment), to accomplish or realize that behavior. In addition to modeling the structure (architecture) and dynamic behavior (functionality) of the system, SysML also allows you to model requirements and performance parameters. For instance, for an automotive system, you can create a requirements diagram to specify a constraint, such as come to a stop from 65 mph within 180 feet on a clean, dry surface, and parametric diagrams to specify the equations that govern the motion of the car. Best of all, you can use powerful new software tools think of it like building a simulator for a new race car. This means you can take it for a run and check the handling before its even built! By defining and organizing model constructs, SysML forces systems engineers and architects to be very clear and precise when designing a system. This reduces ambiguity and leads to higher quality, shorter development cycles, and reduced costs.
These materials are the copyright of Wiley Publishing, Inc. and any dissemination, distribution, or unauthorized use is strictly prohibited.
22
Home Security System Figure 2-3: A simple context diagram for a car.
You use a context diagram to define the boundaries, or context, of your system. In this case, the system is the car, and it interacts with three actors outside the system: the driver, the GPS system, and the home security system. An actor is anything a system interacts with, whether it is a user, another system, or the environment. You use a context diagram to scope out the system under consideration. By defining the system and its actors, you identify significant relationships, and thus, requirements and interfaces. You can then begin to map out interface specifications and data flows between the system and its actors. Without a context diagram, you may overlook an actor or two and come up short on your system requirements. For instance, if you failed to define the home security system as an actor in your cars ecosystem, your smart car wont be smart enough to arm your alarm system.
These materials are the copyright of Wiley Publishing, Inc. and any dissemination, distribution, or unauthorized use is strictly prohibited.
Chapter 3
Revolutionizing Requirements
In This Chapter
Acknowledging that change is good Covering all the requirements bases by including use cases Cascading requirements through the development process Analyzing the impacts of change Getting a grip (on requirements management)
ack in the good ole days, you developed requirements at the beginning of a project, you designed your product to meet those requirements, and if marketing came to you saying that the customer wanted a change (or two or three), you stomped your feet a bit before spouting off something about an onerous requirements change process that calls for 57 signatures. Not so anymore. In a volatile, competitive market in which success hinges on satisfying customers more than ever before, you have two choices: either change or cry. In this chapter, you discover how to engineer system requirements with change in mind and how to ensure your system design satisfies the requirements.
These materials are the copyright of Wiley Publishing, Inc. and any dissemination, distribution, or unauthorized use is strictly prohibited.
24
Understanding Context
Before you begin to establish an initial set of requirements for a smart product or system, it pays to take some time to think about the problem your product is trying to solve. For instance, if you set out to build a car, its critical that you understand exactly how it will be used and by whom. Will the car be used for city driving, highway driving, or racetrack driving? Does the target market consist primarily of elderly drivers, young men, or stay-at-home parents? Will the car be subject to harsh conditions, such as severe cold, salted roads, extreme heat, mountainous terrain, or high altitudes? Understanding context is critical to developing systems that achieve marketing and business goals. By context, we mean the set of actors (for instance, users, other systems, and the
These materials are the copyright of Wiley Publishing, Inc. and any dissemination, distribution, or unauthorized use is strictly prohibited.
25
environment) with which the system interacts, and how interactions between the system and its actors take place. Figure 3-1 shows a context diagram for a car with a built-in navigation system and a remote home security control system that is intended for use in winter climates. In this diagram, the car is treated as a black box that interacts with the following actors: the driver, the GPS system, the home security system, and the winter environment. Defining context helps you understand what functionality is required of the system and what exchanges occur between the system and its actors.
Driver Car
Winter Environment
Figure 3-1: The context of a system delineates boundaries and specifies interfaces.
Understanding context also helps ensure that you have considered all the necessary requirements, relationships, and interfaces before you begin the development process. For instance, if you omit the winter environment actor for your car, you may fail to specify requirements for a weather convenience package that includes heavy-duty battery cables and a protective chassis coating. At the highest level of abstraction, your system is a black box that interacts with an external set of actors. If you take a peek inside that black box, you see a set of interconnected subsystems (for instance, anti-lock brakes, navigation system, and so forth) that together make up your system. You can further decompose each subsystem into a set of interconnected components (and, perhaps, sub-subsystems). At every level of decomposition (for instance, system, subsystem, component) within your system, the context shifts.
These materials are the copyright of Wiley Publishing, Inc. and any dissemination, distribution, or unauthorized use is strictly prohibited.
26
Electrical Subsystem Figure 3-2: Context changes as you explore different levels within the system.
Understanding context delineates system boundaries and defines interfaces, setting the stage for the precise, accurate specification of system requirements.
These materials are the copyright of Wiley Publishing, Inc. and any dissemination, distribution, or unauthorized use is strictly prohibited.
27
System/Subsystem Requirements. These are the requirements that define what the system must be able to do. They start at a high systems level and are analyzed and decomposed to produce requirements for lower level subsystems. They may be expressed in common shall statements or in more advanced forms such as models and diagrams. At each level of abstraction, requirements define what a system should do and how it should do it, but not how it should be implemented. With the ever-increasing complexity of todays smart systems, its nearly impossible for you to nail down system requirements right from the start. And in a climate, such as consumer electronics, in which change trumps stability, you really dont want to freeze your requirements early in the development process.
These materials are the copyright of Wiley Publishing, Inc. and any dissemination, distribution, or unauthorized use is strictly prohibited.
28
Requirement: Braking
Requirement: Acceleration
derived Reqt
Veried by
Test case MaxAcceleration
Satised by
Power Subsystem
These materials are the copyright of Wiley Publishing, Inc. and any dissemination, distribution, or unauthorized use is strictly prohibited.
29
As you can see, the definition of requirements is expanding, as the lines between requirements and design become blurred, and as the linkages between testing and design become critical. Your final set of requirements is a combination of the initial high-level system requirements and requirements derived during the design process.
These materials are the copyright of Wiley Publishing, Inc. and any dissemination, distribution, or unauthorized use is strictly prohibited.
30
These materials are the copyright of Wiley Publishing, Inc. and any dissemination, distribution, or unauthorized use is strictly prohibited.
31
If you overlook a requirement, you may run into real problems. For instance, you can design the most phenomenal automobile cup holder in the world, but if you locate it just below the car stereo so your grande latte blocks the controls because you failed to relate an allow ample clearance requirement to your design, youll miss the mark. Mistakes like this can really cost you.
These materials are the copyright of Wiley Publishing, Inc. and any dissemination, distribution, or unauthorized use is strictly prohibited.
32
These materials are the copyright of Wiley Publishing, Inc. and any dissemination, distribution, or unauthorized use is strictly prohibited.
33
Traceability helps ensure that you comply with regulations and standards, avoid overlooking requirements, and stay focused on the overall goals of the project. By establishing end-to-end traceability links, youre able to evaluate exactly what is impacted by the latest requirement change or an alternative design choice before you make the change.
These materials are the copyright of Wiley Publishing, Inc. and any dissemination, distribution, or unauthorized use is strictly prohibited.
34
These materials are the copyright of Wiley Publishing, Inc. and any dissemination, distribution, or unauthorized use is strictly prohibited.
Chapter 4
formula is a kind of model. It captures mathematical relationships among input variables and represents them with a mathematical structure that applies over a wide range of inputs. Visualizing the formula helps you get a better understanding of the relationships between elements of the structure. And using the formula allows you to test a whole range of different possibilities until you find one that works for you. In this chapter, you explore how you can use system models to manage complexity as well as abstract essential relationships within a system and test inexpensively before you build.
These materials are the copyright of Wiley Publishing, Inc. and any dissemination, distribution, or unauthorized use is strictly prohibited.
36
Minivan Structure
Chassis
Rotor
Anti-Lock Controller
Hub Assembly
Tire
Traction Detector
Brake Modulator
Sensor
These materials are the copyright of Wiley Publishing, Inc. and any dissemination, distribution, or unauthorized use is strictly prohibited.
37
Structural models, like the simplified architectural model shown in Figure 4-1, capture the hierarchical structure of the system architecture and illustrate connections between elements of the model. Figure 4-2 shows another piece of the full architectural model: an insiders view of how the parts of the anti-lock controller subsystem interact with each other and with the hub assembly sensor. In this case, the sensor output is connected to the input of the traction detector, and the traction detector output is connected to the input of the brake modulator. This simple diagram illustrates connections in order to indicate intended usage but doesnt specify the conditions under which the interactions actually occur. You use behavior models (which we discuss in the next section) to describe the sequence of events that must happen in order for the interactions to occur (for instance, the sensor reading indicates a loss of traction, which causes the traction detector to trigger the brake modulator).
Sensor
Traction Detector
Brake Modulator
Anti-Lock Controller
Structural models like these can show physical architecture, as in the examples above, or can be used to show logical architecture. Logical architectures are being used more and more in developing complex systems because they allow engineers to reason about functional interactions without specifying a particular physical structure. Take the car in Figure 4-1. A few decades back, car subsystems, such as brakes, engine, and radio, were all completely separate, and the physical architecture was all that was needed to understand and build them. Now, you may consider the logical architecture of a car to contain elements such as these:
These materials are the copyright of Wiley Publishing, Inc. and any dissemination, distribution, or unauthorized use is strictly prohibited.
38
These materials are the copyright of Wiley Publishing, Inc. and any dissemination, distribution, or unauthorized use is strictly prohibited.
39
Off
start engine
stop engine
Operate Idling
engage accelerator when speed = 0
release brake
Accelerating
engage brake
Braking
For complex systems, you need hordes of little behavior models to represent all the activity that takes place. In many cases, one activity triggers an action in another part of the system, so your individual models are interconnected. By the time youre done modeling all the activity, youll have one big, intricate, uniform, and consistent model of overall system behavior. By using standard modeling constructs and semantics, such as the ones provided by Systems Modeling Language (SysML), you can use commercial software tools to automate the execution of system behavior models. Tools can automatically translate modeling constructs, such as state transition diagrams, into if-then-execute code statements. This way, you can simulate system behavior in the software, enabling you to perform what-if studies, look at design alternatives, and conduct impact analyses before you build your system. Trade studies, which used to take hours or days, can be completed in minutes in this way.
These materials are the copyright of Wiley Publishing, Inc. and any dissemination, distribution, or unauthorized use is strictly prohibited.
40
These materials are the copyright of Wiley Publishing, Inc. and any dissemination, distribution, or unauthorized use is strictly prohibited.
41
or what the system uses. This is best done in specific, step-by-step, narrative-like stories of system usage, such as use cases, and illustrated as SysML activity diagrams. Refine your system requirements, and make them specific and complete (remember, source requirements can leave out a lot of important stuff). The same usage scenarios become the basis for system testing later based on what youve learned from this usage analysis. Realization: Define structure (architecture) and behavior (function) models that together describe how each usage is achieved by the system through collaboration among elements within the system architecture. Required behavior is realized (made real) in the elements of the system. Now, this is quite different from the traditional design process of allocating requirements to physical components and then hoping that it will work in actual usage. Here, usage is defined explicitly and then you design the system based on these specific usages, so you know the system is designed to meet usage requirements. Execution: Execute the behavior models to demonstrate that your design satisfies the requirements. Simple, executable models, even at high levels of abstraction are a great and cost-saving way to discover tricky problems, miscommunications, missing or ambiguous requirements, and other schedule-busting issues early on. They get everyone on the same page before anything is actually built. Start at the highest level of decomposition in your system design: the system level (for instance, a minivan). After establishing context and usage models, you define your highlevel architecture and behavior models based on the system requirements. Then you execute the models to demonstrate that they do, indeed, accomplish the systems intended uses. After youve completed the process for the system level, repeat the process for the next level of decomposition: the subsystem level. Continue to drill down through levels of decomposition, shifting your context as you proceed to model at each level, until you reach the lowest level the component level where you specify the physical implementation of your design (for instance, electronics, software, or mechanical design). At each level, reach horizontally across the V and perform verification and validation, using the model as the basis.
These materials are the copyright of Wiley Publishing, Inc. and any dissemination, distribution, or unauthorized use is strictly prohibited.
42
These materials are the copyright of Wiley Publishing, Inc. and any dissemination, distribution, or unauthorized use is strictly prohibited.
Chapter 5
t used to be that quality assurance was a process that took place at the end of the development cycle, as if quality was a tangible feature that you could add to the product before shipping. And when defects were discovered, it took a major effort to identify the root causes and fix the problems. In todays world of increasingly complex software-driven smart products, quality must become an integral part of the systems development process for there to be any hope of delivering products that are not only defect-free, but demonstrate a fitness for purpose. In this chapter, you take a look at how systems engineering helps identify quality issues through validation and verification early in the development cycle, leading to improved chances for project success.
These materials are the copyright of Wiley Publishing, Inc. and any dissemination, distribution, or unauthorized use is strictly prohibited.
44
Unit testing
Testing at the lowest system level is tightly coupled with the implementation of your design. You test each hardware or software component, fix defects, and redo your implementation. For software, this may involve several iterative cycles of coding, testing, and recoding until youve thoroughly debugged the software. After youve addressed known defects, youre ready to verify that the component satisfies the requirements allocated to it. Remember when you developed the detailed design of your system? Well, part of that detailed design phase involved defining specific component-level requirements and creating a Unit Verification Plan. Now, you use the test cases defined in that Unit Verification Plan to verify whether the component satisfies the allocated requirements. If defects are discovered, go back to your implementation and fix the defects. After the components have been thoroughly vetted, they are ready to be integrated into higher-level assemblies or subsystems.
These materials are the copyright of Wiley Publishing, Inc. and any dissemination, distribution, or unauthorized use is strictly prohibited.
45
Make sure your Unit Verification Plan thoroughly documents the specific test cases and results for each component and that you use a traceability matrix to tie these tests back to the specific requirements they verify. This ensures that if the tests all pass, the system satisfies all the requirements.
System testing
Through progressive iteration, you integrate, test, and verify subsystems until you reach the system level (see Figure 5-1). Each iteration consists of careful, thorough testing with
These materials are the copyright of Wiley Publishing, Inc. and any dissemination, distribution, or unauthorized use is strictly prohibited.
46
Integration
veried subsystems subsystems
Verication
veried system
If all goes well, youll have a verified system that you can demonstrate to stakeholders. Youre able to prove that all system requirements have been satisfied, confirming that the system was built correctly.
These materials are the copyright of Wiley Publishing, Inc. and any dissemination, distribution, or unauthorized use is strictly prohibited.
47
designed and implemented perfectly, satisfying all the requirements and then some, but if it doesnt fulfill its intended use, its bound to be a flop. Take, for instance, the case of a well-engineered traffic light control system. Expertly designed to control the sequence of traffic lights in a large city, this system might fail to meet its intended purpose to reduce congestion by streamlining the flow of traffic if no one bothered to study the citys typical traffic patterns and map them to system requirements for timing sequences. The goal of system acceptance testing is to validate that the system fulfills its intended purpose. During the conceptual phase of your project, you identified key stakeholder needs, overall system capabilities, usage scenarios (CONOPS and use cases) and performance measures for system validation. You defined a System Validation Plan, and, if you were smart, you put it in a safe and didnt let anyone modify it to accommodate rogue objectives like skimping on quality to save a buck or two. Your System Validation Plan is the rock upon which you shall prove that your system achieves its intended goals. Conduct system validation with real live users, and measure performance as defined by your plan, possibly including customer satisfaction. Validation may require data collection before, during, and after system deployment. After carefully documenting system performance, meet with stakeholders, analyze all the data, and assess project success. When a system problem is observed during testing, usually theres a fault in the system that can be corrected by making a change to the system. Notice, however that the problem could be something else. If your verification plan or test procedure is wrong or outdated, then the test may fail due to no fault in the system. Similarly, if a requirement is wrong, ambiguous or incomplete (especially an interface requirement), that may be the source of the problem all the more reason to focus on getting requirements and test plans correct early in the game. When verification testing turns up a problem, go back and check your requirements and design, make the necessary adjustments, and repeat the testing.
These materials are the copyright of Wiley Publishing, Inc. and any dissemination, distribution, or unauthorized use is strictly prohibited.
48
These materials are the copyright of Wiley Publishing, Inc. and any dissemination, distribution, or unauthorized use is strictly prohibited.
49
$7,600/defect
After product release
$960/defect
During the QA/testing phase
$240/defect $80/defect
During the requirements phase During the design and implementation phase
Figure 5-2: The cost of correcting defects increases dramatically throughout the development process.
These materials are the copyright of Wiley Publishing, Inc. and any dissemination, distribution, or unauthorized use is strictly prohibited.
50
These materials are the copyright of Wiley Publishing, Inc. and any dissemination, distribution, or unauthorized use is strictly prohibited.
Chapter 6
mall, intimate product development teams really know how to collaborate effectively: they share critical information, use the same development tools, and notify each other whenever they change a requirement, discover a defect, or throw a party! Multiply the size of the team by a factor of oh, say, 100, give them a wish list of 700ish requirements, tell them they have six months to build the product and you can kiss your job (and all party invitations) goodbye. How can you capture the magic that exists for small development teams and adapt it for large development teams? This chapter will show you how.
These materials are the copyright of Wiley Publishing, Inc. and any dissemination, distribution, or unauthorized use is strictly prohibited.
52
These materials are the copyright of Wiley Publishing, Inc. and any dissemination, distribution, or unauthorized use is strictly prohibited.
53
These materials are the copyright of Wiley Publishing, Inc. and any dissemination, distribution, or unauthorized use is strictly prohibited.
54
These materials are the copyright of Wiley Publishing, Inc. and any dissemination, distribution, or unauthorized use is strictly prohibited.
55
its not enough. If one member of a development team makes a change (for instance, to a requirement or a system model), and it is not communicated immediately to the rest of the team, the result is chaos.
Tracking changes
When engineering a system, critical information is constantly changing by design. Systems engineering involves (among other things) iterative design and test processes: You design your system, develop models, test the models, redesign to fix defects, and so forth. So youre constantly updating models, test results, and other information. Requirements can change, too, as market and business needs evolve. Traditionally, large engineering teams have relied on textbased documentation as the source of all project-related information. File cabinets full of requirements documents, high-level architecture documents, design documents, and other documents often serve as the foundation for all system knowledge. But documents are limiting in that they simply record information and dont easily allow you to change the information. If you rely solely on documentation, your documents will be obsolete before theyve been approved! Systems development teams need a consistent, flexible mechanism for capturing critical information and facilitating updates while maintaining integrity.
Communicating changes
The traditional method of creating a few dozen critical documents and exchanging information via email just doesnt work well in the complex development environments of today. With the number of requirements for complex systems in the hundreds, or even thousands, relying on e-mail exchange only results in chaos and confusion. Systems development teams need a vehicle that facilitates effective exchanges among distributed team members. A robust platform for sharing information is the only way to avoid the problems that result when multiple versions of critical documents are floating around all over the place.
These materials are the copyright of Wiley Publishing, Inc. and any dissemination, distribution, or unauthorized use is strictly prohibited.
56
These materials are the copyright of Wiley Publishing, Inc. and any dissemination, distribution, or unauthorized use is strictly prohibited.
57
Reqmts
Publishing System
Requirements
Data
Models
Models
Tests
Templates
Test results
Figure 6-1: A virtual repository of design information can help improve collaboration.
These materials are the copyright of Wiley Publishing, Inc. and any dissemination, distribution, or unauthorized use is strictly prohibited.
58
These materials are the copyright of Wiley Publishing, Inc. and any dissemination, distribution, or unauthorized use is strictly prohibited.
59
These materials are the copyright of Wiley Publishing, Inc. and any dissemination, distribution, or unauthorized use is strictly prohibited.
60
Table 6-1
Key Capabilities End-to-end live traceability to source, mission, and system/ subsystem requirements Model-based Systems Model requirements, system funcDevelopment tionality, realization, trade studies, execution, and validation Change and Configuration Manage collaboration, Management change, shared repository, and configuration Automated Documentation Generate requirements, design, Generation and specification documents Integrated Systems and Software Flow-down of requirements and Engineering models, embedded development
These materials are the copyright of Wiley Publishing, Inc. and any dissemination, distribution, or unauthorized use is strictly prohibited.
Chapter 7
ystems engineering can give you the competitive edge you need to succeed in developing smart products that deliver tangible value to your customers (and your bottom line). By making systems engineering a part of your core business processes, youre more likely to produce the products people really want with fewer costly defects while enhancing your ability to respond to market dynamics. In this chapter, you look at ten examples of companies that adopted best practices in systems engineering and got real, measurable results.
These materials are the copyright of Wiley Publishing, Inc. and any dissemination, distribution, or unauthorized use is strictly prohibited.
62
These materials are the copyright of Wiley Publishing, Inc. and any dissemination, distribution, or unauthorized use is strictly prohibited.
63
These materials are the copyright of Wiley Publishing, Inc. and any dissemination, distribution, or unauthorized use is strictly prohibited.
64
These materials are the copyright of Wiley Publishing, Inc. and any dissemination, distribution, or unauthorized use is strictly prohibited.
65
The organization deployed a unified requirements management solution designed to support requirements analysis throughout the company. By providing ubiquitous access to a centralized requirements repository, the solution eliminates confusion, costly rework, and duplication of effort. Most importantly, the solution facilitates end-to-end requirements traceability ensuring that the product rolling out the door fulfills the customers needs.
These materials are the copyright of Wiley Publishing, Inc. and any dissemination, distribution, or unauthorized use is strictly prohibited.
66
These materials are the copyright of Wiley Publishing, Inc. and any dissemination, distribution, or unauthorized use is strictly prohibited.
67
These materials are the copyright of Wiley Publishing, Inc. and any dissemination, distribution, or unauthorized use is strictly prohibited.
68
These materials are the copyright of Wiley Publishing, Inc. and any dissemination, distribution, or unauthorized use is strictly prohibited.