Skip to main content
Erschienen in: Software and Systems Modeling 2/2016

27.08.2014 | Regular Paper

Identifying duplicate functionality in textual use cases by aligning semantic actions

verfasst von: Alejandro Rago, Claudia Marcos, J. Andres Diaz-Pace

Erschienen in: Software and Systems Modeling | Ausgabe 2/2016

Einloggen

Aktivieren Sie unsere intelligente Suche, um passende Fachinhalte oder Patente zu finden.

search-config
loading …

Abstract

Developing high-quality requirements specifications often demands a thoughtful analysis and an adequate level of expertise from analysts. Although requirements modeling techniques provide mechanisms for abstraction and clarity, fostering the reuse of shared functionality (e.g., via UML relationships for use cases), they are seldom employed in practice. A particular quality problem of textual requirements, such as use cases, is that of having duplicate pieces of functionality scattered across the specifications. Duplicate functionality can sometimes improve readability for end users, but hinders development-related tasks such as effort estimation, feature prioritization, and maintenance, among others. Unfortunately, inspecting textual requirements by hand in order to deal with redundant functionality can be an arduous, time-consuming, and error-prone activity for analysts. In this context, we introduce a novel approach called ReqAligner that aids analysts to spot signs of duplication in use cases in an automated fashion. To do so, ReqAligner combines several text processing techniques, such as a use case-aware classifier and a customized algorithm for sequence alignment. Essentially, the classifier converts the use cases into an abstract representation that consists of sequences of semantic actions, and then these sequences are compared pairwise in order to identify action matches, which become possible duplications. We have applied our technique to five real-world specifications, achieving promising results and identifying many sources of duplication in the use cases.

Sie haben noch keine Lizenz? Dann Informieren Sie sich jetzt über unsere Produkte:

Springer Professional "Wirtschaft+Technik"

Online-Abonnement

Mit Springer Professional "Wirtschaft+Technik" erhalten Sie Zugriff auf:

  • über 102.000 Bücher
  • über 537 Zeitschriften

aus folgenden Fachgebieten:

  • Automobil + Motoren
  • Bauwesen + Immobilien
  • Business IT + Informatik
  • Elektrotechnik + Elektronik
  • Energie + Nachhaltigkeit
  • Finance + Banking
  • Management + Führung
  • Marketing + Vertrieb
  • Maschinenbau + Werkstoffe
  • Versicherung + Risiko

Jetzt Wissensvorsprung sichern!

Springer Professional "Wirtschaft"

Online-Abonnement

Mit Springer Professional "Wirtschaft" erhalten Sie Zugriff auf:

  • über 67.000 Bücher
  • über 340 Zeitschriften

aus folgenden Fachgebieten:

  • Bauwesen + Immobilien
  • Business IT + Informatik
  • Finance + Banking
  • Management + Führung
  • Marketing + Vertrieb
  • Versicherung + Risiko




Jetzt Wissensvorsprung sichern!

Springer Professional "Technik"

Online-Abonnement

Mit Springer Professional "Technik" erhalten Sie Zugriff auf:

  • über 67.000 Bücher
  • über 390 Zeitschriften

aus folgenden Fachgebieten:

  • Automobil + Motoren
  • Bauwesen + Immobilien
  • Business IT + Informatik
  • Elektrotechnik + Elektronik
  • Energie + Nachhaltigkeit
  • Maschinenbau + Werkstoffe




 

Jetzt Wissensvorsprung sichern!

Fußnoten
1
OpenNLP: available at http://​opennlp.​apache.​org.
 
3
 
7
The projects and the use cases used for the training phase were developed by System Engineering students, in the context of a Software Development Methodologies course taught at UNICEN University in 2011 and 2012.
 
8
Please note that this schema is more rigorous than a traditional k-fold cross-validation evaluation, in which the dataset is partitioned in k-1 subsets for training and just 1 subset for testing.
 
10
Software Development Studio (SDS) Development Server—http://​sds.​cs.​put.​poznan.​pl.
 
11
To reduce confounding factors, we ensured these analysts had a college degree in Software Engineering with a solid academic background. Moreover, the final meeting between the four of them allowed us to manage the different learning curves which might have affected their findings.
 
12
Because it exploits peculiarities in the domain of use cases, especially of textual use case specifications.
 
