|
view as a single page
by Max Guernsey, III - Managing Member, Hexagon Software LLC
Introduction
If you haven’t read the
introduction for this channel of articles,
I highly recommend you do so now. For those who just need a brief reminder, the point is this:
In each article, we pick a practice used in traditional, program-centric Agility. We deconstruct that practice until we have
reduced it to its essence: principles and values. Then, we put Humpty-Dumpty together again, with data in mind. The result
should be a new practice which fills the same need as the one with which we started but is applicable to persistent data
stores.
In this installment we discuss what I think is one of the most central but least portable practices: evolutionary
software development. Why is this so important? It's the practice that let's designs emerge. Without the ability to change
our design for the better, we have to plan for every kind of variation; if not every variant.
Why does it not work with data? Simple: databases can't evolve.
Related Links:
Introduction to this Series,
DataConstructor,
Emergent Design (Bain)
|