Skip to content

IBM/agile-tutorial

Repository files navigation

Agile development tutorial

A tutorial for agile development of cloud applications.

Introduction

This tutorial illustrates typical workflows and tools in agile development, addressing key concepts, learning key technologies and going through the full cycle of SCRUM development. By the end of this tutorial everyone should be able to develop cloud applications collaboratively using

  • GitHub
  • ZenHub
  • IBM Cloud
  • Travis CI
  • Pull Requests
  • Test coverage
  • SCRUM methodology
  • Visual Studio Code
  • Continuous Deployment
  • Continuous Integration
  • Cloud Foundry applications

Prerequisites

  • Internet access
  • A computer running either MacOS, Windows or Linux

Estimated time

From 1h to 2h, depending on the familiarity of the reader with the concepts.

Steps

  1. Read Installing developer tools and environments and follow the steps.

    1. Setting up GitHub environment
    2. Setting up Travis CI
    3. Setting up ZenHub
    4. Installing Visual Studio Code
  2. Read Understanding agile development practices and frameworks and follow the steps.

    1. Having SCRUM meetings
    2. Using the "GitHub Flow" branching model
    3. Automating integration, delivery and deployment
  3. Read Exploring the Python application and follow the steps.

    1. Cloning the repository
    2. Testing the example implementation
    3. Understanding the API resources
    4. Understanding the API services
    5. Understanding the API tests
  4. Read Developing an application collaboratively and follow the steps.

    1. Using Slack to monitor the development cycle
    2. Planning the sprint
    3. Contributing to your branch
    4. Submitting your Pull Request
    5. Tracking status checks
    6. Keeping up-to-date with external
    7. Merging and moving on

Summary

Congratulations, you have now completed a full cycle of collaborative development of a Python application that is continuously deployed to IBM Cloud after every modification. If you want to learn more ways to automate the cloud deployment of you application or learn more about Agile methods, take a look at the links below.

Related links