Skip to main content
Log in

Improving the identification of functional system requirements when novice analysts create use case diagrams: the benefits of applying conceptual mental models

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

Abstract

Planning an information system (IS) is challenging, especially for inexperienced IS analysts, including students. One area that often causes particular difficulty is defining the requirements of the future system—a phase that is crucial to the success of any IS project. While serving as advisers for students carrying out their first IS projects, we observed that “imagining” the future system’s functionality and workflow from the user’s perspective makes it easier for students to identify the system’s functional requirements. This insight led us to suggest refining the requirements phase by structuring the “imagining” process into a formal Conceptual mental model (CMM)—that is, a tangible visual representation of the user’s beliefs and expectations (i.e., the user’s mental model) about the system to be developed. We expect that this approach, taken from the domains of cognitive psychology and human–computer interaction, will improve the ability of inexperienced IS analysts to identify the functional requirements of the future system, along with their associated relations and actors. In particular, we expect that this approach will yield better Use case diagrams (UCDs)—a key component of the Use case model for representing and then specifying system requirements, relations and actors. Here, we report on a controlled experiment testing whether creation of a CMM prior to the creation of a UCD improves the identification of functional system requirements, relations, and actors in terms of correctness, completeness, and irredundancy of the UCD. We found that participants who produced a UCD after producing a CMM performed significantly better in defining system requirements, relations and actors, as expressed in their UCDs, compared to participants who produced a UCD without first producing a CMM. We conclude that our suggested refinement improves the performance of novice IS analysts in capturing, analyzing and defining functional system requirements, relations and actors in a UCD, in terms of correctness, completeness, and irredundancy.

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

Similar content being viewed by others

Notes

  1. It should be emphasized that in the present study we are concerned only with functional system requirements. There is no consensus within the requirements engineering community on how to define and, in particular, how to elicit, document and validate nonfunctional requirements (NFRs). Some requirements engineers hold that the two types should be represented in two separate parts of the requirements specification, while others believe that NFRs should be attached to functional requirements as far as possible [6]. In the context of the use case model, NFRs that are associated with specific use cases can be documented in UC descriptions. However, this question is beyond the scope of the present study.

