Skip to main content

Software Quality Assurance in INDIGO-DataCloud Project: a Converging Evolution of Software Engineering Practices to Support European Research e-Infrastructures

Abstract

From the advent of Grid technology – as the new paradigm of distributed computing – to the current days of Cloud computing models, the continuous need of new tools and services to match the scientific community requirements has been addressed in Europe through dedicated software development projects for e–Infrastructure creation, operation and management. This work presents the most significant software quality breakthroughs obtained in one of such projects, INDIGO–DataCloud, the main challenges and barriers confronted throughout the lifespan of the project, and how they were partially or totally overcome. The knowledge base established throughout the last 15 years of diverse software development initiatives in Europe for sustaining distributed research e-Infrastructures, supported by the advances in the area of software engineering, definitely contributed to improve the quality and reliability of the software delivered, and consequently, the operational stability of the European e–Infrastructures. INDIGO–DataCloud project is a good evidence of such insights, where, unlike the preceding trend found in past projects, the enforcement of Software Quality Assurance practices has been present since the very early stages of the software lifecycle.

This is a preview of subscription content, access via your institution.

References

  1. Lingrand, D., Montagnat, J., Martyniak, J., Colling, D.: Analyzing the EGEE production grid workload: application to jobs submission optimization. In: Workshop on Job Scheduling Strategies for Parallel Processing, pp 37–58 (2009)

  2. Campana, S., et al.: Analysis of the ATLAS Rome production experience on the LHC computing grid. In: IEEE 1st Int. Conf. of e-Science and Grid Computing, pp 8-pp (2005)

  3. Kindermann, S.: Climate data analysis and grid infrastructures: experiences and perspective. In: Grid-Enabling Legacy Applications and Supporting End Users Workshop (GELA), vol. 20 (2006)

  4. Mendez-Lorenzo, P., Moscicki, J.T., Ribon, A.: Experiences in the gridification of the Geant4 toolkit in the WLCG/EGEE environment. In: IEEE Nucl. Sci. Symp. Conf. Rec., vol. 2 (2006)

  5. Beck, K., et al.: Manifesto for agile software development. Online. Available: http://www.agilemanifesto.org/. Accessed 14 Feb 2019 (2012)

  6. Zhu, L., Bass, L., Champlin–Scharff, G.: DevOps and its practices. IEEE Softw. 33(3), 32–34 (2016)

    Article  Google Scholar 

  7. Kunszt, P.: European DataGrid project: status and plans. Nucl. Instr. Meth. Phys. Res. A 502(2), 376–381 (2003)

    Article  Google Scholar 

  8. Avellino, G., et al.: The DataGrid workload management system: Challenges and results. J. Grid Comp. 2(4), 353–367 (2004)

    MATH  Article  Google Scholar 

  9. Gagliardi, F., Jones, B., Reale, M., Burke, S.: European DataGrid Project: Experiences of Deploying a Large Scale Testbed for E–science Applications. In: Performance Evaluation of Complex Systems: Techniques and Tools, Performance 2002. LNCS, vol. 2459, pp 480–499 (2002)

  10. Foster, I., Kesselman, C.: Globus: a Metacomputing Infrastructure Toolkit. Int. J. High Perfor. Comput. Appl. 11(2), 115–128 (1997)

    Google Scholar 

  11. Momtahan, L., Martin, A.: e–science experiences: software engineering practice and the EU DataGrid. In: Proc. 9th Asia–Pacific Softw. Eng. Conf., pp 269–275 (2002)

  12. Dingsoyr, T., Nerur, S., Balijepally, V., Moe, N.B.: A decade of agile methodologies: Towards explaining agile software development. J. Syst. Softw. 85(6), 1213–1221 (2012)

    Article  Google Scholar 

  13. Paulk, M., Curtis, B., Chrissis, M., Weber, V.C.: Capability maturity model for software. Softw. Eng. Inst., Technical Report CMU/SEI-93-TR-024, ESC-TR-93-177. Online. Available: https://resources.sei.cmu.edu/assetfiles/TechnicalReport/199300500116211.pdf. Accessed 14 Feb. 2019 (1993)

  14. Quality Assurance Group: DataGrid - European DataGrid Developers? Guide. Online Available: https://edms.cern.ch/ui/file/358824/1.1/EDG-DevGuide-v1-2.pdf Accessed 14 Feb. 2019 (2003)

  15. DataGrid: DataGrid Internal Document - Quality and Performance Indicators for DataGrid. Online Available: https://edms.cern.ch/ui/file/386039/2/QIv0-3.pdf Accessed 14 Feb. 2019 (2003)

  16. Enabling Grids for E–sciencE (EGEE) project, European Community Research and Development Information Service (CORDIS). Online Available: http://cordis.europa.eu/project/rcn/80149en.html Accessed 14 Feb. 2019

  17. Enabling Grids for E–sciencE–II (EGEE–II) project, European Community Research and Development Information Service (CORDIS). Online Available: http://cordis.europa.eu/project/rcn/99189en.html Accessed 14 Feb. 2019

  18. Enabling Grids for E–sciencE–III (EGEE–III) project, European Community Research and Development Information Service (CORDIS). Online Available: http://cordis.europa.eu/project/rcn/87264en.html Accessed 14 Feb. 2019

  19. Gagliardi, F., Begin, M.E.: EGEE – providing a production quality grid for e-science, in 2005. In: IEEE Inter. Symp. Mass Storage Syst. Technol., pp 88–92 (2005)

  20. Ferrari, T., et al.: Resources and services of the EGEE production infrastructure. J. Grid Comp. 9 (2), 119–133 (2011)

    Article  Google Scholar 

  21. Laure, E., et al.: Programming the Grid with gLite. Computational Meth. Sci. Technol. 12(1), 33–45 (2006)

    Article  Google Scholar 

  22. Thain, D., Tannenbaum, T., Livny, M.: Condor and the grid. In: Grid Computing: Making the Global Infrastructure a Reality, ch. 11, pp 63–70 (2003)

  23. Definition and Documentation of the Revised Software Life–Cycle Process, Milestone MSA3.4.2, 2010, EGEE? III project. Online. Available: https://edms.cern.ch/ui/file/1062487/2/EGEE-III-MSA3.4.2-1062487-v14.pdf. Accessed 14 Feb. 2019

  24. Meglio, A.D., Begin, M.-E., Couvares, P., Ronchieri, E., Takacs, E.: ETICS: the international software engineering service for the grid. J. Phys.: Conf. Ser. 119(4), 042010 (2008)

    Google Scholar 

  25. Aiftimiei, C., et al.: Towards next generations of software for distributed infrastructures: The European Middleware Initiative. In: 2012 IEEE 8th Inter. Conf. on E-Science, Chicago, IL, pp 1–10 (2012)

  26. ISO/IEC 9126 software engineering - product quality, international organization for standardization. Online. Available: https://www.iso.org/standard/22749.html. Accessed 14 Feb. 2019

  27. Alandes, M., et al.: Experiences with software quality metrics in the EMI middleware. J. Phys.: Conf. Ser. 396(5), 052003 (2012)

    Google Scholar 

  28. Plasencia, I.C.: EGI.eu the European grid initiative. In: Proc. 4th Iberian Grid Infra Conf., pp 5–15 (2010)

  29. Cordier, H., et al.: From EGEE operations portal towards EGI operations portal. In: Data Driven e-Science (ISGC2010), pp 129–140 (2011)

  30. Antoni, T., et al.: Global grid user support–building a worldwide distributed user support infrastructure. J. Phys.: Conf. Ser. 119(5), 052002 (2008)

    Google Scholar 

  31. Mathieu, G., Casson, J.: GOCDB4, a New Architecture for the European Grid Infrastructure. In: Data Driven e-Science (ISGC2010), pp 163–174 (2011)

  32. David, M., et al.: Validation of grid middleware for the European grid infrastructure. J. Grid Comp. 12(3), 543–558 (2014)

    Article  Google Scholar 

  33. EGI Quality Criteria: Online. Available: https://egi-qc.github.io/. Accessed 14 Feb. 2019

  34. Engaging the EGI community towards an open science commons (EGI-ENGAGE) project, European Community Research and Development Information Service (CORDIS). Online Available: http://cordis.europa.eu/project/rcn/194937en.html Accessed 14 Feb. 2019

  35. Orviz, P., et al.: umd-verification: automation of software validation for the EGI federated e-infrastructure. J. Grid Comp. 16(4), 683–696 (2018)

    Article  Google Scholar 

  36. Salomoni, D., et al.: Indigo-datacloud: a platform to facilitate seamless access to e-infrastructures. J. Grid Comp. 16(3), 381–408 (2018)

    Article  Google Scholar 

  37. Casale, G., et al.: Current and future challenges of software engineering for services and applications. Procedia Computer Science 97(3), 34–42 (2016)

    MathSciNet  Article  Google Scholar 

  38. Gomes, J., et al.: Initial Plan for WP3, INDIGO–DataCloud Deliverable 3.1. Online. Available: https://www.indigo-datacloud.eu/documents/initial-plan-wp3-d31. Accessed 14 Feb. 2019

  39. Gomes, J., et al.: WP3 Final Report. INDIGO–DataCloud Deliverable 3.3. Online. Available: https://www.indigo-datacloud.eu/documents/wp3-final-report-d33. Accessed 14 Feb. 2019

  40. Orviz, P., et al.: A set of common software quality assurance baseline criteria for research projects, 2017. Online. Available: http://hdl.handle.net/10261/160086. Accessed 14 Feb. 2019

  41. Members of the INDIGO-DataCloud, DEEP Hybrid-DataCloud and eXtreme Data-Cloud collaborations, 2015-2020. A set of Common Software Quality Assurance Baseline Criteria for Research Projects. Online. Available: https://github.com/indigo-dc/sqa-baseline. Accessed 14 Feb. 2019 (2018)

  42. Hamill, P.: Unit test frameworks: tools for high-quality software development. O’Reilly Media Inc. (2004)

  43. indigo-dc: indigo-dc Spaces - GitBook. Online. Available: https://www.gitbook.com/@indigo-dc. Accessed 14 Feb. 2019 (2018)

  44. puppetforge: Modules by INDIGO Datacloud - Puppet Forge. Online. Available: https://forge.puppet.com/indigodc. Accessed 14 Feb. 2019 (2018)

  45. GALAXY: Ansible Galaxy. Online. Available: https://galaxy.ansible.com/indigo-dc/. Accessed 14 Feb. 2019 (2018)

  46. GitHub Developer: GitHub API v3? GitHub developer guide. Online. Available: https://developer.github.com/v3/ Accessed 14 Feb. 2019 (2018)

  47. Jenkins: Jenkins. Online. Available: https://jenkins.io/ Accessed 14 Feb. 2019 (2018)

  48. GRIMOIRELAB: GrimoireLab - software development and community analytics platform. Online. Available: http://grimoirelab.github.io/ Accessed 14 Feb. 2019 (2017)

  49. Jenkins Indigo-dc: Jenkins - Indigo-DataCloud. Online. Available: https://jenkins.indigo-datacloud.eu:8080/ Accessed 14 Feb. 2019 (2018)

  50. Indigo-dc: indigodatacloud - Docker Hub. Online. Available: https://hub.docker.com/u/indigodatacloud Accessed 14 Feb. 2019 (2018)

  51. GitHub’s indigo-dc organization: indigo-dc. Online. Available: https://github.com/indigo-dc Accessed 14 Feb. 2019 (2018)

  52. Rafi, D.M., et al.: Benefits and limitations of automated software testing: Systematic literature review and practitioner survey. In: Proc. 7th Int. Workshop Automation Softw. Test, pp 36–42 (2012)

  53. GitHub: Learn Git and GitHub without any code!. Online. Available: https://github.com/ Accessed 14 Feb. 2019 (2018)

  54. Chen, L.: Continuous delivery: Huge benefits, but challenges too. IEEE Softw. 32(2), 50–54 (2015)

    Article  Google Scholar 

  55. Van Zundert, G.C.P., Bonvin, A.M.J.J.: DisVis: quantifying and visualizing the accessible interaction space of distance restrained biomolecular complexes. Bioinformatics 31(19), 3222–3224 (2015)

    Article  Google Scholar 

  56. Van Zundert, G.C.P., Bonvin, A.M.J.J.: Fast and sensitive rigid–body fitting into cryo–EM density maps with PowerFit. AIMS Biophys. 2(20150273), 73–87 (2015)

    Article  Google Scholar 

