Articles & Posts

Articles and Posts 8 mins 18910 Views 0 Comments 2 Likes

Many of us are accustomed to dealing with requirements in the context of software products which run on a personal computer. But what about software that are used by the various other electronic devices around us: driver-less cars, manufacturing robots, your smart home devices, etc?

In this two article series, Karl Wiegers and Joy Beatty tackle the subject of requirements for embedded systems and devices.

Requirements for Embedded Devices

The authors begin by pointing out that, due to the nature of hardware devices, changes in requirements are much costlier as compared to standard software projects.  It is critical to understand the constraints which are prevalent with embedded devices:

"...physical object sizes; electrical components, connections, and voltages; standard communication protocols; the sequence in which certain operations must take place; timing requirements; and the like. Hardware components that have already been selected for the design impose constraints on those yet to be chosen."

The series also explores quality attributes (non-functional requirements) that designers need to focus on when working with requirements for embedded devices:

  • performance requirements
  • efficiency requirements
  • reliability requirements
  • safety requirements
  • security requirements
  • usability requirements

In authors' own words:

"Embedded systems also are subject to quality attributes and constraints that apply only to physical systems. These include size, shape, weight, materials, flammability, connectors, durability, cost, noise levels, and materials strength. All of these can increase the effort needed to validate the requirements adequately. There could be business and political reasons to avoid using materials whose supply might be threatened by conflict or boycott, causing prices to skyrocket. Other materials are best avoided because of their environmental impacts. Avoiding the use of optimal materials could lead to trade-offs in performance, weight, cost, or other attributes. Optimizing the product’s many attributes and constraints is a real balancing act."

Continue reading at

Login or Register to download

Karl Wiegers

Karl Wiegers is Principal Consultant at Process Impact, a software development consulting and training company in Portland, Oregon. He has a PhD in organic chemistry. Karl is the author of numerous books on software development, most recently Software Requirements, 3rd Edition (with Joy Beatty). He’s also the author of Successful Business Analysis Consulting: Strategies and Tips for Going It Alone, a memoir of life lessons, and a forensic mystery novel, The Reconstruction. You can reach him at or

2019-12-31 Requirements for Embedded Systems Requirements for Embedded Systems

Comments / Discussions

Please login or register to post comments.

Contact author


Free Newsletter is trusted by leaders and experienced professionals across the world. Start your subscription today, for free.

brought to you by Modern Analyst Media enabling practisioners & organizations to achieve their goals using: