Skip to main content
Log in

Composing requirements specifications from multiple prioritized sources

  • Original Article
  • Published:
Requirements Engineering Aims and scope Submit manuscript

Abstract

The formal methodology MultiSpec supports the evolution of software specifications gathered from multiple perspectives. A viewpoint-based approach is used to explicitly separate the descriptions provided by different stakeholders, and concentrate on identifying and resolving conflicts between them. The challenge addressed in this article consists in taking into account that some views may have greater degrees of relevance and, consequently, their opinion will have more importance when either obtaining the merged model or resolving the contradictions. To this end, we propose a priority-based approach, where such priority value is twofold. On the one hand, it considers external factors to the perspectives such as the importance assigned to each view by the analyst depending on who is specifying the view or the amount of stakeholders involved in that specification. On the other hand, this priority value also considers internal factors related to the quality of the views and, in order to be able to quantify this value, MultiSpec proposes two measures: coverage and density of each perspective which will be combined in a completeness value. The contributions of this approach will be clearly illustrated through a simple example.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7
Fig. 8

Similar content being viewed by others

Notes

  1. Notation: \(a \rightsquigarrow b\) means that a evolves into b.

References

  1. Barragáns Martínez B, Pazos Arias JJ, Fernández Vilas A, García Duque J, López Nores M, Díaz Redondo R, Blanco Fernández Y (2008) Composing multi-perspective software requirements specifications. Int J Softw Eng Knowl Eng 18(1):119–153

  2. Barragáns Martínez B, Pazos Arias JJ, Fernández Vilas A, García Duque J, López Nores M, Díaz Redondo R, Blanco Fernández Y (2008) On the interplay between inconsistency and incompleteness in multi-perspective requirements specifications. Inf Softw Technol 50(4):296–321

    Article  Google Scholar 

  3. Naumann F, Freytag J-C, Leser U (2004) Completeness of integrated information sources. Inf Syst 29(7):583–615

    Article  Google Scholar 

  4. García Duque J, Pazos Arias JJ, Barragáns Martínez B (2002) An analysis-revision cycle to evolve requirements specifications by using the SCTL-MUS methodology. In: Proceedings of the 10th IEEE international conference on requirements engineering (RE’02). IEEE Computer Society Press, Essen, Germany, pp 282–288

  5. Milner R (1989) Communication and concurrency. International series in computer science. Prentice-Hall, Englewood Cliffs

  6. Uchitel S, Chechik, M (2004) Merging partial behavioural models. In: Proceedings of the 12th ACM SIGSOFT international symposium on the foundations of software engineering (SIGSOFT’04/FSE-12), ACM Press, New York, pp 43–52

  7. Pazos Arias JJ, García Duque J (2001) SCTL-MUS: a formal methodology for software development of distributed systems. A case study. Formal Asp Comput 13:50–91

    Article  MATH  Google Scholar 

  8. Hoare CAR (1985) Communicating sequential processes. Prentice-Hall, Englewood Cliffs

  9. Belnap ND (1977) A useful four-valued logic. In: Dunn JM, Epstein G (eds) Modern uses of multiple-valued logic. D. Reidel, pp 7–37

  10. Nejati S, Chechik M (2005) Let’s agree to disagree. In: Proceedings of the 20th international conference on automated software engineering (ASE 2005), Long Beach, ACM Press, New York, 7–11 November 2005, pp 287–290

  11. Barragáns Martínez AB (2007) Metodología Formal para la Especificación de Sistemas Software en Entornos Multi-Perspectiva. PhD Thesis, Telematic Engineering Department, University of Vigo (in Spanish)

  12. Tsai JJP, Weigert T, Jang H-C (1992) A hybrid knowledge representation as a basis of requirement specification and specification analysis. IEEE Trans Softw Eng 18(12):1076–1100

    Google Scholar 

  13. Balzer R (1991) Tolerating inconsistency. In: Proceedings of 13rd international conference on software engineering (ICSE’13). IEEE Computer Society Press, Austin, 13–17 May 1991, pp 158–165

  14. Gabbay D, Hunter A (1991) Making inconsistency respectable—part 1: a logical framework for inconsistency in reasoning. In: Jorrand Ph, Kelemen J (eds) Foundations of artificial intelligence research, vol 535 of Lecture Notes in Computer Science, Springer, Heidelberg, pp 19–32

  15. Hunter A, Nuseibeh B (1998) Managing inconsistent specifications: reasoning, analysis and action. ACM Trans Softw Eng Methodol 7(4):335–367

    Article  Google Scholar 

  16. Nuseibeh B (1996) To be and not to be: on managing inconsistency in software development. In: Proceedings of 8th international workshop on software specification and design (IWSSD-8), Scloss Velen, Germany. IEEE Computer Society Press, 22–23 March 1996, pp 164–169

  17. Gervasi V, Zowghi D (2005) Reasoning about inconsistencies in natural language requirements. ACM Trans Softw Eng Methodol 14(3):277–330

    Google Scholar 

  18. Robinson W, Fickas S (1994) Supporting multi-perspective requirements engineering. In: Proceedings of the 1st IEEE international conference on requirements engineering. IEEE Computer Society Press, 18–21 April 1994, pp 206–215

  19. Spanoudakis G, Kim H (2004) Supporting the reconciliation of models of object behaviour. Int J Softw Syst Modell Spec Issue Obj Orient Inf Syst 3(4):273–293

    Google Scholar 

  20. Heitmeyer CL, Jeffords RD, Labaw BG (1996) Automated consistency checking of requirements specifications. ACM Trans Softw Eng Methodol 5(3):231–261

    Google Scholar 

  21. Finkelstein A, Gabbay D, Hunter A, Kramer J, Nuseibeh B (1994) Inconsistency handling in multi-perspective specifications. IEEE Trans Softw Eng 20(8):569–578

    Article  Google Scholar 

  22. van Lamsweerde A, Darimont R, Letier E (1998) Managing conflicts in goal-driven requirements engineering. IEEE Trans Softw Eng 24(11):908–926. Special issue on inconsistency management in software development

    Google Scholar 

  23. Kozlenkov A, Zisman A (2004) Discovering, recording, and handling inconsistencies in software specifications. Int J Comput Inf Sci 5(2):89–108

    Google Scholar 

  24. 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., Singapore, pp 329–380

  25. van Lamsweerde A, Willemet L (1998) Inferring declarative requirements specifications from operational scenarios. IEEE Trans Softw Eng 24(12):1089–1114

    Google Scholar 

  26. Nentwich C, Capra L, Emmerich W, Finkelstein A (2001) Static consistency checking for distributed specifications. In: Proceedings of the 16th international conference on automated software engineering (ASE 2001), Coronado Island, pp 115–124

  27. Sommerville I, Sawyer P (1997) Viewpoints: principles, problems and a practical approach to requirements engineering. Ann Softw Eng 3:101–130

    Google Scholar 

  28. Hunter A, Konieczny S (2004) Approaches to measuring inconsistent information. In: Inconsistency tolerance, vol 3300 of Lecture Notes in Computer Science. Springer, Heidelberg, pp 191–236

  29. Hunter A (2006) How to act on inconsistent news: ignore, resolve, or reject. Data Knowl Eng 57(3):221–239

    Article  Google Scholar 

  30. Zowghi D, Gervasi V (2003) On the interplay between consistency, completeness, and correctness in requirements evolution. Inf Softw Technol 45(14):993–1009

    Google Scholar 

  31. Hunter A, Summerton R (2006) A knowledge-based approach to merging information. Knowl Based Syst 19:647–674

    Article  Google Scholar 

  32. Niskier C, Maibaum TSE, Schwabe D (1989) A look through prisma: towards pluralistic knowledge-based environments for software specification acquisition. In: Potts C (ed) Proceedings of the 5th IEEE international workshop on software specification and design, Pittsburgh, pp 128–136

  33. Zave P, Jackson M (1993) Conjunction as composition. ACM Trans Softw Eng Methodol 2(4):379–411

    Google Scholar 

  34. Nuseibeh B, Kramer J, Finkelstein A (1994) A framework for expressing the relationships between multiple views in requirements specification. IEEE Trans Softw Eng 20(10):760–773

    Article  Google Scholar 

  35. Sabetzadeh M, Easterbrook SM (2003) Analysis of inconsistency in graph-based viewpoints: a category-theoretic approach. In: Proceedings of the 18th IEEE international conference on automated software engineering, pp 12–21

  36. Robinson W (1989) Integrating multiple specifications using domain goals. In: Proceedings of the 5th international workshop on software specification and design (IWSSD-5). IEEE Computer Society Press, 19–20 May 1989, pp 219–225

  37. Systä T (2000) Incremental construction of dynamic models for object oriented software systems. J Obj Orient Program 13(5):18–27

    Google Scholar 

  38. Uchitel S, Kramer J (2001) A workbench for synthesising behaviour models from scenarios. In: Proceedings of the 23rd IEEE international conference on software engineering (ICSE’01), pp 188–197, Toronto, Canada. IEEE Computer Society Press, 12–19 May 2001

  39. Chacón JL, Pino Pérez R (2002) Logic-based merging: the infinite case. In: Delgrande JP, Schaub T (eds) Proceedings of the 10th international workshop on non-monotonic reasoning (NMR’04), Whistler, Canada. AAAI Press, 6–8 June 2004, pp 100–108

  40. Konieczny S, Pino Pérez R (2002) Merging information under constraints: a logical framework. J Log Comput 12(5):773–808

  41. Motro A, Anokhin P (2006) Fusionplex: resolution of data inconsistencies in the integration of heterogeneous information sources. Inf Fus 7:176–196

    Google Scholar 

  42. Motro A, Anokhin P, Acar AC (2004) Utility-based resolution of data inconsistencies. In: Proceedings of the 2004 international workshop on information quality in information systems (IQIS’04), New York. ACM Press, pp 35–43

  43. Naumann F, Häussler M (2002) Declarative data merging with conflict resolution. In: Proceedings of the international conference on information quality (IQ’02), Cambridge

  44. Liu XF, Sun Y, Veera CS, Kyoya Y, Noguchi K (2006) Priority assessment of software process requirements from multiple perspectives. J Syst Softw 79(11):1649–1660

    Google Scholar 

Download references

Acknowledgments

This work was partially supported by the Xunta de Galicia Basic Research Project PGIDT04PXIB32201PR and by the Consellería de Educación e Ordenación Universitaria (Xunta de Galicia) incentives file 2007/000016-0. We thank Anthony Hunter for his insightful suggestions on earlier drafts of this paper. Our thanks are also given to the reviewers for their valuable feedback and helpful comments that have contributed to increase the quality of this paper.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Ana Belén Barragáns Martínez.

Rights and permissions

Reprints and permissions

About this article

Cite this article

Barragáns Martínez, A.B., Pazos Arias, J.J., Fernández Vilas, A. et al. Composing requirements specifications from multiple prioritized sources. Requirements Eng 13, 187–206 (2008). https://doi.org/10.1007/s00766-008-0064-6

Download citation

  • Received:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s00766-008-0064-6

Keywords

Navigation