← Back to context

Comment by mannykannot

7 years ago

'Agile' has become such an overloaded and qualified term that it is almost meaningless, or even a source of confusion between people for whom it has different implications. If you are asking whether something is or is not agile, you are probably asking the wrong question.

You are right about the frequency of jamming new features into an existing architecture whether it fits of not, but, if the feature makes sense (which is not a given), then a bad fit shows that there is something inadequate about the current architecture. This does not necessarily mean that it is wrong for its current purpose, but regardless of how you got into the situation, you now have a choice: you can redesign the architecture and re-implement the affected parts (aka refactor), or you can create technical debt, and the former has a much greater chance of success if you separate it from anything that changes features.