This is part of the philosophy behind Extreme Programming (XP), which was created by Kent Beck in 1996 and published in 1999. Beck sought a more efficient approach to building software through communication, simplicity, feedback, and courage.
Wake introduced Gene Codes engineers to the burgeoning Agile software development method in November 2001. The process aims to create an environment of increased interaction and communication within the programming team by scheduling frequent releases of software, tempered by constant testing and feedback from its users. Testing is done before, during, and after the code is written to ensure the same bugs don't surface twice. This results in a legion of automated tests, which serve as a safety net.
Two programmers produce code together on one computer. "The goal is to make sure everything gets code-reviewed as you go and to keep design ideas flowing," Wake says. "You'll rarely see people working by themselves."
The system is rebuilt many times per day. A test for a particular "story" (which describes a piece to be developed) or feature is written before the story itself, and the iteration is published so fellow programmers can see it. Each new story has to pass every previous test before running.
Wake uses the analogy of a manufacturing line to explain the difference between traditional programming and XP. "Someone develops a muffler and someone else develops the body, and at the end they screw all the pieces together, but from start to finish how long do the parts sit on the line? We're having everyone swoop under the car and build it, then build the next car, all in parallel with each other, in a short bit rather than a long pipeline of stuff coming out."
Wake, who wrote the book Extreme Programming Explored just before Sept. 11, spends one week per month at Gene Codes. "No one is all that sure what it means for XP to be in its full glory," he says. "We're dealing with quite a bit of change. That puts a lot of pressure on a project, to keep systems working all the time and be open to changes."
Wake credits the XP approach in allowing Gene Codes to deliver weekly updates of M-FISys to the OCME. "We're prepared to deliver every week, no matter what we accomplished last week. We realized that they needed new things all the time; they couldn't wait six months for what they needed today."
Back to Soul Searching