Software & Systems Modeling

, Volume 10, Issue 1, pp 31–54 | Cite as

Semantics of trace relations in requirements models for consistency checking and inferencing

  • Arda Goknil
  • Ivan Kurtev
  • Klaas van den Berg
  • Jan-Willem Veldhuis
Open Access
Theme Section

Abstract

Requirements traceability is the ability to relate requirements back to stakeholders and forward to corresponding design artifacts, code, and test cases. Although considerable research has been devoted to relating requirements in both forward and backward directions, less attention has been paid to relating requirements with other requirements. Relations between requirements influence a number of activities during software development such as consistency checking and change management. In most approaches and tools, there is a lack of precise definition of requirements relations. In this respect, deficient results may be produced. In this paper, we aim at formal definitions of the relation types in order to enable reasoning about requirements relations. We give a requirements metamodel with commonly used relation types. The semantics of the relations is provided with a formalization in first-order logic. We use the formalization for consistency checking of relations and for inferring new relations. A tool has been built to support both reasoning activities. We illustrate our approach in an example which shows that the formal semantics of relation types enables new relations to be inferred and contradicting relations in requirements documents to be determined. The application of requirements reasoning based on formal semantics resolves many of the deficiencies observed in other approaches. Our tool supports better understanding of dependencies between requirements.

Keywords

Requirements metamodel Requirements traceability Inferencing Consistency checking Reasoning 

Notes

Acknowledgment

