Applications of linguistic techniques for use case analysis

A. Fantechi1, S. Gnesi2, G. Lami2, A. Maccari3
1Dip. di Sistemi e Informatica, Università di Firenze, Italy
2Istituto di Elaborazione della Informazione—C.N.R., Italy
3Software Architecture Group, Nokia Research Center, Finland

Tóm tắt

Use cases are effective techniques to express the functional requirements of a system in a very simple and easy-to-learn way. Use cases are mainly composed of natural language (NL) sentences, and the use of NL to describe the behaviour of a system is always a critical point, due to the inherent ambiguities originating from the different possible interpretations of NL sentences. We discuss in this paper the application of analysis techniques based on a linguistic approach to detect, within requirements documents, defects related to such an inherent ambiguity. Starting from the proposed analysis techniques, we will define some metrics that will be used to perform a quality evaluation of requirements documents. Some available automatic tools supporting the linguistic analysis of NL requirements have been used to evaluate an industrial use cases document according to the defined metrics. A discussion on the application of linguistic analysis techniques to support the semantic analysis of use cases is also reported.

Từ khóa


Tài liệu tham khảo

Abrial JR. The B book—assigning programs to meanings. Cambridge University Press, Cambridge, UK, 1996 Alspaugh TA, Antòn AI. Scenario networks: a case study of the enhanced messaging system. In: Proceedings of the 7th International Workshop on Requirements Engineering: Foundation for Software Quality REFSQ'01, Interlaken, Switzerland, 4–5 June, 2001 Ambriola V, Gervasi V. Processing natural language requirements. In: Proceedings of the 12th IEEE Conference On Automated Software Engineering (ASE'97), Lake Tahoe, CA, 2–5 November, 1997 Ben Achour C, Tawbi M and Souveyet C. Bridging the gap between users and requirements engineering: the scenario-based approach (CREWS Report Series 99–07). Int J Comp Sys Sci Engin, 1999; 14(6):112–122 Bolognesi T, Brinksma E. Introduction to the ISO specification language LOTOS. Comp Netwks, 1987; 14(1):25–59 Cockburn A. Writing effective use cases. Addison-Wesley, Reading, MA, 2000 Cockburn A. Structuring use cases with goals. J Obj-Or Program, 1997; 9(5):35–40 and 9(6):56–62 Connexor tool. http://www.connexor.com/demos.html. Cited 2002 Dutoit AH, Peach B. Developing guidance and tool support for rationale-based use case specification. In: Proceedings of the 7th International Workshop on Requirements Engineering: Foundation for Software Quality REFSQ'01, Interlaken, Switzerland, 4–5 June, 2001 Van der Linden F. Software product families in Europe: The ESAPS and Café projects. IEEE Soft, 2002; 19(4):41–49 Fantechi A, Gnesi S, Ristori G, Carenini M, Vanocchi M and Moreschini P. Assisting requirement formalization by means of natural language translation. Form Meth Sys Des, 1994; 4(3):243–263 Fabbrini F, Fusani M, Gnesi S and Lami G. An automatic quality evaluation for natural language requirements. In: Proceedings of the 7th International Workshop on Requirements Engineering: Foundation for Software Quality REFSQ'01, Interlaken, Switzerland, 4–5 June, 2001 Fabbrini F, Fusani M, Gnesi S and Lami G. The linguistic approach to the natural language requirements quality: benefits of the use of an automatic tool. In: Proceedings of the 26th Annual IEEE Computer Society—NASA Goddard Space Flight Center Software Engineering Workshop, Greenbelt, MD, 28–29 November, 2001 Fuchs NE, Schwitter R. Specifying logic programs in controlled natural language. In: Proceedings of the Workshop on Computational Logic for Natural Language Processing, Edinburgh, Scotland, 3–5 April, 1995 Goldin L, Berry DM. Abstfinder, a prototype abstraction finder for natural language text for use in requirements elicitation: design, methodology, and evaluation. In: Proceedings of the First International Conference on Requirements Engineering, Colorado Springs, CO, 18–22 April, 1994 Hooks I. Writing good requirements. In: Proceedings of the Fourth International Symposium of the NCOSE, San Jose, CA, 10–12 August, 1994 International Standards Organization. Information Technology—Software Process Assessment: (Part 1 – Part 9), ISOIIEC TR2 1550G, Geneva, Switzerland, 1998 Jacobson I, Booch G and Rumbaugh J. The unified modelling language reference manual. Addison-Wesley, Reading, MA, 1999 Kamsties E, Peach B. Taming ambiguity in natural language requirements. In: Proceedings of the ICSSEA 2000, Paris, France, 5–8 December, 2000 Macias B, Pulman SG. Natural language processing for requirement specifications. In: Redmill F, Anderson T (eds) Safety critical systems, Chapman and Hall, London, 1993 Mich L, Garigliano R. Ambiguity measures in requirements engineering. In: Proceedings of the International Conference on Software Theory and Practice—ICS 2000, Beijing, China, 14–17 May, 2000 Natt och Dag J, Regnell B, Carlshamre P, Andersson M and Karlsson J. Evaluating automated support for requirements similarity analysis in market-driven development. In: Proceedings of the 7th International Workshop on Requirements Engineering: Foundation for Software Quality REFSQ'01, Interlaken, Switzerland, 4–5 June, 2001 Spivey JM. The Z notation: a reference manual. Prentice-Hall, London, 1992 SyTwo online. http://www.yana.it Cited 2003 Wilson WM, Rosenberg LH and Hyatt LE. Automated analysis of requirement specification. In: Proceedings of the Nineteenth International Conference on Software Engineering (ICSE-97), Boston, MA, 18–19 May, 1997 Zowghi D, Gervasi V and McRae A. Using default reasoning to discover inconsistencies in natural language requirements. In: Proceedings of the 8th Asia-Pacific Software Engineering Conference, Macau SAR, China, 4–7 December, 2001 http://www.nokia.com/phones/8310/index.html. Cited 2003