login

Leveraging inconsistency in software development

ComputerPublished 1 April 2000
Bashar Nuseibeh, Steve Easterbrook, Alessandra Russo
Citations184
SJR quartileQ2
SJR score0.55
SNIP1.02

TL;DR

The authors assert that maintaining consistency at all times is counterproductive and advocate using inconsistency to highlight problem areas, using it as a tool to improve the development team's shared understanding, direct the process of requirements elicitation, and assist with verification and validation.

Abstract

sume consistency. And many software development environments attempt to enforce it. Most developers view inconsistency as undesirable, something to be avoided if at all possible. But most also recognize that their descriptions are frequently inconsistent and learn to live with these inconsistencies. A systematic approach to managing inconsistency can help solve many of these problems. Inconsistency draws attention to problem areas, which means you can use inconsistency as a tool to . improve the development team's shared understanding, . direct the process of requirements elicitation, and . assist with verification and validation. To turn inconsistency into a tool, however, inconsistency management must become central to your development process. 2 Maintaining consistency at all times is counterproductive. In many cases, it may be desirable to tolerate or even encourage inconsistency to facilitate distributed teamwork and prevent premature commitm

Keywords

Computer Science