Roguelike Iterative Test-Driven Development in Java
This is the introduction and index page for a work-in-progress series of articles applying the Iterative and Test-Driven development models to a Roguelike game. Each article explores one step of the development process accompanied by a concrete example: a Java Roguelike project.
Overview
Iterative development is a technique used in software development whereby the requirements, design, implementation, testing and analysis activities are repeated multiple times throughout the development life cycle. Typically at the end of each iteration a stable, usable product will be produced. This is a natural fit for the Roguelike development scene as since most Roguelike games are under continuous development.
Test-Driven Development is an implementation methodology that aims to ensure the correct and repeatably demonstrable implementation of requirements. With this methodology the design is first implemented at the interface level with no concrete implementation. Then the functional requirements are translated into unit tests, all of which should fail. Then concrete implementations of the interfaces are created and tested until all test cases pass.
The intention of this series is to demonstrate the process, discuss design and implementation techniques that help apply these methods to the Roguelike problem space and finally to produce a working example project. The source code for this project will be published in a Google Code SVN repository. Revision tags for each article will be available so readers may follow along.
Artiles
Roguelike Iterative Test-Driven Development in Java, Part 1 - Initiation
Roguelike Iterative Test-Driven Development in Java, Part 2 - First iteration, the basics