Skip to main content
Log in

Leveraging topic modeling and part-of-speech tagging to support combinational creativity in requirements engineering

  • RE 2014
  • Published:
Requirements Engineering Aims and scope Submit manuscript

Abstract

Requirements engineering (RE), framed as a creative problem solving process, plays a key role in innovating more useful and novel requirements and improving a software system’s sustainability. Existing approaches, such as creativity workshops and feature mining from web services, facilitate creativity by exploring a search space of partial and complete possibilities of requirements . To further advance the literature, we study creativity from a combinational perspective, i.e., making unfamiliar connections between familiar possibilities of requirements. In particular, we propose a novel framework that extracts familiar ideas from the requirements and stakeholders’ comments using topic modeling, and automatically generates requirements by obtaining unfamiliar idea combinations by means of flipping the part-of-speech of identified topics. We apply our framework on two large-scale open-source software systems (Firefox and Mylyn) and report two studies to assess the viability of combinational creativity in RE. The results show that the creativity merit of requirements generated by our framework judged by human experts is comparable to that of requirements created manually. Meanwhile, the cost of our framework is significantly less than manual work, measured by time spent generating requirements. Our work illuminates a possible improvement toward interactive generation of creative requirements using mechanism’s outputs .

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.

Institutional subscriptions

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7
Fig. 8
Fig. 9
Fig. 10
Fig. 11
Fig. 12
Fig. 13
Fig. 14
Fig. 15

Similar content being viewed by others

Notes

  1. http://www.mozilla.org/en-US/firefox/new/.

  2. http://www.mozilla.org/en-US/firefox/releases/.

  3. http://www.eclipse.org/mylyn/about/.

  4. http://jgibblda.sourceforge.net/.

  5. The participants have not mentioned anything about NFR indicators. We identified this strategy while analyzing the requirements they generated.

