Share Email Print
cover

Proceedings Paper

Rules of thumb to increase the software quality through testing
Author(s): M. Buttu; M. Bartolini; C. Migoni; A. Orlati; S. Poppi; S. Righini
Format Member Price Non-Member Price
PDF $14.40 $18.00

Paper Abstract

The software maintenance typically requires 40-80% of the overall project costs, and this considerable variability mostly depends on the software internal quality: the more the software is designed and implemented to constantly welcome new changes, the lower will be the maintenance costs. The internal quality is typically enforced through testing, which in turn also affects the development and maintenance costs. This is the reason why testing methodologies have become a major concern for any company that builds - or is involved in building - software. Although there is no testing approach that suits all contexts, we infer some general guidelines learned during the Development of the Italian Single-dish COntrol System (DISCOS), which is a project aimed at producing the control software for the three INAF radio telescopes (the Medicina and Noto dishes, and the newly-built SRT). These guidelines concern both the development and the maintenance phases, and their ultimate goal is to maximize the DISCOS software quality through a Behavior-Driven Development (BDD) workflow beside a continuous delivery pipeline. We consider different topics and patterns; they involve the proper apportion of the tests (from end-to-end to low-level tests), the choice between hardware simulators and mockers, why and how to apply TDD and the dependency injection to increase the test coverage, the emerging technologies available for test isolation, bug fixing, how to protect the system from the external resources changes (firmware updating, hardware substitution, etc.) and, eventually, how to accomplish BDD starting from functional tests and going through integration and unit tests. We discuss pros and cons of each solution and point out the motivations of our choices either as a general rule or narrowed in the context of the DISCOS project.

Paper Details

Date Published: 26 July 2016
PDF: 12 pages
Proc. SPIE 9913, Software and Cyberinfrastructure for Astronomy IV, 99130B (26 July 2016); doi: 10.1117/12.2230626
Show Author Affiliations
M. Buttu, INAF - Osservatorio Astronomico di Cagliari (Italy)
M. Bartolini, INAF - Istituto di Radioastronomia di Bologna (Italy)
C. Migoni, INAF - Osservatorio Astronomico di Cagliari (Italy)
A. Orlati, INAF - Istituto di Radioastronomia di Bologna (Italy)
S. Poppi, INAF - Osservatorio Astronomico di Cagliari (Italy)
S. Righini, INAF - Istituto di Radioastronomia di Bologna (Italy)


Published in SPIE Proceedings Vol. 9913:
Software and Cyberinfrastructure for Astronomy IV
Gianluca Chiozzi; Juan C. Guzman, Editor(s)

© SPIE. Terms of Use
Back to Top