Inconsistency Handling in Multi-Perspective Specifications

The development of most large and complex systems necessarily involves many people each with their own perspectives on the system defined by their knowledge, responsibilities, and commitments. To address this we have advocated distributed development of specifications from multiple perspectives. However, this leads to problems of identifying and handling inconsistencies between such perspectives. Maintaining absolute consistency is not always possible. Often this is not even desirable since this can unnecessarily constrain the development process, and can lead to the loss of important information. Indeed since the real-world forces us to work with inconsistencies, we should formalise some of the usually informal or extra-logical ways of responding to them. This is not necessarily done by eradicating inconsistencies but rather by supplying logical rules specifying how we should act on them. To achieve this, we combine two lines of existing research: the ViewPoints framework for perspective development, interaction and organisation, and a logic-based approach to inconsistency handling. This paper presents our technique for inconsistency handling in the ViewPoints framework by using simple examples.

[1]  Bashar Nuseibeh,et al.  ViewPoints: a vehicle for method and tool integration , 1992, [1992] Proceedings of the Fifth International Workshop on Computer-Aided Software Engineering.

[2]  Anthony L Wasserman Tool Integration in Software Engineering Environments , 1989, SEE.

[3]  Dov M. Gabbay,et al.  The Declarative Past and Imperative Future: Executable Temporal Logic for Interactive Systems , 1987, Temporal Logic in Specification.

[4]  Dov M. Gabbay,et al.  METATEM: A Framework for Programming in Temporal Logic , 1989, REX Workshop.

[5]  Anthony Finkelstein,et al.  A Configurable Framework for Method and Tool Integration , 1991, Software Development Environments and CASE Technology.

[6]  Newton C. A. da Costa,et al.  On the theory of inconsistent formal systems , 1974, Notre Dame J. Formal Log..

[7]  V. S. Subrahmanian,et al.  Paraconsistent Logic Programming , 1987, FSTTCS.

[8]  Anthony Finkelstein,et al.  ViewPoint Oriented Software Development , 1990 .

[9]  John Krogstie,et al.  Information Systems Development Using a Combination of Process and Rule Based Approaches , 1991, CAiSE.

[10]  Gerd Wagner Ex contradictione nihil sequitur , 1991, IJCAI.

[11]  Bashar Nuseibeh,et al.  Software process modelling and technology , 1994 .

[12]  Bashar Nuseibeh,et al.  Expressing the relationships between multiple views in requirements specification , 1993, ICSE '93.

[13]  Albert Alderson,et al.  Meta-CASE Technology , 1991, Software Development Environments and CASE Technology.

[14]  Anthony Finkelstein,et al.  Process modelling: a critical analysis , 1992 .

[15]  Robert Balzer,et al.  Tolerating Inconsistency , 1991, [1989] Proceedings of the 5th International Software Process Workshop.

[16]  Bashar Nuseibeh,et al.  Viewpoints: A Framework for Integrating Multiple Perspectives in System Development , 1992, Int. J. Softw. Eng. Knowl. Eng..

[17]  Gail E. Kaiser,et al.  Living With Inconsistency in Large Systems , 1988, System Configuration Management.

[18]  Dov M. Gabbay,et al.  Making inconsistency respectable: a logical framework for inconsistency in reasoning , 1991, FAIR.

[19]  Jon Doyle,et al.  A Truth Maintenance System , 1979, Artif. Intell..

[20]  Anthony I. Wasserman,et al.  A graphical, extensible integrated environment for software development , 1987, SDE 2.

[21]  G. C. Oddy Integration in 'software' engineering environments , 1990 .

[22]  John N. Pocok VSF and its relationship to open systems and standard repositories , 1991 .

[23]  Dov M. Gabbay,et al.  Meta-Reasoning in Executable Temporal Logic , 1991, KR.

[24]  Jack C. Wileden,et al.  Specification-level interoperability , 1991, CACM.

[25]  Khaled Narayanaswamy,et al.  “Lazy” consistency: a basis for cooperative software development , 1992, CSCW '92.

[26]  Arthur Buchsbaum,et al.  The Logic of Epistemic Inconsistency , 1991, KR.

[27]  Geoff P. Mullery,et al.  Acquisition-Environment , 1984, Advanced Course: Distributed Systems.

[28]  Michael Jackson,et al.  Conjunction as composition , 1993, TSEM.

[29]  Jeff Kramer CASE Support for the Software Process: A Research Viewpoint , 1991, ESEC.

[30]  Dov M. Gabbay,et al.  Quantifier Elimination in Second-Order Predicate Logic , 1992, KR.

[31]  Bashar Nuseibeh,et al.  Fine-grain process modelling , 1993, Proceedings of 1993 IEEE 7th International Workshop on Software Specification and Design.

[32]  Steven P. Reiss,et al.  A system for multiparadigm development of software systems , 1991, Proceedings of the Sixth International Workshop on Software Specification and Design.