Approximity blog home
803 to 812 of 869 articles

Just Ship, Baby   25 Sep 04
[print link all ]
(Source: Kent Beck) Short two page essay: The focus on shipping is not an excuse for cutting corners, but perfect adherence to the practices is no excuse for not shipping. groups.yahoo.com/group/extremeprogramming/files/just%20ship.pdf

SCRUM vs XP   25 Sep 04
[print link all ]

(Source: XP-mailinglist; thoughtful post by Ken Schwaber) Scrum is purely a project/product management process that can be applied to software projects, hardware projects, marketing projects, and any mix of the above. It does not contain engineering practices or any specific work practices. It is instead a way to maximize the ROI of work.

People who use Scrum in software development environment often adopt one or more of the XP practices to improve the engineering practices of the develpment organization. Scrum calls for an increment of potentially shippable product functionality every iteration. This means a fully cleaned up, refactored, tested, documented ready to go increment. Many organizations are incapable of this. It is easy to bring in XP practices because they are excellent and both Scrum and XP are pretty radically agile.

Project managers using Scrum are called ScrumMasters to differentiate the type of work they do ... they facilitate, manage the process, and optimize the team's productivity. They don't tell the team what to do, nor do they set of pairs of programmers, or parse out user stories. During the iteration, the team is entirely self- organizing ... whether it is doing software development or anything else related to the increment of functionality they are building.

XP seems to focus on team productivity... doing something the right way and as productively as possible. Scrum does this some, but instead focuses more on doing the right thing, getting ROI from building the 20% of the functionality that is necessary to get the value and maybe not building the rest.

We've implemented Scrum without telling the customer, users, or stakeholders. We've done this in one day. We seduce them into iterative, incremental development where they collaborate with us on what to do next. XP seems to require a steeper implementation curve with less acceptance from the users and customers. Scrum can't keep the customers away.

Estimating is a subtle diffrence that points out the XP and Scrum dividing point. XP works hard to estimate very finely defined stories, and to measure and improve these estimates. Scrum keeps the requirements more broad, more in general user terms that are analyzed during the iteration. Estimating isn't as important. The team does what it can, and gets better and better at figuring out how much it can do each iteration as it learns each other, the business domain, and the technology - iteration by iteration. We care more about delivering business value that having defensible estimates, which become meaningless in a collaborative setting.

Scrum also has a formal methodology that lays out how to scale Scrum to any sort of project with any number of people in any number of locations ... all based on the optimized 7 person team. This is an important mangement requirement, but not so important to an engineering discipline like XP.

I feel we are blessed to have such compatible practices and processes to apply to our software engineering projects.

The Irony of Extreme Programming   25 Sep 04
[print link all ]
(Source: Ron Jeffries) The irony of Extreme Programming is that while detractors continue to explain why it cannot work, software developers all over the world are having success with it. www.xprogramming.com/xpmag/jatIronyOfXP.htm

Unit Tests -- just do it!   25 Sep 04
[print link all ]
Been coding a lot these days on SmallWorld. I try to be disciplined and continue adding unit tests to the hundreds of unit tests wherever sth. could go wrong, but ever again I go off the track and code several methods and even entire classes without any tests. It’s simple stuff and hey, this is ruby :-).

Then I sit here for 3 hours trying to understand why the dammed computer does not do what it should. It’s that feeling I hate most. You waste time .. I mean I could as well go skiing or drink a bottle of vodka .. would be about the same productivity progress on my code and at least I would enjoy the sun.

After hitting my head long enough and starting to isolate the stuff .. I found it .. I had forgotten one return in a most trivial three line long method. Shame on me. Now I will go back to being test-infected. test-first is even better. Dammit .. sorry for the rant, but I doubt there are many systems like computers where one comma at the wrong place can make everything go boom. Oh well, try to modify the DNA and do not know what you are doing. :-).

I've never been a Project Manager before   25 Sep 04
[print link all ]
Check out the excellent Dilbert

Introducing agile methods if the customer is obsessed by dead trees   25 Sep 04
[print link all ]
(Source: posting to agile-testing@yahoogroups.com by John Goodsen) I think a big mistake many of us make trying to introduce Agile development practices, is we fall into the trap of agreeing that we are not providing documentation. If your organization wants to see documents along the way, don’t tell them they can’t have it! Tell them they will have the most up to date documentation that they have ever seen, because you are going to generate it directly from the code. Our teams use an XP process. It doesn’t take much to tie in a tool to auto-gen design specs from the code and if you are automating customer tests, you can put description in the headers of tests methods and use a javadoc based generation of a "requirements specification"… so rather than view your organization as an enemy that requires an "undergound attack", listen very carefully to what people are asking for and figure out how Agile approaches can deliver it. We are not the enemy. We are the liberator. We have exactly what they want, but we often fail to match up our Agile solution with what the stakeholder is asking for.

When an organization wants more than the Agile process requires, it is easy to show the additional cost each iteration, and as the team builds credibility the customer/stakeholder(s) might be less inclined to want to spend money each iteration producing documentation.

So have some courage, tell your stakeholders that they can have it (whatever "it" is) if they want it and then make sure you follow up with giving them a good picture of the cost and value they get from "it". It’s their money - let them blow it if they want to. Let them slow the velocity by asking for non-code related items. All you can do is make it visible and help them down the path of figuring it out.

