Software Development

The team at Menlo writes code using a weekly iterative and incremental approach. Developers employ a test-first/test-driven methodology. This ensures that the code in the current software application build is covered by automated unit tests. The practice also adheres to the tenets of object-oriented design and development. Their code typically has 95% code coverage by unit tests. This test-driven development approach means our projects have a stronger architecture, fewer bugs, and a more flexible system for adding new functionality and its impact on the core product.

All coding is done by pairs of developers working at one computer. New pair partners are assigned weekly, which helps ensure that code is critically reviewed as it is being written. Pairing and re-pairing ensures rapid transfer of knowledge and no singular dependency on a tower of knowledge that could ultimately threaten the success of the project.

Developers work from storycards, each describing a small piece of the software that can be built in a few hours or days, authorized in advance by the project sponsor and rigorously tested by Quality Advocates before it is considered complete. Each storycard focuses on tangible user value rather than coding structure, so the results are concrete and visible to everyone connected with the project. The small, concrete steps represented by storycards mean that project sponsors can be fully engaged in steering the development process, and there are few surprises.