The Shifting Landscape: Embedded and Networked Systems

Historical precedents aside, several additional trends push development even further in the Agile direction. These trends not only require more iterative approaches to be successful, but also provide new, more effective methods as part of the iterative toolbox. The first of these is the spread of embedded and networked systems.

Embedded systems are nothing new. They already exist in countless appliances and pieces of consumer electronics. Your microwave, DVD player, iPod, and many other household devices all have microprocessors with various degrees of complexity. As a result, part of their functionality is driven not by hardware but by software. As this approach becomes less and less expensive, there is a drastic and sustained increase in the use of both hardware and software embedded in products. Along with this increased market penetration, the capability of these embedded systems is also growing.

Things get even more interesting when these devices and products can access a network or the world at large. With network access, code that controls these devices can be updated over time, potentially altering their behavior. Updates can occur long after a product's initial sale. Alternatively, a device can behave differently depending on conditions, or can communicate with other devices. Despite development that crosses both department and corporate boundaries, it still provides a cohesive product experience for the consumer. Aside ...

Get Subject To Change: Creating Great Products & Services for an Uncertain World now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.