Article information
2023 , Volume 28, ¹ 1, p.92-103
Stojanov Z.
Maintainability of data-driven software systems: review and experiences
Software maintenance as the most demanding and the most expensive phase in software life cycle should be considered and planned from the early stages of software development. Maintainability is an essential property of software systems which relates to easy and efficient modification of software system during its use. Therefore, maintainability should be considered during software design. This article presents the author’s experience related to improving maintainability of data-driven software systems by integrating software change request service into software. The service is available in visual forms and assists users in specifying software change requests. In addition, the service creates an initial impact set, which contains software elements affected by the proposed software change request. Design, implementation and evaluation of the service are presented, followed by the discussion of identified advantages and disadvantages
[link to elibrary.ru]
Keywords: maintainability, software maintenance, software development, data-driven architecture, software architecture, software change request
doi: 10.25743/ICT.2023.28.1.010
Author(s): Stojanov Zeljko PhD. , Professor Office: University of Novi Sad Address: 23000, Serbia, Zrenjanin, Djure Djakovica
Phone Office: (381) 62 8019713 E-mail: zeljko.stojanov@uns.ac.rs
References: 1. April A., Abran A. Software maintenance management: evaluation and continuous improvement. Hoboken: Wiley-IEEE Computer Society; 2008: 314.
2. Sommerville I. Software engineering. Boston: Addison Wesley; 2011: 773.
3. Bourque P., Fairley R.E.D. Guide to the software engineering body of knowledge (SWE- BOK). Piscataway: IEEE Press; 2014.
4. Tripathy P., Naik K. Software evolution and maintenance: a practitioner' s approach. Hoboken: John Wiley & Sons; 2015: 416. DOI: 10.1002/9781118964637
5. Stojanov Z. Software maintenance improvement in small software companies: reflections on experiences. CEUR-WS Proceedings. 2021; (2913):182-197. Available at: org/Vol-2913/paper14.pdf.
6. Zhang X., Windsor J.C. An empirical analysis of software volatility and related factors. Industrial Management and Data Systems. 2003; (103):275-281. DOI: 10.1108/02635570310470683
7. Schach S.R., Tomer A. A maintenance-oriented approach to software construction. Journal of Software Maintenance. 2000; (12):25-45.
8. Li B., Sun X., Leung H., Zhang S. A survey of code-based change impact analysis techniques. Software Testing, Verification and Reliability. 2013; (23):613-646.
9. Dam H.K., Le L.-S., Ghose A. Managing changes in the enterprise architecture modelling context. Enterprise Information Systems. 2016; (10):666-696. DOI: 10.1080/17517575.2014.986219
10. Parhizkar M., Comuzzi M. Impact analysis of ERP post-implementation modifications: design, tool support and evaluation.Computers in Industry. 2017; (84):25-38. DOI: 10.1016/j.compind.2016.11.003
11. Martinez Y., Cachero C., Melia S. Empirical study on the maintainability of web applications: model-driven engineering vs code-centric. Empirical Software Engineering. 2014; (19):1887-1920. DOI: 10.1007/s10664-013-9269-5 12. Elkholy M., Elfatatry A. Change taxonomy: a fine-grained classification of software change. IT Professional. 2018; (20):28-36. DOI: 10.1109/MITP.2018.043141666
13. Anda B.C.D. Assessing software system maintainability using structural measures and expert assessments. Proceedings of the 23rd International Conference on Software Maintenance (ICSM 2007). Paris, France. 2007: 204-213. DOI: 10.1109/ICSM.2007.4362633 14. Kozlov D., Koskinen J., Sakkinen M., Markkula V. Assessing maintainability change over multiple software releases. Journal of Software Maintenance and Evolution: Research and Practice. 2008; (20):31-58. DOI: 10.1002/smr.361 15. Riaz M., Mendes E., Tempero E. A systematic review of software maintainability prediction and metrics. Proceedings of the 3rd International Symposium on Empirical Software Engineering and Measurement (ESEM'09). Lake Buena Vista, FL, USA. 2009: 367-377. DOI: 10.1109/ESEM.2009.5314233 16. Lin H.-Y., Sierla S., Papakonstantinou N., Shalyto A., Vyatkin V. Change request management in model-driven engineering of industrial automation software. Proceedings of the IEEE 13th International Conference on Industrial Informatics (INDIN 2015). Cambridge, UK. 2015: 1186-1191. DOI: 10.1109/INDIN.2015.7281904
17. Ricca F., Torchiano M., Leotta M., Tiso A., Guerrini G., Reggio G. On the impact of state-based model-driven development on maintainability: a family of experiments using uni- mod. Empirical Software Engineering. 2018; (23):1743-1790. DOI: 10.1007/s10664-017-9563-8
18. Hutchinson J., Whittle J., Rouncefield M. Model-driven engineering practices in industry: social, organizational and managerial factors that lead to success or failure. Science of Computer Programming, Special Issue on Success Stories in Model Driven Engineering. 2014; (89):144-161. DOI: 10.1016/j.scico.2013.03.017 19. Farshidi S., Jansen S., Fortuin S. Model-driven development platform selection: four industry case studies. Software and Systems Modeling. 2021; (20):1525-1551. DOI: 10.1007/s10270-020-00855-w 20. Rahad K., Badreddin O., Mohsin Reza S. The human in model-driven engineering loop: a case study on integrating handwritten code in model-driven engineering repositories. Software: Practice and Experience. 2021; (51):1308-1321. DOI: 10.1002/spe.2957
21. Forward A., Lethbridge T.C. A taxonomy of software types to facilitate search and evidence-based software engineering. Proceedings of the 2008 Conference of the Center for Advanced Studies on Collaborative Research: Meeting of Minds (CASCON'08). Ontario, Canada. 2008: (14):179-191. DOI: 10.1145/1463788.1463807 22. Stojanov Z. Discovering automation level of software change request process from qualitative empirical data. Proceedings of the 6th IEEE International Symposium on Applied Computational Intelligence and Informatics (SACI 2011). Timisoara, Romania. 2011: 51-56. DOI: 10.1109/SACI.2011.5872972 23. Arnold R., Bohner S. Software change impact analysis. Los Alamitos, CA, USA: Wiley- IEEE Computer Society Press; 1996: 376.
24. Sun X., Li B., Tao C., Wen W., Zhang S. Change impact analysis based on a taxonomy of change types. Proceedings of the IEEE 34th Annual Computer Software and Applications Conference. Seoul, Korea. 2010: 373-382. DOI: 10.1109/COMPSAC.2010.45
25. Milosavljevic G., Perisic B. A method and a tool for rapid prototyping of large-scale business information systems.Computer Science and Information Systems (ComSIS). 2004: (1):57-82.
26. Wettasinghe M. Branding the feel: applying standards to enable a uniform user experience. CHI'08 Extended Abstracts on Human Factors in Computing Systems (CHI EA'08). Florence, Italy. 2008: 2265-2268. DOI: 10.1145/1358628.1358665
27. Mandel T. User/system interface design. Encyclopedia of Information Systems. N.Y.: Elsevier; 2003; (1):535-549. DOI: 10.1016/B0-12-227240-4/00190-8 28. Vajjhala S., Fialli J. JSR-000222, Java architecture for XML binding (JAXB) 2.0. Santa Clara, USA: Sun Microsystems, Inc.; 2006. Available at: detail?id=222.
29. Stojanov Z., Dobrilovic D. An approach to integration of maintenance services in educational web portal. Proceedings of the 8th International Symposium on Intelligent Systems and Informatics (SISY2010). Subotica, Serbia. 2010: 443-448. DOI: 10.1109/SISY.2010.5647343
30. Geimer M., Shende S.S., Malony A.D., Wolf F. A generic and configurable source-code instrumentation component.Computational Science: Proceedings 9th International Conference (ICCS 2009). Part II. Berlin, Heidelberg: Springer Berlin Heidelberg; 2009: 696-705. 10.1007/978-3-642-01973-9- 78. DOI: 10.1007/978-3-642-01973-9-78
31. Dobrilovic D., Stojanov Z., Odadzic B., Markoski B. Using network node description language for modeling networking scenarios. Advances in Engineering Software. 2012; (43):53- 64. DOI: 10.1016/j.advengsoft.2011.08.004
32. Stojanov Z., Dobrilovic D., Stojanov J. Extending data-driven model of software with software change request service. Enterprise Information Systems. 2018; (12):982-1006. DOI: 10.1080/17517575.2018.1445296 33. Stojanov Z., Dobrilovic D., Perisic B.Integrating software change request services into virtual laboratory environment: empirical evaluation.Computer Applications in Engineering Education. 2014; (22):63-71. DOI: 10.1002/cae.20529.
34. Stojanov Z., Dobrilovic D. Qualitative evaluation of software maintenance services integrated in a virtual learning environment.International Journal of Engineering Education. 2016; (32):790-803.
35. Stewart D.W., Shamdasani P.N., Rook D.W. Focus groups: theory and practice. London: SAGE Publications; 2007.
36. Roulston K.J. Open-ended question. L.M. Given. The SAGE Encyclopedia of Qualitative Research Methods. Thousand Oaks, CA, US: SAGE Publications; 2008: 582.
37. Popping R. Analyzing open-ended questions by means of text analysis procedures. Bulletin of Sociological Methodology. 2015; (128):23-39. DOI: 10.1177/0759106315597389 38. Charmaz K. Constructing grounded theory: a practical guide through qualitative analysis. London: Sage Publications; 2006: 224.
Bibliography link: Stojanov Z. Maintainability of data-driven software systems: review and experiences // Computational technologies. 2023. V. 28. ¹ 1. P. 92-103
|