University of Hertfordshire

Standard

Smart Contracts Software Metrics: a First Study. / Tonelli, Roberto; Destefanis, Giuseppe; Marchesi, Michele; Ortu, Marco.

arXiv, 2018.

Research output: Working paper

Harvard

Tonelli, R, Destefanis, G, Marchesi, M & Ortu, M 2018 'Smart Contracts Software Metrics: a First Study' arXiv.

APA

Tonelli, R., Destefanis, G., Marchesi, M., & Ortu, M. (2018). Smart Contracts Software Metrics: a First Study. arXiv.

Vancouver

Tonelli R, Destefanis G, Marchesi M, Ortu M. Smart Contracts Software Metrics: a First Study. arXiv. 2018 Feb 5.

Author

Tonelli, Roberto ; Destefanis, Giuseppe ; Marchesi, Michele ; Ortu, Marco. / Smart Contracts Software Metrics: a First Study. arXiv, 2018.

Bibtex

@techreport{e9d1aaf4295c4558b0e3d5789b4b56c5,
title = "Smart Contracts Software Metrics: a First Study",
abstract = "Smart contracts (SC) are software codes which reside and run over a blockchain. The code can be written in different languages with the common purpose of implementing various kinds of transactions onto the hosting blockchain, They are ruled by the blockchain infrastructure and work in order to satisfy conditions typical of traditional contracts. The software code must satisfy constrains strongly context dependent which are quite different from traditional software code. In particular, since the bytecode is uploaded in the hosting blockchain, size, computational resources, interaction between different parts of software are all limited and even if the specific software languages implement more or less the same constructs of traditional languages there is not the same freedom as in normal software development. SC software is expected to reflect these constrains on SC software metrics which should display metric values characteristic of the domain and different from more traditional software metrics. We tested this hypothesis on the code of more than twelve thousands SC written in Solidity and uploaded on the Ethereum blockchain. We downloaded the SC from a public repository and computed the statistics of a set of software metrics related to SC and compared them to the metrics extracted from more traditional software projects. Our results show that generally Smart Contracts metrics have ranges more restricted than the corresponding metrics in traditional software systems. Some of the stylized facts, like power law in the tail of the distribution of some metrics, are only approximate but the lines of code follow a log normal distribution which reminds of the same behavior already found in traditional software systems.",
keywords = "cs.SE",
author = "Roberto Tonelli and Giuseppe Destefanis and Michele Marchesi and Marco Ortu",
note = "{\textcopyright} 2018 The Author(s).",
year = "2018",
month = feb,
day = "5",
language = "English",
publisher = "arXiv",
type = "WorkingPaper",
institution = "arXiv",

}

RIS

TY - UNPB

T1 - Smart Contracts Software Metrics: a First Study

AU - Tonelli, Roberto

AU - Destefanis, Giuseppe

AU - Marchesi, Michele

AU - Ortu, Marco

N1 - © 2018 The Author(s).

PY - 2018/2/5

Y1 - 2018/2/5

N2 - Smart contracts (SC) are software codes which reside and run over a blockchain. The code can be written in different languages with the common purpose of implementing various kinds of transactions onto the hosting blockchain, They are ruled by the blockchain infrastructure and work in order to satisfy conditions typical of traditional contracts. The software code must satisfy constrains strongly context dependent which are quite different from traditional software code. In particular, since the bytecode is uploaded in the hosting blockchain, size, computational resources, interaction between different parts of software are all limited and even if the specific software languages implement more or less the same constructs of traditional languages there is not the same freedom as in normal software development. SC software is expected to reflect these constrains on SC software metrics which should display metric values characteristic of the domain and different from more traditional software metrics. We tested this hypothesis on the code of more than twelve thousands SC written in Solidity and uploaded on the Ethereum blockchain. We downloaded the SC from a public repository and computed the statistics of a set of software metrics related to SC and compared them to the metrics extracted from more traditional software projects. Our results show that generally Smart Contracts metrics have ranges more restricted than the corresponding metrics in traditional software systems. Some of the stylized facts, like power law in the tail of the distribution of some metrics, are only approximate but the lines of code follow a log normal distribution which reminds of the same behavior already found in traditional software systems.

AB - Smart contracts (SC) are software codes which reside and run over a blockchain. The code can be written in different languages with the common purpose of implementing various kinds of transactions onto the hosting blockchain, They are ruled by the blockchain infrastructure and work in order to satisfy conditions typical of traditional contracts. The software code must satisfy constrains strongly context dependent which are quite different from traditional software code. In particular, since the bytecode is uploaded in the hosting blockchain, size, computational resources, interaction between different parts of software are all limited and even if the specific software languages implement more or less the same constructs of traditional languages there is not the same freedom as in normal software development. SC software is expected to reflect these constrains on SC software metrics which should display metric values characteristic of the domain and different from more traditional software metrics. We tested this hypothesis on the code of more than twelve thousands SC written in Solidity and uploaded on the Ethereum blockchain. We downloaded the SC from a public repository and computed the statistics of a set of software metrics related to SC and compared them to the metrics extracted from more traditional software projects. Our results show that generally Smart Contracts metrics have ranges more restricted than the corresponding metrics in traditional software systems. Some of the stylized facts, like power law in the tail of the distribution of some metrics, are only approximate but the lines of code follow a log normal distribution which reminds of the same behavior already found in traditional software systems.

KW - cs.SE

M3 - Working paper

BT - Smart Contracts Software Metrics: a First Study

PB - arXiv

ER -