References

  1. Lemos J, Alves C, Duboc L, Rodrigues GN (2012) A systematic mapping study on creativity in requirements engineering. In: Proceedings of the annual ACM symposium on applied computing (SAC), pp 1083–1088

  2. Maiden N, Jones S, Karlsen K, Neill R, Zachos K, Milne A (2010) Requirements engineering as creative problem solving: a research agenda for idea finding. In: Proceedings of the international requirements engineering conference (RE), pp 57–66

  3. Maiden N, Ncube C, Robertson S (2007) Can requirements be creative? Experiences with an enhanced air space management system. In: Proceedings of the international conference on software engineering (ICSE), pp 632–641

  4. Sternberg RJ (1999) Handbook of creativity. Cambridge University Press, Cambridge

    Google Scholar 

  5. Boden MA (2003) The creative mind: Myths and mechanisms. Routledge, London

    Google Scholar 

  6. Maiden N, Gizikis A, Robertson S (2004) Provoking creativity: imagine what your requirements could be like. IEEE Softw 21(5):68–75

    Article  Google Scholar 

  7. Maiden N, Manning S, Robertson S, Greenwood J (2004) Integrating creativity workshops into structured requirements processes. In: Proceedings of the ACM conference on designing interactive systems: processes, practices, methods, and techniques, pp 113–122

  8. Maiden N, Robertson S (2005) Integrating creativity into requirements processes: experiences with an air traffic management system. In: Proceedings of the international requirements engineering conference (RE), pp 105–114

  9. Karlsen IK, Maiden N, Kerne A (2009) Inventing requirements with creativity support tools. In: Requirements engineering: foundation for software quality. Springer, Berlin, pp 162–174

  10. Zachos K, Maiden N (2008) Inventing requirements from software: an empirical investigation with web services. In: Proceedings of the international requirements engineering conference (RE), pp 145–154

  11. Hariri N, Castro-Herrera C, Mirakhorli M, Cleland-Huang J, Mobasher B (2013) Supporting domain analysis through mining and recommending features from online product listings. IEEE Trans Softw Eng 39(12):1736–1752

    Article  Google Scholar 

  12. Maiden N (2013) Requirements engineering as information search and idea discovery (keynote). In: Proceedings of the international requirements engineering conference (RE), pp 1–1

  13. Bhowmik T, Niu N, Mahmoud A, Savolainen J (2014) Automated support for combinational creativity in requirements engineering. In: Proceedings of the international requirements engineering conference (RE), pp 243–252

  14. Burt RS (2004) Structural holes and good ideas. Am J Sociol 110(2):349–399

    Article  Google Scholar 

  15. Pirolli P (2009) An elementary social information foraging model. In: Proceedings of the SIGCHI conference on human factors in computing systems (CHI), pp 605–614

  16. Linstead E, Lopes C, Baldi P (2008) An application of Latent Dirichlet Allocation to analyzing software evolution. In: Proceedings of the international conference on machine learning and applications (ICMLA), pp 813–818

  17. Blei D, Ng A, Jordan M (2003) Latent Dirichlet Allocation. J Mach Learn Res 3:993–1022

    MATH  Google Scholar 

  18. Brill E (1992) A simple rule-based part of speech tagger. In: Proceedings of the workshop on speech and natural language, pp 112–116

  19. Kersten M, Murphy G (2005) Mylar: a degree-of-interest model for ides. In: Proceedings of the international conference on aspect-oriented software development (AOSD), pp 159–168

  20. Suwa M, Gero J, Purcell T (2000) Unexpected discoveries and S-invention of design requirements: important vehicles for a design process. Des Stud 21(6):539–567

    Article  Google Scholar 

  21. Maher ML, Brady K, Fisher DH (2013) Computational models of surprise in evaluating creative design. In: Proceedings of the international conference on computational creativity (ICCC), pp 147–151

  22. Ritchie G (2001) Assessing creativity. In: Proceedings of the AISB-01 symposium on AI and creativity in arts and science, pp 3–11

  23. Nöbauer M, Seyff N, Maiden N, Zachos K (2011) S3c: using service discovery to support requirements elicitation in the erp domain. In: Proceedings of the international conference on advanced information systems engineering, pp 18–32

  24. Lutz R, Patterson-Hine A, Nelson S, Frost CR, Tal D, Harris R (2007) Using obstacle analysis to identify contingency requirements on an unpiloted aerial vehicle. Requir Eng J 12(1):41–54

    Article  Google Scholar 

  25. Salinesi C, Mazo R, Diaz D, Djebbi O (2010) Using integer constraint solving in reuse based requirements engineering. In: Proceedings of the international requirements engineering conference (RE), pp 243–251

  26. Fuxman A, Pistore M, Mylopoulos J, Traverso P (2001) Model checking early requirements specifications in tropos. In: Proceedings of the international requirements engineering conference (RE), pp 174–181

  27. Sakhnini V, Berry DM, Mich L (2010) Validation of the effectiveness of an optimized epmcreate as an aid for creative requirements elicitation. In: Proceedings of the 16th international working conference on requirements engineering: foundation for software quality, pp 91–105

  28. Sakhnini V, Mich L, Berry DM (2012) The effectiveness of an optimized epmcreate as a creativity enhancement technique for web site requirements elicitation. Requir Eng 17(3):171–186

    Article  Google Scholar 

  29. Lefons E, Pazienza M, Silvestri A, Tangorra F, Corfiati L, De Giacomo P (1977) An algebraic model for systems of psychically interacting subjects. In: Proceedings of the IFAC workshop information & systems, pp 155–163

  30. Mahaux M, Nguyen L, Gotel O, Mich L, Mavin A, Schmid K (2013) Collaborative creativity in requirements engineering: analysis and practical advice. In: Proceedings of the international conference on research challenges in information science (RCIS), pp 1–10

  31. Damian D, Marczak S, Kwan I (2007) Collaboration patterns and the impact of distance on awareness in requirements-centred social networks. In: Proceedings of the international requirements engineering conference (RE), pp 59–68

  32. Begel A, Khoo Y, Zimmermann T (2010) Codebook: discovering and exploiting relationships in software repositories. In: Proceedings of the international conference on software engineering (ICSE), pp 125–134

  33. Sarma A, Maccherone L, Wagstrom P, Herbsleb J (2009) Tesseract: interactive visual exploration of socio-technical relationships in software development. In: Proceedings of the international conference on software engineering (ICSE), pp 23–33

  34. Wolf T, Schroter A, Damian D, Nguyen T (2009) Predicting build failures using social network analysis on developer communication. In: Proceedings of the international conference on software engineering (ICSE), pp 1–11

  35. Asuncion H, Asuncion A, Taylor R (2010) Software traceability with topic modeling. In: Proceedings of the international conference on software engineering (ICSE), pp 95–104

  36. Linstead E, Rigor P, Bajracharya S, Lopes C, Baldi P (2007) Mining concepts from code with probabilistic topic models. In: Proceedings of the international conference on automated software engineering (ASE), pp 461–464

  37. Thomas S, Adams B, Hassan A, Blostein D (2010) Validating the use of topic models for software evolution. In: Proceedings of the IEEE working conference on source code analysis and manipulation (SCAM), pp 55–64

  38. Porteous I, Newman D, Ihler A, Asuncion A, Smyth P, Welling M (2008) Fast collapsed gibbs sampling for Latent Dirichlet Allocation. In: Proceedings of the ACM SIGKDD international conference on knowledge discovery and data mining, pp 569–577

  39. Linstead E, Bajracharya S, Ngo T, Rigor P, Lopes C, Baldi P (2009) Sourcerer: mining and searching internet-scale software repositories. Data Mining Knowl Discov 18(2):300–336

    Article  MathSciNet  Google Scholar 

  40. Linstead E, Rigor P, Bajracharya SK, Lopes CV, Baldi P (2007) Mining internet-scale software repositories. In: Proceedings of the neural information processing systems (NIPS)

  41. Wu J (2012) Advances in K-means clustering: a data mining thinking. Springer, Berlin

    Book  Google Scholar 

  42. Borgatti SP, Everett MG, Freeman LC (2002) Ucinet for windows: software for social network analysis. Analytic Technologies

  43. Bastian M, Heymann S, Jacomy M (2009) Gephi: an open source software for exploring and manipulating networks. In: Proceedings of the international conference on weblogs and social media (ICWSM), pp 361–362

  44. Chang J, Boyd-Graber JL, Gerrish S, Wang C, Blei DM (2009) Reading tea leaves: how humans interpret topic models. In: Proceedings of the neural information processing systems (NIPS), vol 22, pp 288–296

  45. Liaskos S, Lapouchnian A, Yu Y, Yu E, Mylopoulos J (2006) On goal-based variability acquisition and analysis. In: Proceedings of the international conference on requirements engineering (RE), pp 79–88

  46. Niu N, Easterbrook S (2008) Extracting and modeling product line functional requirements. In: Proceedings of the international requirements engineering conference (RE), pp 155–164

  47. Fillmore C (1968) The case for case. In: Bach E, Harms R (eds) Universals in linguistic theory. Holt, Rinehart and Winston, New York, pp 1–88

    Google Scholar 

  48. Hill E (2010) Integrating natural language and program structure information to improve software search and exploration. PhD. Thesis, University of Delaware

  49. Gupta S, Malik S, Pollock L, Vijay-Shanker K (2013) Part-of-speech tagging of program identifiers for improved text-based software engineering tools. In: Proceedings of the international conference on program comprehension (ICPC), pp 3–12

  50. Manning CD, Raghavan P, Schütze H (2008) Introduction to information retrieval, vol 1. Cambridge University Press, Cambridge

    Book  MATH  Google Scholar 

  51. Ernst NA, Murphy GC (2012) Case studies in just-in-time requirements analysis. In: IEEE international workshop on empirical requirements engineering, pp 25–32

  52. Knauss E, Damian D, Poo-Caamano G, Cleland-Huang J (2012) Detecting and classifying patterns of requirements clarifications. In: Proceedings of the IEEE international requirements engineering conference (RE), pp 251–260

  53. Liu H, Gao Y, Niu Z (2012) An initial study on refactoring tactics. In: Annual international computers, software & applications conference, pp 213–218

  54. Scacchi W (2002) Understanding the requirements for developing open source software systems. IEE Softw 149(1):24–39

    Article  Google Scholar 

  55. Niu N, Bhowmik T, Liu H, Niu Z (2014) Traceability-enabled refactoring for managing just-in-time requirements. In: Proceedings of the IEEE international requirements engineering conference (RE), pp 133–142

  56. Zaman S, Adams B, Hassan AE (2011) Security versus performance bugs: a case study on firefox. In: Proceedings of the working conference on mining software repositories (MSR), pp 93–102

  57. Griffiths TL, Steyvers M (2004) Finding scientific topics. In: Proceedings of the national academy of sciences of the United States of America, pp 5228–5235

  58. Niu N, Savolainen J, Bhowmik T, Mahmoud A, Reddivari S (2012) A framework for examining topical locality in object-oriented software. In: Proceedings of the annual computer software and applications conference (COMPSAC), pp 219–224

  59. Paulus PB, Nijstad BA (2003) Group creativity: innovation through collaboration. Oxford University Press, Oxford

    Book  Google Scholar 

  60. Montgomery D, Runger G (2010) Applied statistics and probability for engineers. Wiley, New York

    Google Scholar 

  61. Yin RK (2008) Case study research: design and methods, vol 5. Sage, London

    Google Scholar 

  62. Bird C, Pattison D, D’Souza R, Filkov V, Devanbu P (2008) Latent social structure in open source projects. In: Proceedings of the ACM SIGSOFT international symposium on foundations of software engineering (SIGSOFT/FSE), pp 24–35

  63. Niu N, Mahmoud A (2012) Enhancing candidate link generation for requirements tracing: the cluster hypothesis revisited. In: Proceedings of the international requirements engineering conference (RE), pp 81–90

  64. Popescu A-M, Etzioni O, Kautz H (2003) Towards a theory of natural language interfaces to databases. In: Proceedings of the 8th international conference on intelligent user interfaces, pp 149–157

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Tanmay Bhowmik.

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Bhowmik, T., Niu, N., Savolainen, J. et al. Leveraging topic modeling and part-of-speech tagging to support combinational creativity in requirements engineering. Requirements Eng 20, 253–280 (2015). https://doi.org/10.1007/s00766-015-0226-2

Download citation

  • Received:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s00766-015-0226-2

Keywords

Navigation