Study-Unit Description

Study-Unit Description


CODE LAS3019

 
TITLE Blockchain and Smart Contract Programming

 
UM LEVEL H - Higher Level

 
MQF LEVEL 6

 
ECTS CREDITS 4

 
DEPARTMENT Centre for the Liberal Arts and Sciences

 
DESCRIPTION In this unit students will be exposed to programming languages and tools used for programming blockchain distributed applications and smart contracts. This unit will cover different public and private blockchain technologies including but not limited to Ethereum and Hyperledger.

This technical unit will cover the following hands-on topics:

* Introduction to blockchain and distributed ledger technologies and opportunities brought about with this technology. We will cover the distinction between public and private ledgers and the implications of using the two including privacy issues;
* An introduction to distributed application and smart contracts using Ethereum;
* Interacting with Ethereum nodes using RPC and web3;
* Programming, debugging and deployment tools including but not limited to Truffle, MetaMask and Remix;
* Solidity coding for Ethereum smart contracts in depth;
* Security issues and how to write smart contracts with security in mind;
* Developing smart contracts with Hyperledger Fabric;
* Setup, deployment, security and interaction with Hyperledger.

Learning Outcomes:

1. Knowledge & Understanding:
By the end of the unit the student will be able to:

- Given a distributed ledger architecture, develop systems over such an architecture in a secure and dependable manner;
- Choose between different solutions for public and private ledger technologies ideal for a particular use case;
- Demonstrate how Ethereum smart contracts work;
- Demonstrate how Hyperledger smart contracts work.

2. Skills:
By the end of the unit the student will be able to:

- Develop distributed applications and smart contracts for Ethereum using Solidity;
- Deploy, test and debug such smart contracts using the different tools covered;
- Write smart contracts with security in mind;
- Setup and deploy smart contracts in Hyperledger;
- Interact with Hyperledger.

Main Text/s and any supplementary readings:

• M Swan, Blockchain: Blueprint for a New Economy, by O' Reilly, 1st Edition, ISBN-13: 978-1491920497
• C Dannen, Introducing Ethereum and Solidity: Foundations of Cryptocurrency and Blockchain Programming for Beginners, by Apress, 1st Edition, ISBN-13: 978-1484225349
• B Badr, Blockchain By Example: Decentralized applications using Bitcoin, Ethereum, and Hyperledger, by Packt, ISBN-13: 978-1788475686
• A Antonopolous and G Wood, Mastering Ethereum: Building Smart Contracts and Dapps, by O'Reilly, 1st Edition, ISBN-13: 978-1491971949

 
STUDY-UNIT TYPE Lecture

 
METHOD OF ASSESSMENT
Assessment Component/s Sept. Asst Session Weighting
Project Yes 100%

 
LECTURER/S Joshua Ellul
Jonathan Galea
Loui Mercieca

 

 
The University makes every effort to ensure that the published Courses Plans, Programmes of Study and Study-Unit information are complete and up-to-date at the time of publication. The University reserves the right to make changes in case errors are detected after publication.
The availability of optional units may be subject to timetabling constraints.
Units not attracting a sufficient number of registrations may be withdrawn without notice.
It should be noted that all the information in the description above applies to study-units available during the academic year 2023/4. It may be subject to change in subsequent years.

https://www.um.edu.mt/course/studyunit