The sooner you start delivering some working code, the sooner you’ll have the credibility to address their real process issues. "It" will become less important the more iterations you deliver working tested code.

The hard part is getting code started, right? Maybe you can disguise the first few iterations as "prototyping" and use TDD as the process for your prototyping? :-)

Simple things ..   25 Sep 04
[print link all ]
I was just now doing some research on bus ticket clearing houses and I came across his post in rec.travel.europe from 2001 by Michael Forrest.
 >Reciprocity is not guaranteed on airlines (or toll bridges - it
 >has always amused me that the toll on the Severn Bridge between
 >England and Wales is GBP 4.20 for a car to enter Wales but there
 >is no toll the other way, ie entering England). (Maybe it shows
 >how the two countries value themselves?)

All of the bridges in the San Francisco Bay area only charge toll in one direction. Some genius realized that, on the average, just about as many cars went each way for the obvious reason that most trips across the bridges are round trips. So they doubled the toll and took down the toll booths going one way (except for the Golden Gate Bridge where the toll booths remain, unattended). There has been considerable saving in toll collection costs and the toll booth traffic jams in one direction are gone. Is it possible the Severn Bridge does similarly?

XP style process and battle-fields   25 Sep 04
[print link all ]
Not that I want to promote war in any way, but these posts in the extremeprogramming-ML made me smile:

Phlip:

 During the planning game, you review last week's
 finished stories, and they inspire you to write some
 new cards, to edit some cards, and to toss some cards.
 Then you (the Onsite Customer) re-sort all the cards,
 and draw off the top batch for the next week.

 But another input into this system that affects the
 planning game - the competition.

 The USA occupied Iraq using an effective new battle
 technique. In traditional advances, you send a
 diversionary force against one of your enemies flanks,
 draw them that way, then send your main force against
 their other flank.

 Modern soldiers, with cell-phones and such, follow a
 more agile approach. You simply send two forks of your
 forces, probing towards both flanks. You use sensitive
 algorithms to detect the defending commander's
 decision which flank to defend. If you can rapidly
 turn one advance into the diversion, and the other
 into the main attack, you will soon collapse the
 opposition's ability to effectively make decisions.

 Agile onsite customers can play this card too. If you
 detect your competition's marching orders, in
 real-time (using either sensitive algorithms,
 good-old-fashioned industrial espionage, or just
 reading their self-congratulatory Web site), you can
 then request iteration features which provide the
 minimum amount of code needed to start your project
 towards blocking the competition's advance. This
 technique will, again, collapse the competition's
 ability to make decisions.

 Or convince them to hire an XP coach or three. So
 either way it's a win-win-win for us! ;-)

Steven’s reply: :-)

 Or you could follow the agile strategy that Microsoft
 pioneered - announcing products with your competitions'
 features before you even start implementing them.

Case stories   25 Sep 04
[print link all ]
Been skimming the XP-ML this morning.

About the $200M Oracle-Ford Desaster: the management did not give them enough power to go fully agile

Chet Hendrickson:

 It was a very frustrating situation.  The team asked Don and me
 to help with preventing the Oracle consutants from making changes
 directly to the production system.  This was about $150 million into the project.

 We tried to sell them on a more agile approach (as you might imagine), but by
 this time they were pretty far gone.

 It was unfortunante that we were not operating at a level in the organization
 that would have allowed us to get the plug pulled sooner.

 chet

Georg Tuparev has a nice case story, too: speak out if you are put on a death march.

 Few years ago I was called to lead a huge team stuck in one and half
 year design phase. The team was supposed to build a control software
 for a network of telecom satellites. Cannot disclosed names and
 resources, but one could imagine ...

 Three days in the project I had a phone conference with the CxO's of
 both companies involved. Told them that the way it is going no
 satellite will ever fly and that I know a better way. After getting
 green line, the design document was burned with a small celebration at
 a BBQ, and 85% of the initial team members were sent to an indefinitely
 long vacation. With the rest (15%) of the team we had the first
 functioning version 2 months ahead of the schedule and 50% lower then
 expected expenses.

 So the lessons:
 - it is never late to change direction of a project in order to save it.
 - I do not agree with Kent that this is a sad story. If you are a good
 programmer put on a death march project you should speak out! If no one
 listens - walk away. There is just one very precious life in front of
 us - do not waste it! And if these folks wasted 2 years of their lives,
 well, it is their business ... but they should not expect my
 sympathies.

 BTW, Philip is right - the project I was telling about had a 9 months x
 40 people "Big Requirements Up Front"!!! Then the design started...

 Just my 0.02

 Georg Tuparev

CIO magazine current issue all about agile... (IT oriented, but)   25 Sep 04
[print link all ]
Denis Haskin posted this to the XP-ML. lnik
 I assume this popped up on everyone else's RSS aggregator as well, but...
  From Darrell Norton's blog [1] and Artima developer forum [2]: the
  current issue of CIO magazine is all about agility:
  http://www.cio.com/archive/081504/index.html

 

powered by RubLog
803 to 812 of 869 articles Syndicate: full/short
A unique and safe way to buy gold and silver