Development methodology can be said to be selected based on perceived costs.
In XP the cost of change is considered to be low so there's no benefit
from using any other strategy other than evolution/refactoring.
There is some line where this equation is not used though, for example,
a framework like smalltalk is not evolved rather it is adopted wholesale
without question.
In large projects this assumption do not apply. The cost of getting
changes through the system (management, documentation, manufacturing,
support, retraining, QA, etc) is high so a different approach is required.
The training aspect is often overlooked. If 100 hundred developers are
used to doing something a certain way that is a lot of inertia. Refactoring
this experience out of existence can be extremely expensive.
Now let's consider any project and let's consider cost and benefit.
A properly done framework, which means one based on experience,
which means one that has evolved over time on possibly many projects,
has a favorable cost benefit ratio. The cost is low because the framework
as been tried and has been found true. The benefit then is potentially
very high because developers on project can use the framework and are
very productive. Much like many XPers use the smalltalk framework and
are very productive. The failure of most frameworks is when they are
made by people on a new project who have no experience in the domain.
How anyone would expect this to work is beyond me so it is considered
a strawman argument against frameworks.
In our favorite logging example if you have not done a logging system
before then the risk is high so that the XP assumptions rule.
But if you have worked on several projects there is almost no risk at
all. It will work. Certainty is 100% just like the
SmalltalkFrameworkIsOk.
It seems irrational to use one strategy regardless of circumstance and
used it inconsistently at that. When walking down a trail i don't
have to take every path to know it's not my destination, sometimes
i do know where i'm going and can pick the right path the first time.