Politecnico di Torino (logo)

Blockchain applications to Supply Chain: an application to last-mile delivery

Vittorio Capocasale

Blockchain applications to Supply Chain: an application to last-mile delivery.

Rel. Guido Perboli, Daniele Manerba. Politecnico di Torino, Corso di laurea magistrale in Ingegneria Informatica (Computer Engineering), 2019

PDF (Tesi_di_laurea) - Tesi
Licenza: Creative Commons Attribution Non-commercial Share Alike.

Download (1MB) | Preview

The blockchain technology is gathering increasing interest from many fields. This is due to its many properties, which make it suitable for many different applications. In particular, the blockchain technology could offer an high level of data security, redundancy and distribution and guarantee at the same time its immutability and authenticity, which could make guarantors and other third parties superfluous and thus have disruptive implication in the financial world, as proved by the Bitcoin blockchain. However, the technology application can be easily extended to other fields, and in particular to the supply chain. In fact, one of the main limit the supply chain companies have to face is the lack of a standard interface to exchange information and a way to authenticate it: data gets corrupted or simply lost in translation when exchanged between different information systems. The blockchain technology has the potential to reduce the paperwork processing costs and time, to reduce the amount of fake products introduced in the market and to offer a way to identify them, to allow to track the origin of a product from the producer to the consumer, and thus to limit the issues of a production defect. Finally, if coupled with the IoT devices, it could even create new businesses models and revolutionize the old ones. However there are also many issues which could limit the actual adoption of the blockchain technology. In particular, two are the main factors that must be taken into account. From an economic point of view, the savings related to the adoption of the blockchian must justify the risks of adopting an immature technology. From an efficiency point of view, the blockchain must be able to guarantee the same throughput of the "legacy to be" systems. This work is mainly focused on the second aspect: in literature there is a general lack of information regarding the quantity of data that the blockchian technology is able to process because it is hard to define a reliable metric that takes into account all the variables that can affect the blockchain performance. One of the metrics mostly used is the number of transactions that can be performed in a second (TPS). Of course, among other factors, this metric is dependent by the complexity of the transactions used in the system. To cope with this problem, the Hyperledger Sawtooth framework is used to implement a more complete supply chain and a simplified one. The former presents entities and operations that can be considered common to many real-world use-cases and mechanisms to handle shared objects and the delegation of operations. The system is used to measure the TPS value reached in three different use cases. The results show a general performance decay when too many transactions are submitted simultaneously, or when they are submitted to too many different nodes. The results are compared with the ones of the other supply chain that can perform only very simple (almost CRUD) transactions. This could give a hint about the complexity of the complete one. The tests performed should be replicated on bigger networks and using a more sophisticated hardware in order to offer results closer to what could be a real use case application.

Relators: Guido Perboli, Daniele Manerba
Academic year: 2019/20
Publication type: Electronic
Number of Pages: 70
Corso di laurea: Corso di laurea magistrale in Ingegneria Informatica (Computer Engineering)
Classe di laurea: New organization > Master science > LM-32 - COMPUTER SYSTEMS ENGINEERING
Aziende collaboratrici: UNSPECIFIED
URI: http://webthesis.biblio.polito.it/id/eprint/13133
Modify record (reserved for operators) Modify record (reserved for operators)