ebook img

Agile Systems Engineering PDF

432 Pages·2016·88.216 MB·English
Save to my drive
Quick download
Download
Most books are stored in the elastic cloud where traffic is expensive. For this reason, we have a limit on daily download.

Preview Agile Systems Engineering

Agile Systems Engineering Agile Systems Engineering Bruce Powel Douglass, Ph.D. Chief Evangelist IBM Internet of Things AMSTERDAM(cid:129)BOSTON(cid:129)HEIDELBERG(cid:129)LONDON NEWYORK(cid:129)OXFORD(cid:129)PARIS(cid:129)SANDIEGO SANFRANCISCO(cid:129)SINGAPORE(cid:129)SYDNEY(cid:129)TOKYO MorganKaufmannisanimprintofElsevier AcquiringEditor:ToddGreen EditorialProjectManager:CharlieKent ProjectManager:PriyaKumaraguruparan CoverDesigner:VictoriaPearsonEsser MorganKaufmannisanimprintofElsevier 225WymanStreet,Waltham,MA02451,USA r2016ElsevierInc.Allrightsreserved. Nopartofthispublicationmaybereproducedortransmittedinanyformorbyanymeans,electronicor mechanical,includingphotocopying,recording,oranyinformationstorageandretrievalsystem,without permissioninwritingfromthepublisher.Detailsonhowtoseekpermission,furtherinformationaboutthe Publisher’spermissionspoliciesandourarrangementswithorganizationssuchastheCopyrightClearance CenterandtheCopyrightLicensingAgency,canbefoundatourwebsite:www.elsevier.com/permissions. Thisbookandtheindividualcontributionscontainedinitareprotectedundercopyrightbythe Publisher(otherthanasmaybenotedherein). Notices Knowledgeandbestpracticeinthisfieldareconstantlychanging.Asnewresearchandexperience broadenourunderstanding,changesinresearchmethods,professionalpractices,ormedicaltreatment maybecomenecessary. Practitionersandresearchersmustalwaysrelyontheirownexperienceandknowledgein evaluatingandusinganyinformation,methods,compounds,orexperimentsdescribedherein. Inusingsuchinformationormethodstheyshouldbemindfuloftheirownsafetyandthe safetyofothers,includingpartiesforwhomtheyhaveaprofessionalresponsibility. Tothefullestextentofthelaw,neitherthePublishernortheauthors,contributors,oreditors,assume anyliabilityforanyinjuryand/ordamagetopersonsorpropertyasamatterofproductsliability, negligenceorotherwise,orfromanyuseoroperationofanymethods,products,instructions,orideas containedinthematerialherein. ISBN:978-0-12-802120-0 BritishLibraryCataloguing-in-PublicationData AcataloguerecordforthisbookisavailablefromtheBritishLibrary. LibraryofCongressCataloging-in-PublicationData AcatalogrecordforthisbookisavailablefromtheLibraryofCongress. ForInformationonallMorganKaufmannpublications visitourwebsiteatwww.mkp.com To my loving supportive mate and Triathlon Sherpa extraordinaire, Sarah—You’re Awesome. About the Author Bruce was raised by wolves in the Oregon wilderness. He taught himself to read at age 3 and calculus before age 12. He dropped out of school when he was 14 and traveled around the US for a few years before entering the University of Oregon as a mathematics major. He eventually received his M.S. in exercise physiology from the University of Oregon and his Ph.D. in neurocybernetics from the USD Medical School, where he developed a branch of mathematics called autocorrelative factor analysis for studying information processing in multicellular biological neural systems. Bruce has worked as a software developer and systems engineer in real-time embedded systems for over 30 years and is a well-known speaker, author, and consultant in the area of real-time embedded systems. He has been on the Advisory Board of the Embedded Systems and UML World conferences where he has taught courses in systems engineering, project estimation and scheduling, project management, object-oriented analysis and design, communications protocols, finite state machines, design patterns, and safety-critical systems design. He develops and teaches courses and consults in real-time systems and software design and project management and has done so for many years. He has authored articles for a many journals and periodicals, especially in the real-time domain. He is the Chief Evangelist for IBM Internet of Things (IoT). Being a Chief Evangelist is much like being a Chief Scientist, except for the burning bushes and stone tablets. Bruce worked with UML partners on the specification of the UML and SysML standards. He ® developed the first UML Profile for DoDAF for the Rhapsody modeling tool as well as other profiles such as a Fault Tree Analysis Profile and a Security Analysis Profile. He has been a co-chair of the Object Management Group’s Real-Time Analysis and Design Working Group. He is the author of several other books on systems and software development, including Doing Hard Time: Developing Real-Time Systems with UML, Objects, Frameworks and Patterns (Addison-Wesley, 1999), Real-Time Design Patterns: Robust Scalable Architecture for Real-Time Systems (Addison-Wesley, 2002), Real-Time UML 3rd Edition: Advances in the UML for Real-Time Systems (Addison-Wesley, 2004), Real-Time Agility (Addison-Wesley, 2009), Design Patterns for Embedded Systems in C (Elsevier, 2011), Real-Time UML Workshop for Embedded Systems (Elsevier, 2014) and several others, including a short textbook on table tennis. xv xvi About the Author Bruce enjoys classical music and has played classical guitar professionally. He has competed in several sports, including table tennis, ultramarathon bicycle racing, running, and full-contact Tae Kwon Do, although he currently only fights inanimate objects that don’t hit back. He has recently gotten back into racing triathlons and ultramarathon cycling and completed his first Ironman triathlon in 2014. Bruce does extensive consulting and training throughout the world. If you’re interested, contact him at [email protected]. Preface Products are becoming more capable and complex at an exponential rate. Additionally, the safety, reliability, and security concerns for these systems are making these systems much more difficult to engineer. Simultaneously, product development cycles are shrinking. Clearly, change in needed. We need to be able to produce more capable systems in less time and with fewer defects. One touted solution to this problem is to eschew text as the primary means for capturing engineering data. While text is wonderfully expressive, it is ambiguous and woefully imprecise. Modeling using more formally defined languages (notably, in this context, UML and SysML) claims to improve specific engineering data. If only we could figure out how. Another offered solution is agile methods. These have been developed in the software IT community although they have begun to be applied to embedded and real-time systems as well. However, the agile literature is (almost) entirely focused on desktop or IT software development. The development environments they consider are (almost) exclusively small co-located teams where there are no safety, reliability, or security concerns. And no co-development of electronics or mechanical parts. So the systems engineer is left to wonder, “How does this apply to ME and my work?” The agile literature offers no answer. There are (good) books on systems engineering. There are (also good) books on SysML and Model-Based Systems Engineering (MBSE). There are books on agile methods for software (and some of those are good too). However, there is currently no book that attempts to integrate these concepts together into a cohesive, usable approach for systems engineering. This book is meant to address that need. We start with a short introduction to the discipline of systems engineering followed by a brief discussion of agile methods, as they are discussed in the (mostly software) literature, including their benefits. Rounding out the introductory portion of the book, there is a chapter on basic SysML. With that, we are ready to start on the journey to understanding how to effectively and efficiently apply MBSE in Real Life (IRL). xvii xviii Preface The approach in the book is based on the author’s Harmony Agile Systems Engineering Process. The software development aspects of this process are described in detail elsewhere1; this book only addresses the systems engineering concerns. The Harmony Agile Systems Engineering process is an agile, model-centric approach to developing the engineering data required of systems engineering; requirements, architectures, interfaces, and dependability analyses are the foremost among these. The Harmony process has been developed and honed by the decades of systems experience of the author in real projects that fly, drive, and otherwise perform all around the world. There is a saying among educators—“I show you, and you see. I tell you and you hear. You do it and you understand.” To that end, there are extensive examples in the book to illustrate the details of executing the engineering steps involved. These examples contain aspects from multiple engineering disciplines, including software, electronic, and mechanical engineering. The first of these examples is a high-end running treadmill. The second, and more complex, example is a wearable robotic industrial exoskeleton (known as a waldo) capable of carrying 1500kg. Each of the primary activities of the Harmony Agile Systems Engineering process is discussed and then demonstrated with these and other examples. The reader is urged to construct their own solutions to the problems presented and to build the models described in these chapters. Audience The primary audience for this book is, naturally enough, systems engineers. This means engineers whose primary focus is the specification and design of systems that will be implemented (generally) by multiple engineering disciplines. Systems engineers specify the system properties of the product but leave discipline-specific details to the appropriate downstream engineering team. Some of those downstream engineers may find the information in this book of interest as well, especially the details of how the systems engineering data are formatted and adapted to meet their needs in the Handoff activity. Goals As I travel throughout the world, I am struck by the difficulty systems engineers have in applying MBSE approaches. The primary language—SysML—is daunting. SysML includes the 800-or-so pages of the UML specification and adds hundreds more. It is a highly capable but quite complex language. 1 See,forexample,Real-TimeAgility(Addison-Wesley,2009)orReal-TimeUMLWorkshopforEmbedded Systems(Elsevier,2014). Preface xix Beyond just the language itself, as product complexity increases exponentially and product delivery cycles decrease monotonically, there is an urgent need to simultaneously increase the efficiency of systems engineering work and to improve its quality as well. More and more, we see systems taking over for humans in safety-critical, high-reliability, and secure environments, and we must be able to depend upon these systems functioning properly, all the time. This book has a simple goal—provide enough guidance for systems engineers so that they can easily and effectively apply agile methods and MBSE to the development of complex systems in a world that increasingly relies on these systems for operation. Tooling The modeling examples in this book are all modeled with the IBM® Rhapsodyt tool. However, one of the good things about a standard is that there are multiple options for different tools. If you have a different tool that you prefer that supports the SysML standard, you should have little difficulty in building these models in the tool of your choice. This is not a book about Rhapsody, nor is it Rhapsody-specific. Where to Go After the Book If you’re interested in tools, training, or consulting, see www.ibm.com. I teach advanced classes and consult worldwide on UML, SysML, MDA, DoDAF, architectural design, design patterns, requirements modeling, use cases, safety critical development, behavioral modeling, the development process improvement, project management and scheduling, and quite a bit more. You can contact me for training or consulting services at [email protected]. I also run a (free) yahoo group forum as well at http:// groups.yahoo.com/group/RT-UML—come on down! My IBM Thought Leader page (http://www-01.ibm.com/software/rational/leadership/thought/brucedouglass.html) also has many white papers available for downloading on different topics that may be of interest. Bruce Powel Douglass, Ph.D. Summer, 2015 Acknowledgments I want to thank my editor, Charlotte Kent, for nagging me when I clearly needed it and being supportive when I need that too. My reviewer Barclay Brown of IBM was also helpful in keeping me honest. I have no doubt that errors remain—and I claim full responsibility for those. Most of all, I want to thank my family for keeping me sane, or at least trying to, while I burned the midnight electrons, creating this book. xxi

See more

The list of books you might like

Most books are stored in the elastic cloud where traffic is expensive. For this reason, we have a limit on daily download.