Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Build a self-contained master level university course that can be leveraged to teach enterprise blockchain technologies.


Course Motivation & Overview & Motivation

Provide a reliable basis for university students to learn blockchain through Hyperledger Fabric, and, optionally, other Hyperledger technologies.

This course is a 6-7.5 ECTS master level course that assumes 3 hours of theory per week + 1.5 weeks of practical classes (laboratory) per week. Each lab takes approximately 1.5h of work, plus autonomous study. Assuming 1 ECTS = 24 hours of work, the total effort predicted solely from lab classes is  48-60 hours.

The course is divided into two module: Module I introduces the technology (labs 1-4), and Module II focuses on Hyperledger Fabric (labs 5-9). For universities using trimesters, the course can be separated into the two modules (1 per trimester). For universities using semesters, the whole course (labs 1-9) can be taught in that semester.


At the end of this course I will:

  1. Understand  Understand the concepts in which blockchain is based (labs 1 and 2), what is blockchain , how does it work, and which problems it can solve (laboratories 1,2,lab 3)
  2. Have the basis on smart contracts, using Know how Ethereum and Hyperledger Besu (laboratory work. I will be able to write simple smart contracts and deploy them on several networks (lab 4)
  3. Know Hyperledeger Fabric's components in detail, as well as its architecture and transactional model (laboratory labs 5,6,7)
  4. Be able to write smart contracts (chaincode) for Hyperledger Fabric, and bootstrap a Hyperledger Fabric network running those contracts (laboratories labs 5,6,7)
  5. Understand advanced concepts on the area of consensus, using Hyperledger Umbra (laboratories labs 8, 9)

 

Project plan


Schedule

Activity

Deliverables

As a Student, I will learn:

Week 1 - Week 2

June 1 - June 15

  • Contact possible contributors to this project
  • Setup project infrastructure
  • Delineate project plan
  • Skim through Hyperledger Fabric and Hyperledger Umbra documentation
  • Syllabus draft


  • Project plan
  • Course syllabus draft

Week 3 - Week 4

June 15 - June 29

  • Design Lab 1: Fundamentals on Distributed Systems and Cryptography
  • Lab 1 guide
  • Lab 1 support files
  • Basics of Distributed Systems
  • RAFT consensus algorithm

Week 5 - Week 6

June 29 - July 13

July 10: First Quarterly Evaluation

  • Design Lab 2: Fundamentals on Cryptography 
  • Lab 2 guide
  • Lab 2 support files
  • Basics of Cryptography 
  • RSA Algorithm

Week 7 - Week 8

July 13 - July 20

  • Design Lab 3: A Primer on Blockchain


  • Lab 3 guide
  • Lab 3 support files

Week 9 - Week 10

July 20 - August 3

  • Read Hyperledger Besu documentation
  • Read Ethereum documentation
  • Design Lab 4: Hyperledger Besu and Ethereum
  • Lab 4 guide
  • Lab 4 support files
  • (optional) Besu Project proposal

Week 11 - Week 12

August 3 - August 17

  • Read Hyperledger Fabric 2.0 documentation
  • Design Lab 5: Hyperledger Fabric
  • Lab 5 guide
  • Lab 5 support files
  • Fabric Project Proposal

Week 13 - Week 14

August 17 - August 31

August 21: Second Quarterly Evaluation

  • Design Lab 6: Hyperledger Fabric
  • Lab 6 guide
  • Lab 6 support files

Week 15 - Week 16

August 31 - September 14

  • Design Lab 7: Hyperledger Fabric
  • Lab 7 guide
  • Lab 7 support files

Week 17 - Week 18

September 14 - September 28

  • Read Hyperledger Umbra documentation
  • Design Lab 8: Hyperledger Umbra
  • Lab 8 guide
  • Lab 8 support files

Week 19 - Week 20

September 28 - October 12

October 2: Third Quarterly Evaluation

  • Design Lab 9: Hyperledger Umbra
  • Lab 9 guide
  • Lab 9 support files

Week 21 - Week 22

October 12 - October 26

  • Polish lab guides and support files
  • Update previous deliverables

Week 23 - Week 24

October 26 - November 9

  • Polish lab guides and support files
  • Update previous deliverables
  • Final course syllabus



Week 24 

November 9 - November 13

November 13: Fourth Quarterly Evaluation

  • Project conclusion
  • Final presentation

...

  • Provide theoretical classes materials that support the laboratory classes.
  • Formative evaluation quizzes, e.g., for labs 4, 7, and 9.