Skip to main content

Requirements Re-usability in Global Software Development: A Systematic Mapping Study

  • Conference paper
  • First Online:
Computational Science and Its Applications – ICCSA 2020 (ICCSA 2020)

Part of the book series: Lecture Notes in Computer Science ((LNTCS,volume 12252))

Included in the following conference series:

Abstract

In global software development, requirements re-usability is a common practice which ultimately helps to maintain project quality and reduce both development time and cost. However, when a large-scale project is distributed, there are some critical factors needed to be maintained and managed for reusing requirements and it is considered a challenging job to interrelate the requirements between two identical projects. In this study, we have pointed out 48 challenges faced and 43 mitigation techniques used when implementing requirements re-usability in global software development projects among distributed teams. The challenges distributed teams frequently encounter can be divided into three considering issues as Communication, Coordination and Control of distributed teams in global software development. The results from this study can be used to plan development strategies while reusing requirements in distributed manners.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Subscribe and save

Springer+ Basic
$34.99 /Month
  • Get 10 units per month
  • Download Article/Chapter or eBook
  • 1 Unit = 1 Article or 1 Chapter
  • Cancel anytime
Subscribe now

Buy Now

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Similar content being viewed by others

Notes

  1. 1.

    https://ieeexplore.ieee.org/Xplore/home.jsp.

  2. 2.

    https://www.acm.org/.

  3. 3.

    https://www.scopus.com/.

  4. 4.

    https://www.sciencedirect.com/.

  5. 5.

    https://www.springer.com/gp.

  6. 6.

    https://www.mendeley.com/.

