Skip to content

Instantly share code, notes, and snippets.

@alwinmark
Last active December 26, 2015 05:39
Show Gist options
  • Save alwinmark/7102473 to your computer and use it in GitHub Desktop.
Save alwinmark/7102473 to your computer and use it in GitHub Desktop.

B-Events Code Kata

some fiction to set the mood (skip in favor for facts fast)

Some crazy management guy at Unbelievable Genius Org (UGO) has decided that the sanest thing would be to reboot their platform / services part. Money is not an issue ;) .

So it was proclaimed that the services should be rewritten from scratch, with the software design and language of your choosing.

To get things going here are the first 3 business transaction that need to be reimplemented.

business transactions

Create Company

A Company contains:

  • id
  • name
  • credit card number

Credit Card Validation

When a new company is created the services validates the credit card number.

  • only even credit card numbers are valid

Create Demo Cloud

When a new company is created we also need to create a Demo Cloud for that Company. Demo Clouds are virtual and only for testing and getting a feeling.

A Demo Cloud has:

  • id
  • owner

Create Live Cloud

When a Companies credit card is valid a new Live Cloud for that Company is created.

  • id
  • owner

hints

  • This obviously aims to build a service oriented architecture ;).
  • For the sake of practical implementation skip all validation and state storing except for the highly secure and correct credit card validation ;) .
  • Some messaging and queue system would be lovely to see :) .
  • Don't hesitate to use different processes for the different business transactions.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment