中文

ABCDE——敏捷区块链 DApp 工程

软件工程 2019-12-20 v1

摘要

加密货币及其基础技术区块链正在重塑金融与经济,使得一种去中心化的方法得以实现,从而在无可信对手方的情况下运行可信应用。近来,区块链及其上运行的程序(称为智能合约)也在所有需要信任与可靠认证的领域中得到越来越多的应用。有人甚至认为“区块链革命”可与早期互联网和万维网的革命相提并论。因此,围绕区块链技术的所有软件开发正以惊人的速度增长。许多软件工程师对这种巨大关注的感受是:这是一种无规范且仓促的软件开发,一种先到先得的竞争,既无法保证软件质量,也未考虑软件工程的基本概念。本文试图应对这一问题,提出一种软件开发过程来收集需求、分析、设计、开发、测试并部署区块链应用。该过程基于若干敏捷实践,例如用户故事以及基于用户故事的迭代式增量开发。然而,它也使用了更形式化的表示法,例如描述系统设计的某些 UML 图,并进行了扩展以表示区块链开发中特有的概念。本文较为详细地描述了该方法,并给出一个示例说明其工作方式。

关键词

引用

@article{arxiv.1912.09074,
  title  = {ABCDE -- Agile Block Chain Dapp Engineering},
  author = {Lodovica Marchesi and Michele Marchesi and Roberto Tonelli},
  journal= {arXiv preprint arXiv:1912.09074},
  year   = {2019}
}

备注

26 pages, 7 figures, 8 tables