Advertisement

Software & Systems Modeling

, Volume 7, Issue 3, pp 303–328 | Cite as

A methodology for the selection of requirements engineering techniques

  • Li JiangEmail author
  • Armin Eberlein
  • Behrouz H. Far
  • Majid Mousavi
Regular Paper

Abstract

The complexity of software projects as well as the multidisciplinary nature of requirements engineering (RE) requires developers to carefully select RE techniques and practices during software development. Nevertheless, the selection of RE techniques is usually based on personal preference or existing company practice rather than on characteristics of the project at hand. Furthermore, there is a lack of guidance on which techniques are suitable for a certain project context. So far, only a limited amount of research has been done regarding the selection of RE techniques based on the attributes of the project under development. The few approaches that currently exist for the selection of RE techniques provide only little guidance for the actual selection process. We believe that the evaluation of RE techniques in the context of an application domain and a specific project is of great importance. This paper describes a Methodology for Requirements Engineering Techniques Selection (MRETS) as an approach that helps requirements engineers select suitable RE techniques for the project at hand. The MRETS has three aspects: Firstly, it aids requirements engineers in establishing a link between the attributes of the project and the attributes of RE techniques. Secondly, based on the evaluation schema proposed in our research, MRETS provides an opportunity to analyze RE techniques in detail using clustering. Thirdly, the objective function used in our approach provides an effective decision support mechanism for the selection of RE techniques. This paper makes contributions to RE techniques analysis, the application of RE techniques in practice, RE research, and software engineering in general. The application of the proposed methodology to an industrial project provides preliminary information on the effectiveness of MRETS for the selection of RE techniques.

Keywords

