Applying Blockchain to Improve the Integrity of the Software Development Process

14Citations
Citations of this article
37Readers
Mendeley users who have this article in their library.
Get full text

Abstract

Software development is a complex endeavor that encompasses application and implementation layers with functional (refers to what is done) and non-functional (how is done) aspects. The efforts to scale agile software development practices are not wholly able to address issues such as integrity, which is a crucial non-functional aspect of the software development process. However, if we consider most software failures are Byzantine failures (i.e., where components may fail and there is imperfect information on which a component has failed.) that might impair the operation but do not completely disable the production line. In this paper, we assume software practitioners who cause defects as Byzantine participants and claim that most software failures can be mitigated by viewing software development as the Byzantine Generals Problem. Consequently, we propose a test-driven incentive mechanism based on a blockchain concept to orchestrate the software development process where production is controlled by a similar infrastructure based on the working principles of blockchain. We discuss the model that integrates blockchain with the software development process, and provide some recommendations for future work to address the issues while orchestrating software production.

Cite

CITATION STYLE

APA

Yilmaz, M., Tasel, S., Tuzun, E., Gulec, U., O’Connor, R. V., & Clarke, P. M. (2019). Applying Blockchain to Improve the Integrity of the Software Development Process. In Communications in Computer and Information Science (Vol. 1060, pp. 260–271). Springer Verlag. https://doi.org/10.1007/978-3-030-28005-5_20

Register to see more suggestions

Mendeley helps you to discover research relevant for your work.

Already have an account?

Save time finding and organizing research with Mendeley

Sign up for free