Abstract :
In the early stages of system development, many requirements interdependencies exist. Interacting requirements may conflict with one another and they may impact (change, enhance, or override) other requirements as well. Those interdependencies should be identified as early as possible in the development lifecycle. Conflicts should be resolved, so as to avoid the cost and schedule overhead that comes when detecting them late in the development process. Properly identifying the interactions, during the requirements elicitation and analysis, results in new and modified Derived Requirements (DRs). These DRs resolve interactions and undesirable conflicts. An important kind of requirements which interact with other requirements is crosscutting Functional Requirements (FRs). The DRAS (Derived Requirements generation based on Actions and States) methodology presented in this paper helps both to identify FRs that crosscut other FRs and to generate the derived or modified requirements. To identify crosscutting requirements, the methodology matches the actions used by the requirement and the system modes and states related to these requirements. When the same action is used by two requirements it might indicates that one of the requirements may crosscut the other. In addition to actions directly used, DRAS takes into account also actions implied by them. For a specific action Act (referred to by a requirement), DRAS uses the following implied-actions: (a) Actions that are activated as a consequence or result of using Act, or (b) Actions that Act is the consequence of their use.