By the work one knows the workmen.
Jean De La Fontaine
Pair Programming
Two heads are better than one, right? We write code in teams of two craftsmen. We pair program for many reasons, among them are: quality assurance, knowledge distribution amongst the team. At 8th Light, we also don't have teams that are less than two developers. Software is written better when there is a diversity of thought in which is expressed by the team members.
TDD
Test driven development is important at 8th Light, because it is how we make sure all the code works. Test-driven development is when you write a test before you write the code. For instance, we write a test, watching it fail, then writing the code to make it pass. By running these tests frequently, we are able to be confident that the code works as expected.
Acceptance Testing
Acceptance tests are intended for the benefit of both the developers and the customer. They serve as an opportunity for dialogue between the stakeholders of the system. The acceptance tests demonstrate the behavioral expectations. This is explained in detail here.
Iteration Meetings
Iteration meetings are the heart of an 8th Light project, introducing new stories into the process on a set schedule. There are three stages to an iteration meeting: demonstrations, estimations, and the planning game. This is explained in detail here.
Continuous Integration
Since we are always working on teams, we need to integrate the code from all of the team members. We use source control management tools to help us with the integration. We also run all of our unit and integration tests. This is another quality assurance technique we use to insure that everything is working or rapid feedback when something is broken.
