Our World Class Development Process is based on thirteen Agile techniques…

Each of the following complements the others providing a responsible, successful approach to any project we tackle.



Test Driven Development

Programmers write tests while they write code – actually before they write the production code. All tests must pass before finalizing changes thus maximizing project success.

Planning Game

Combine business priorities with technical estimates to rapidly determine scope of the next release for best ROI.

Small Releases

Produce a simple system quickly, then release new, increasingly feature rich versions often to provide value early and incorporate feedback early.

Customer Tests

Demonstrate features are complete per the customer’s tests ensuring absolute customer satisfaction.

Whole Team

Include an on-site customer, manager, and programmer as team members to ensure clear understanding of needs and decisions.

Continuous Integration

Integrate and build the system several times a day after completion of each task to provide a continually working system.

Simple Design

Design every component as simply as possible and remove unneeded complexity when discovered to minimize future fragility and error.

Pair Programming

Two programmers work together on all new code to maximize quality, distribute knowledge, and maintain working focus.

Refactoring

Programmers restructure the system without changing functionality to remove duplication, simplify, add flexibility, or improve clarity. Combined with Test Driven Development, high code quality is ensured.

Collective Ownership

Any programmer can change code anywhere in the system thus maximizing system knowledge and quality reviews.

Coding Standards

Programmers use the same coding standards to ensure ease of communication and utmost quality.

Sustainable Pace

Strive for a 40 hour workweek never working overtime a second week in a row to promote responsible productivity.

Metaphor

Use a simple, shared analogy of how the whole system works to guide development and simplify communication among developers and customers.

Edit