The research presented in this paper is part of the QuadREAD project (http://quadread.ewi.utwente.nl). The authors would like to thank Yigit Caliskan for improving the features of the tool.

Open Access

This article is distributed under the terms of the Creative Commons Attribution Noncommercial License which permits any noncommercial use, distribution, and reproduction in any medium, provided the original author(s) and source are credited.

References

  1. 1.
    Aizenbud-Reshef, N., Paige, R.F., Rubin, J., Shaham-Gafni, Y., Kolovos, D.S.: Operational semantics for traceability. In: ECMDA-TW 2005, Nuremberg, pp. 7–14 (2005)Google Scholar
  2. 2.
    Baudry, B., Nebut, C., Le Traon, Y.: Model-driven engineering for requirements analysis. In: EDOC 2007, pp. 459–466. IEEE Computer Society Press, Annapolis (2007)Google Scholar
  3. 3.
    Brottier, E., Baudry, B., Le Traon, Y., Touzet, D., Nicolas, B.: Producing a global requirement model from multiple requirement specifications. In: EDOC 2007, pp. 390–404. IEEE Computer Society Press, Annapolis (2007)Google Scholar
  4. 4.
  5. 5.
    Carlshamre, P., Sandahl, K., Lindvall, M., Regnell, B., Natt och Dag, J.: An industrial survey of requirements interdependencies in software product release planning. In: Proceedings of the 5th International Symposium on Requirements Engineering, Toronto, Canada, pp. 84–91 (2001)Google Scholar
  6. 6.
    Ceron, R., Duenas, J.C., Serrano, E., Capilla, R.: A meta-model for requirements engineering in system family context for software process improvement using CMMI. In: PROFES 2005. Lecture Notes in Computer Science, vol. 3547, pp. 173–188. Springer, Berlin (2005)Google Scholar
  7. 7.
    Cockburn A.: Writing Effective Use Cases. Addison-Wesley, Reading (2000)Google Scholar
  8. 8.
    Dahlstedt A.G., Persson A.: Requirements interdependencies: state of the art and future challenges. In: Aurum, A., Wohlin, C. (eds) Engineering and Managing Software Requirements, pp. 95–116. Springer, Berlin (2005)CrossRefGoogle Scholar
  9. 9.
    Dean, M., Schreiber, G., van Harmelen, F., Hendler, J., Horrocks, I., McGuinness, D., Patel-Schneider, P., Stein, L.A.: OWL Web Ontology Language Reference W3C Recommendation (2004)Google Scholar
  10. 10.
    Duffy D., MacNish C., McDermid J., Morris P.: A framework for requirements analysis using automated reasoning. In: Livari, J., Rossi, M., Lyytinen, K. (eds) CAiSE 1995. Lecture Notes in Computer Science, vol. 932, pp. 68–81. Springer, Berlin (1995)Google Scholar
  11. 11.
    Eclipse Rich Client Platform (RCP). http://www.eclipse.org/home/categories/rcp.php
  12. 12.
    Egyed A., Grunbacher P.: Supporting software understanding with automated requirements traceability. Int. J. Softw. Eng. Knowl. Eng. 15(5), 783–810 (2005)CrossRefGoogle Scholar
  13. 13.
    Egyed, A., Grunbacher, P.: Automated requirements traceability: beyond the record and replay paradigm. In: Proceedings of the 17th IEEE International Conference on Automated Software Engineering (ASE), Edinburgh, Scotland, pp. 163–171 (2002)Google Scholar
  14. 14.
    Finkelstein A.C.W., Gabbay D., Hunter A., Kramer J., Nuseibeh B.: Inconsistency handling in multiperspective specifications. IEEE Trans. Softw. Eng. 20(8), 569–578 (1994)CrossRefGoogle Scholar
  15. 15.
    Giorgini, P., Mylopoulos, J., Nicchiarelli, E., Sebastiani, R.: Formal reasoning techniques for goal models. In: Journal on Data Semantics, Lecture Notes in Computer Science, vol. 2800, pp. 1–20. Springer, Berlin (2003)Google Scholar
  16. 16.
    Goknil, A., Kurtev, I., van den Berg, K.: A metamodeling approach for reasoning about requirements. In: European Conference on Model Driven Architecture (ECMDA 2008), Berlin, Germany. Lecture Notes in Computer Science, vol. 5095, pp. 310–325. Springer, Berlin (2008)Google Scholar
  17. 17.
    Goknil, A., Kurtev, I., van den Berg, K.: Change impact analysis based on formalization of trace relations for requirements. In: 4th ECMDA Traceability Workshop (ECMDA-TW 2008), Berlin, Germany, pp. 59–75 (2008)Google Scholar
  18. 18.
    Goknil, A.: Tutorial: requirements relations and definitions with examples. http://www.home.cs.utwente.nl/~goknila/tutorial/Relations_Tutorial.doc
  19. 19.
    Gotel, O.C.Z., Finkelstein, C.W.: An analysis of the requirements traceability problem. In: Proceedings of the First International Conference on Requirements Engineering, pp. 94–101. IEEE Computer Society Press, Colorado (1994)Google Scholar
  20. 20.
    Guide to Software Engineering Body of Knowledge. IEEE Computer Society, Colorado. http://www.swebok.org/. Accessed 19 October 2009
  21. 21.
    Heaven W., Finkelstein A.: UML profile to support requirements engineering with KAOS. IEE Proc. Softw. 151(1), 10–27 (2004)CrossRefGoogle Scholar
  22. 22.
    Heitmeyer C.L., Jeffords R.D., Labaw G.L: Automated consistency checking of requirements specifications. ACM Trans. Softw. Eng. Methodol. 5(3), 231–261 (1996)CrossRefGoogle Scholar
  23. 23.
    Hunter A., Nuseibeh B.: Managing inconsistent specifications: reasoning, analysis, and action. ACM Trans. Softw. Eng. Methodol. 7(4), 335–367 (1998)CrossRefGoogle Scholar
  24. 24.
    Huth M.R.A., Ryan M.D: Logic in Computer Science: Modeling and Reasoning about Systems. Cambridge University Press, Cambridge (2000)Google Scholar
  25. 25.
  26. 26.
  27. 27.
    INCOSE Requirements Management Tool Survey. http://www.incose.org
  28. 28.
    JGraph—Java Graph Visualization and Layout. http://www.jgraph.com/
  29. 29.
    Jena—A Semantic Web Framework for JAVA. http://jena.sourceforge.net/
  30. 30.
    Koch N., Kraus A.: Towards a common metamodel for the development of web applications. In: ICWE 2003. Lecture Notes in Computer Science, vol. 2722, pp. 497–506. Springer, Heidelberg (2003)Google Scholar
  31. 31.
    Lopez, O., Laguna, M.A., Garcia, F.J.: Metamodeling for requirements reuse. Anais do WER02—Workshop em Engenharia de Requisitos. Valencia, Spain, pp. 76–90 (2002)Google Scholar
  32. 32.
    Meyer, J.J.C., Wieringa, R., Dignum, F.: The Role of Deontic Logic in the Specification of Information Systems. Logics for Databases and Information Systems, pp. 71–115 (1998)Google Scholar
  33. 33.
    Moon M., Yeom K., Chae H.S.: An approach to developing domain requirements reuse as a core asset based on commonality and variability analysis in a product line. IEEE Trans. Softw. Eng. 31(7), 551–569 (2005)CrossRefGoogle Scholar
  34. 34.
    Mylopoulos J., Chung L., Yu E.: From object-oriented to goal oriented requirements analysis. Commun. ACM 42(1), 31–37 (1999)CrossRefGoogle Scholar
  35. 35.
    Navarro E., Mocholi J.A., Letelier P., Ramos I.: A metamodeling approach for requirements specification. J. Comput. Inf. Syst. 46(5), 67–77 (2006)Google Scholar
  36. 36.
    Noppen J., van den Broek P., Aksit M.: Imperfect requirements in software development. In: REFSQ 2007. Lecture Notes in Computer Science, vol. 4542, pp. 247–261. Springer, Heidelberg (2007)Google Scholar
  37. 37.
    Nuseibeh B., Kramer J., Finkelstein A.: A framework for expressing the relationships between multiple views in requirements specification. IEEE Trans. Softw. Eng. 20(10), 760–773 (1994)CrossRefGoogle Scholar
  38. 38.
    OMG: SysML Specification. OMG ptc/06-05-04, http://www.sysml.org/specs.htm
  39. 39.
    Ramesh B., Jarke M.: Toward reference models for requirements traceability. IEEE Trans. Softw. Eng. 27(1), 58–93 (2001)CrossRefGoogle Scholar
  40. 40.
    Rashid, A., Moreira, A., Araujo, J.: Modularization and composition of aspectual requirements. In: AOSD 2003, Boston, USA, pp. 11–20 (2003)Google Scholar
  41. 41.
    Requirements Interchange Format (RIF), http://www.automative-his.de/rif/doku.php
  42. 42.
    Robinson W.N., Pawlowski S.D., Volkov V.: Requirements interaction management. ACM Comput. Surv. 35(2), 132–190 (2003)CrossRefGoogle Scholar
  43. 43.
    Rodrigues O., Garcez A., Russo A.: Reasoning about requirements evolution using clustered belief revision. In: Bazzan, A.L.C., Labidi, S. (eds) SBIA 2004. Lecture Notes in Computer Science (LNAI), vol. 3171, pp. 41–51. Springer, Berlin (2004)Google Scholar
  44. 44.
    Soares M.S., Vrancken J.: Model-driven user requirements specification using SysML. J. Softw. 3(6), 57–68 (2008)Google Scholar
  45. 45.
    Supakkul, S., Chung, L.: A UML profile for goal-oriented and use case driven representation of NFRs and FRs. In: SERA 2005, pp. 112–119. IEEE Computer Society Press, Michigan (2005)Google Scholar
  46. 46.
    ten Hove, D., Goknil, A., Kurtev, I., van den Berg, K., de Goede, K.: Change impact analysis for SysML requirements models based on semantics of trace relations. In: Fifth ECMDA Traceability Workshop (ECMDA-TW 2009), Enschede, the Netherlands, pp. 17–28 (2009)Google Scholar
  47. 47.
    Tool for Requirements Inferencing and Consistency Checking (TRIC). http://trese.cs.utwente.nl/tric/
  48. 48.
  49. 49.
    van Lamswerdee A., Darimont R., Letier E.: Managing conflicts in goal-driven requirements engineering. IEEE Trans. Softw. Eng. 24(11), 908–926 (1998)CrossRefGoogle Scholar
  50. 50.
    van Lamswerdee, A.: Goal-oriented requirements engineering: a roundtrip from research to Practice. In: Invited Minitutorial, Proceedings RE’01—5th International Symposium Requirements Engineering, Toronto, pp. 249–263 (2001)Google Scholar
  51. 51.
    Veldhuis, J.W.: Tool support for a metamodeling approach for reasoning about requirements. MSc Thesis, University of Twente. http://essay.utwente.nl/58693/1/scriptie_J_Veldhuis.pdf (2009). Toolversion 1.0 available from http://trese.cs.utwente.nl/tric/
  52. 52.
    Vicente-Chicote C., Moros B., Toval A.: REMM-Studio: an integrated model-driven environment for requirements specification, validation and formatting. J. Object Technol. (Special Issue TOOLS Europe) 6(9), 437–454 (2007)Google Scholar
  53. 53.
    von Knethen, A., Paech, B.: A survey on tracing approaches in practice and research. IESE-Report, No. 095.01/E, version 1.0, Fraunhofer Institut Experimentelles Software Engineering (2002)Google Scholar
  54. 54.
    Zowghi, D., Offen, R.: A logical framework for modeling and reasoning about the evolution of requirements. In: RE 1997, Annapolis, USA, pp. 247–257, January (1997)Google Scholar
  55. 55.
    Zowghi D., Gervasi V.: On the interplay between consistency, completeness and correctness in requirements evolution. Inf. Softw. Technol. 45, 993–1009 (2003)CrossRefGoogle Scholar

Copyright information

© The Author(s) 2009

Authors and Affiliations

  • Arda Goknil
    • 1
  • Ivan Kurtev
    • 1
  • Klaas van den Berg
    • 1
  • Jan-Willem Veldhuis
    • 1
  1. 1.Software Engineering GroupUniversity of TwenteEnschedeThe Netherlands

Personalised recommendations