Requirements Engineering

, Volume 8, Issue 4, pp 195–205

Merging individual conceptual models of requirements

Original Article


While it is acknowledged that system requirements will never be complete, incompleteness is often due to an inadequate process and methods for acquiring and tracking a representative set of requirements. Viewpoint development has been proposed to address these problems. We offer a viewpoint development approach that fits easily into the current practice of capturing requirements as use case descriptions. However, current practice does not support visualization of use case descriptions, the capture of multiple use case descriptions, the modeling of conflicts and the reconciliation of viewpoints. In our approach we apply techniques from natural language processing, term subsumption and set-theory to automatically convert the use case descriptions into a line diagram. The visualisation of use case descriptions is a natural addition to the object-oriented design of systems using the Unified Modelling Language where diagrams act as communication and validation devices. RECOCASE is a comprehensive methodology that includes use case description guidelines, a controlled language to support natural language translation, a requirements engineering process model and a tool to assist the specification and reconciliation of requirements. Our approach combines group and individual processes to minimise contradictions and missing information and maximise ownership of the requirements models. In this paper we describe each of the parts of our methodology following an example through each section.


Conceptual modeling Formal concept analysis Viewpoint development 


  1. 1.
    Davis AM, Jordan K, Nakajima T (1997) Elements underlying the specification of requirements. Ann Software Eng (Special Issue on Software Requirements Engineering) 3:63–100CrossRefGoogle Scholar
  2. 2.
    Schach S (1996) Classical and object oriented software engineering, 3rd edn. Irwin, Homewood, ILGoogle Scholar
  3. 3.
    Easterbrook S (1991) Elicitation of requirements from multiple perspectives. PhD thesis, Department of Computing, Imperial College of Science, Technology and Medicine, University of LondonGoogle Scholar
  4. 4.
    Ramesh B, Dhar V (1992) Supporting systems development by capturing deliberations during requirements engineering. IEEE Trans Software Eng 18(6):498–510CrossRefGoogle Scholar
  5. 5.
    Darke P, Shanks G (1997) Managing user viewpoints in requirements definition. In: 8th Australasian conference on information systems, University of South Australia, Adelaide, pp 495–508Google Scholar
  6. 6.
    Easterbrook S, Nuseibeh B (1996) Using viewpoints for inconsistency management. BCSEEE Software Eng J January:31–43Google Scholar
  7. 7.
    Finkelstein ACW, Goedicke M, Kramer J, Niskier C (1989) Viewpoint oriented software development: methods and viewpoints in requirements engineering. In: Proceedings of the 2nd meteor workshop on methods for formal specification. Lecture notes in computer science. Springer, Berlin Heidelberg New YorkGoogle Scholar
  8. 8.
    Kotonya G, Sommerville I (1998) Requirements engineering: process and techniques. Wiley, Chichester, UKGoogle Scholar
  9. 9.
    Mullery GP (1979) CORE: a method for controlled requirements expression. In: Proceedings of the 4th international conference on software engineering (ICSE-4). IEEE Computer Society Press, Los Alamitos, CA, pp 126–135Google Scholar
  10. 10.
    Jacobson I (1992) Object-oriented software engineering. Addison-Wesley, Reading, MAGoogle Scholar
  11. 11.
    Boettger K, Schwitter R, Richards D, Aguilera O, Molla D (2001) Reconciling use cases via controlled language and graphical models. In: Proceedings of the 14th international conference on applications of PROLOG, Tokyo, Japan, 20–22 October 2001, pp 186–195Google Scholar
  12. 12.
    Cockburn A (1997) Structuring use cases with goals. J Object-Oriented Program September–Oct 1997, November–December 1997Google Scholar
  13. 13.
    Cox K (2001) Experimental material. http://dec/ Scholar
  14. 14.
    Maiden NAM (1998) CREWS-SAVRE: scenarios for acquiring and validating requirements. J Automated Software Eng 5: 419–446CrossRefGoogle Scholar
  15. 15.
    Rolland C, Achour CB (1998) Guiding the construction of textual use case specifications. Data Knowl Eng J 25(1–2):125–160Google Scholar
  16. 16.
    Schwitter R, Fuchs N (1996) Attempto: from specifications in controlled natural language towards executable specifications. In: GI EMISA Workshop, Natrlichsprachlicher Entwurf von Informationssystemen, May 1996, Tutzing, GermanyGoogle Scholar
  17. 17.
    Huijsen WO (1998) Controlled language: an introduction. In: Proceedings of the 2nd international workshop on controlled language applications. Language Technologies Institute, Carnegie Mellon University, Pittsburgh, PA, 21–22 May 1998, pp 1–15Google Scholar
  18. 18.
    European Association of Aerospace Industries (AECMA) (1995) AECMA simplified English. AECMA document: PSC-85-16598: A guide for the preparation of aircraft maintenance documentation in the international aerospace maintenance language, Issue 1, September 1995Google Scholar
  19. 19.
    Mitamura T, Nyberg EH (1995) Controlled English for knowledge-based MT: experience with the KANT system. Center for Machine Translation, Carnegie Mellon University, Pittsburgh, PAGoogle Scholar
  20. 20.
    Androutsopoulos I, Ritchie GD, Thanisch P (1995) Natural language interfaces to databases: an introduction. J Nat Lang Eng 1:29–81Google Scholar
  21. 21.
    Sleator DD, Temperley D (1991) Parsing English with a link grammar. Technical report CMU-CS-91-196, Carnegie Mellon University, School of Computer Science, Pittsburgh, PAGoogle Scholar
  22. 22.
    Molla D, Schwitter R, Hess M, Fournier R (2000) Extrans, an answer extraction system. Traitement Automatique des Langues (Special Issue on Information Retrieval Oriented Natural Language Processing) 41(2):495–519Google Scholar
  23. 23.
    Wille R (1982) Restructuring lattice theory: an approach based on hierarchies of concepts. In: Ordered sets. Reidel, Dordrecht, pp 445–470Google Scholar
  24. 24.
    Wille R (1992) Concept lattices and conceptual knowledge. Comput Math Appl 23:493–522CrossRefGoogle Scholar
  25. 25.
    Birkhoff G (1967) Lattice theory. American Mathematical Society, Providence, RIGoogle Scholar
  26. 26.
    Melcuk I (1988) Dependency syntax: theory and practice. SUNY Press, Albany, NYGoogle Scholar
  27. 27.
    Shaw MLG, Gaines BR (1988) A methodology for recognising consensus, correspondence, conflict and contrast in a knowledge acquisition system. In: Proceedings of the 3rd knowledge acquisition for knowledge-based systems workshop, Banff, Canada, November 1988Google Scholar
  28. 28.
    Spanoudakis G, Finkelstein A, Till D (1999) Overlaps in requirements specifications automated. Software Eng J (available at Scholar
  29. 29.
    Narayanaswamy K, Goldman N (1992) Lazy consistency: a basis for cooperative software development. In: Proceedings of international conference on computer-supported cooperative work (CSCW'92), Toronto, Ontario, 31 October–4 November 1992, pp 257–264Google Scholar
  30. 30.
    Balzer R (1991) Tolerating inconsistency. In: Proceedings of 13th international conference on software engineering (ICSE-13) Austin, TX, 13–17 May 1991. IEEE Computer Society Press, Los Alamitos, CA, pp 158–165Google Scholar

Copyright information

© Springer-Verlag London Limited 2003

Authors and Affiliations

  1. 1.Department of Computing, Division of Information and Communication SciencesMacquarie UniversitySydneyAustralia

Personalised recommendations