References

  1. Robertson S, Robertson J (2012) Mastering the requirements process: getting requirements right. Addison-Wesley, Boston

    Google Scholar 

  2. Moody DL, Shanks GG (2003) Improving the quality of data models: empirical validation of a quality management framework. Inf Syst 28(6):619–650

    MATH  Google Scholar 

  3. Cockburn A (2001) Writing effective use Cases. Agile software development series. Addison-Wesley, Boston

    Google Scholar 

  4. Ricca F et al (2014) Assessing the effect of screen mockups on the comprehension of functional requirements. ACM Trans Softw Eng Methodol (TOSEM) 24(1):1

    Google Scholar 

  5. Scanniello G, Gravino C, Tortora G (2010) Investigating the role of UML in the software modeling and maintenance—a preliminary industrial survey. In: Proceedings of the ICEIS, pp 141–148

  6. Glinz M (2007) On non-functional requirements. In: 15th IEEE International proceedings of the conference on requirements engineering RE’07, pp 21–26

  7. Aranda J, Ernst N, Horkoff J, Easterbrook S (2007) A framework for empirical evaluation of model comprehensibility. In: Proceedings of the modeling in software engineering (MISE), ICSE Workshop 2007, IEEE CS, pp 7–13

  8. Greca IM, Moreira MA (2000) Mental models, conceptual models, and modelling. Int J Sci Educ 22(1):1–11

    Google Scholar 

  9. Rouse WB, Morris NM (1986) On looking into the black box: prospects and limits in the search for mental models. Psychol Bull 100(3):349–363

    Google Scholar 

  10. Carey S (1986) Cognitive science and science education. Am Psychol 1(10):1123–1130

    Google Scholar 

  11. Gemino A, Wand Y (2003) Evaluating modeling techniques based on models of learning. Commun ACM 46(10):79–84

    Google Scholar 

  12. Nuseibeh B, Easterbrook S (2000). In: Proceedings of the conference on the future of software engineering, ACM, pp 35–46

  13. Sutcliffe A (2003) Scenario-based requirements engineering. In: 11th IEEE international proceedings of the requirements engineering conference, pp 320–329

  14. Rolland C, Achour CB, Cauvet C, Ralyté J, Sutcliffe A, Maiden N, Heymans P (1998) A proposal for a scenario classification framework. Requir Eng 3:23–47

    Google Scholar 

  15. Hadar I, Hazzan O (2004) On the contribution of UML diagrams to software system comprehension. J Object Technol 3(1):143–156

    Google Scholar 

  16. Erickson J, Siau K (2007) Can UML be simplified? Practitioner use of UML in separate domains. In: Proceedings of the EMMSAD, pp 89–98

  17. Anda B, Sjøberg D, Jørgensen M (2001) Quality and understandability of use case models. In: proceedings

    Google Scholar 

  18. Anda B, Dreiem H, Sjøberg DI, Jørgensen M (2001) Estimating software development effort based on use cases-experiences from industry. In: Proceedings of the international conference on the unified modeling language. Springer, Berlin, pp 487–502

    Google Scholar 

  19. Rodrigo J, Gonzalez VM (2013) Mental models, performance and usability of complex interactive system: the case of twitter. In: Proceedings of the Mexican international conference on computer science, pp 7–12

  20. Norman DA (1983) Some observations on mental models. In: Gentner DR, Stevens AL (eds) Mental models. Erlbaum, Hillsdale, pp 7–14

    Google Scholar 

  21. Rasmussen J (1985) The role of hierarchical knowledge representation in decision making and system management. IEEE Trans Syst Man Cybern 15(2):234–243

    Google Scholar 

  22. Forrester J (1971) Counterintuitive behavior of social systems. Collected Papers of J W Forrester. Wright-Allen Press Inc, Cambridge, pp 211–244

    Google Scholar 

  23. Sterman JD (1994) Learning in and about complex systems. Syst Dyn Rev 10(2/3):291–330

    Google Scholar 

  24. Johnson-Laird PN (2010) Mental models and human reasoning. Proc Natl Acad Sci USA 107(43):18243–18245

    Google Scholar 

  25. Faro A, Giordano D (1997) A theory of interactions and scenes for user centered systems specification and verification. In: Proceedings of the ICSC ‘97, pp 364–373

  26. Newman MW, Lin J, Hong JI, Landay JA (2003) DENIM: an informal web site design tool inspired by observations of practice. Hum Comput Interact 18(3):259–324

    Google Scholar 

  27. Kieras D, Bovair S (1984) The role of a mental model in learning to operate a device. Cogn Sci 8(3):255–273

    Google Scholar 

  28. Borgman CL (1986) The user’s mental model of an information retrieval system: an experiment on a prototype online catalog. Int J Man Mach Stud 24(1):47–64

    Google Scholar 

  29. Petre M, Blackwell AF, Green TRG (1998) Cognitive questions in software visualization. Software visualization: programming as a multimedia experience. MIT Press, Cambridge, pp 453–480

    Google Scholar 

  30. Storey M, Fracchia F, Müller H (1997) Cognitive elements to support the construction of a mental model during software visualization. In: Proceedings of the 5th workshop on program comprehension, Dearborn, MI, pp 17–28

  31. Blackwell AF, Whitley KN, Good J, Petre M (2001) Cognitive factors in programming with diagrams. Artif Intell Rev 15:95–114

    MATH  Google Scholar 

  32. Hollnagel E (1988) Mental models and model mentality. In: Tasks, errors, and mental models. Taylor & Francis, Inc., pp 261–268‏

  33. Höst M, Regnell B, Wohlin C (2000) Using students as subjects-a comparative study of students and professionals in lead-time impact assessment. Empir Softw Eng 5(3):201–214

    MATH  Google Scholar 

  34. Moody D (2005) Theoretical and practical issues in evaluating the quality of conceptual models: current state and future directions. Data Knowl Eng 55:243–276

    Google Scholar 

  35. Genero M, Fernández-Saez AM, Nelson HJ, Poels G, Piattini M (2011) Research review: a systematic literature review on the quality of UML models. J Database Manag (JDM) 22(3):46–70

    Google Scholar 

  36. Ricca F et al. (2010) On the effectiveness of screen mockups in requirements engineering: results from an internal replication. In: Proceedings of the ACM-IEEE international symposium on empirical software engineering and measurement, ACM

  37. Cox K, Aurum A, Jeffery R (2004) An experiment in inspecting the quality of use case descriptions. J Res Pract Inf Technol 36(4):211–229

    Google Scholar 

  38. Gemino A, Parker D (2009) Use case diagrams in support of use case modeling: deriving understanding from the picture. J Database Manag (JDM) 20(1):1–24

    Google Scholar 

  39. Phalp KJ, Vincent K, Cox K (2007) Improving the quality of use case descriptions: empirical assessment of writing guidelines. Softw Qual J 15(4):383–399

    Google Scholar 

  40. Phalp KT, Vincent J, Cox K (2007) Assessing the quality of use case descriptions. Softw Qual J 15(1):69–97

    Google Scholar 

  41. Scanniello G, Erra U (2014) Distributed modeling of use case diagrams with a method based on think-pair-square: results from two controlled experiments. J Vis Lang Comput 25(4):494–517

    Google Scholar 

  42. Siau K, Lee L (2004) Are use case and class diagrams complementary in requirements analysis? An experimental study on use case and class diagrams in UML. Requir Eng 9(4):229–237

    Google Scholar 

  43. Yue T, Briand LC, Labiche Y (2009) A use case modeling approach to facilitate the transition towards analysis models: concepts and empirical evaluation. In: Proceedings of the international conference on model driven engineering languages and systems. Springer, Berlin, pp 484–498

    Google Scholar 

  44. Lindland OI, Sindre G, Sølvberg A (1994) Understanding quality in conceptual modeling. IEEE Softw 11(2):42–49

    Google Scholar 

  45. Shoval P, Shiran S (1997) Entity-relationship and object-oriented data modeling-an experimental comparison of design quality. Data Knowl Eng 21(3):297–315

    MATH  Google Scholar 

  46. Dahan M, Shoval P, Sturm A (2014) Comparing the impact of the OO-DFD and the use case methods for modeling functional requirements on comprehension and quality of models: a controlled experiment. Requir Eng 19(1):27–43

    Google Scholar 

  47. Peleg M, Dori D (2000) The model multiplicity problem: experimenting with real time specification methods. IEEE Trans Softw Eng 26(8):742–759

    Google Scholar 

  48. Reinhartz-Berger I, Dori D (2005) OPM versus UML-Experimenting with comprehension and construction of web application models. Empir Softw Eng 10:57–79

    Google Scholar 

  49. Shoval P, Frumermann I (1994) OO and EER conceptual schemas: a comparison of user comprehension. J Database Manag 5(4):28–38

    Google Scholar 

  50. Balsamiq. https://balsamiq.com/. Accessed 8 May 2018

  51. Burton-Jones A, Weber R, Wand Y (2009) Guidelines for empirical evaluations of conceptual modeling grammars. J Assoc Inf Syst 10:495–532

    Google Scholar 

  52. Siegel S (1956) Non-parametric statistics for the behavioral sciences. McGraw-Hill, New York

    MATH  Google Scholar 

  53. Batra D, Hoffler JA, Bostrom RP (1990) Comparing representations with relational and EER models. Commun ACM 33(2):126–139

    Google Scholar 

  54. Dutoit AH, Paech B (2002) Rationale-based use case specification. Requir Eng 7:3–19

    MATH  Google Scholar 

  55. Schenk KD, Vitalari NP, Davis KS (1998) Differences between novice and expert systems analysts: What do we know and what do we do? J Manag Inf Syst 15(1):9–50

    Google Scholar 

  56. Pyla PS, Pérez-Quinones MA, Arthur JD, Hartson HR (2003) Towards a model-based framework for integrating usability and software engineering life cycles. In: Proceedings of the interact 2003 workshop on “closing the gaps: software engineering and human computer interaction,” pp 67–74

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to D. Beimel.

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Beimel, D., Kedmi-Shahar, E. Improving the identification of functional system requirements when novice analysts create use case diagrams: the benefits of applying conceptual mental models. Requirements Eng 24, 483–502 (2019). https://doi.org/10.1007/s00766-018-0296-z

Download citation

  • Received:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s00766-018-0296-z

Keywords

Navigation