Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
[epf-dev] RE: epf-dev Digest, Vol 18, Issue 16

I think, getting too exited about OpenUp will end in tears. As EPF composed is a tool for tailorable process development you might find you will have to rework elements to allow for better plug and play rather than trying to commit to a coup de grace one process fits all approach.


From: epf-dev-request@xxxxxxxxxxx
Reply-To: epf-dev@xxxxxxxxxxx
To: epf-dev@xxxxxxxxxxx
Subject: epf-dev Digest, Vol 18, Issue 16
Date: Mon, 18 Jun 2007 13:58:20 -0400 (EDT)

Send epf-dev mailing list submissions to
	epf-dev@xxxxxxxxxxx

To subscribe or unsubscribe via the World Wide Web, visit
	https://dev.eclipse.org/mailman/listinfo/epf-dev
or, via email, send a message with subject or body 'help' to
	epf-dev-request@xxxxxxxxxxx

You can reach the person managing the list at
	epf-dev-owner@xxxxxxxxxxx

When replying, please edit your Subject line so it is more specific
than "Re: Contents of epf-dev digest..."


Today's Topics:

   1. Is TDD a poison pill? (Nate Oster)
   2. Re: Reminder General package call Monday June 18 9 am
      (Ricardo Balduino)
   3. Notes - Todays General/Overarching Call (Jaana Nyfjord)
   4. ... and the notes! (Jaana Nyfjord)


----------------------------------------------------------------------

Message: 1
Date: Mon, 18 Jun 2007 12:03:20 -0400
From: "Nate Oster" <noster@xxxxxxxxxxxxx>
Subject: [epf-dev] Is TDD a poison pill?
To: "Eclipse Process Framework Project Developers List"
	<epf-dev@xxxxxxxxxxx>
Message-ID:
	<5E7FB6092A60DD4F80DF50239C561B15023C55B7@xxxxxxxxxxxxxxxxxxxxxxxxxx>
Content-Type: text/plain; charset="us-ascii"

OpenUP is a minimalist instance of the Unified Process for small teams
that want to use agile practices.



So, there's no question that in the latest OpenUP (soon to be 1.0),
Test-Driven Development (TDD) is a core part of the Development
discipline right out of the box.  That is, I think it's fair to say, "If
you're not doing TDD, you're not doing OpenUP."  At least, you're not
doing the Capability Pattern: Develop Solution that ships with OpenUP
(you could easily tailor TDD or even unit testing out of OpenUP if you
wanted to, but WHY?!).



Lately, I've been wondering if TDD is "too much to start with" for many
organizations that are just adopting agile practices, and look to OpenUP
as a low-ceremony process to start with.



Interestingly, when I brought this up with Brian Lyons, he pointed out
that the latest IEEE Software magazine is dedicated to several articles
about TDD, including one about extending the practice to database
refactoring by Scott Ambler (an EPF committer).  It's clear that the
practice is proven, well understood, produces immediate benefits, and is
increasingly mainstream.



However, I've still seen a lot of organizations we consult with
struggling to get started with unit testing, let alone TDD.  I took an
informal survey at Number Six Software of how many projects that call us
already have any real unit testing coverage.  We think it's less than 1
in 20.  I acknowledge that we're consultants, so by the time a client
calls us in, a project has usually been troubled for a while, so that
number is probably below the industry average.  Still, don't we want
troubled projects to benefit from OpenUP?



I've talked to a lot of otherwise "hard core developers" over the last
two years, including a few committed JUnit zealots, who just couldn't
bring themselves to embrace "test first."  Why?  Almost invariably the
answer is, "It's too hard to anticipate all the tests ahead of time."
One developer, whom I respect, recently noted that, "I spent a bunch of
time writing tests, trying to design the object as I went, but not
writing any production code.  When I finally started writing production
code, I had to constantly change the tests.  I don't know, it just
seemed like a waste of time.  Maybe I'm doing it wrong.  It's just
easier to write the tests after I get the production code working."
Though he's a strong unit testing advocate, he prefers developer tests
to prevent regressions and document the expected behavior of the code,
not as a part of the incremental process of writing production code in
the first place.



I suspect from James Shore's often-cited 2005 blog post, "Microsoft gets
TDD completely wrong," that many other folks have misunderstood TDD to
mean, "write ALL your tests first."  (
http://www.jamesshore.com/Blog/Microsoft-Gets-TDD-Completely-Wrong.html
)  By contrast, OpenUP points out that "TDD = TFD + refactoring."  That
is, it fully embraces the standard notion of the TDD workflow as "red,
green, refactor":



You write a few lines of failing test code, make it pass, refactor (with
passing tests), and repeat.



*** So my question is: Is TDD a poison pill in OpenUP?  Will
organizations that would otherwise get all the agile "good stuff" and
the structured lifecycle of the unified process fail to adopt OpenUP
because TDD is "too hard?" ***



I don't think so, and here's why:



1)       OpenUP makes the micro-incremental, "red-green-refactor"
workflow of effective TDD explicit in the Develop Solution pattern.  If
you're following OpenUP's process description here, you can't possibly
make the "write all the tests up front" mistake.  These ideas are
further reinforced by the Guidance.

