Browse > Article
http://dx.doi.org/10.3745/JIPS.04.0225

SAT-Analyser Traceability Management Tool Support for DevOps  

Rubasinghe, Iresha (Dept. of Computer Science and Engineering, University of Moratuwa)
Meedeniya, Dulani (Dept. of Computer Science and Engineering, University of Moratuwa)
Perera, Indika (Dept. of Computer Science and Engineering, University of Moratuwa)
Publication Information
Journal of Information Processing Systems / v.17, no.5, 2021 , pp. 972-988 More about this Journal
Abstract
At present, DevOps environments are getting popular in software organizations due to better collaboration and software productivity over traditional software process models. Software artefacts in DevOps environments are vulnerable to frequent changes at any phase of the software development life cycle that create a continuous integration continuous delivery pipeline. Therefore, software artefact traceability management is challenging in DevOps environments due to the continual artefact changes; often it makes the artefacts to be inconsistent. The existing software traceability related research shows limitations such as being limited to few types of artefacts, lack of automation and inability to cope with continuous integrations. This paper attempts to overcome those challenges by providing traceability support for heterogeneous artefacts in DevOps environments using a prototype named SAT-Analyser. The novel contribution of this work is the proposed traceability process model consists of artefact change detection, change impact analysis, and change propagation. Moreover, this tool provides multi-user accessibility and is integrated with a prominent DevOps tool stack to enable collaborations. The case study analysis has shown high accuracy in SAT-Analyser generated results and have obtained positive feedback from industry DevOps practitioners for its efficacy.
Keywords
Computer-Aided Software Engineering; Continuous Integration; Software Artefact Consistency Management;
Citations & Related Records
연도 인용수 순위
  • Reference
