Filed under: Developer
Dev Chair : Faster, better, cheaper with Agile?

A couple of months ago I was fortunate enough to join ThoughtWorks, a company that advocates the use of Agile software development practices (Extreme Programming, Scrum, TDD, etc.) to bring business value to our customers. I have been using Agile practices on my previous project for over three years and it had proved to be highly successful. And ThoughtWorks' experience in this area proves that Agile can also be applied successfully on large enterprise software projects. But can Agile be used on a highly mission-critical software project such as the one for the Orion spacecraft?
Over ten years ago my first programming job was for small software company developing real-time, safety critical software for controlling railway trains. The work we did was the embodiment of the Waterfall model. The system requirements were collected and analyzed. The model was designed and validated. Then we mere programmers set out to write code to realize the model. Huge amount of unit tests and integration tests were created to make sure our code did what the model said it should do. All the while, the project manager kept track of our progress to ensure that, hopefully, we delivered the product on time and on budget.
At first glance, Agile sounds like a good fit with this type of project where requirements are generally very well defined and correctness are paramount. Short iteration and test-driven development will ensure features are delivered often and proved to be working by the unit tests. Continuous integration means there will be fewer surprises as multiple systems are joined up to work with together. The costs of requirement changes will be reduced and can be implemented quickly, rather than in the next version.
But would the world of safety /mission critical software development, dominated by engineers and scientists, be receptive to the less rigid world of Agile development? Would they feel that without the top down approach, its highly structured development process, and the tightly prescribed set of delivery artifacts, the project delivery cannot be guaranteed?
I would love to hear from people who have more recent experiences in this area of software development with regard to Agile. Is it being used, is it being used widely, and how effective it has been?




Edward Tufte is
a master of communication. In particular, his books on visual communication are classics, and should be standard
readings for anyone in the field. Well I happened to find an essay on Tufte's site about PowerPoint, and specifically,
how the
Desktop Earth is an oldie, but a real goodie. It
allowed you to display a globe or map on your desktop that would move according to the time, either keeping your
location centered with light changing to show the relative position of the sun, or showing from the sun's perspective
with the earth rotating or moving by.
So, just how good at time waster games are you? Think you've got the stuff? Well, The World's Hardest Game 2.0 doesn't think you do.
Yes, amazingly, it's possible to have a sequel to a game called "The World's Hardest Game". It doesn't seem logically possible, since if the first one was actually the world's hardest, how could another one come along and share the moniker? It made me doubt the name in the first place. That is, until I tried the game.
The mechanics of the game are very simple. You are a small red square, ...