Literatur
1.
Zurück zum Zitat Adolph, S., Bramble, P., Cockburn, A., Pols, A.: Patterns for Effective Use Cases. The Agile Software Development Series. Addison-Wesley, Reading, MA (2003) Adolph, S., Bramble, P., Cockburn, A., Pols, A.: Patterns for Effective Use Cases. The Agile Software Development Series. Addison-Wesley, Reading, MA (2003)
2.
Zurück zum Zitat Alchimowicz, B., Jurkiewicz, J., Ochodek, M., Nawrocki, J.: Building benchmarks for use cases. Comput. Inf. 29(1), 27–44 (2010) Alchimowicz, B., Jurkiewicz, J., Ochodek, M., Nawrocki, J.: Building benchmarks for use cases. Comput. Inf. 29(1), 27–44 (2010)
3.
Zurück zum Zitat Baniassad, E., Clarke, S.: Theme: an approach for aspect-oriented analysis and design. In: Proceedings of the 26th International Conference on Software Engineering, IEEE Computer Society, Scotland, UK, pp. 158–167 (2004) Baniassad, E., Clarke, S.: Theme: an approach for aspect-oriented analysis and design. In: Proceedings of the 26th International Conference on Software Engineering, IEEE Computer Society, Scotland, UK, pp. 158–167 (2004)
5.
Zurück zum Zitat Booch, G., Rumbaugh, J., Jacobsen, I.: The Unified Modeling Language User Guide. The Addison-Wesley Object Technology Series. Addison Wesley, Reading (1999) Booch, G., Rumbaugh, J., Jacobsen, I.: The Unified Modeling Language User Guide. The Addison-Wesley Object Technology Series. Addison Wesley, Reading (1999)
7.
Zurück zum Zitat Chernak, Y.: Building a foundation for structured requirements. Aspect-oriented re explained—part 1. Better Software (2009) Chernak, Y.: Building a foundation for structured requirements. Aspect-oriented re explained—part 1. Better Software (2009)
8.
Zurück zum Zitat Ciemniewska, A., Jurkiewicz, J.: Automatic detection of defects in use cases. Master’s thesis, Poznan University of Technology—Faculty of Computer Science and Management—Institute of Computer Science (2007) Ciemniewska, A., Jurkiewicz, J.: Automatic detection of defects in use cases. Master’s thesis, Poznan University of Technology—Faculty of Computer Science and Management—Institute of Computer Science (2007)
9.
Zurück zum Zitat Ciemniewska, A., Jurkiewicz, J., Olek, L., Nawrocki, J.: Supporting use-case reviews. In: Proceedings of the 10th International Conference on Business Information Systems (BIS’07), Springer, Berlin, Heidelberg, pp. 424–437 (2007) Ciemniewska, A., Jurkiewicz, J., Olek, L., Nawrocki, J.: Supporting use-case reviews. In: Proceedings of the 10th International Conference on Business Information Systems (BIS’07), Springer, Berlin, Heidelberg, pp. 424–437 (2007)
10.
Zurück zum Zitat Cockburn, A.: Writing Effective Use Cases, vol. 1. Addison-Wesley, Reading (2001) Cockburn, A.: Writing Effective Use Cases, vol. 1. Addison-Wesley, Reading (2001)
11.
Zurück zum Zitat Dekhtyar, A., Dekhtyar, O., Holden, J., Hayes, J., Cuddeback, D., Kong, W.K.: On human analyst performance in assisted requirements tracing: statistical analysis. In: 2011 19th IEEE International on Requirements Engineering Conference (RE), pp. 111–120 (2011). doi:10.1109/RE.2011.6051649 Dekhtyar, A., Dekhtyar, O., Holden, J., Hayes, J., Cuddeback, D., Kong, W.K.: On human analyst performance in assisted requirements tracing: statistical analysis. In: 2011 19th IEEE International on Requirements Engineering Conference (RE), pp. 111–120 (2011). doi:10.​1109/​RE.​2011.​6051649
12.
Zurück zum Zitat Dobrzanski, L., Kuzniarz, L.: An approach to refactoring of executable UML models. In: Proceedings of the 2006 ACM Symposium on Applied Computing, ACM, New York, NY, USA, SAC ’06, pp. 1273–1279 (2006). doi:10.1145/1141277.1141574 Dobrzanski, L., Kuzniarz, L.: An approach to refactoring of executable UML models. In: Proceedings of the 2006 ACM Symposium on Applied Computing, ACM, New York, NY, USA, SAC ’06, pp. 1273–1279 (2006). doi:10.​1145/​1141277.​1141574
13.
Zurück zum Zitat Einarsson, H.T., Neukirchen, H.: An approach and tool for synchronous refactoring of UML diagrams and models using model-to-model transformations. In: Proceedings of the Fifth Workshop on Refactoring Tools. ACM, New York, NY, USA, WRT ’12, pp. 16–23 (2012). doi:10.1145/2328876.2328879 Einarsson, H.T., Neukirchen, H.: An approach and tool for synchronous refactoring of UML diagrams and models using model-to-model transformations. In: Proceedings of the Fifth Workshop on Refactoring Tools. ACM, New York, NY, USA, WRT ’12, pp. 16–23 (2012). doi:10.​1145/​2328876.​2328879
14.
Zurück zum Zitat Eissen, S.M., Stein, B.: Intrinsic plagiarism detection. In: Advances in Information Retrieval. Lecture Notes in Computer Science, vol. 3936, Springer, Berlin Heidelberg, pp. 565–569 (2006) Eissen, S.M., Stein, B.: Intrinsic plagiarism detection. In: Advances in Information Retrieval. Lecture Notes in Computer Science, vol. 3936, Springer, Berlin Heidelberg, pp. 565–569 (2006)
16.
Zurück zum Zitat Enckevort, Tv.: Refactoring UML models: using openarchitectureware to measure uml model quality and perform pattern matching on UML models with OCL queries. In: Proceedings of the 24th ACM SIGPLAN conference companion on OOPSLA ’09. ACM, New York, NY, USA, pp. 635–646 (2009). doi:10.1145/1639950.1639959 Enckevort, Tv.: Refactoring UML models: using openarchitectureware to measure uml model quality and perform pattern matching on UML models with OCL queries. In: Proceedings of the 24th ACM SIGPLAN conference companion on OOPSLA ’09. ACM, New York, NY, USA, pp. 635–646 (2009). doi:10.​1145/​1639950.​1639959
17.
Zurück zum Zitat Falessi, D., Cantone, G., Canfora, G.: Empirical principles and an industrial case study in retrieving equivalent requirements via natural language processing techniques. IEEE Trans. Softw. Eng. 39(1), 18–44 (2013). doi:10.1109/TSE.2011.122 CrossRef Falessi, D., Cantone, G., Canfora, G.: Empirical principles and an industrial case study in retrieving equivalent requirements via natural language processing techniques. IEEE Trans. Softw. Eng. 39(1), 18–44 (2013). doi:10.​1109/​TSE.​2011.​122 CrossRef
18.
Zurück zum Zitat Femmer, H., Fernández, D.M., Juergens, E., Klose, M., Zimmer, I., Zimmer, J.: Rapid requirements checks with requirements smells: two case studies. In: Proceedings of the 1st International Workshop on Rapid Continuous Software Engineering (RCoSE’14) Held at the 36th International Conference on Software Engineering (ICSE’14). ACM, Hyderabad, India, pp. 10–19 (2014). doi:10.1145/2593812.2593817 Femmer, H., Fernández, D.M., Juergens, E., Klose, M., Zimmer, I., Zimmer, J.: Rapid requirements checks with requirements smells: two case studies. In: Proceedings of the 1st International Workshop on Rapid Continuous Software Engineering (RCoSE’14) Held at the 36th International Conference on Software Engineering (ICSE’14). ACM, Hyderabad, India, pp. 10–19 (2014). doi:10.​1145/​2593812.​2593817
23.
Zurück zum Zitat Issa, A., Odeh, M., Coward, D.: Using use case patterns to estimate reusability in software systems. Inf. Softw. Technol. 48(9), 836–845 (2006)CrossRef Issa, A., Odeh, M., Coward, D.: Using use case patterns to estimate reusability in software systems. Inf. Softw. Technol. 48(9), 836–845 (2006)CrossRef
24.
Zurück zum Zitat Juergens, E., Deissenboeck, F., Feilkas, M., Hummel, B., Schaetz, B., Wagner, S., Domann, C., Streit, J.: Can clone detection support quality assessments of requirements specifications? In: Proceedings of the 32 ACM/IEEE International Conference on Software Engineering (ICSE’10), vol. 2. ACM, New York, NY, USA, pp. 79–88 (2010). doi:10.1145/1810295.1810308 Juergens, E., Deissenboeck, F., Feilkas, M., Hummel, B., Schaetz, B., Wagner, S., Domann, C., Streit, J.: Can clone detection support quality assessments of requirements specifications? In: Proceedings of the 32 ACM/IEEE International Conference on Software Engineering (ICSE’10), vol. 2. ACM, New York, NY, USA, pp. 79–88 (2010). doi:10.​1145/​1810295.​1810308
25.
Zurück zum Zitat Kamalrudin, M., Hosking, J., Grundy, J.: Improving requirements quality using essential use case interaction patterns. In: Proceedings of the 33rd International Conference on Software Engineering (ICSE’11), Waikiki, Honoulu, Hawaii, pp. 531–540 (2011). doi:10.1145/1985793.1985866 Kamalrudin, M., Hosking, J., Grundy, J.: Improving requirements quality using essential use case interaction patterns. In: Proceedings of the 33rd International Conference on Software Engineering (ICSE’11), Waikiki, Honoulu, Hawaii, pp. 531–540 (2011). doi:10.​1145/​1985793.​1985866
26.
Zurück zum Zitat Kamata, M.I., Tamai, T.: How does requirements quality relate to project success or failure? In: Proceedings of the 15th IEEE International Requirements Engineering Conference (RE’07). IEEE Computer Society, New Delhi, India, pp. 69–78 (2007). doi:10.1109/RE.2007.31 Kamata, M.I., Tamai, T.: How does requirements quality relate to project success or failure? In: Proceedings of the 15th IEEE International Requirements Engineering Conference (RE’07). IEEE Computer Society, New Delhi, India, pp. 69–78 (2007). doi:10.​1109/​RE.​2007.​31
27.
Zurück zum Zitat Kulak, D., Guiney, E.: Use Cases: Requirements in Context, 2nd edn. Pearson Education, New Jersey (2012) Kulak, D., Guiney, E.: Use Cases: Requirements in Context, 2nd edn. Pearson Education, New Jersey (2012)
28.
Zurück zum Zitat Larman, C.: Applying Uml and Patterns: An Introduction to Object-Oriented Analysis and Design and Iterative Development, 3rd edn. Pearson Education, New Jersey (2012) Larman, C.: Applying Uml and Patterns: An Introduction to Object-Oriented Analysis and Design and Iterative Development, 3rd edn. Pearson Education, New Jersey (2012)
31.
Zurück zum Zitat Moreira, A., Chitchyan, R., Araujo, J., Rashid, A. (eds.): Aspect-Oriented Requirements Engineering, vol. XIX. Springer, Berlin Heidelberg (2013). doi:10.1007/978-3-642-38640-4 Moreira, A., Chitchyan, R., Araujo, J., Rashid, A. (eds.): Aspect-Oriented Requirements Engineering, vol. XIX. Springer, Berlin Heidelberg (2013). doi:10.​1007/​978-3-642-38640-4
32.
Zurück zum Zitat Niazi, M., Shastry, S.: Role of requirements engineering in software development process: an empirical study. In: 7th International Multi Topic Conference (INMIC 2003), pp. 402–407 (2003). doi:10.1109/INMIC.2003.1416759 Niazi, M., Shastry, S.: Role of requirements engineering in software development process: an empirical study. In: 7th International Multi Topic Conference (INMIC 2003), pp. 402–407 (2003). doi:10.​1109/​INMIC.​2003.​1416759
35.
Zurück zum Zitat Rago, A., Abait, E., Marcos, C., Diaz-Pace, A.: Early aspect identification from use cases using NLP and WSD techniques. In: Proceedings of the Workshop on Early Aspects held at the 15th International Conference on Aspect-Oriented Software Development (AOSD’09). ACM, Charlottesville, Virginia, USA, pp. 19–24 (2009). doi:10.1145/1509825.1509830 Rago, A., Abait, E., Marcos, C., Diaz-Pace, A.: Early aspect identification from use cases using NLP and WSD techniques. In: Proceedings of the Workshop on Early Aspects held at the 15th International Conference on Aspect-Oriented Software Development (AOSD’09). ACM, Charlottesville, Virginia, USA, pp. 19–24 (2009). doi:10.​1145/​1509825.​1509830
37.
38.
Zurück zum Zitat Rago, A., Marcos, C., Diaz-Pace, A.: Una comparación de técnicas de nlp semánticas para analizar casos de uso (in spanish). In: Proceedings of the 2nd IEEE Biennial Congress of Argentina (ARGENCON’14), IEEE Argentina, Bariloche, Argentina (2014) Rago, A., Marcos, C., Diaz-Pace, A.: Una comparación de técnicas de nlp semánticas para analizar casos de uso (in spanish). In: Proceedings of the 2nd IEEE Biennial Congress of Argentina (ARGENCON’14), IEEE Argentina, Bariloche, Argentina (2014)
39.
Zurück zum Zitat Ramos, R., Castro, J., Alencar, F., Araújo, J., Moreira, A., de Engenharia da Computacao, C., Penteado, R.: Quality improvement for use case model. In: XXIII Brazilian Symposium on Software Engineering, 2009. SBES’09. IEEE, pp. 187–195 (2009) Ramos, R., Castro, J., Alencar, F., Araújo, J., Moreira, A., de Engenharia da Computacao, C., Penteado, R.: Quality improvement for use case model. In: XXIII Brazilian Symposium on Software Engineering, 2009. SBES’09. IEEE, pp. 187–195 (2009)
40.
Zurück zum Zitat Ren, S., Butler, G., Rui, K., Xu, J., Yu, W., Luo, R.: A prototype tool for use case refactoring. In: Proceedings of the 6th International Conference on Enterprise Information Systems (ICEIS’04), Porto, Portugal, pp. 173–178 (2004) Ren, S., Butler, G., Rui, K., Xu, J., Yu, W., Luo, R.: A prototype tool for use case refactoring. In: Proceedings of the 6th International Conference on Enterprise Information Systems (ICEIS’04), Porto, Portugal, pp. 173–178 (2004)
41.
Zurück zum Zitat Rui, K., Butler, G.: Refactoring use case models: the metamodel. In: Proceedings of the 26th Australasian computer science conference-Volume 16, Australian Computer Society Inc, pp 301–308 (2003) Rui, K., Butler, G.: Refactoring use case models: the metamodel. In: Proceedings of the 26th Australasian computer science conference-Volume 16, Australian Computer Society Inc, pp 301–308 (2003)
42.
Zurück zum Zitat Sampaio, A., Rashid, A., Chitchyan, R., Rayson, P.: EA-Miner: towards automation in aspect-oriented requirements engineering. In: Transactions on Aspect-Oriented Software Development III. Lecture Notes in Computer Science, vol. 4620, Springer, Berlin, pp. 4–39 (2007) Sampaio, A., Rashid, A., Chitchyan, R., Rayson, P.: EA-Miner: towards automation in aspect-oriented requirements engineering. In: Transactions on Aspect-Oriented Software Development III. Lecture Notes in Computer Science, vol. 4620, Springer, Berlin, pp. 4–39 (2007)
44.
Zurück zum Zitat Schneider, G., Winters, J.P.: Applying Use Cases: A Practical Guide. Object Technology Series, 2nd edn. Addison Wesley, Reading, MA (2001) Schneider, G., Winters, J.P.: Applying Use Cases: A Practical Guide. Object Technology Series, 2nd edn. Addison Wesley, Reading, MA (2001)
45.
Zurück zum Zitat Sinha, A., Paradkar, A., Kumanan, P., Boguraev, B.: An analysis engine for dependable elicitation of natural language use case description and its application to industrial use cases. IBM Research Report RC24712 (2008) Sinha, A., Paradkar, A., Kumanan, P., Boguraev, B.: An analysis engine for dependable elicitation of natural language use case description and its application to industrial use cases. IBM Research Report RC24712 (2008)
46.
Zurück zum Zitat Smith, T., Waterman, M.: Identification of common molecular subsequences. J. Mol. Biol. 147(1), 195–197 (1981)CrossRef Smith, T., Waterman, M.: Identification of common molecular subsequences. J. Mol. Biol. 147(1), 195–197 (1981)CrossRef
47.
Zurück zum Zitat Tsoumakas, G., Katakis, I., Vlahavas, I.: Mining multi-label data. Data Mining and Knowledge Discovery Handbook, pp. 667–685 (2010) Tsoumakas, G., Katakis, I., Vlahavas, I.: Mining multi-label data. Data Mining and Knowledge Discovery Handbook, pp. 667–685 (2010)
48.
Zurück zum Zitat Yu, W., Li, J., Butler, G.: Refactoring use case models on episodes. In: Proceedings of the 19th International Conference on Automated Software Engineering. IEEE, pp. 328–335 (2004) Yu, W., Li, J., Butler, G.: Refactoring use case models on episodes. In: Proceedings of the 19th International Conference on Automated Software Engineering. IEEE, pp. 328–335 (2004)
Metadaten
Titel
Identifying duplicate functionality in textual use cases by aligning semantic actions
verfasst von
Alejandro Rago
Claudia Marcos
J. Andres Diaz-Pace
Publikationsdatum
27.08.2014
Verlag
Springer Berlin Heidelberg
Erschienen in
Software and Systems Modeling / Ausgabe 2/2016
Print ISSN: 1619-1366
Elektronische ISSN: 1619-1374
DOI
https://doi.org/10.1007/s10270-014-0431-3

Weitere Artikel der Ausgabe 2/2016

Software and Systems Modeling 2/2016 Zur Ausgabe

Premium Partner