Friday, November 20, 2009

Evolution = Find/Replace Fest

I am thinking harder and harder how to make a program highly evolutive. And the core part that keeps me on it is when you have to add a new field operation in the business logic.

These are two typical lines of a conversation about the evolution of a program:
- We want that program to do this new thing.
- Ok, but that program was not created to add that function flexibly.

You can add a patch for it, or you can re-modularize affected sections of the program. This is somewhat related to the "Optimal Vs. Agile" entry. Dividing and Agregating are intertwined, because nobody wants a program with 300 patchs, but there could be some patchs which will be essentially complex to link or adapt inside the original code.

No comments:

Post a Comment