The process of managing inconsistency is a fundamental activity that permeates a large part of the systems development process. Failure to identify inconsistencies may lead to major problems in the operation of a system, while failure to support a range of inconsistency handling strategies can lead to a rigid and impractical development process. We argue, therefore, that the inconsistency management process needs to be made explicit, and should play a central role in defining the broader development process. In this paper we sketch out the constituent processes of inconsistency management in the context of an overall requirements engineering process. The framework is based on identification of an explicit set of consistency rules, which capture constraints on the evolving descriptions arising from process, method, notation, domain, etc. The set of consistency rules are refined as the development effort proceeds. The process model distinguishes four major steps: monitoring for inconsis...
Bashar Nuseibeh, Steve M. Easterbrook