Requirements engineering Technique evaluation Decision support Clustering 

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    Boehm B.W. (1981). Software Engineering Economics. Prentice-Hall, Englewood Cliffs zbMATHGoogle Scholar
  2. 2.
    Macaulay, L.A.: Requirements for requirements engineering techniques. In: IEEE Proceedings of ICRE, pp. 157–164 (1996)Google Scholar
  3. 3.
    Sommerville I. and Sawyer P. (1997). Requirements Engineering: A Good Practice Guide. Wiley, New York zbMATHGoogle Scholar
  4. 4.
    Herlea, D., Jonker, C.M., Treur, J., Wijngaards, N.J.E.: A case study in RE: a personal internet agent, Technical Report,Vrije Universiteit Amsterdam, Department of Artificial Intelligence (1998)Google Scholar
  5. 5.
    Thanasankit, T., Corbitt, B.: Towards understanding managing RE—a case study of a Thai Software House. In: Proceedings of 10th Australasian Conference on Information Systems (1999)Google Scholar
  6. 6.
    Emam K.E. and Birk A. (2000). Validating the ISO\IEC 15504 measure of software requirements analysis process capability. IEEE Trans. Softw. Eng. 26(6): 541–566 CrossRefGoogle Scholar
  7. 7.
    Jiang, L., Eberlein, A.: Requirements engineering: a review and a proposal. In: Proceedings of the Third ASERC Workshop on Quantitative and Software Engineering, 17–18 February 2003. Banff, Alberta, Canada (2003)Google Scholar
  8. 8.
    Glass R.L. and Vessey I. (1995). Contemporary application-domain taxonomies. IEEE Softw. 12(4): 63–76 CrossRefGoogle Scholar
  9. 9.
    Nuseibeh B. and Easterbrook S. (2000). Requirements engineering: a roadmap. In: Finkelstein, A. (eds) The Future of Software Engineering, pp. ACM Press, New York Google Scholar
  10. 10.
    Sutcliffe, A.: A Technique combination approach to requirements engineering. In: 3rd IEEE International Symposium on Requirements Engineering (RE’97), 05–08 January 1997, Annapolis, Maryland, USA (1997)Google Scholar
  11. 11.
    Mannio, M., Nikula, U.: Requirements elicitation using a combination of prototypes and scenarios, Technical Report. Telecom Business Research Center, Lappeenranta, Lappeenranta University of Technology, P.O. BOX 20, FIN-53851 Lappeenranta, Finland, ISBN 951-764-528-7 (2001)Google Scholar
  12. 12.
    Macaulay L.A. (1996). Requirements engineering, Applied Computing. Springer, New York Google Scholar
  13. 13.
    Davis A.M. (1993). Software Requirements, Objects, Functions and States. Prentice-Hall, Upper Saddle River zbMATHGoogle Scholar
  14. 14.
    Jiang, L., Eberlein, A., Far, B.H., Majid, M.: An Innovative requirement engineering technique selection model, Technical Reports, 30 April 2004. Department of Electrical and Engineering, University of Calgary, http://www.enel.ucalgary. ca/~jiangl/research/indexOfResearch.htm (2004)Google Scholar
  15. 15.
    Kumar K. and Welke R.J. (1992). Methodology engineering: a proposal for situation specific methodology construction. In: Cotterman, W. and Senn, J. (eds) Challenges and Strategies for Research in Systems Development, pp 257–266. Wiley, Chichester Google Scholar
  16. 16.
    Brinkkemper, S.: Method engineering: engineering the information systems development methods and tools. Inf. Softw. Technol. 37(11) (1995)Google Scholar
  17. 16.
    Brinkkemper S., Lyytinen K. and Welke R. (1996). Method Engineering, Principles of Method Construction and Tool Support. Chapman & Hall, London Google Scholar
  18. 18.
    Rossi, M., Tolvanen, J.P.:, Using reusable frameworks in development of a method support environment. In: Proceedings of the WITS 1995, vol. 95, no. 15, pp. 240–249. RTWH, Aachen (1995)Google Scholar
  19. 19.
    Lyytinen, K., Welke, R.: Metamodeling and method engineering, Special issue on metamodeling and method engineering. Inf. Syst. Int. J. 24(3), (1999)Google Scholar
  20. 20.
    Tolvanen, J.P.: Incremental method engineering with modeling tools: theoretical principles and empirical evidence, PhD thesis, Computer Science, University of Jyväskylä (1998)Google Scholar
  21. 21.
    Saeki, M.: Software specification & design methods and method engineering. Int. J. Softw. Eng. Knowl. Eng. (1994)Google Scholar
  22. 22.
    Maiden N. and Rugg G. (1996). ACRE: slecting methods for rRequirements acquisition. Softw. Eng. J. 11(3): 183–192 CrossRefGoogle Scholar
  23. 23.
    Hickey, A.M., Davis, A.M.: Requirements elicitation and elicitation technique selection: a model for two knowledge-intensive software development processes. In: Proceedings of the 36th Annual Hawaii International Conference on System Sciences, 2003., 6–9 January 2003, pp. 96 −105 (2003)Google Scholar
  24. 24.
    Hickey, A.M., Davis, A.M.: Elicitation technique Selection: how do experts do it? In: Proceedings of the 11th IEEE International Requirements Engineering Conference (2003)Google Scholar
  25. 25.
    Bickerton, J.M., Siddiqi, J.: The classification of requirements engineering methods. In: Proceedings of IEEE International Symposium on Requirements Engineering, 4–6 January 1993, pp. 182–186. San Diego, CA ,USA (1993)Google Scholar
  26. 26.
    Kotonya G. and Sommerville I. (1998). RE, Processes and Techniques. Wiley, New York Google Scholar
  27. 27.
    Davis G.B. (1982). Strategies for information requirements determination. IBM Syst. J. 21(1): 4–31 CrossRefGoogle Scholar
  28. 28.
    Browne G.J. and Ramesh V. (2002). Improving information requirements determination: a cognitive perspective. Inf. Manage. 39: 625–645 CrossRefGoogle Scholar
  29. 29.
    Lobo, L.O., Arthur, J.D.: An objectives-driven process for selecting methods to support requirements engineering activities. In: 29th Annual IEEE\NASA Software Engineering Workshop (2005)Google Scholar
  30. 30.
    Lauesen, S.: Software Requirements: Styles and Techniques, Addison Wesley, New YOrk (2002)Google Scholar
  31. 31.
    Jiang, L., Eberlein, A., Far, B.H.: Evaluating the requirements engineering process using major concerns, Technical Reports, 30 August 2003, Department of Electrical and Engineering, University of Calgary. http://www.enel.ucalgary.ca/∼jiangl/ research/indexOfResearch.htm (2003)Google Scholar
  32. 32.
    Glass R.L. (2004). Matching methodology to problem domain. Commun. ACM 47(5): 19–21 CrossRefGoogle Scholar
  33. 33.
    Jiang, L.: A framework for requirements engineering process development, PhD thesis, University of Calgary (2005)Google Scholar
  34. 34.
    Keyes, J.: How software is developed undergoing basic changes. Softw. Magaz. 12(1), 38–40, 43–47, 55–56 (1992)Google Scholar
  35. 35.
    Wieringa R.J. (1996). Requirements Engineering: Frameworks for Understanding. Wiley, New York Google Scholar
  36. 36.
    Bray I.K. (2002). An Introduction to Requirements Engineering. Addison Wesley, New York Google Scholar
  37. 37.
    Jiang, L., Eberlein, A., Far, B.H.: A methodology for RE process development. In: ECBS 11th IEEE International Conference on the Engineering of Computer-Based Systems, Brno, Czech Republic, 2004Google Scholar
  38. 38.
    Nielsen P.A. (1989). Reflections on development methods for information systems: a set of distinctions between methods. Off. Technol. People 5(2): 81–144 CrossRefGoogle Scholar
  39. 39.
    Agell I.O. and Straub B.H. (1993). Though this be madness, yet there is method. Int. J. Strat. Inf. Syst. 2(1): 5–14 CrossRefGoogle Scholar
  40. 40.
    Extreme Chaos (2001) The Standish Group International, Inc.Google Scholar
  41. 41.
    Jiang, L., Eberlein, A., Far, B.H.: A RE process Template for Aiding RE process development, Technical Reports, 30 August 2003. Department of Electrical and Engineering, University of Calgary. http://www.enel.ucalgary. ca/~jiangl/research/indexOfResearch. htm(2003)Google Scholar
  42. 42.
    Booch, G.: Object-oriented design with applications, Benjamin\Cummings, New York (1994)Google Scholar
  43. 43.
    Jiang, L., Eberlein, A., Far, B.H.: Evaluating the requirements engineering process using major concerns. In: Proceedings of the IASTED International Conference on Software Engineering (SE2004) as part of the Twenty-Second IASTED International Multi-Conference on Applied Informatics, Innsbruck, Austria, 17–19 February 2004, pp. 30–35Google Scholar
  44. 44.
    Mesiar, R., Calvo, T., Mayor, G.: , Aggregation Operators: New Trends and Applications, Physica-Verlag, New YOrk (2002)Google Scholar
  45. 45.
    Jiang, L., Eberlein, A.: Clustering requirements engineering techniques. In: IASTED International Conference on Software Engineering and Applications (SEA 2006), Dallas, USA (2006)Google Scholar
  46. 46.
    Jain A.K., Murty M.N. and Flynn P.J. (1999). Data clustering: a review. ACM Comput. Surveys (CSUR) 31(3): 264–323 CrossRefGoogle Scholar
  47. 47.
    Jain A.K. and Dubes R.C. (1998). Algorithms for Clustering Data. Prentice-Hall, Englewood Cliffs Google Scholar
  48. 48.
    Chiu, S.: Fuzzy model identification based on cluster estimation. J. Intell. Fuzzy Syst. 2(3) (1994)Google Scholar
  49. 49.
    Bezdek J.C. (1981). Pattern Recognition with Fuzzy Objective Function Algorithms. Plenum Press, New York zbMATHGoogle Scholar
  50. 50.
    Pfeiffer, S.: Requirements Engineering for Dynamic Markets, MSc Thesis. Department of Electrical and Computer Engineering, University of Calgary, Calgary, Alberta, 2003Google Scholar
  51. 51.
    Salzer, H.: ATRs (Atomic Requirements) Used Throughout Development Lifecycle. In: 12th International Software Quality Week (1999)Google Scholar
  52. 52.
    Helmer, O., Rescher, N.: On the Epistemology of the Inexact Science, Management Science, 1959, vol. 6 Issue 1, p25, 28pGoogle Scholar
  53. 53.
    Kitchenham, B., Plckard, L., Pfleeger, S.L.: Case studies for method and tool evaluation. IEEE Softw. 52–62 (1995)Google Scholar
  54. 54.
    Telelogic DOORS (2002) http://www.telelogic.com/products/doorsers/doors/index.cfm, 2002Google Scholar
  55. 55.
    Fitzgerald, B.: An investigation of the use of system development methodologies in practice. In: Fourth European conference on information systems, pp 143–161 (1996)Google Scholar
  56. 56.
    The Chaos Report (1995) The Standish Group International, Inc., 1995 http://www.standishgroup.com/sample_research/index.phpGoogle Scholar
  57. 57.
    Glass R.L. (1999). The software-research crisis. Software, IEEE 11(6): 42–47 CrossRefMathSciNetGoogle Scholar
  58. 58.
    A Recipe for Success (1999) The Standish Group InternationalGoogle Scholar

Copyright information

© Springer-Verlag 2007

Authors and Affiliations

  • Li Jiang
    • 1
    Email author
  • Armin Eberlein
    • 2
  • Behrouz H. Far
    • 3
  • Majid Mousavi
    • 3
  1. 1.School of Computer ScienceThe University of AdelaideAdelaideAustralia
  2. 2.Computer Engineering DepartmentAmerican University of SharjahSharjahUAE
  3. 3.Department of Electrical and Computer EngineeringUniversity of CalgaryCalgaryCanada

Personalised recommendations