DCU Home | Our Courses | Loop | Registry | Library | Search DCU
<< Back to Module List

Module Specifications.

Current Academic Year 2024 - 2025

All Module information is indicative, and this portal is an interim interface pending the full upgrade of Coursebuilder and subsequent integration to the new DCU Student Information System (DCU Key).

As such, this is a point in time view of data which will be refreshed periodically. Some fields/data may not yet be available pending the completion of the full Coursebuilder upgrade and integration project. We will post status updates as they become available. Thank you for your patience and understanding.

Date posted: September 2024

Module Title Developing Blockchain Systems
Module Code CA6001I (ITS) / CSC1162 (Banner)
Faculty Engineering & Computing School Computing
Module Co-ordinatorIrina Tal
Module Teachers-
NFQ level 9 Credit Rating 7.5
Pre-requisite Not Available
Co-requisite Not Available
Compatibles Not Available
Incompatibles Not Available
None
Description

This module will enable students to deepen their understanding of blockchain technology. The module will cover system analysis, design, and development of applications using two modern Blockchain technologies: Ethereum and Hyperledger.

Learning Outcomes

1. Demonstrate a detailed awareness of the issues related to system analysis and design for Blockchain; when and when not to use Blockchain.
2. Understand the installation and operation of the Ethereum infrastructure.
3. Demonstrate the development of applications using the Ethereum infrastructure.
4. Identify and understand the elements, installation, and operation of the Hyperledger infrastructure.
5. Demonstrate the development of applications using the Hyperledger infrastructure.
6. Outline the promises and the challenges threatening the blockchain technology.



Workload Full-time hours per semester
Type Hours Description
Online activity36Lectures
Assignment Completion120No Description
Independent Study31No Description
Total Workload: 187

All module information is indicative and subject to change. For further information,students are advised to refer to the University's Marks and Standards and Programme Specific Regulations at: http://www.dcu.ie/registry/examinations/index.shtml

Indicative Content and Learning Activities

Blockchain Technology and Applications
This course gives a brief overview of blockchain and highlights when to consider blockchain as an appropriate solution. This course is a high-level introduction to blockchain technology, its technical foundations, the theory behind it, and various techniques that have been combined together to build what is known today as blockchain. Initially, the course will focus on a brief overview of blockchain and demonstrate a detailed awareness of the issue relating to system analysis and design for blockchain. We will look at the top blockchain platforms and where these platforms are best suited. The pros and cons of these platforms are also discussed. Finally, we will look at the Chili Sauce Blockchain Evaluation Framework that helps businesses determine whether blockchain is the right solution for them to use.

Decentralised Applications (DApps)
This course gives an overview of decentralised applications (DApps) and highlights the top DApps for blockchain. The course gives an introduction to decentralisation and decentralised applications (DApps), their evolution, their relationship to blockchain and show the roadmap for creating a successful DApps. Initially, you will be given a brief overview of decentralisation and decentralised applications (DApps), their history and evolutions. This overview will highlight the relationship between DApps and blockchain. We will also look at the roadmap for creating successful DApps. Finally, the course will conclude by looking as some examples of top DApps for blockchain and highlight some legal and privacy issues that are facing the emergence of DApps.

Ethereum
This course gives an overview of the Ethereum blockchain, its ecosystem and how to develop and deploy DApps on Ethereum. This course gives a brief introduction to the Ethereum blockchain platform. We then dive into its technical foundations, its ecosystem, its installation and how to build and deploy DApps on Ethereum using smart contracts. The course will begin by providing a brief overview of the Ethereum blockchain platform, its architecture and its most important concepts and components. You will learn how to install all the necessary tools to write, test, and debug Solidity contracts on Ethereum. Then, you will explore the layout of the Solidity language and work with different data types. The course will take learners through different elements of the Solidity language and how object-oriented programming with Solidity is achieved. Finally, you will use what you learned to build, test and deploy DApps on Ethereum using smart contracts.

Hyperledger
This course gives an overview of the Hyperledger blockchain, its ecosystem and how to develop and deploy DApps on Hyperledger. This course gives a brief introduction to Hyperledger blockchain platform. We then dive into its technical foundations, its ecosystem, its installation and how to build and deploy DApps on Hyperledger. The course gives learners an overview of the Hyperledger blockchain platform, its architecture. The course will show learners how to install all the necessary libraries and tools to write and test smart contracts on Hyperledger. The course will then explore Hyperledger Fabric, one of the most popular and major Hyperledger projects. The set up of the Hyperledger Fabric environment will be illustrated and learners will get the opportunity to write their first application. At the conclusion of the course, learners will be able to build, test and deploy a DApp on the Hyperledger platform.

Blockchain Challenges, Promises and Perils
This course highlights the promises and the challenges threatening the blockchain technology. This course discusses the promise and societal impact of blockchain technology and highlights the different challenges that are facing the emergence of blockchain technology. We start by discussing the societal, environmental and governmental impacts of blockchain and how such technology can positively reshape our future. Then, we highlight that despite the benefits and promises of blockchain technology, there are several challenges and obstacles that are facing the emergence of such technology. Finally, we discuss how to overcome these challenges and drive blockchain technology to the next era.

Assessment Breakdown
Continuous Assessment100% Examination Weight0%
Course Work Breakdown
TypeDescription% of totalAssessment Date
AssignmentBuilding an Ethereum-based blockchain project: - Propose a use case application to implement using a public blockchain-based solution and discuss its suitability. - Create a detailed roadmap for the design, development and deployment of the proposed use case application. - Build and deploy the use case application on top of Ethereum platform Using Ethereum Solidity language.50%n/a
AssignmentBuilding a Hyperledger-based blockchain project: - Propose a use case application to implement using a private blockchain-based solution and discuss its suitability. - Create a detailed roadmap for the design, development and deployment of the proposed use case application. - Build and deploy the use case application on top of Hyperledger platform using Hyperledger Fabric.50%n/a
Reassessment Requirement Type
Resit arrangements are explained by the following categories:
Resit category 1: A resit is available for both* components of the module.
Resit category 2: No resit is available for a 100% continuous assessment module.
Resit category 3: No resit is available for the continuous assessment component where there is a continuous assessment and examination element.
* ‘Both’ is used in the context of the module having a Continuous Assessment/Examination split; where the module is 100% continuous assessment, there will also be a resit of the assessment
This module is category 1
Indicative Reading List

    Other Resources

    None

    << Back to Module List