Search the web
Sign In
New User? Sign Up
extremeprogramming · Extreme Programming
? Already a member? Sign in to Yahoo!

Yahoo! Groups Tips

Did you know...
Real people. Real stories. See how Yahoo! Groups impacts members worldwide.

Best of Y! Groups

   Check them out and nominate your group.
Having problems with message search? Fill out this form to ensure your group is one of the first to be migrated to the new message search system.

Messages

  Messages Help
Advanced
Lifecycle tool for extreme programming   Message List  
Reply | Forward Message #118201 of 152332 |
eXtreme Traceability (was Re: Lifecycle tool for extreme programming)

dsrkkk wrote:
> Whatever process we use, we need to track requirements, user stories
> to design and test cases. The traceability provides obviously many
> benefits. Why don't we automate traceabiliy? How can humanly track
> these complex relationships? If we do manually, we may miss something.

The less you work in a waterfa;lish-way, and the more you work in an
agile fashion with very short feedback loops, the less necessary it
becomes to make additional efforts to track/trace requirements.

If I first do lots of requirements, then lots of design, then lots of
code, etc., I have to "put the pieces together". The task I performed to
write requirements was different from the one that did the design which
was different from the one that did code, tests, etc.

If I work in very short cycles (particularly using test-driven
development), then an individual development task looks something like:
- write a single test
- write the code to pass the test and no more
- refactor the code
- commit my changes (Note I might commit my changes before refactoring too).

If, when I commit my changes to the repository, a associate my "commit"
with the name or id of the story the test was for, then I have a single,
fine-grained change-task that went thru the complete cycle of
specification, implementation/design, verification all in a matter of
minutes for a single "commit" and user-story.

Working in such fine-grained full-lifecycled tasks automatically
associates all the elements that were created & updated as part of the
task, which in turn is associated with a user-story. Ta da!!!!
Traceability comes along for the ride almost automatically.

