Research papers on blockchain smart contracts

Luca Guida and Florian Daniel, Supporting Reuse of Smart Contracts Through Service Orientation and Assisted Development, IEEE International Conference on Decentralized Applications and Infrastructures, San Francisco, USA, 2019.

This paper focuses on two of the key challenges a developer encounters when reusing smart contracts: finding actionable information about existing smart contracts (descriptors) and writing the necessary integration logic to invoke selected contracts and implement missing functions. As for the former issue, the paper proposes a smart contract description format that allows the developer to search for publicly available contracts, understand which features a contract exposes and how to invoke them, according to a service-oriented approach. For the latter, the paper implements a simple, model-driven development environment consisting in a visual programming editor that provides a set of modeling constructs encoding specific, reuse-oriented code patterns. The approach is implemented and demonstrated in the context of the blockchain platform Ethereum and its programming language Solidity. The results obtained show that the proposed approach can be beneficial in the development of composite smart contracts and generic blockchain applications.

 

Florian Daniel and Luca Guida, A Service-Oriented Perspective on Blockchain Smart Contracts, IEEE Internet Computing, vol. 23, no. 1, pp. 46-53, 2019.

Smart contracts turn blockchains into distributed computing platforms. This paper studies whether smart contracts as implemented by a state-of-the-art blockchain technology may serve as a component technology for a computing paradigm like service-oriented computing in the blockchain, in order to foster reuse and increase cost-effectiveness.

 

 

 

 

 

MSc thesis “A Service-oriented, Visual Programming Approach for the Development of Blockchain Smart Contracts”

The thesis investigates whether smart contracts as implemented by state-of-the-art blockchain technology can be exploited as building blocks of a new service-oriented, trustworthy computing paradigm. Moreover, it proposes a methodology and a tool to support the development of smart contracts, their description, and their composition, in order to foster the reuse of widely tested contracts and libraries, thus improving the overall compliance with security and programming best practices and increasing cost-effectiveness. More specifically, this research proposes a formal description format and a registry prototype for Ethereum smart contracts, thus facilitating their discovery and reuse. Furthermore, it introduces a block-based visual programming editor prototype for Ethereum smart contracts, thus addressing the lack of tools supporting the development process. Both the prototypes have been tested and assessed through the development of a case study in the insurance field.

 

Related publications:

 

 

 

 

 

 

 

“Alexa Developer Preview Italy” program

Selected as one of the participants of a preview program that gave Italian Alexa Skills developers the opportunity to test an Amazon Echo device before it was released to the Italian market.

 

 

Seeds for the Future Italy 2018 @ Huawei Technologies

Seeds for the Future Italy 2018: 2-week study trip to China for 10 Master students selected from top Italian ICT universities. Participants gained first-hand work experience and insights into the work of a multinational ICT company at Huawei’s global headquarters in Shenzhen as well as training on wireless and core network technologies, 5G solutions, Cloud Computing and the Internet of Things.

Chinese Language & Culture for beginners: Beginner Mandarin Chinese course (pronunciation and pinyin romanization system, elementary vocabulary, basic sentence patterns), Chinese calligraphy and painting at the Beijing Language and Culture University.

The Future Makers 2018 @ The Boston Consulting Group

The Future Makers 2018: selected out of almost 2000 talented candidates from top universities in Europe as one of the 100 participants of a 4-day program organized by The Boston Consulting Group (BCG) that gives participants the opportunity to reflect about macrotrends such as digital transformation and social impact by interacting with some of the most influential representatives of the business community.

Earth Observations and the Digital Humanitarian (EODH) project

– Team leader, developer and budget controller in Earth Observations and the Digital Humanitarian (EODH) project in partnership with the European Space Agency and Humanitarian Openstreetmap Team: development of an integrated software pipeline for the semi-automated assessment of damages to buildings and other physical infrastructure in post-disaster scenarios using Synthetic Aperture Radar satellite imagery.

– Corresponding author of the paper publishing the results of the project: Guida, L. et al., 2018. Post-disaster damage assessment through Coherent Change Detection on SAR imagery. In: The International Archives of the Photogrammetry, Remote Sensing and Spatial Information Sciences, XLII-3, 431-436, https://doi.org/10.5194/isprs-archives-XLII-3-431-2018

Further info about the project: EODH: Earth Observation and the Digital Humanitarians

Big Data Analysis project

Scrum Master and Developer in Big Data Analysis project: design, implementation and economic feasibility assessment of a big data analysis platform that rewards users for sharing their location and preferences, while providing restaurant owners with accurate insights about their potential customers. The project was developed in the context of four different courses, integrating technical and business skills and using Agile software development approaches (Scrum, Kanban). The following technologies were used: MongoDB, Kafka, Spark, Spark Streaming, Hbase, Elasticsearch, AngularJS, Ionic, NodeJS with Express and Mongoose.

Virtual Reality and AI in video games project

Team Leader and Developer in Virtual Reality and AI in video games project: design and implementation of a video game to be deployed on a VR headset (Oculus Rift). Simple AI techniques such as n-grams were used for achieving dynamic and believable behavior in non-player-characters through next-move prediction and learning.

Software Engineering 2 project: PowerEnJoy

Team leader and developer in Software Engineering 2 project: design of a management system for an electric car sharing service: Requirements Analysis and Specification (scenarios, use cases, requirements identification, formal specification with UML and Alloy), System Design (architecture, algorithms, UI and UX), Integration Test Plan, Project Management Plan (Function Points and COCOMO II estimations, project schedule and task allocation, risk analysis).

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

PoliAule

Webapp designed to help university students find classrooms on campus, now merged in Politecnico di Milano official mobile website (2014)