Safety, reliability, reusability, and portability are among the most prominent nonfunctional requirements at the system and software level. They are becoming both the focus of consumers and the market drivers of producers. How are nonfunctional requirements engineered into the system and how are they verified? All too often they are too vaguely expressed or exceedingly difficult to implement, or emerge too late in the development. This article addresses the complex challenge of constructing software-intensive systems while thoroughly integrating the development and verification of nonfunctional requirements. The author puts the challenge into perspective by detailing the factors that influence the development of nonfunctional requirements a...