I don't understand why in his blog post Sandro says the following:
@sandromancuso @RonJeffries just to make sure I understand your point: do you consider the 4Rules PART of TDD?
@sandromancuso @RonJeffries I'm asking because I understand them as one of the many great recommendations from XP. Something you combine with TDD.
@sandromancuso @RonJeffries and I'll believe in whatever you say, since you were at the core of it. ;)
@RonJeffries @sandromancuso no they are the rules of simple design and nearly any design difficulty shows up as a problem with one or more of them
@sandromancuso @RonJeffries OK. I agree with that. Just wanted to make sure they are not part of TDD but definitely important during refactor.
@philip_schwarz @sandromancuso @RonJeffries The link between TDD and 4RSD is step four: "If you ever see the chance to make the design simpler, do it." 2/4
@philip_schwarz @sandromancuso @RonJeffries XP defines the 'best' design as the 'simplest' design that runs all the test cases 3/4
@philip_schwarz @sandromancuso @RonJeffries XP defines 'simplest' as the following four constraints, in priority order: 4/4
Sandro didn't respond. What is also strange is that Ron Jeffries (who is an XP authority) replied to Sandro's question with a 'no'.
Philip
--
Matteo, what do you think was not enough in your code and where the tdd process let you down?
What I saw was a lack of architecture. Meaning that classes were good enough in themselves but didn't work very well together for the actual userstories. In one of the teams, I tried to point this out writing scenario tests, just to show how much wiring and duct taping was needed to make things work.
Thinking about it, there was also a lot of "unrequested flexibility", so probably Yagni was also forgotten.
Do you think it was something similar to what happened to your team?
Uberto
Matteo, what do you think was not enough in your code
and where the tdd process let you down?
If that's the case, what is your answer to obtaining the required knowledge and experience. What sources of information you seek, how you gain that experience?Hi Matteo,Can you say that in your particular project you didn't have the knowledge and experience to avoid the problems you described?