2)       For new projects TDD is the best way to introduce effective
developer testing in the first place.  TDD creates a tight feedback
loop: write a minimal failing test, write the minimum production code to
make it pass, refactor if needed, repeat. This takes minutes, not hours
or days.  That means that developers create good unit test coverage AS
they develop production code, dramatically reducing the vicious cycle of
"finishing" a module of production code, but "never having time" to
write unit tests.  TDD makes unit tests part of a developer's daily
routine, not an afterthought.

3)       For existing projects with low test coverage that are just
adopting OpenUP, the explicit TDD practice helps them to incrementally
introduce better unit test coverage.  This actually lowers the
barrier-to-entry for projects that have struggled with unit tests in the
past.  Just start with tests for new production code and changes.



Sorry for the long post.  What do you all think?



Thanks!

Nate Oster

-------------- next part --------------
An HTML attachment was scrubbed...
URL: https://dev.eclipse.org/mailman/listinfo/epf-dev/attachments/20070618/be36372d/attachment.html

------------------------------

Message: 2
Date: Mon, 18 Jun 2007 09:05:56 -0700
From: Ricardo Balduino <balduino@xxxxxxxxxx>
Subject: Re: [epf-dev] Reminder General package call Monday June 18 9
	am
To: Eclipse Process Framework Project Developers List
	<epf-dev@xxxxxxxxxxx>
Message-ID:
	<OFE16BDA03.8F2F7B6F-ON882572FE.00586263-882572FE.00586F04@xxxxxxxxxx>
Content-Type: text/plain; charset="us-ascii"

You are right. I'm waiting on the line for someone to join.

Cheers,

Ricardo Balduino
Senior Software Engineer

IBM Rational Software (www.ibm.com/rational)
Eclipse Process Framework (www.eclipse.org/epf)




"Jaana Nyfjord" <jaana@xxxxxxxxx>
Sent by: epf-dev-bounces@xxxxxxxxxxx
06/17/2007 08:01 PM
Please respond to
Eclipse Process Framework Project Developers List <epf-dev@xxxxxxxxxxx>


To
epf-dev@xxxxxxxxxxx
cc

Subject
[epf-dev] Reminder General package call Monday June 18 9 am






Hi everyone,

I assume that we are back to the original schedule and telephone numbers
from Monday June 18th.

Proposed agenda for the General/overarching issues
* Check current status
* Verify/close resolved bugs
* Other issues

Cheers
Jaana Nyfjord

_______________________________________________
epf-dev mailing list
epf-dev@xxxxxxxxxxx
https://dev.eclipse.org/mailman/listinfo/epf-dev

-------------- next part --------------
An HTML attachment was scrubbed...
URL: https://dev.eclipse.org/mailman/listinfo/epf-dev/attachments/20070618/df843aa7/attachment.html

------------------------------

Message: 3
Date: Mon, 18 Jun 2007 19:52:03 +0200 (CEST)
From: "Jaana Nyfjord" <jaana@xxxxxxxxx>
Subject: [epf-dev] Notes - Todays General/Overarching Call
To: epf-dev@xxxxxxxxxxx
Message-ID: <48236.24.80.155.80.1182189123.squirrel@xxxxxxxxxxxxxx>
Content-Type: text/plain;charset=iso-8859-1

Hi,

Please, find enclosed that notes from todays call.

Summary M9:
Total: 16 open bugs
Un-assigned: 2 bugs (bug 145670, bug 192489)
Deferred to M10: 4 bugs

NB. There is an additional meeting proposed for the lifecycle diagram
tomorrow at 2 pm (PDT).

What call numbers and codes should we use?

Cheers
Jaana



------------------------------

Message: 4
Date: Mon, 18 Jun 2007 19:57:58 +0200 (CEST)
From: "Jaana Nyfjord" <jaana@xxxxxxxxx>
Subject: [epf-dev] ... and the notes!
To: epf-dev@xxxxxxxxxxx
Message-ID: <48306.24.80.155.80.1182189478.squirrel@xxxxxxxxxxxxxx>
Content-Type: text/plain; charset="iso-8859-1"

Sorry, forgot the notes. Here they are!

/JaanaN
-------------- next part --------------
A non-text attachment was scrubbed...
Name: June182007OpenUPGeneral_OverarchingTelecon.doc
Type: application/msword
Size: 103424 bytes
Desc: not available
Url : https://dev.eclipse.org/mailman/listinfo/epf-dev/attachments/20070618/ead533c9/June182007OpenUPGeneral_OverarchingTelecon.doc

------------------------------

_______________________________________________
epf-dev mailing list
epf-dev@xxxxxxxxxxx
https://dev.eclipse.org/mailman/listinfo/epf-dev


End of epf-dev Digest, Vol 18, Issue 16
***************************************

_________________________________________________________________
Advertisement: ninemsn Travel - Hot deals, travel ideas & Lonely Planet guides. http://ninemsn.com.au/share/redir/adTrack.asp?mode=click&clientID=791&referral=hotmailtagline&URL=http://travel.ninemsn.com.au



Back to the top