Context: There is abundant literature on the application of UML Use Cases. However, the impact that these applications have had on real projects (in industry) is not well known. It is necessary to know what the impact of the Use Cases really is, so that both, researchers and professionals can make the most pertinent decisions.Objective: To identify and classify the positive and negative impacts of using Use Cases in real-world settings.
Method:We conducted a systematic mapping study. The search strategies retrieved a set of 4,431 papers out of which 47 were selected as primary studies. We defined four facets to classify these studies: 1) the positive impact (advantages), 2) the negative impact (disadvantages), 3) the industry's domain and 4) the type of research reported.
Results:Our study identified eight categories of advantages related to the application of Use Cases. The most mentioned were estimation, analysis and automation. These advantages had a heterogeneous distribution along the years. On the other hand, the granularity of the scenarios described in the Use Cases, the lack of a standardized format for specifying requirements, and the lack of appropriate guidelines for analysing them were the most mentioned disadvantages. We identified a variety of industry domains, grouped into seven categories. As we can expect most of the papers report experiences in the Information Technology domain, followed by financials applications. Almost half the papers applied evaluation research, including an empirical validation. Only one third of the analysed papers reported threats to validity, the most mentioned being generalizability (38%).
Conclusions:Use Cases have proven to be a useful tool in software development, particularly during the early stages. The positive effects far outweigh the few negative effects reported, although this may be due to the researchers' tendency of not reporting negative results.