Software and Systems Modeling

, Volume 3, Issue 4, pp 273–293 | Cite as

Supporting the reconciliation of models of object behaviour

Special section on OOIS 01

Abstract

This paper presents Reconciliation+, a method which identifies overlaps between models of software systems behaviour expressed as UML object interaction diagrams (i.e., sequence and/or collaboration diagrams), checks whether the overlapping elements of these models satisfy specific consistency rules and, in cases where they violate these rules, guides software designers in handling the detected inconsistencies. The method detects overlaps between object interaction diagrams by using a probabilistic message matching algorithm that has been developed for this purpose. The guidance to software designers on when to check for inconsistencies and how to deal with them is delivered by enacting a built-in process model that specifies the consistency rules that can be checked against overlapping models and different ways of handling violations of these rules. Reconciliation+ is supported by a toolkit. It has also been evaluated in a case study. This case study has produced positive results which are discussed in the paper.

Keywords

Consistency management Software design models Object interaction diagrams 

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    Boehm B, In H (1996) Identifying Quality Requirements Conflicts. IEEE Software 25–35Google Scholar
  2. 2.
    Cheung K, Chow K, Cheung T (1998) Consistency Analysis on Lifecycle Model and Interaction Model. Proc. of the 7th Int. Conference on Object-Oriented Information Systems, pp 427–441Google Scholar
  3. 3.
    Easterbrook S (1991) Handling Conflict between Domain Descriptions with Computer-Supported Negotiation. Knowledge Acquisition 3:255–289Google Scholar
  4. 4.
    Emmerich W, Finkelstein F, Montangero C, Antonelli S, Armitage S (1999) Managing Standards Compliance. IEEE Transactions on Software Engineering 25(6):836–851Google Scholar
  5. 5.
    Finkelstein A, Gabbay D, Hunter A, Kramer J, Nuseibeh B (1994) Inconsistency Handling In Multi-Perspective Specifications. IEEE Transactions on Software Engineering 20(8):569–578Google Scholar
  6. 6.
    Glinz M (1995) An Integrated Formal Model of Scenarios Based on Statecharts. Proc. of the 5th European Software Engineering Conference, LNCS, vol 989. Springer-Verlag, pp 254–271Google Scholar
  7. 7.
    Heimdahl MPE, Leveson N (1996) Completeness and Consistency in Hierarchical State-Based Requirements. IEEE Transactions in Software Engineering 22(6):363–377Google Scholar
  8. 8.
    Heitmeyer C, Jeffords R, Kiskis D (1996) Automated Consistency Checking Requirements Specifications. ACM Transactions on Software Engineering and Methodology 5(3):231–261Google Scholar
  9. 9.
    OMG (2003) Unified Modeling Language Specification (Action Semantics) – V. 1.5. Available from: http://www.omg.org/technology/documents/modeling_spec_catalog.htmGoogle Scholar
  10. 10.
    Papadimitriou C, Steiglitz K (1982) Combinatorial Optimisation: Algorithms and Complexity. Prentice-Hall IncGoogle Scholar
  11. 11.
    Pohl K (1996) Process-Centred Requirements Engineering. In: Kramer J (ed) Advanced Software Development Series. Research Studies Press Ltd., ISBN 0-86380-193-5, LondonGoogle Scholar
  12. 12.
    Robinson W, Fickas S (1994) Supporting Multi-Perspective Requirements Engineering. Proc. of the IEEE Conference on Requirements Engineering. IEEE Computer Society Press, pp 206–215Google Scholar
  13. 13.
    Si-Said S, Rolland C, Grosz G (1996) MENTOR: A Computer Aided Requirements Engineering Environment. Proc. of the 8th International Conference on Advanced Information Systems Engineering, pp 22–43Google Scholar
  14. 14.
    Spanoudakis G, Constantopoulos P (1996) Elaborating Analogies from Conceptual Models. International Journal of Intelligent Systems 11(11):17–974Google Scholar
  15. 15.
    Spanoudakis G, Finkelstein A (1997) Reconciling requirements: a method for managing interference, inconsistency and conflict. Annals of Software Engineering, Special Issue on Software Requirements Engineering 3:459–475Google Scholar
  16. 16.
    Spanoudakis G, Zisman A (2001) Inconsistency Management in Software Engineering: Survey and Open Research Issues. In: Chang SK (ed) Handbook of Software Engineering and Knowledge Engineering. World Scientific Publishing Co, pp 329–380Google Scholar
  17. 17.
    Lamsweerde A, Darimont R, Letier E (1998) Managing Conflicts in Goal-Driven Requirements Engineering. IEEE Transactions on Software Engineering 24(11):908–926CrossRefGoogle Scholar
  18. 18.
    Zisman A, Emmerich W, Finkelstein A (2000) Using XML to Specify Consistency Rules for Distributed Documents. Proc. of 10th Int. Workshop on Software Specification and DesignGoogle Scholar
  19. 19.
    Shafer G (1976) A Mathematical Theory of Evidence. Princeton University PressGoogle Scholar
  20. 20.
    http://java.sun.com/j2se/1.3/docs/guide/awt/Google Scholar
  21. 21.
    Spanoudakis G (2000) An Algorithm for Detecting Overlaps between Models of Object Interactions. Technical Report Series, TR-2000/03, ISSN 1364-4009, Department of Computing, City UniversityGoogle Scholar
  22. 22.
    http://www.rational.com/products/rose/index.jspGoogle Scholar

Copyright information

© Springer-Verlag 2004

Authors and Affiliations

  1. 1.Department of ComputingCity UniversityLondonUK

Personalised recommendations