References

  1. Adorf, C.S., Ramasubramani, V., Anderson, J.A., Glotzer, S.C.: How to professionally develop reusable scientific software-and when not to. Comput. Sci. Eng. 21(2), 66–79 (2018)

    Article  Google Scholar 

  2. Aurum, A., Jeffery, R., Wohlin, C., Handzic, M.: Managing Software Engineering Knowledge. Springer, Heidelberg (2013). https://doi.org/10.1007/978-3-662-05129-0

    Book  MATH  Google Scholar 

  3. Basso, F.P., Pillat, R.M., Oliveira, T.C., Becker, L.B.: Supporting large scale model transformation reuse. In: ACM SIGPLAN Notices, vol. 49, pp. 169–178. ACM (2013)

    Google Scholar 

  4. Berzisa, S., Grabis, J.: Knowledge reuse in configuration of project management information systems: a change management case study. In: 2011 15th IEEE International Conference on Intelligent Engineering Systems (INES), pp. 51–56. IEEE (2011)

    Google Scholar 

  5. Biddle, R., Martin, A., Noble, J.: No name: just notes on software reuse. ACM SIGPLAN Not. 38(12), 76–96 (2003)

    Article  Google Scholar 

  6. Bjarnason, E., Wnuk, K., Regnell, B.: Requirements are slipping through the gapsóa case study on causes & effects of communication gaps in large-scale software development. In: 2011 19th IEEE International Requirements Engineering Conference (RE), pp. 37–46. IEEE (2011)

    Google Scholar 

  7. Brown, S., Felsing, M.: Reuse based requirements development & management (RBRDM) (2005)

    Google Scholar 

  8. Budgen, D., Turner, M., Brereton, P., Kitchenham, B.: Using mapping studies in software engineering. In: Proceedings of PPIG, vol. 8, pp. 195–204 (2008)

    Google Scholar 

  9. Chernak, Y.: Requirements reuse: the state of the practice. In: 2012 IEEE International Conference on Software Science, Technology and Engineering (SWSTE), pp. 46–53. IEEE (2012)

    Google Scholar 

  10. Daneva, M., Van Der Veen, E., Amrit, C., Ghaisas, S., Sikkel, K., Kumar, R., Ajmeri, N., Ramteerthkar, U., Wieringa, R.: Agile requirements prioritization in large-scale outsourced system projects: an empirical study. J. Syst. Softw. 86(5), 1333–1353 (2013)

    Article  Google Scholar 

  11. Decker, B., et al.: A framework for agile reuse in software engineering using wiki technology. Wissensmanagement 2005, 411–414 (2005)

    Google Scholar 

  12. Feldmann, R.L., Geppert, B., Mahnke, W., Ritter, N., Rossler, F.: An ORDBMS-based reuse repository supporting the quality improvement paradigm-exemplified by the SDL-pattern approach. In: 34th International Conference on Technology of Object-Oriented Languages and Systems, TOOLS 34. Proceedings, pp. 125–136. IEEE (2000)

    Google Scholar 

  13. Feldmann, R.L., Geppert, B., Rossler, F.: An integrating approach for developing distributed software systems-combining formal methods, software reuse, and the experience base. In: Fifth IEEE International Conference on Engineering of Complex Computer Systems, ICECCS 1999, pp. 54–63. IEEE (1999)

    Google Scholar 

  14. Fortune, J., Valerdi, R.: Considerations for successful reuse in systems engineering. AIAA Space 2008 (2008)

    Google Scholar 

  15. Frakes, W.B., Kang, K.: Software reuse research: status and future. IEEE Trans. Software Eng. 31(7), 529–536 (2005)

    Article  Google Scholar 

  16. Carrillo de Gea, J.M., Nicolás, J., Fernández-Alemán, J.L., Toval, A.: Automated support for reuse-based requirements engineering in global software engineering. J. Softw. Evol. Process 29(8), e1873 (2017)

    Google Scholar 

  17. de Gea, J.M.C., Nicolás, J., Alemán, J.L.F., Toval, A., Vizcaíno, A., Ebert, C.: Reusing requirements in global software engineering. In: Maalej, W., Thurimella, A. (eds.) Managing Requirements Knowledge, pp. 171–197. Springer, Heidelberg (2013). https://doi.org/10.1007/978-3-642-34419-0_8

    Chapter  Google Scholar 

  18. Gill, N.S.: Reusability issues in component-based development. ACM SIGSOFT Softw. Eng. Not. 28(4), 4 (2003)

    Article  Google Scholar 

  19. Goldin, L., Matalon-Beck, M., Lapid-Maoz, J.: Reuse of requirements reduces time to market. In: 2010 IEEE International Conference on Software Science, Technology and Engineering (SWSTE), pp. 55–60. IEEE (2010)

    Google Scholar 

  20. Gomaa, H., Farrukh, G.: A software engineering environment for configuring distributed applications from reusable software architectures. In: Eighth IEEE International Workshop on Software Technology and Engineering Practice, Proceedings, [incorporating Computer Aided Software Engineering], pp. 312–325. IEEE (1997)

    Google Scholar 

  21. Gomaa, H., Farrukh, G.A.: An approach for generating executable distributed applications from reusable software architectures. In: Second IEEE International Conference on Engineering of Complex Computer Systems, Proceedings, pp. 442–449. IEEE (1996)

    Google Scholar 

  22. Gomaa, H., Farrukh, G.A.: Automated configuration of distributed applications from reusable software architectures. In: 12th IEEE International Conference Automated Software Engineering, Proceedings, pp. 193–200. IEEE (1997)

    Google Scholar 

  23. Gómez-Hérnandez, M.A., Asensio-Pérez, J.I., Gómez-Sánchez, E., Bote-Lorenzo, M.L., Dimitriadis, Y.A.: A high-level reference model for reusable object-level coordination support in groupware applications. In: 15th EUROMICRO International Conference on Parallel, Distributed and Network-Based Processing, PDP 2007, pp. 315–324. IEEE (2007)

    Google Scholar 

  24. Gunasekaran, A.: Agile manufacturing: enablers and an implementation framework. Int. J. Prod. Res. 36(5), 1223–1247 (1998)

    Article  Google Scholar 

  25. Hill, J.H., Schmidt, D.C., Edmondson, J.R., Gokhale, A.S.: Tools for continuously evaluating distributed system qualities. Software IEEE 27(4), 65–71 (2010)

    Article  Google Scholar 

  26. Hofmeister, C., Nord, R., Soni, D.: Global analysis: moving from software requirements specification to structural views of the software architecture. IEE Proc. Softw. 152(4), 187–197 (2005)

    Article  Google Scholar 

  27. Hong, W.: Architecture-centric software process for pattern based software reuse. In: WRI World Congress on Software Engineering, WCSE 2009, vol. 4, pp. 95–99. IEEE (2009)

    Google Scholar 

  28. Hoover, C.L., Khosla, P.K.: An analytical approach to change for the design of reusable real-time software. In: Second Workshop on Object-Oriented Real-Time Dependable Systems, 1996, Proceedings of WORDS 1996, pp. 144–151. IEEE (1996)

    Google Scholar 

  29. Hossain, S.S.: Challenges and mitigation strategies in reusing requirements in large-scale distributed agile software development: a survey result. In: Arai, K., Bhatia, R., Kapoor, S. (eds.) CompCom 2019. AISC, vol. 998, pp. 920–935. Springer, Cham (2019). https://doi.org/10.1007/978-3-030-22868-2_63

    Chapter  Google Scholar 

  30. Hossain, S.S., Jubayer, S.A.M., Rahman, S., Bhuiyan, T., Rawshan, L., Islam, S.: Customer feedback prioritization technique: a case study on lean startup. In: Misra, S., Gervasi, O., Murgante, B., Stankova, E., Korkhov, V., Torre, C., Rocha, A.M.A.C., Taniar, D., Apduhan, B.O., Tarantino, E. (eds.) ICCSA 2019. LNCS, vol. 11623, pp. 70–81. Springer, Cham (2019). https://doi.org/10.1007/978-3-030-24308-1_6

    Chapter  Google Scholar 

  31. Irshad, M.: Measuring cost avoidance through software reuse. Ph.D. thesis, Masterís thesis, Blekinge Institute of Technology, school of computing, Sweden, MSE-2010: 38 (2011)

    Google Scholar 

  32. Kakarontzas, G., Stamelos, I.: Component recycling for agile methods. In: 2010 Seventh International Conference on the Quality of Information and Communications Technology (QUATIC), pp. 397–402. IEEE (2010)

    Google Scholar 

  33. Kamalraj, R., Geetha, B., Singaravel, G.: Reducing efforts on software project management using software package reusability. In: IEEE International Advance Computing Conference, IACC 2009, pp. 1624–1627. IEEE (2009)

    Google Scholar 

  34. Karlsson, L., Dahlstedt, Å.G., Regnell, B., och Dag, J.N., Persson, A.: Requirements engineering challenges in market-driven software development-an interview study with practitioners. Inf. Softw. Technol. 49(6), 588–604 (2007)

    Google Scholar 

  35. Kavitha, C., Shidha, M., Jino, P.: Reusability and agile pattern mining. Int. J. Comput. Appl. 68(2) (2013)

    Google Scholar 

  36. Khan, M.Z., Khan, M.: Enhancing software reusability through value based software repository. Int. J. Softw. Eng. Its Appl. 8(11) (2014)

    Google Scholar 

  37. Kitchenham, B.: Procedures for performing systematic reviews. Keele, UK, Keele University 33(2004), 1–26 (2004)

    Google Scholar 

  38. Knauss, E., Liebel, G., Schneider, K., Horkoff, J., Kasauli, R.: Quality requirements in agile as a knowledge management problem: More than just-in-time. In: 2017 IEEE 25th International Requirements Engineering Conference Workshops (REW), pp. 427–430. IEEE (2017)

    Google Scholar 

  39. Kovacevic, J., et al.: Survey of the state-of the-art in requirements engineering for software product line and model-driven requirements engineering. Technical report, Technical Report D 1.1, Ample-project (2007)

    Google Scholar 

  40. Liang, P., Avgeriou, P., Clerc, V.: Requirements reasoning for distributed requirements analysis using semantic wiki. In: Fourth IEEE International Conference on Global Software Engineering, ICGSE 2009, pp. 388–393. IEEE (2009)

    Google Scholar 

  41. Liang, X.: Research on the distributive knowledge management system of logistic enterprise integrating context management. In: 2009 WRI World Congress on Computer Science and Information Engineering, vol. 5, pp. 204–210. IEEE (2009)

    Google Scholar 

  42. Liu, L., Zicari, R., Hursch, W., Lieberherr, K.J.: The role of polymorphic reuse mechanisms in schema evolution in an object-oriented database. IEEE Trans. Knowl. Data Eng. 9(1), 50–67 (1997)

    Article  Google Scholar 

  43. López, C., Cysneiros, L.M., Astudillo, H.: NDR ontology: sharing and reusing NFR and design rationale knowledge. In: First International Workshop on Managing Requirements Knowledge, MARK 2008, pp. 1–10. IEEE (2008)

    Google Scholar 

  44. López, O., Laguna, M.A., Peñalvo, F.J.G.: Metamodeling for requirements reuse. In: WER, pp. 76–90 (2002)

    Google Scholar 

  45. Lucredio, D., de Almeida, E.S., Fortes, R.P.: An investigation on the impact of MDE on software reuse. In: 2012 Sixth Brazilian Symposium on Software Components Architectures and Reuse (SBCARS), pp. 101–110. IEEE (2012)

    Google Scholar 

  46. Mannion, M., Kaindl, H.: Product line requirements reuse based on variability management. In: 2012 19th Asia-Pacific Software Engineering Conference (APSEC), vol. 2, pp. 148–149. IEEE (2012)

    Google Scholar 

  47. Martinez, M.A., Toval, A.: COTSRE: a components selection method based on requirements engineering. In: Seventh International Conference on Composition-Based Software Systems, ICCBSS 2008, pp. 220–223. IEEE (2008)

    Google Scholar 

  48. Mili, A., Mili, R., Mittermeir, R.T.: A survey of software reuse libraries. Ann. Softw. Eng. 5, 349–414 (1998)

    Article  Google Scholar 

  49. Mohagheghi, P.: The impact of software reuse and incremental development on the quality of large systems. Ph.D. thesis, Norwegian University of Science and Technology (2004)

    Google Scholar 

  50. Motahari-Nezhad, H.R., Li, J., Stephenson, B., Graupner, S., Singhal, S.: Solution reuse for service composition and integration. In: 2009 World Conference on Services-I, pp. 400–407. IEEE (2009)

    Google Scholar 

  51. Mugridge, R.: Managing agile project requirements with storytest-driven development. Software IEEE 25(1), 68–75 (2008)

    Article  Google Scholar 

  52. Mujtaba, S., Petersen, K., Feldt, R., Mattsson, M.: Software product line variability: a systematic mapping study. Blekinge Institute of Technology, School of Engineering (2008)

    Google Scholar 

  53. Pan, K., Turner, S.J., Cai, W., Li, Z.: An efficient sort-based DDM matching algorithm for HLA applications with a large spatial environment. In: 21st International Workshop on Principles of Advanced and Distributed Simulation, PADS 2007, pp. 70–82. IEEE (2007)

    Google Scholar 

  54. Petersen, K., Feldt, R., Mujtaba, S., Mattsson, M.: Systematic mapping studies in software engineering. In: 12th International Conference on Evaluation and Assessment in Software Engineering, vol. 17. SN (2008)

    Google Scholar 

  55. Leite, J.C.S.P., Yu, Y., Liu, L., Yu, E.S.K., Mylopoulos, J.: Quality-based software reuse. In: Pastor, O., Falcão e Cunha, J. (eds.) CAiSE 2005. LNCS, vol. 3520, pp. 535–550. Springer, Heidelberg (2005). https://doi.org/10.1007/11431855_37

    Chapter  Google Scholar 

  56. Przybyłek, A.: Systems evolution and software reuse in object-oriented programming and aspect-oriented programming. In: Bishop, J., Vallecillo, A. (eds.) TOOLS 2011. LNCS, vol. 6705, pp. 163–178. Springer, Heidelberg (2011). https://doi.org/10.1007/978-3-642-21952-8_13

    Chapter  Google Scholar 

  57. Ramesh, B., Cao, L., Mohan, K., Xu, P.: Can distributed software development be agile? Commun. ACM 49(10), 41–46 (2006)

    Article  Google Scholar 

  58. Sahay, S., Nicholson, B., Krishna, S.: Global IT Outsourcing: Software Development Across Borders. Cambridge University Press (2003)

    Google Scholar 

  59. Shehata, M., Eberlein, A.: Requirements interaction detection using semi-formal methods. In: 10th IEEE International Conference and Workshop on the Engineering of Computer-Based Systems, Proceedings, pp. 224–232. IEEE (2003)

    Google Scholar 

  60. Singh, S., Chana, I.: Enabling reusability in agile software development. arXiv preprint arXiv:1210.2506 (2012)

  61. Souag, A., Mazo, R., Salinesi, C., Comyn-Wattiau, I.: Reusable knowledge in security requirements engineering: a systematic mapping study. Requirements Eng. 21(2), 251–283 (2016)

    Article  Google Scholar 

  62. Suri, P., Garg, N.: Software reuse metrics: measuring component independence and its applicability in software reuse. Int. J. Comput. Sci. Netw. Secur. 9(5), 237–248 (2009)

    Google Scholar 

  63. Sutherland, J., Viktorov, A., Blount, J., Puntikov, N.: Distributed scrum: agile project management with outsourced development teams. In: 40th Annual Hawaii International Conference on System Sciences, HICSS 2007, p. 274a. IEEE (2007)

    Google Scholar 

  64. Thakur, S., Singh, H.: FDRD: feature driven reuse development process model. In: 2014 International Conference on Advanced Communication Control and Computing Technologies (ICACCCT), pp. 1593–1598. IEEE (2014)

    Google Scholar 

  65. Turk, D., France, R., Rumpe, B.: Assumptions underlying agile software development processes. arXiv preprint arXiv:1409.6610 (2014)

  66. Villegas, O.L., Laguna, M.A.: Requirements reuse for software development. In: RE 01 Doctoral Workshop. In 5th-IEEE International Symposium on Requirements Engineering, Toronto, Canada, pp. 27–31. Citeseer (2001)

    Google Scholar 

  67. Wahid, S., Smith, J.L., Berry, B., Chewar, C.M., McCrickard, D.S.: Visualization of design knowledge component relationships to facilitate reuse. In: Proceedings of the 2004 IEEE International Conference on Information Reuse and Integration, IRI 2004, pp. 414–419. IEEE (2004)

    Google Scholar 

  68. Waldmann, B., Jones, P.: Feature-oriented requirements satisfy needs for reuse and systems view. In: 17th IEEE International Requirements Engineering Conference, RE 2009, pp. 329–334. IEEE (2009)

    Google Scholar 

  69. Wehrwein, B., Matos, G., Tanikella, R.: A requirements-driven and collaborative decision support approach for evaluating the viability of candidate implementation technologies. In: 12th International IEEE Enterprise Distributed Object Computing Conference, EDOC 2008, pp. 293–299. IEEE (2008)

    Google Scholar 

  70. Xiang, F., Ling, G., Jin, Y.: User-driven GIS software reuse solution based on SOA and web2. 0 concept. In: 2nd IEEE International Conference on Computer Science and Information Technology, ICCSIT 2009, pp. 5–9. IEEE (2009)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Syeda Sumbul Hossain .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2020 Springer Nature Switzerland AG

About this paper

Check for updates. Verify currency and authenticity via CrossMark

Cite this paper

Hossain, S.S., Arafat, Y., Amin, T., Bhuiyan, T. (2020). Requirements Re-usability in Global Software Development: A Systematic Mapping Study. In: Gervasi, O., et al. Computational Science and Its Applications – ICCSA 2020. ICCSA 2020. Lecture Notes in Computer Science(), vol 12252. Springer, Cham. https://doi.org/10.1007/978-3-030-58811-3_68

Download citation

  • DOI: https://doi.org/10.1007/978-3-030-58811-3_68

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-030-58810-6

  • Online ISBN: 978-3-030-58811-3

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics