-=//mawi.org//=-
 Monday, October 02, 2006

TDD offers benefits in terms of both project/work dynamics and software quality. Some benefits are obvious (feedback from tests) but most are not (small steps lead to a higher frequency feedback loop and more control). One view of this is that some benefits come as a by-product.

 

TDD / BDD (I'm going to use BDD from now on, substitute as you see fit) gives testability as by-product. This is basically the view expressed by Jungmayr.

 

The simplicity of the BDD method makes it general, flexible and adaptive. The flipside to that flexibility is that there is ample room for misunderstanding.

 

Does BDD prescribe testability? No. Indirectly, your designs *should* become testable if developed using BDD. However, there is no "step four" (after RGR) that says "review code for testability or maintenance issues and fix them". It is often not part of refactoring since testability affects design and "unit" (usually class, YMMV) functionality may indeed be altered.

 

Instead, BDD infuses many testability, maintainability and other factors of high quality software, through its focus on testing one small thing at a time, "small-scale tests", and eliminating duplication. In order to test just that one thing you must figure out a way to replace what it interacts with. You must be able to manipulate the link between them; you must make the dependency "loose". The consequence of this is that all classes will depend on each other loosely. They will not have hardwired dependencies.

 

Hardwired dependencies are when class A is coded to always use class B. This may be since it A itself creates B or uses static methods of B.

 

This makes the code less testable since there is no direct way to test a part of the system, by manipulating the dependencies. We have to use other means, via a more complex test harness, and/or tools.

 

So testability comes as an indirect result. But can we say it is a byproduct? Is it true that this is not a systematic way to get testability in our code?

 

Even though most misunderstanding is a product of ignorance, would there be a way to make TDD more explicit (in how benefits are addressed) by design? I am unsure, I agree with the idea that understanding in the form of realization is often impossible to transfer. It has to be experienced to materialise. Often, the best that can be done is offer guidance and direction, a map to where the realization of knowledge lies. The question then becomes if the benefits require such realization or can be reduced to following a systematic approach.

10/2/2006 12:48:57 PM (Romance Daylight Time, UTC+02:00)  #    Comments [1]  |  Trackback
Related Posts:
Craftmanship at AgileOresund
Influences for team morale
Øredev 2006 has started!
Benefits of development-maintenance rotation, part 2
Tools instead of testability
Wording matters - Lost in the forest

Tracked by:
http://9om-information.info/09662023/country-music-museum-nashville.html [Pingback]
http://9oa-information.info/37248348/index.html [Pingback]
http://9om-information.info/21628368/federal-business-loan-for-minority.html [Pingback]
http://9ol-information.info/76770206/application-form-for-national-youth-service... [Pingback]
http://9oa-information.info/99870252/index.html [Pingback]
http://9oj-information.info/66342168/blues-brothers-dance-video.html [Pingback]
http://9ob-information.info/89702658/index.html [Pingback]
http://9ow-information.info/29691107/index.html [Pingback]
http://9se-information.info/60745908/mom-pay.html [Pingback]
http://9rb-information.info/24515286/france-food-traditional.html [Pingback]
http://9sd-information.info/57591211/index.html [Pingback]
http://9rl-information.info/88486734/index.html [Pingback]
http://9rp-information.info/67120882/install-tv-aerial-network.html [Pingback]
http://9sj-information.info/58386053/index.html [Pingback]
http://9rs-information.info/64228691/2-line-phone-fax.html [Pingback]
http://9rs-information.info/31673974/health-store-cranberry-seed-oil.html [Pingback]
http://9rb-information.info/18243046/afs-credit-card.html [Pingback]
http://9uaai-free-porn.info/50755002/index.html [Pingback]
http://9uaaj-free-porn.info/30090621/penis-diseases-photos.html [Pingback]
http://9uaai-free-porn.info/36502961/index.html [Pingback]
http://9tr-free-porn.info/62476338/index.html [Pingback]
http://9uaah-free-porn.info/02439727/index.html [Pingback]
http://9uabd-free-porn.info/72218340/jenniferlovehugetits.html [Pingback]
http://9uaat-free-porn.info/88666780/different-kinds-of-puppies-with-pictures.ht... [Pingback]
http://9uaao-free-porn.info/40878368/illegal-lolitas-porn-child-amadora.html [Pingback]
http://9uadm-free-porn.info/42551246/index.html [Pingback]
http://9uace-free-porn.info/51157319/leah-video-big-brother.html [Pingback]
http://9uadj-free-porn.info/69412004/index.html [Pingback]
http://9uaeg-le-informazioni.info/78980067/index.html [Pingback]
http://9uafa-le-informazioni.info/79509832/index.html [Pingback]
http://9uafm-le-informazioni.info/73856107/free-watch-video-film.html [Pingback]
http://9uaei-le-informazioni.info/48252954/index.html [Pingback]
http://9uafg-le-informazioni.info/75137750/index.html [Pingback]
http://9uafm-le-informazioni.info/33686558/roma-istituto-religiosi.html [Pingback]
http://9uafk-le-informazioni.info/57527058/index.html [Pingback]
http://9uafe-le-informazioni.info/91358327/andare-auto-bulgaria.html [Pingback]
http://9uagn-le-informazioni.info/01408255/loom-cafe-como.html [Pingback]
http://9uaho-le-informazioni.info/99055110/index.html [Pingback]
http://9uahs-le-informazioni.info/05045205/index.html [Pingback]
http://9uaht-le-informazioni.info/79419178/index.html [Pingback]
http://9uahk-le-informazioni.info/87963833/index.html [Pingback]
http://9uahj-le-informazioni.info/48479733/combattimento-video-dogo-argentino.ht... [Pingback]
http://9uahr-le-informazioni.info/43664660/enciclica-dio-e-amore.html [Pingback]
http://9uaid-free-porn.info/42915218/index.html [Pingback]
http://9uaii-free-porn.info/02316741/index.html [Pingback]
http://9uaii-free-porn.info/66230251/index.html [Pingback]
http://9ualc-free-porn.info/68839800/index.html [Pingback]
http://9uakl-free-porn.info/75844800/nz-haka-video.html [Pingback]
http://9uali-free-porn.info/46070394/celebrity-pregnant-nude-photos.html [Pingback]
http://promocija.com.hr/promocija.com.hr/includes/js/pages/80687875/compare-viag... [Pingback]

10/16/2006 12:13:59 PM (Romance Daylight Time, UTC+02:00)
Hi Marcus,

I’ve granted you developer access to NSpecify. I’ve also removed all the MSTest references and replaced them with NUnit. Let me know if you have any problems.

What where you thinking of doing to integrate with NUnit?

Cheers,
Maruis
Name
E-mail
Home page

Comment (HTML not allowed)  

Enter the code shown (prevents robots):