The document discusses the origins and intended meanings of phases in the waterfall software development lifecycle (SDLC) model. It claims the terms "Test Driven Development" and "Development Driven Testing" were misunderstood, while the intended phases were "Development Driven Development" and "Test Driven Testing". In "Development Driven Development", developers focus on efficient coding without interruptions from testing. In "Test Driven Testing", testers can efficiently test the completed product without defects being fixed. The document argues the original intentions have been misinterpreted and the correct terms should be used.
1 of 2
Download to read offline
More Related Content
Major_SDLC_phases
1. Major SDLC phases. p. 1 of 2
Presented at Waterfall 2006 conference www.waterfall2006.com
Major SDLC phases: Development Driven Development and Test Driven
Testing
Yury Makedonov,
Certified Waterfall Master
In my presentation Major SDLC phases: Development Driven Development and Test Driven Testing I
will clarify the meaning of the term "Test Driven Development". My concern is about the negative impact
of this term on the current status of software development.
I believe that everything started with a misread phrase. The originators of the term Test Driven
Development apparently read a not so legible copy of the book of the founding fathers of the waterfall
SDLC approach. This copy was circulated so widely and was read by so many people that the text was
partially worn down.
In will discuss the original and unobscured ideas of the founding fathers of the waterfall approach on the
interaction between developers and testers (and more broadly between developers and customers),
and will suggest how to fix some improperly used terms.
When the original Waterfall Committee proposed the Best Practices of Software Development, they
discussed the following four possibilities:
1) Development Driven Development
2) Development Driven Testing
3) Test Driven Development
4) Test Driven Testing
Later on this "Magic Quadrant" approach was misunderstood and successfully misused by the Gartner
Group. However, the Waterfall Committees true intentions were to understand and to select the best
possible balance between the autonomy of a team and the interactions between the development group
and the testing group (and more broadly between developers and customers). They made specific
proposals to limit scope creep and communication overhead, thus increasing the overall efficiency of the
development process. In particular, they understood that two of these options required a lot of
communication between developers and testers (customers):
2) Development Driven Testing
3) Test Driven Development
So they made a decision to focus on the purest forms:
1) Development Driven Development
4) Test Driven Testing
During the phase of "Development Driven Development", developers can concentrate on efficient
development, as they are not interrupted by the sometimes unclear and irreproducible "defect reports"
submitted by testers.
When the product is finally completed it can be thrown over the wall to the next phase of "Test Driven
Testing".
2. Major SDLC phases. p. 2 of 2
Presented at Waterfall 2006 conference www.waterfall2006.com
In the "Test Driven Testing" phase testers can do efficient testing without any interruptions by frequent
defect fixes of the development team. This phase is very efficient because testers can do their best
when they have a stable application to test and are not required to shoot a moving target.
These were the original ideas from the Waterfall bible, which are still valid today. (The exact name of
this book was unfortunately lost sometime in the previous century, although some people believe that it
was "Managing the Development of Large Software Systems" written by Winston Royce.).
Clearly, we have to stop using the incorrect term "Test Driven Development", which is detrimental to the
success of the waterfall SDLC, and start using only the officially approved phase names "Development
Driven Development" and "Test Driven Testing".