Professional Documents
Culture Documents
William N. Robinson
Department o/Computer In/ormation Systems
Georgia State University
Atlanta, GA 30301-4015 USA
http://cis.gsu.edu/-wrobinso
wrobinson@gsu.edu
1. INTRODUCTION
critical system aspects before they actually build the system. As Brooks noted,
requirements definition is the most difficult development stage.
The hardest single part of building a software system is deciding precisely what
to build. No other part of the conceptual work is as difficult as establishing the
detailed technical requirements ...No other part of the work so cripples the
resulting system if done wrong. No other part is as difficult to rectify later. [4]
the set of activities directed toward the discovery, management, and disposition
of critical relationships among sets of requirements.
Although the term itself is new, requirements engineers have long recognized
that the topics and issues RIM encompasses are crucial to obtain a good
requirements specification.
RIM is applied after requirements have been elicited and represented. The thrust
of RIM is to analyze the extent to which a system can satisfy multiple requirements
simultaneously. A system has many components, and each component has many
requirements-requirements which can interact with other requirements and with
the environment. The satisfaction of one requirement can aid or detract from the
satisfaction of another, and the environment can increase or reduce requirement
satisfaction[49]. Single requirement methods exist-for example, to minimize
network latency or maximize network throughput-but they typically apply to only
one or a few requirements. As object-oriented methods and networked system
deployment become more common, the number of components (and their
interactions) will increase. Satisfying all these requirements through component
composition becomes extremely difficult.
As Neumann suggests,