A Practical Guide to SysML: The Systems Modeling Languageby Sanford Friedenthal
Systems engineers and architects must understand how all the parts of a system work together to satisfy its requirements. SysML is a general purpose graphical modeling language used to specify, analyze, and design systems that may include hardware, software, and personnel. It allows engineers to describe how a system interacts with its environment, and how its parts must interact to achieve the desired system behavior and performance. The SysML model provides a shared view of the system, enabling a design team to surface issues early and prevent problems that would otherwise delay development and degrade design quality. Since SysML is based on UML, it also facilitates integration between systems and software development. SysML is now being adopted by companies across a broad range of industry, including Aerospace and Defense, Automotive, and IT System Developers.
This book provides a comprehensive and practical guide for modeling systems with SysML. It includes a full description of the language along with a quick reference guide, and shows how the language can be applied to specify, analyze, and design systems. It contains examples to help readers understand how SysML can be used in practice. The book also includes guidance on how an organization or project can transition to model based systems engineering using SysML, with considerations for processes, methods, tools, and training.
*The authoritative guide for understanding and applying SysML
*Authored by the foremost experts on the language
*Language description, examples, and quick reference guide included
Read an Excerpt
A Practical Guide to SysMLThe Systems Modeling Language
By Sanford Friedenthal Alan Moore Rick Steiner
MORGAN KAUFMANNCopyright © 2012 Elsevier Inc.
All right reserved.
Chapter OneSystems Engineering Overview
The Object Management Group's OMG Sys™ is a general-purpose graphical modeling language for representing systems that may include combinations of hardware, software, data, people, facilities, and natural objects. SysML supports the practice of model-based systems engineering (MBSE) that is used to develop system solutions in response to complex and often technologically challenging problems.
This chapter introduces the systems engineering approach independent of modeling concepts to set the context for how SysML is used. It describes the motivation for systems engineering, introduces the systems engineering process, and then describes a simplified automobile design example to highlight how complexity is addressed by the process. This chapter also summarizes the role of standards, such as SysML, to help codify the practice of systems engineering.
The next three chapters in Part I introduce model-based systems engineering, and provide an overview of SysML, and a partial SysML model of the automobile design example introduced in this chapter.
1.1 MOTIVATION FOR SYSTEMS ENGINEERING
Whether it is an advanced military aircraft, a hybrid vehicle, a cell phone, or a distributed information system, today's systems are expected to perform at levels undreamed of a generation ago. Competitive pressures demand that the systems leverage technological advances to provide continuously increasing capability at reduced costs and within shorter delivery cycles. The increased capability drives requirements for increased functionality, interoperability, performance, reliability, and smaller size.
The interconnectivity among systems also places increased demands on systems. Systems can no longer be treated as stand-alone, but behave as part of a larger whole that includes other systems as well as humans. Systems are expected to support many different uses as part of an interconnected system of systems (SoS). These uses drive evolving requirements that may not have been anticipated when the system was originally developed. An example is how the interconnectivity provided by email and smart phones impacts the requirements on our day-to-day activities. Clearly, email and the use of smart phones can result in unanticipated requirements on us, the users of these technologies, and affect who we communicate with, how often, and how we respond. The same is true for interconnected systems.
The practices to develop systems must support these increasing demands. Systems engineering is an approach that has been dominant in the aerospace and defense industry to provide system solutions to technologically challenging and mission-critical problems. The solutions often include hardware, software, data, people, and facilities. Systems engineering practices have continued to evolve to address the increasing complexity of today's systems, which is not limited to aerospace and defense systems. As a result, the systems engineering approach has been gaining broader recognition and acceptance across other industries such as automotive, telecommunications, and medical equipment, to name a few.
1.2 THE SYSTEMS ENGINEERING PROCESS
A system consists of a set of elements that interact with one another, and can be viewed as a whole that interacts with its external environment. Systems engineering is a multidisciplinary approach to develop balanced system solutions in response to diverse stakeholder needs. Systems engineering includes the application of both management and technical processes to achieve this balance and mitigate risks that can impact the success of the project. The systems engineering management process is applied to ensure that development cost, schedule, and technical performance objectives are met. Typical management activities include planning the technical effort, monitoring technical performance, managing risk, and controlling the system technical baseline. The systems engineering technical processes are applied to specify, design, and verify the system to be built. The practice of systems engineering is not static, but continues to evolve to deal with increasing demands.
A simplified view of the systems engineering technical processes is shown in Figure 1.1. The System Specification and Design process is used to specify the system requirements and allocate the component requirements to meet stakeholder needs. The components are then designed, implemented, and tested to ensure that they satisfy their requirements. The System Integration and Test process includes activities to integrate the components into the system and verify that the system requirements are satisfied. These processes are applied iteratively throughout the development of the system, with ongoing feedback between the different processes. In more complex applications, there are multiple levels of system decomposition beginning at an enterprise or SoS level. In those cases, variants of this process are applied recursively to each intermediate level of the design down to the level at which the components are purchased or built.
The System Specification and Design process in Figure 1.1 includes the following activities to provide a balanced system solution that addresses the diverse stakeholders' needs:
* Elicit and analyze stakeholder needs to understand the problem to be solved, the goals the system is intended to support, and the effectiveness measures needed to evaluate how well the system supports the goals
* Specify the required system functionality, interfaces, physical and performance characteristics, and other quality characteristics to support the goals and effectiveness measures
* Synthesize alternative system solutions by partitioning the system design into components that can satisfy the system requirements
* Perform trade-off analysis to evaluate and select a preferred solution that satisfies system requirements and provides the optimum balance to achieve the overall effectiveness measures
* Maintain traceability from the system goals to the system and component requirements and verification results to ensure that requirements and stakeholder needs are addressed
1.3 TYPICAL APPLICATION OF THE SYSTEMS ENGINEERING PROCESS
The System Specification and Design process can be illustrated by applying this process to an automobile design. A multidisciplinary systems engineering team is responsible for executing this process. The participants and roles of a typical systems engineering team are discussed in Section 1.4.
The team must first identify the stakeholders and analyze their needs. Stakeholders include the purchaser of the car and the users of the car. In this example, the user includes the driver and the passengers. Each of their needs must be addressed. Stakeholder needs further depend on the particular market segment, such as a family car versus a sports car versus a utility vehicle. For this example, we assume the automobile is targeted toward a typical mid-career individual who uses the car for his or her daily transportation needs.
In addition, a key tenet of systems engineering is to address the needs of other stakeholders who may be impacted throughout the system life cycle, so additional stakeholders include the manufacturers that produce the automobile and those who maintain the automobile. Each of their concerns must be addressed to ensure a balanced life-cycle solution. Less obvious stakeholders are governments that express their needs via laws and regulations. Clearly, each stakeholder's concern is not of equal importance to the development of the automobile, and therefore stakeholder concerns must be properly weighted. Analysis is performed to understand the needs of each stakeholder, and define relevant effectiveness measures with target values. The target values are used to bound the solution space, to evaluate the alternatives, and to discriminate the solution from competitor solutions. In this example, the effectiveness measures may relate to the primary goal for addressing the transportation needs such as performance, comfort, fuel economy, range between refills or recharge, safety, reliability, repair time, purchase cost, environmental impact, and other important but difficult to quantify measures such as aesthetic qualities.
The system requirements are specified to address stakeholder needs and associated effectiveness measures. This begins with a definition of the system boundary so that clear interfaces can be established between the system and external systems and users as shown in Figure 1.2. In this example, the driver and passengers (not shown) are external users who interact with the automobile. The gas pump and maintenance equipment (not shown) are examples of external systems that the vehicle interacts with. In addition, the vehicle interacts with the physical environment such as the road. All of these external systems, users, and the physical environment must be specified to clearly demarcate the system boundary and its associated interfaces.
The functional requirements for the automobile are specified by analyzing what the system must do to support its overall goals. This vehicle must perform functions related to accelerating, braking, and steering, and many additional functions to address driver and passenger needs. The functional analysis identifies the inputs and outputs for each function. As shown in the example in Figure 1.3, the functional requirement to accelerate the automobile requires an acceleration input from the driver and produces outputs that correspond to the automobile forces and the speedometer reading for the driver. The functional requirements analysis also includes specifying the sequence and ordering of the functions.
Functional requirements must also be evaluated to determine the required level of performance. As indicated in Figure 1.4, the automobile is required to accelerate from 0 to 60 miles per hour (mph) in less than 8 seconds under specified conditions. Similar performance requirements can be specified for stopping distance from 60 to 0 mph and for steering requirements such as the turning radius.
Additional requirements are specified to address the concerns of each stakeholder. Example requirements include specifying riding comfort, fuel efficiency, reliability, maintainability, safety, and emissions. Physical characteristics, such as maximum vehicle weight, may be derived from the performance requirements, or maximum vehicle length may be dictated by other concerns such as standard parking space dimensions. The system requirements must be clearly traceable to stakeholder needs and validated to ensure that the requirements address their needs. The early and ongoing involvement of representative stakeholders in this process is critical to the success of the overall development effort.
Excerpted from A Practical Guide to SysML by Sanford Friedenthal Alan Moore Rick Steiner Copyright © 2012 by Elsevier Inc.. Excerpted by permission of MORGAN KAUFMANN. All rights reserved. No part of this excerpt may be reproduced or reprinted without permission in writing from the publisher.
Excerpts are provided by Dial-A-Book Inc. solely for the personal use of visitors to this web site.
Meet the Author
Sanford Friedenthal is an MBSE Consultant. He has been an advocate for model-based systems engineering and a leader of the industry team that developed SysML from its inception through its adoption by the OMG.
Alan Moore is an Architecture Modeling Specialist at The MathWorks. He has extensive experience in the development of real-time and object-oriented methodologies and their application. Alan was co-chair of the OMG's Real-time Analysis and Design Working Group and served as the language architect during the development of SysML.
Rick Steiner is an independent consultant focusing on pragmatic application of systems engineering modeling techniques. He culminated his 29 year career at Raytheon as an Engineering Fellow, Raytheon Certified Architect and INCOSE Expert Systems Engineering Professional (ESEP).
Mr. Steiner has been an advocate, consultant, and instructor of model driven systems development for over 20 years. He has served as chief engineer, architect, or lead system modeler for several large scale electronics programs, incorporating the practical application of the OOSEM methodology and generation of Department of Defense Architecture Framework (DoDAF) artifacts from complex system models.
Mr. Steiner has been a key contributor to both the original requirements for SysML and the development of SysML specification. While his main technical contribution has been in the area of allocations, requirements, and the sample problem, Mr. Steiner has also served as co-chair of the SysML Revision Task Force (RTF). He continues to provide frequent tutorials and workshops on SysML and model driven engineering topics at INCOSE events, NDIA conferences, and other corporate engagements.
and post it to your social network
Most Helpful Customer Reviews
See all customer reviews >
She walks in. Um this is a gun free rp. No guns allowed. She puts her hand out to get the gun from him