SKIP THE SHIPPING
Use code NOSHIP during checkout to save 40% on eligible eBooks, now through January 5. Shop now.
Register your product to gain access to bonus material or receive a coupon.
This eBook includes the following formats, accessible from your Account page after purchase:
EPUB The open industry format known for its reflowable content and usability on supported mobile devices.
PDF The popular standard, used most often with the free Acrobat® Reader® software.
This eBook requires no passwords or activation to read. We customize your eBook by discreetly watermarking it with your name, making it uniquely yours.
Real-time and embedded systems face the same development challenges as traditional software: shrinking budgets and shorter timeframes. However, these systems can be even more difficult to successfully develop due to additional requirements for timeliness, safety, reliability, minimal resource use, and, in some cases, the need to support rigorous industry standards.
In Real-Time Agility, leading embedded-systems consultant Bruce Powel Douglass reveals how to leverage the best practices of agile development to address all these challenges. Bruce introduces the Harmony/ESW process: a proven, start-to-finish approach to software development that can reduce costs, save time, and eliminate potential defects.
Replete with examples, this book provides an ideal tutorial in agile methods for real-time and embedded-systems developers. It also serves as an invaluable “in the heat of battle” reference guide for developers working to advance projects, both large and small.
Coverage includes
Foreword xvii
Preface xix
Acknowledgments xxv
About the Author xxvii
Chapter 1: Introduction to Agile and Real-Time Concepts 1
The Agile Manifesto 1
Why Agile? 3
Properties of Real-Time Embedded Systems 8
Benefits of Agile Methods 14
Agile Methods and Traditional Processes 25
Coming Up 31
Chapter 2: Concepts, Goals, and Benefits of Model-Driven Development 33
What Is MDA? 33
Why Model? 36
Key Concepts of MDA 41
MDA Technologies 67
Benefits of MDA 73
Harmony’s Five Key Architectural Views 74
Coming Up 90
Chapter 3: Harmony/ESW Principles and Practices 91
Harmony Core Principles 91
Harmony Core Practices 130
Coming Up 153
Chapter 4: Process Overview 155
Why Process at All? 155
Harmony Time Frames 163
Prototype-Based Spiral Development 168
Harmony Macrocycle Process View 171
Harmony Spiral in Depth 177
What about Systems Engineering? 191
What about CMMI? 192
Combining Agile, MDA, and Harmony 194
Coming Up 194
Chapter 5: Project Initiation 197
What Do You Need to Get Started? The Baby Bear Plan 198
Prespiral Planning 199
Developing Stakeholder Requirements 250
Defining and Deploying the Development Environment 258
Continuous Integration 262
Coming Up 266
Chapter 6: Agile Analysis 269
Prototype Definition 272
Object Analysis 310
Coming Up 328
Chapter 7: Agile Design 329
Optimization and the Use of Design Patterns 331
Architectural Design 339
Mechanistic Design 358
Detailed Design 362
Coming Up 371
Chapter 8: Agile Testing 373
Testing Concepts 375
Model-Based Testing 380
Testing Workflows 385
Unit Test 388
Integration Test 392
Validation Testing 397
Coming Up 401
Chapter 9: Agile Process Optimization 403
Understanding Dynamic Planning 404
Tracking and Controlling 407
Change Management 414
Model Reviews 417
The “Party Phase” 420
Summary 424
Appendix A: Starfleet ZX-1000 Transporter System Requirements Specification 427
1 Overview 427
2 Operational Modes 427
3 General System Requirements 430
4 Major System Components 437
5 Secondary Functions 440
Appendix B: Harmony/ESW and CMMI: Achieving Compliance 447
Abstract 447
CMMI Basics 447
Achieving CMMI Compliance with Harmony/ESW 452
Summary 481
Further Reading 482
Glossary 483
Index 495