Chapter 8 describes the process of maintaining blockchain apps after deployment. Create a new thread, choose one aspect of app maintenance from the material in chapter 8, and describe the life cycle problem and how addressing your chosen problem in a blockchain environment differs from a traditional application development life cycle. Then think of three questions you’d like to ask other students and add these to the end of your thread.
BLCN 532
Blockchain development
Chapter 8
Professor Michael Solomon
Chapter 8
• Agility in a Blockchain Network
• Defining the promotion
process
• Configuring the continuous
integration pipeline
• Protecting the source
control
• Updating the network
• Designing team structures
for a consortium
Smart contract considerations
Defining
the
Promotion
Process
Integration layer considerations
Promotion process overview
• Git issues to record new features or bug
fixes
• Git branches to isolate proposed
modifications
• Git GPG to sign every commit and tag
• Pull requests to enforce governance
Promotion Process
Every code change is tied to a change request
Developers sign their modification using GPG
Promotion
Process
Constraints
Master branch integrity is preserved by the
pull request process
The pipeline builds and tests the code for pull
requests
The pipeline publishes the smart contract to
the artifact repository when changes are
tagged
Each organization receives a notification when
a new version is available
Configuring a Continuous
Integration Pipeline
Customizing
Customizing the pipeline
process
• Local build
• Configuring Travis CI
• Customizing the pipeline
Publishing
Publishing the smart
contract package
Makefile Structure for Build
Setting the smart
contract code
owners
Configuring
Your Git
Repository
Protecting the
master branch
Commit
signing and
validation
Local
works
tation
GPG
Testing the End-to-end Process
Creating
Creating a new
transaction
• Pushing a commit to
the master branch
• Pull requests with
unsigned commit
Adding
Adding test cases
• Pull requests with a
signed commit
• Adding a unit test
Releasing
Releasing a new
version
Updating the Network
1
Notifying the
consortium
2
Upgrading the
business network
• Downloading a new
version
• Updating the business
network
Summary
• Agility in a Blockchain Network
• Defining the promotion
process
• Configuring the continuous
integration pipeline
• Protecting the source
control
• Updating the network
• Designing team structures
for a consortium