Download references

Acknowledgment

DataGrid - Research and Technological Development for an International Data Grid project has received funding from the European Union’s Fifth Framework Programme under grant agreement IST–2000–25182E.

EGEE - Enabling grids For E–science project has received funding from the European Union’s Sixth Framework Programme under grant agreement INFSO–RI–508833.

EGEE - Enabling grids For E–science–II project has received funding from the European Union’s Sixth Framework Programme under grant agreement INFSO–RI–031688.

EGEE - Enabling grids For E–science–III project has received funding from the European Union’s Seventh Framework Programme under grant agreement INFSO–RI–222667.

ETICS - E–Infrastructure for Testing, Integration and Configuration of Software project has received funding from the European Union’s Sixth Framework Programme under grant agreement INFSO–RI–026753.

ETICS - E–Infrastructure for Testing, Integration and Configuration of Software - Phase 2 project has received funding from the European Union’s Seventh Framework Programme under grant agreement INFSO–RI–223782.

EGI–InSPIRE - European Grid Initiative: Integrated Sustainable Pan–European Infrastructure for Researchers in Europe project has received funding from the European Union’s Seventh Framework Programme under grant agreement INFSO–RI–261323.

EGI–Engage project has received funding from the European Union’s Horizon 2020 research and innovation programme under grant agreement RIA–654142.

INDIGO–DataCloud project has received funding from the European Union’s Horizon 2020 research and innovation programme under grant agreement RIA–653549.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Pablo Orviz Fernández.

Additional information

Publisher’s Note

Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Rights and permissions

Reprints and Permissions

About this article

Verify currency and authenticity via CrossMark

Cite this article

Orviz Fernández, P., David, M., Duma, D.C. et al. Software Quality Assurance in INDIGO-DataCloud Project: a Converging Evolution of Software Engineering Practices to Support European Research e-Infrastructures. J Grid Computing 18, 81–98 (2020). https://doi.org/10.1007/s10723-020-09509-z

Download citation

  • Received:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s10723-020-09509-z

Keywords

  • Software reliability
  • Quality assurance
  • Software metrics
  • Software testing techniques
  • DevOps