Skip to main content
Log in

A dynamic control technique to enhance the flexibility of software artifact reuse in large-scale repository

  • Published:
The Journal of Supercomputing Aims and scope Submit manuscript

Abstract

Reuse is the activity of developing new software systems using software components (or artifacts) that are already proven and reliable. However, traditional reuse-based software development has difficulties in finding the components that have the proper information (feature) to match the developers’ needs, or reusing a component without modification, because it has various and mixed information (features). In order to solve these problems, this paper proposes a dynamic control technique to enhance the reusability of software components. In particular, this technique focuses on the reuse of software documents that are created during the software research and development processes. We define a new unit of document reuse as a microComponent; this is a basic unit of reuse defined with a section of a software document. Based on the microComponent, it is possible to fast find more suitable components from a large-scale document repository; to control the reuse granularity from a section to an entire document; and finally, to improve the reusability of existing reusable assets.

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

Similar content being viewed by others

References

  1. Agresti WW (2011) Software reuse: developers’ experiences and perceptions. J Softw Eng Appl 4(1):48–58

    Article  Google Scholar 

  2. Alexander J, Cockburn A (2008) Characterizing electronic document use, reuse, coverage and multi-document interaction. In: New Zealand Computer Science Research Student Conference, pp 1–8

  3. Bu HH, Kim NC, Moon CJ, Kim JH (2017) Content-based image retrieval using combined color and texture features extracted by multi-resolution multi-direction filtering. J Inf Process Syst 13(3):464–475. https://doi.org/10.3745/JIPS.02.0060

    Google Scholar 

  4. Capiluppi A et al (2011) Software reuse in open source: a case study. Int J Open Source Softw Process 3(3):10–35

    Article  Google Scholar 

  5. Choi JH, Shin HS, Nasridinov A (2016) A comparative study on data mining classification techniques for military applications. J Converg 7:10–18

    Google Scholar 

  6. Filho SM et al (2012) Context-aware adaptation of component-based systems: an active repository approach. J Comput Netw Commun. https://doi.org/10.1155/2012/963728

    Google Scholar 

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

    Article  Google Scholar 

  8. Gao S, Sperberg-McQueen CM, Thompson H (2012) W3C XML Schema Definition Language (XSD) 1.1 Part 1: Structures, W3C

  9. Guerrieri E (1998) Software document reuse with XML. In: International Conference on Software Reuse, pp 246–254

  10. Hage W (2009) Producing documentation and reusing information in XML, Part 2, Reuse information in XML documentation, IBM developerWorks

  11. IEC 61511-1 (2016) Functional safety—safety instrumented systems for the process industry sector—Part 1: Framework, definitions, system, hardware and application programming requirements. International Electrotechnical Commission

  12. ISO 26262-6 (2011) Road vehicles—functional safety—Part 6: Product development at the software level. International Organization for Standard

  13. James M, Walter L (2017) Scrum reference card. http://scrumreferencecard.com/ScrumReferenceCard.pdf. Accessed 17 Jan 2017

  14. Kim DH, Hong J, Yoon I, Lee S (2016) Code refactoring techniques for reducing energy consumption in embedded computing environment. Cluster Comput. https://doi.org/10.1007/s10586-016-0691-5

    Google Scholar 

  15. Kim D, Kim S, Hong J (2016) A microComponent-based reuse technique for reusing software architecture. In: Asia Pacific International Conference on Information Science and Technology, pp 209–212

  16. Kim D, Kim S, Jung W, Hong J (2017) A context-aware architecture pattern to enhance the flexibility of software artifacts reuse. In: Advances in Computer Science and Ubiquitous Computing (LNEE 421), pp 654–659

  17. Kim G et al (2016) The DevOps handbook: how to create world-class agility, reliability, and security in technology organizations, IT Revolution Press

  18. Lim W (1994) Effect of reuse on quality. Product Econ IEEE Softw 11(5):23–30

    Article  Google Scholar 

  19. Martin RC (2002) Agile software development: principles, patterns, and practices. Pearson Publisher, Carmel

    Google Scholar 

  20. McMillian C et al (2013) Portfolio: searching for relevant functions and their usages in millions of lines of code. ACM Trans Softw Eng Methodol 22(4):1–30

    Article  Google Scholar 

  21. Nesic S (2009) Semantic document model to enhance data and knowledge interoperability. Web 2.0 & Semantic Web, vol 6, pp 135–160

  22. OMG (2005) Reusable Asset Specification OMG Available Specification Version 2.2, formal/05-11-02, Object Management Group

  23. OASIS (2011) Open Document Format for Office Applications (OpenDocument), Version 1.2, OASIS Standard

  24. OMG (2015) OMG Unified Modeling Language (OMG UML) Version 2.5, formal/2015-03-01, Object Management Group

  25. OMG (2015) XML Metadata Interchange (XMI) Specification Version 2.5.1, formal/2015-06-07, Object Management Group

  26. Riffat N, Khan MNA (2015) Rapid applications development techniques: a critical review. Int J Softw Eng Appl 9(11):163–176. https://doi.org/10.14257/ijseia.2015.9.11.15

    Google Scholar 

  27. Schmidt DC (1999) Why Software Reuse has Failed and How to Make It Work for You, C++ Report magazine, January 1999

  28. Stephenson D (2004) XML Schema best practices. HP Invent

  29. Uren V et al (2006) Semantic annotation for knowledge management: requirements and a survey of the state of the art. J Web Semant Sci Serv Agents World Wide Web 4(1):14–28

    Article  Google Scholar 

  30. Vijayarajan V, Dinakaran M, Priyam T, Mayank L (2016) A generic framework for ontology-based information retrieval and image retrieval in web data. Hum Centric Comput Inf Sci 6(18):1–30. https://doi.org/10.1186/s13673-016-0074-1

    Google Scholar 

  31. Weide BW, Ogden WF, Zweben SH (1991) Advance in computers: reusable software components. Academic Press, Cambridge

    Google Scholar 

  32. Ye Y (2001) Supporting component-based software development with active component repository system. Ph.D Dissertation, University of Colorado

Download references

Acknowledgements

The authors would like to thank the researchers of Software Engineering Laboratory, Chungbuk National University, and the engineers who provided the documents of the software development projects that have been performed at other laboratories in our organization and also admire their great effort to register them into the repository. This study was funded by National Research Foundation of Korea, funded by the Ministry of Science and ICT (NRF-2014M3C4A7030505).

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Jang-Eui Hong.

Ethics declarations

Conflict of interest

The authors declare that they have no conflict of interest.

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Kim, D., Nam, S. & Hong, JE. A dynamic control technique to enhance the flexibility of software artifact reuse in large-scale repository. J Supercomput 75, 2027–2057 (2019). https://doi.org/10.1007/s11227-018-2449-8

Download citation

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s11227-018-2449-8

Keywords

Navigation