Project Description
Test your code-cracking prowess with Mastermind, "the challenging game of logic and deduction." The codemaker sets a hidden code of four colored pegs. Your mission: replicate the code in 10 moves or fewer.

Based on the old paper game Bulls and Cows


This is a small application that could be designed and developed in very little time however the main aim of this project is to practise a number of development techniques and tools on a small greenfield project without any cost to anyone but myself. With practice making perfect Mastermind, although small and simple, should provide enough project scope to apply and understand numerous techniques. Placing it on Codeplex will hopefully allow other developers a chance to learn from my successes and mistakes.

The following development techniques and tools will be used during this project:

* Agile based development (as best as a single developer can apply them) i.e. User Stories, Iterations, and Release Plans
* Growing the design by applying SOLID principles
* Distributed version control using Mercurial
* Behaviour Driven Development (BDD) using StoryQ
* which implies Proper Test Driven Development (TDD) using MbUnit and RhinoMocks
* Dependency Injection using Ninject IoC
* Windows Presentation Foundation

The Mastermind procect was selected because it appears in the RSpec book found on the pragmatic bookshelf. Having practised with BDD in Ruby it's time to reapply the knowledge to a .NET language. I hope you enjoy the game and it's source code.

Last edited Jul 10, 2010 at 4:47 PM by Derek_Smyth, version 10