Leveraging inconsistency in software development
Generate an AI Snapshot to get a quick, structured summary of this paper.
A concise AI-generated summary of the paper will appear here once you click Generate AI Snapshot.
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
