Re: Difference between Design and Architecture
- From: Robert Martin <unclebob@xxxxxxxxxxxxxxxx>
- Date: Mon, 29 May 2006 13:07:46 -0500
On 2006-05-18 13:31:03 -0500, Bjorn Reese <breese@xxxxxxxxxxxxx> said:
Cody Powell wrote:
2. But we have learned that the kind of unit tests and acceptance[...]
tests produced by the discipline of Test Driven Development are much
more important to flexibility, maintainability, and scalability.
-- Robert Martin,
http://www.butunclebob.com/ArticleS.UncleBob.ArchitectureIsaSecondaryEffect
Why is TDD much more important to scalability than architecture?
Why is scalability a problem? Because when you attempt to increase the capabilities of an application you must decouple parts of it that you hadn't thought about decoupling previously. You must break the application into pieces that can be positioned approriately within a larger and faster physical architecture.
When you break the software up like this, you also break the software. You introduce bugs that can be very hard to find. However, if you have written the application using TDD; you have tests that can show you when you have broken functionality. Thus the tests allow you to make the changes with full knowledge of the side effects.
The tests are the lubricant that make the changes much more reliable. The tests also allow the changes to be made incrementally. Thus TDD is a major aid to scalability.
--
Robert C. Martin (Uncle Bob) | email: unclebob@xxxxxxxxxxxxxxxx
Object Mentor Inc. | blog: www.butunclebob.com
The Agile Transition Experts | web: www.objectmentor.com
800-338-6716 |
.
- References:
- Difference between Design and Architecture
- From: Ravi Shankar Nair
- Re: Difference between Design and Architecture
- From: Nick Malik [Microsoft]
- Re: Difference between Design and Architecture
- From: Cody Powell
- Re: Difference between Design and Architecture
- From: Bjorn Reese
- Difference between Design and Architecture
- Prev by Date: Re: Difference between Design and Architecture
- Next by Date: Re: sequence diagram for observer pattern
- Previous by thread: Re: Difference between Design and Architecture
- Next by thread: Re: Difference between Design and Architecture
- Index(es):
Relevant Pages
|