Skip to content

Lab exercise to learn about Continuous Deployment and trunk based development

Notifications You must be signed in to change notification settings

rominonix/learn-country-quiz

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

97 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

example workflow example workflow

Country Quiz

This is an exercise to learn about Continious Deployment, trunk based development and feature flags. Divide into teams of 3 and come up with a team name.

Introduction

You're all employees at the company Initech in sunny California.

Initech

Initech is one of the biggest consultancies when it comes to Javascript programming in the area and has several big clients in it's portfolio. However, the working methods and processes are getting a bit outdated. The R&D department has for a long time been working with extensive feature branching and followed the gitflow branching model. Client projects have been run rather statically with sprints followed by a testing period and monthly releases. There hasen't been any major problems but clients say they want a more dynamic work process with more frequent releases. Apparently many competitors are delivering new features daily in many projects and clients are growing tired of having to wait for the montly release even when they're requesting a really important feature that should be small enough to just launch within a week.

Initech

Company managment have decided they need to "get with the times" and start working with Continious Deployment, trunk-base development and other modern work flows which most of the competitors are now doing anyway.

They have decided that your department should run a pilot project for 1 week to try out this new working methods to see what all the fuzz is about. Therefore you are told to organize into teams of 3 and in parallell work on the same customer project and then in one weeks time compare your experiences with other teams to see if the organization can establish some best practices for how it can work with CD in all upcoming projects. You are allowed to discuss with other teams and help each other out if necessary, but management are interested to see if teams tackle typical CD problems the same ways or if different solutions are possible.

The client project

A major client in the boardgame industry is planning to launch a novelty version of it's best seller Trivial Pursuit. The novelty game will work the same way as the original but questions will only be about contries, flags, and geography. They have hired us to create a small online quiz game with some of the questions from the real game in order to create some buzz in their upcomming social media campaign.

In this online game, two players will play agains eachother answering trivia questions in real time. The hope is that people will start sharing this game and challenge their friends on Facebook and then in the end of the game, we'll show a promotion for the real board game with a discount cupon.

Some of your colleges already started the project last week but they didn't have time to finish it before an old client wanted them back for a high-priority project. However, they left a working prototype of the game which should be a good starting point for you.

Let's go

So divide into teams of 3, make use of all your knowledge from previous projects and let's go.

About

Lab exercise to learn about Continuous Deployment and trunk based development

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • JavaScript 58.6%
  • CSS 37.8%
  • HTML 3.6%