From "Extreme Locality", in the Feb 2004 "Agile Times", pp.37-40
(http://www.agilealliance.com/resources/agiletimes/agile_times_4.pdf)

. . . . . . . . . . . . . . . . . . . .

In Agile methods, we often hear a lot about the importance of
simplicity: simple design; do the simplest thing that could possibly
work; simple tools; minimal documentation ... Much of the documentation
and artifacts created in larger software development methods is for the
sake of capturing historical knowledge: the rhyme and reasons behind why
something is there, or is designed a certain way.

The desire for such information is often used to justify the need for
formal traceability and additional documentation for the sake of
maintainability and comprehension. Some very powerful and sophisticated
tools exist to do this sort of thing. And yet, there are basic
fundamental principles and simple tactics to apply that can eliminate
much of this burden.

WHENCE FORMAL TRACEABILITY?
The mandate for formal traceability originated from the days of
Department of Defense (DoD) development with very large systems that
included both hardware and software, and encompassed many geographically
dispersed teams collaborating together on different pieces of the whole
system. The systems were often mission critical in that a typical “bug”
might very likely result in catastrophic loss of some kind (loss of
life, limb, livelihood, national security, or obscenely large sums of
money/funding).

At a high level, the purpose of formal traceability was three-fold:

1. Aid project management by improving change *Impact* *Analysis* (to
help estimate effort/cost, and assess risk)

2. Help ensure *Product* *Conformance* to requirements specs (i.e.
ensure the design covers every requirement, the implementation realizes
every design element and every requirement)

3. Help ensure *Process* *Compliance* (only the authorized individuals
worked on the things [requirements, tasks, etc.] they were supposed to do)

On a typical Agile project, there is a single team of typically less
than two-dozen. And that team is likely to be working with less than 10
million lines of code (probably less than 1 million). In such
situations, many of the aforementioned needs for formal traceability can
be satisfactorily ensured without the additional rigor and overhead of
full-fledged formal requirements tracing.

Rigorous traceability isn’t always necessary for the typical Agile
project, except for the conformance auditing, which some Agile methods
accomplish via test-driven design (TDD). A “coach” would be responsible
for process conformance via good practices and good “teaming,” but
likely would not need to have any kind of formal audit (unless obligated
to do so by contract or by market demand or industry standards).

Agile methodologies turn the knob up to 10 on product conformance by
being close to the customer, by working on micro-sized
changes/increments to ensure that minimal artifacts are produced (and
hence with minimal reconciliation) and that communication feedback loops
are small and tight. Fewer artifacts, better communication, pebble-sized
change-tasks with frequent iterations tame the tiger of complexity!

. . . . . . . . . . . . . . . . . . . .

For more then you ever wanted to know about the why&wherefore behind
traceability, see "The Trouble with Tracing: Traceability Dissected" at
(http://www.cmcrossroads.com/article/44526)
--
Brad Appleton <brad {AT} bradapp.net>
Agile CM Environments (http://blog.bradapp.net/)
& Software CM Patterns (www.scmpatterns.com)
"And miles to go before I sleep" -- Robert Frost



Fri Mar 24, 2006 6:27 am

bradapp1
Offline Offline
Send Email Send Email

Forward
Message #118201 of 152332 |
Expand Messages Author Sort by Date

... Place cards in three piles: done, not done, in process. What's to miss? What makes you think a computer will see something a human won't see? But if you...
Ron Jeffries
RonaldEJeffries
Offline Send Email
Mar 24, 2006
4:54 am

... The less you work in a waterfa;lish-way, and the more you work in an agile fashion with very short feedback loops, the less necessary it becomes to make...
Brad Appleton
bradapp1
Offline Send Email
Mar 24, 2006
6:27 am

I quote here just a tiny part for context. On Thursday, March 23, 2006, at 10:27:24 PM, Brad Appleton wrote ... Particularly outstanding post, Brad! Ron...
Ron Jeffries
RonaldEJeffries
Offline Send Email
Mar 24, 2006
1:15 pm

... Uh oh... Ron agreed with Brad. That means Hell must be freezing over, in which case I have a lot of things to do! ... Seriously, though, +1 on Ron's...
Dave Rooney
daverooneyca
Offline Send Email
Mar 24, 2006
2:08 pm

... I would change the last sentence to say "That's the traceability tool" Victor ... From: "William Pietri" <william@...> To:...
Victor
vmgoldberg2
Offline Send Email
Mar 26, 2006
1:50 am

Despite the irony, it is indeed a real world problem, specially when your customer is far from you - and all you have is weekly conference calls, based on...
Aragao, Andre Augusto...
aa_aragao
Offline Send Email
Mar 27, 2006
1:16 pm

From: "Aragao, Andre Augusto de (Andre)" <aragao.at.avaya.com@...> To: "extremeprogramming@yahoogroups.com" ...
yahoogroups@...
jhrothjr
Offline Send Email
Mar 27, 2006
3:04 pm

<snip> ... I have worked in a medical software environment. With medical regulations, traceability is often required to comply with medical guidelines. In that...
Willem Bogaerts
toetah2000
Offline Send Email
Mar 25, 2006
2:22 pm

A traceability tool helps you to measure the quality of a product. Otherwise, it difficult to know how effectively test cases were covered for requirements and...
dsrkkk
Offline Send Email
Mar 25, 2006
2:39 pm

... Here are some pictures of how well tests are running, vs time: http://www.xprogramming.com/xpmag/BigVisibleCharts.htm#N253 Ron Jeffries ...
Ron Jeffries
RonaldEJeffries
Offline Send Email
Mar 25, 2006
3:14 pm

... I completely disagree that a traceability "tool" helps you measure the quality of a product. What helps you measure the quality of the product is knowing...
banshee858
Offline Send Email
Mar 25, 2006
4:42 pm

... How would it do that? It seems to me that the best a traceability tool can do is tell you how well the product conforms to the spec, which is often poorly...
William Pietri
william_pietri
Offline Send Email
Mar 25, 2006
10:26 pm

... Unless ... Yeah, modulo legal compliance I see very little benefit in traceability. Not just for the cogent reasons that others in this thread have...
Keith Braithwaite
keithwdssg
Offline Send Email
Mar 25, 2006
7:33 pm

... One 'ility' point we may be missing.... 'arse coverability' You said do XBC, we did XBC, so there...not my fault you wanted ABC - here's the...
Andrew McDonagh
andy_ipaccess
Offline Send Email
Mar 25, 2006
8:16 pm

... Oh, for sure. This is why the off-shore suppliers go in for CMM Level Aleph-0 and so on: all that process is a proxy for trust. Lucky for them that the...
Keith Braithwaite
keithwdssg
Offline Send Email
Mar 25, 2006
9:52 pm

... All I care about really is whether what I have right now is consistent and works. If I have a problem then I want the lowest possible impedence to fixing...
Paul Campbell
pncampbell99
Online Now Send Email
Mar 24, 2006
2:26 pm

... First of all, let me say that the idea of a 'non-functional requirement' is still hilarious to me, even after all these years. I mean, if you want it to...
Mike Hill
uly562000
Offline Send Email
Mar 24, 2006
3:25 am

... In that case...prepare to belly-laugh..... One of the teams near me is just starting a whole project devoted to applying 'non-functional' requirements to...
Andrew McDonagh
andy_ipaccess
Offline Send Email
Mar 24, 2006
5:43 pm

... Please give an example of handling security with automation. Ron Jeffries www.XProgramming.com Fear is the mindkiller. --Bene Gesserit Litany Against Fear...
Ron Jeffries
RonaldEJeffries
Offline Send Email
Mar 24, 2006
5:12 am

... To manage change with cards ,tear up one card and write another. If you need to track the reason, type it into Notepad or Microsoft Word, or Excel ... Ron...
Ron Jeffries
RonaldEJeffries
Offline Send Email
Mar 24, 2006
4:50 am

... Or put a test page into FitNesse, called "TestDoesFooSoThatBar". Cheers, Ilja...
Ilja Preuss
ipreussde
Offline Send Email
Mar 28, 2006
9:41 am

Hi dsrkkk, ... Can you give some specific examples of requests or events that you want the lifecycle tool to respond to? And what you want the tool's...
Dale Emery
dalehemery
Offline Send Email
Mar 23, 2006
11:51 pm

... What is the requirement that the tool be process independent about? I would think that a tool would be fitted to the job. I don't use a single carpentry...
Ron Jeffries
RonaldEJeffries
Offline Send Email
Mar 24, 2006
4:47 am

... There is an underlying assumption here that I'm interested in. If you will allow me to flip the question, from your perspective, for what needs does...
Joe Gee
josephwgee
Offline Send Email
Mar 23, 2006
10:11 pm

In this era, developement teams are distributed across the globe. So XP may need automation tools for handling such projects. ... testers, ... you...
dsrkkk
Offline Send Email
Mar 23, 2006
10:15 pm

... *if, and only if,* the development team (eewwuuu), the stakeholders and additional customers are distributed around the globe, would an electronic form of...
Andrew McDonagh
andy_ipaccess
Offline Send Email
Mar 23, 2006
10:28 pm

... In truth? Not so much. Get a digital camera. Take pictures of the wall and share them. I have not yet seen an electronic version of stories that worked...
Mike Hill
uly562000
Offline Send Email
Mar 24, 2006
4:05 am

... Even for a co-located development team, a lightweight electronic solution for managing stories can work just as well as index cards. The key is that it...
Chris Hanson
cmh23
Offline Send Email
Mar 26, 2006
2:02 am

... I think that a lightweight electronic solution is better than a heavyweight one, but having just converted yet another team from a shared electronic...
William Pietri
william_pietri
Offline Send Email
Mar 26, 2006
7:55 pm

... And what is your experience with cards? I ask because we recently switched form a lightweight electronic tool to cards for iteration planning, and the...
Ilja Preuss
ipreussde
Offline Send Email
Mar 28, 2006
9:39 am
 First  |  |  Next > Last 
Advanced

Copyright © 2009 Yahoo! Inc. All rights reserved.
Privacy Policy - Terms of Service - Guidelines - Help