1 R. Oliveto, "Traceability management meets information retrieval methods-strengths and limitations," in Proceedings of 2008 12th European Conference on Software Maintenance and Reengineering, Athens, Greece, 2008, pp. 302-305.
2 E. Kitsu, T. Omori, and K. Maruyama, "Detecting program changes from edit history of source code," in Proceedings of 2013 20th Asia-Pacific Software Engineering Conference (APSEC), Bangkok, Thailand, 2013, pp. 299-306.
3 I. Sommerville, Software Engineering, 9th ed. Boston, MA: Pearson, 2011.
4 L. Bass, I. Weber, and L. Zhu, DevOps: A Software Architect's Perspective. Boston, MA: Pearson, 2015.
5 P. M. Duvall, S. Matyas, and A. Glover, Continuous Integration: Improving Software Quality and Reducing Risk. Boston, MA: Pearson, 2007.
6 J. Cleland-Huang, O. Gotel, and A. Zisman, Software and Systems Traceability. London, UK: Springer, 2012.
7 Trello [Online]. Available: https://trello.com/.
8 K. Kamalabalan, T. Uruththirakodeeswaran, G. Thiyagalingam, D. B. Wijesinghe, I. Perera, D. Meedeniya, and D. Balasubramaniam, "Tool support for traceability of software artefacts," in Proceedings of 2015 Moratuwa Engineering Research Conference (MERCon), Moratuwa, Sri Lanka, 2015, pp. 318-323.
9 X. Sun, B. Li, C. Tao, W. Wen, and S. Zhang, "Change impact analysis based on a taxonomy of change types," in Proceedings of 2010 IEEE 34th Annual Computer Software and Applications Conference, Seoul, Korea, 2010, pp. 373-38.
10 W. T. Lee, W. Y. Deng, J. Lee, and S. J. Lee, "Change impact analysis with a goal-driven traceability-based approach," International Journal of Intelligent Systems, vol. 25, no. 8, pp. 878-908, 2010.   DOI
11 A. Goknil, I. Kurtev, K. Van Den Berg, and W. Spijkerman, "Change impact analysis for requirements: A metamodeling approach," Information and Software Technology, vol. 56, no. 8, pp. 950-972, 2014.   DOI
12 Y. Wang, J. Zhang, and Y. Fu, "Rule-based change impact analysis method in software development," in Proceedings of the 2nd International Conference on Computer Engineering, Information Science & Application Technology (ICCIA 2017), Wuhan, China, 2016, pp. 384-391.
13 S. Wong, Y. Cai, and M. Dalton, "Change impact analysis with stochastic dependencies," 2011 [Online]. Available: https://www.cs.drexel.edu/files/jmf323/wong-icse11b_0.pdf.
14 V. Farcic, The DevOps 2.0 Toolkit: Automating the Continuous Deployment Pipeline with Containerized Microservices. Victoria, Canada: Leanpub, 2016.
15 Jaro-Winkler Distance [Online]. Available: https://scholar.harvard.edu/jfeigenbaum/software/jaro-winkler-distance.
16 The Levenshtein-Algorithm [Online], Available: http://www.levenshtein.net.
17 D3.js: data-driven documents [Online]. Available: https://d3js.org/.
18 G. Kim, J. Humble, P. Debois, and J. Willis, The DevOps Handbook: How to Create World-Class Agility, Reliability, and Security in Technology Organizations. Portland, OR: IT Revolution Press, 2016.
19 S. Lehnert and M. Riebisch, "Rule-based impact analysis for heterogeneous software artifacts," in Proceedings of 2013 17th European Conference on Software Maintenance and Reengineering, Genova, Italy, 2013, pp. 209-218.
20 I. Rubasinghe, D. Meedeniya, and I. Perera, "Tool support for software artefact traceability in DevOps practice: SAT-Analyser," in Tools and Techniques for Software Development in Large Organizations: Emerging Research and Opportunities. Hershey, PA: IGI Global, 2020, pp. 130-167.
21 Gephi, "The Open Graph Viz Platform," 2017 [Online]. Available: https://gephi.org/.
22 Neo4j Inc., "Graph Visualization Tools," 2021 [Online]. Available: https://neo4j.com/developer/tools-graphvisualization/.
23 NetworkX [Online]. Available: https://networkx.github.io.
24 I. Rubasinghe, D. Meedeniya, and I. Perera, "Automated inter-artefact traceability establishment for DevOps practice," in Proceedings of 2018 IEEE/ACIS 17th International Conference on Computer and Information Science (ICIS), Singapore, 2018, pp. 211-216.
25 S. Gwizdala, Y. Jiang, and V. Rajlich, "Tracker: a tool for change propagation in Java," in Proceedings of the 7th European Conference on Software Maintenance and Reengineering, Benevento, Italy, 2003, pp. 223-229.
26 SAT-Analyser [Online]. Available: https://sites.google.com/cse.mrt.ac.lk/sat-analyser/case-studies.
27 D. A. Meedeniya, I. D. Rubasinghe, and I. Perera, "Traceability establishment and visualization of software artefacts in DevOps practice: a survey," International Journal of Advanced Computer Science and Applications, vol. 10, no. 7, pp. 66-76, 2019.
28 J. Buckner, J. Buchta, M. Petrenko, and V. Rajlich, "JRipples: a tool for program comprehension during incremental change," in Proceedings of the 13th International Workshop on Program Comprehension (IWPC), St. Louis, MO, 2005, pp. 149-152.
29 G. Bavota, L. Colangelo, A. De Lucia, S. Fusco, R. Oliveto, and A. Panichella, "TraceME: traceability management in eclipse," in Proceedings of 2012 28th IEEE International Conference on Software Maintenance (ICSM), Trento, Italy, 2012, pp. 642-645.
30 R. Dautriche, R. Blanch, A. Termier, and M. Santana, "TraceViz: a visualization framework for interactive analysis of execution traces," in Actes de la 28ieme conference francophone sur l'Interaction Homme-Machine, Fribourg, Switzerland, 2016, pp. 115-125.
31 H. C. Gall, B. Fluri, and M. Pinzger, "Change analysis with evolizer and changedistiller," IEEE Software, vol. 26, no. 1, pp. 26-33, 2009.   DOI
32 X. Chen, J. Hosking, J. Grundy, and R. Amor, "DCTracVis: a system retrieving and visualizing traceability links between source code and documentation," Automated Software Engineering, vol. 25, no. 4, pp. 703-741, 2018.   DOI
33 L. Zhang, M. Kim, and S. Khurshid, "Faulttracer: a change impact and regression fault analysis tool for evolving java programs," in Proceedings of the ACM SIGSOFT 20th International Symposium on the Foundations of Software Engineering, Cary, NC, 2012, pp. 1-4.
34 B. Dit, M. Wagner, S. Wen, W. Wang, M. Linares-Vasquez, D. Poshyvanyk, and H. Kagdi, "Impactminer: a tool for change impact analysis," in Companion Proceedings of the 36th International Conference on Software Engineering, Hyderabad, India, 2014, pp. 540-543.
35 D. A. Meedeniya, I. D. Rubasinghe, and I. Perera, "Software artefacts consistency management towards continuous integration: a roadmap," International Journal of Advanced Computer Science and Applications, vol. 10, no. 4, pp. 100-110, 2019.
36 I. D. Rubasinghe, D. A. Meedeniya, and I. Perera, "Software artefact traceability analyser: a case-study on POS system," in Proceedings of the 6th International Conference on Communications and Broadband Networking, Singapore, 2018, pp. 1-5.
37 M. Acharya and B. Robinson, "Practical change impact analysis based on static program slicing for industrial software systems," in Proceedings of 2011 33rd International Conference on Software Engineering (ICSE), Honolulu, HI, 2011, pp. 746-755.
38 I. D. Rubasinghe, D. A. Meedeniya, and I. Perera, "Towards traceability management in continuous integration with SAT-Analyzer," in Proceedings of the 3rd International Conference on Communication and Information Processing, Tokyo, Japan, 2017, pp. 77-81.
39 A. Berg, Jenkins Continuous Integration Cookbook. Birmingham, UK: Packt Publishing Ltd., 2012.
40 A. Arunthavanathan, S. Shanmugathasan, S. Ratnavel, V. Thiyagarajah, I. Perera, D. Meedeniya, and D. Balasubramaniam, "Support for traceability management of software artefacts using natural language processing," in Proceedings of 2016 Moratuwa Engineering Research Conference (MERCon), Moratuwa, Sri Lanka, 2016, pp. 18-23.
41 M. Borg, K. Wnuk, B. Regnell, and P. Runeson, "Supporting change impact analysis using a recommendation system: An industrial case study in a safety-critical context," IEEE Transactions on Software Engineering, vol. 43, no. 7, pp. 675-700, 2016.   DOI
42 D. Meedeniya, I. Rubasinghe, and I. Perera, "Artefact consistency management in DevOps practice: A survey," in Tools and Techniques for Software Development in Large Organizations: Emerging Research and Opportunities. Hershey, PA: IGI Global, 2020, pp. 98-129.