Some people would like to believe that building complex software is like going to the grocery store: pick a candy bar off of the shelf, ask what it costs and decide to buy it. You get no risk and quick gratification. But building custom software is more like building a race car. A special one-off product to meet exactly the needs of its sponsor: win races.
As a customer, what are you really buying when you contract for software development? You may think you are getting a solution. But what you are really getting is an implementation team. And risk is always part of the bargain. So what you really want is a team you can trust to build your product and to minimize the risk of that choice.
In this article, I present a lightweight, lean approach to selecting a software development partner which should dramatically reduce the risk and cost to all parties.
A customer will often invest substantial effort into creating a Request for Proposal (RFP). I've seen RFP's whose size is measured in binders and the effort to produce them measured in Man-Years. A vendor will often invest a lot of effort into winning a big project. On both sides, this effort produces mostly paper, i.e. artifacts of no value except as means to the goal of selecting a vendor.
On the vendor side, this effort has to be amortized during the execution of the project itself. As there is only one winner, the others make a substantial effort and earn no money. So bidding on big projects is expensive and risky.
Competitive bidding can mean offering ruinous prices. When “winning” means producing at a loss (sometimes to the point where the supplier goes out of business [English translation]), even the customer loses. The supplier may have no choice but to play the change-request game to achieve profitability.
How do you maximize trust and minimize risk and cost? Customers are often willing to work with agile companies on a time and materials basis, once the trust has been established. Trust greatly reduces administrative overhead and enables a collaborative approach, so establishing trust must be the first priority in a project. How do you build this trust?
There are certainly many answers to this question, and some are better than others. Asking for quotes and having talks with the sales & consulting staff is not really enough to establish trust. Much better are working together with the actual team and evaluating real results. Deferring potentially expensive decisions until their implications are clear is usually advantageous. Here is a 3 step approach:
Why is this a lean approach? By deferring the final decision until you have actual experience with the candidates, you reduce the likelihood of picking a candidate that “looks good on paper” but cannot really deliver software. You reduce the risk of your decision substantially.
Identify your candidates and send them the RFP. Ask them questions which will separate the wheat from the chaff, for example:
If the vendors are used to working on an agile basis, they will have no problems with these questions. If they are not, they will probably not even be able to respond, especially if deadlines are kept tight.
You will need to meet with prospective teams for a day or so to answer their questions about the user stories. Afterwards the vendors should be able to size the system and answer your questions quickly.
If there are more than two vendors still in the running, you will need to use the answers and the results of the interviews to trim the field down to two vendors, who then participate in the competition.
Let us assume that you plan to spend $2.4 Million over 12 months, or $200'000 / Month to develop the software. (You got this figure by calculating what the project is worth to the company, perhaps using a double worst case analysis).
The cost of picking the wrong partner is much higher than the cost of working in parallel for a short period of time.
If you add one month's effort to the budget, that would raise the total by 8%. But productivity differences among teams can be a factor of 3 to 10. Furthermore, the cost of delay while you take three months to pick a partner without producing any usable software will be much larger than the cost of redundant development for a short period.
Here are the ground rules. There are two vendors. Both are going to start your project according to the process you defined in the RFP. After one month, both players present an increment of working functionality and you will decide which partner you want to continue working with. The winner gets a full renumeration for the month and a contract for the rest of the project. The loser gets 50% of the renumeration for a month.
Here are the steps in the competition.
You might want to adjust the sprint duration or the trial period depending on the size of the project.
At the end of month, you have not just qualitative and quantitative data on which to base a decision. You have a month of experience working with your new partner. You have some working software (or not). In short, you have much more information to base your decision on.
Everybody wins.
The risks and up front costs of producing and responding to the Agile RFP are much lower than the traditional approach. By working with the teams, you build confidence that you can work with them and that they can build the software you need. You can judge the teams based on working software rather than attractive presentations or other artifacts.
By starting to work on a solution early, you reduce your time to market. You will probably get a better solution, because the competition will spur everyone's creative juices. Even the loser will have some good ideas which become part of and improve the final result.
This concludes my series on Agile Project Planning in general and the Agile RFP in particular. This series was largely the result of a customer project. These are the tools we used and this is how far we have come. What (do I think) was novel in our approach?
The proof of the pudding is in the eating, but I as write this, I do not know if the customer will move forward with the project. So we can't taste the pudding (yet).
How would you implement competitive sprints? To what situations would it apply well or poorly? Have you used a similar approach?
Comments
Comments on "Vendor Selection" article by peterstev
November 1, 2008 by AJ (not verified), 1 year 43 weeks ago
Comment id: 1966
Iteresting article. Selecting a vendor and a team that you can trust to build your product and to minimize the risk of that choice, is absolutely key. In the the case of Business applications:
1. Minimizing risk and cost is an objective, BUT you need to consider TOTAL risk and TOTAL cost beyond just implementation of the application. What about the maintenance of the application once it goes into production? Who is going to maintain it? How do you reduce or eliminate dependency on the vendor? How quickly can you make changes? Are these changes at source code level? If you change vendors, what exactly are you left with – just code?
2. The completion of “bake off” is good idea, BUT it must be a real project, or else the key stakeholders will not participate as they would in a real project.
3. Select the ultimate winner through a competition which produces an increment of working software is a great idea, BUT don’t focus just speed of development, need to test ability to change fast too. This is the biggest making folk make, by not testing how fast the vendor can change the application – change is a given. So suggest that half way thru the competition, you change the requirements – this is where many Agile projects fail – fast to deliver but slow to change.
4. Determining team velocity in Story Points per Sprint is spot on, BUT not just for the development phase – what about maintaining the application once it goes into production?
5. Given the target budget, how much of the functionality do you think can be realized is a good approach, BUT how are the requirements prioritized and how will the vendor handle change requests and additional requests?
6. “Everyone wins” must be the objective, BUT business must win too – they need the application fast but also need to make changes fast and cost effectively. How does the vendor propose handling changes once application is in production? How are change requests gathered, managed, sized and deployed?
In summary, absolutely agree with the importance of selecting the right vendor, especially for Agile projects, as the vendors that do this in a truly Agile way are not the traditional vendors, but rather vendors that have build their business from the ground up with Agile in mind. The other important consideration is what happens when the vendor goes away and how do you protect yourself.
Interested in your comments and thoughts?
AJ
Risks in Outsourcing
November 2, 2008 by peterstev, 1 year 43 weeks ago
Comment id: 1968
Hi AJ,
You raise a number of interesting issues and I guess I could dedicate a whole website to agile contracting. BTW - There is now a working group on agile contracts looking at these issues.
I agree with you 100% about total cost and total risk. The consequence of badly managed risk is cost (or failure), so these two go hand in hand and minimizing risk is a high priority during the early phases of a project. Keeping your options open is a very effective way of minimizing risk, which was one of the inspirations for the this concept.
I am hesitant however to get too prescriptive. If too much is defined in advance, the process is not agile any more. People stop thinking.
Instead, I would (and did) ask the question, 'What are the mistakes we have made in the past which have cost us a lot of money?' (And every one you mentioned has been an issue!) The answers should help focus management on getting the partner relationship right or even asking whether a total outsourcing is the right way to go.
The first month should produce an increment of working software toward the desired solution. The team which wrote the code will continue to use that code as the basis for finishing the product. This is why it is worth paying for, unlike the results of a traditional sales process, which produces nothing useful for the customer and therefore do not merit compensation.
"Bake off" is a not a bad name for the process. Let us remember the objective is twofold: start work on the project and make a final decision on the partner.
How to pick the winner? I was deliberately vague on that point. How would you pick the winner?
Cheers,
Peter
uggs on sale
August 26, 2010 by uggs on sale2010, 1 week 16 hours ago
Comment id: 9335
Even celebrities love wearing boots for their comfortable cheap uggs for sale features. You too wanna try out this sheepskin footwear for your family? Well, it’s a great idea. With Sheepskin cheap ugg boots being made in plenty of styles and sizes, you can choose a pair for all members of your family from UGGS On Sale.
Such asUGG Bailey Button|UGG Argyle Knit|UGG Cardy|UGG Crochet|UGG Flower|UGG Leopard|UGG Mini|UGG Paisley|UGG Short|UGG Tall|UGG Elsey|UGG Infants Erin|UGG Langley|UGG Lo Pro|UGG Locarno|UGG Mayfaire|UGG Nightfall|UGG Rainier Eskimo|UGG Sundance II|UGG Tall Stripe Cable Knit|UGG Ultimate Bind|UGG Ultra Short|UGG Ultra Tall|UGG Suede|UGG Upside|UGG Roxy|UGG Seline|UGG Corinth|UGG Liberty|UGG Highkoo|UGG Knightsbridge|UGG Bomber Jacket|UGG Adirondack|UGG Suburb Crochet|UGG Adirodack II|UGG Broome|UGG Gissella|UGG Felicity|UGG Bailey Button Boots|UGG Classic Argyle Knit Boots|UGG Classic Cardy Boots|UGG Classic Crochet Boots|UGG Classic Flower boots|UGG Classic Leopard Boots|UGG Classic Mini Boots|UGG Classic Paisley Boots|UGG Classic Short Boots|UGG Classic Tall Boots|UGG Elsey wedge Boots|UGG Infant's Erin Baby Boots|UGG Langley Boots|UGG Lo Pro Button Boots|UGG Locarno Boots|UGG Mayfaire boots|UGG Nightfall Boots|UGG Rainier Eskimo Boots|UGG Sundance II Boots|UGG Ultimate Bind Boots|UGG Ultra Short Boots|UGG Ultra Tall Boots|UGG Suede Boots|UGG upside Boots|UGG Roxy Tall Boots|UGG seline Boots|UGG Corinth wedge Boots|UGG Liberty Boots|UGG Highkoo Boots|UGG Knightsbridge Boots|UGG Bomber Jacket Boots|UGG Adirondack Tall Boot|UGG Suburb Crochet Boots|UGG Adirodack boots II|UGG Broome boots |UGG Gissella boots |UGG Felicity boots|ugg swell|ugg desoto|ugg espresso|ugg cove|ugg ashur|ugg gaviota|ugg brookfield|ugg smithfield|ugg shoreline|ugg tess|ugg stella|ugg brookfield tall|ugg roseberry|ugg kensington|ugg chrystie|ugg bailey fancy|ugg sandra|ugg tasmina|ugg payton|UGG Handbags|UGG Swell Tall Boots|UGG Desoto Espresso Boots|UGG Cove Boots|UGG Ashur Boots|UGG Gaviota Boots|UGG Brookfield Boots|UGG Smithfield Boots|UGG Shoreline Boots|UGG Tess Boots|UGG Women's Classic Tall Boots|UGG Women's Stella Boots|UGG Brookfield Tall Boots|UGG Roseberry Boots|UGG Kensington Boots|UGG Women's Classic Short Boots|UGG Chrystie Boots|UGG Bailey Button Fancy|UGG Sandra Boots|UGG Tasmina Ultramarine|UGG Payton Boots|UGG Classic Tall Boots 5885|Kid's UGG Boots 5281|Kid's Classic Short 5251|UGG Bailey Button Triplet 1873 |UGG Men's Classic Short |UGG Kids Classic Tall Boots 5229|Kid's UGG Bailey Button Boots
Snow boots
August 31, 2010 by Snow boots, 2 days 13 hours ago
Comment id: 10636
Our website-- 2ugg is making a great promotion now. There are many preferential ugg boots . At present , hot sale ugg classic boots such as:
Snow Boots
| UGGs On Sale
| UGG Australia Boots
| UGG Classic Boots
| UGG Classic Short Boots II
| UGG Gissella Boots
| UGG Payton Boots
| UGG Sandra Boots
| UGG Bailey Button Triplet Boots
| UGG Kensington Boots
| UGG Classic Tall Stripe Cable Knit Boots
| UGG Felicity Boots
| UGG Classic Tall Boots 5885
| UGG Chrystie Boots
| UGG Broome Boots
| UGG Bailey Button Fancy Boots
| UGG Adirondack Boots II
| UGG Kid's Boots
| UGG Kid's Bailey Button Boots
| UGG Kid's Classic Tall Boots
| UGG Kid's Classic Short Boots
| UGG Men 's Classic Short Boots
| UGG Gaviota Boots
| UGG Swell Tall Boots
| UGG Roseberry Boots
| UGG Brookfield Tall Boots
| UGG Stella Boots
| UGG Caroline Boots
| UGG High-Heel Tall Boots
| UGG Tess Boots
| UGG Desoto Boots
| UGG Brookfield Boots
| UGG Smithfield Boots
| UGG Shoreline Boots
| UGG Ashur Boots
| UGG Cove Boots
| UGG Men's Brookfield Boots
| UGG Bailey Button Boots
| UGG Argyle Knit Boots
| UGG Cardy Boots
| UGG Crochet Boots
| UGG Flower Boots
| UGG Mini Boots
| UGG Paisley Boots
| UGG Short Boots
| UGG Tall Boots
| UGG Elsey Wedge Boots
| UGG Infants Erin Boots
| UGG Langley Boots
| UGG Lo Pro Boots
| UGG Locarno Boots
| UGG Mayfaire Boots
| UGG Nightfall Boots
| UGG Rainier Eskimo Boots
| UGG Sundance II Boots
| UGG Ultimate Bind Boots
| UGG Ultra Short Boots
| UGG Ultra Tall Boots
| UGG Suede Boots
| UGG Upside Boots
| UGG Roxy Boots
| UGG Seline Boots
| UGG Corinth Wedge Boots
| UGG Liberty Boots
| UGG Highkoo Boots
| UGG Knightsbridge Boots
| UGG Bomber Jacket Boots
| UGG Adirondack Boots
| UGG Suburb Crochet Boots
| UGG Boots
| UGGs On Sale
| Cheap UGG Boots Boots
| UGG Boots
| UGGs On Sale
| Cheap UGG Boots
| UGG Boots
| UGGs On Sale
| Cheap UGG Boots
| UGG Boots
| UGGs On Sale
| Cheap UGG Boots
| UGG Size Guide
| UGG Boots
| UGGs On Sale
| Cheap ugg boots
| UGG Bailey Button Boots
| UGG Classic Argyle Knit Boots
| UGG Classic Cardy Boots
| UGG Classic Crochet Boots
| UGG Classic Flower boots
| UGG Classic Tall Boots 5684 Leopard
| UGG Elsey wedge Boots
| UGG Elsey wedge boots Black
| UGG Infant's Erin Baby Boots
| UGG Langley Boots Black
| UGG Lo Pro Button Boots
| UGG Locarno Boots
| UGG Mayfaire boots
| UGG Mayfaire boots black
| UGG Mayfaire boots Sand
| UGG Nightfall Boots
| UGG Rainier Eskimo Boots
| UGG Sundance II Boots
| UGG Ultimate Bind Boots
| UGG Ultra Short Boots
| UGG Suede Boots
| UGG upside Boots
| UGG upside Boots black
| UGG Roxy Tall Boots
| Ugg Roxy Boots black
| Ugg Roxy Boots Sand
| UGG seline Boots
| UGG seline Boots black
| UGG Women's Corinth Boots in Cocoa
| UGG Liberty Boots
| UGG Highkoo Boots
| UGG Knightsbridge Boots
| UGG Knightsbridge Boots black
| UGG Bomber Jacket Boots
| UGG Adirondack Tall Boot
| UGG Suburb Crochet Boots
| Tiffany
| Tiffany Necklaces
| Tiffany Jewellery
| Timberland boots
| mbt shoes
| ugg boots sale
| ugg uk
| NBA Shoes
| Puma Shoes
| MBT Shoes
Please believe us , we will use passionate service attitude to receive you , until you buy satisfied goods.
uggs on sale
August 31, 2010 by uggs on sale2010, 2 days 12 hours ago
Comment id: 10851
1.Attention please! There are various UGGS On Sale in our website. UGG Sale offers large discount and free shipping for all customers throughout the world. welcome to choose freely from all the UGG Boots Sale.|UGG Adirondack II|UGG Adirondack Tall|UGG Bomber Jacket|UGG Broome|UGG Chrystie|UGG Cardy|UGG Elsey wedge|UGG Felicity|UGG Gissella|UGG Highkoo|UGG Kensington|UGG Knightsbridge|UGG Liberty|UGG Locarno|UGG Mayfaire|UGG Payton|UGG Roseberry|UGG Roxy Tall|UGG Sandra|UGG seline|UGG Stella |Ugg Stripe Cable Knit Tall|UGG Suede|UGG upside|UGG Bailey Button|UGG Bailey Button Fancy|UGG Bailey Button Triplet|UGG Langley|UGG Corinth|UGG Ashur|UGG Cove|UGG Delaine.
2.ugg uk|tiffany
ugg boots sale
August 31, 2010 by ugg boots sale, 2 days 11 hours ago
Comment id: 11039
1.Ugg footwear is a great regard for your base like many reasons.cheap uggs for sale. Probably the most rocky landscape. Another equally important disputeugg uk is the ever-mounting medley of styles ugg boots saleand ensign that you are removable to buy ugg boots, actually form to the shape of the arch.UGG Bailey Button|UGG Argyle Knit|UGG Cardy|UGG Crochet|UGG Flower|UGG Leopard|UGG Mini|UGG Paisley|UGG Short|UGG Tall|UGG Elsey Wedge|UGG Infants Erin|UGG Langley|UGG Lo Pro|UGG Lo Pro Button|UGG Locarno|UGG Mayfaire|UGG Nightfall|UGG Rainier Eskimo|UGG Sundance II|UGG Ultimate Bind|UGG Ultra Short|UGG Ultra Tall|UGG Suede|UGG Upside|UGG Roxy|UGG Seline|UGG Corinth Wedge|UGG Liberty|UGG Highkoo|UGG Knightsbridge|UGG Bomber Jacket|UGG Adirondack|UGG Suburb Crochet|UGG Bailey Button Boots|UGG Classic Argyle Knit|UGG Classic Cardy Boots|UGG Classic Crochet Boots|UGG Classic Flower boots|UGG Classic Tall Boots 5684 Leopard|UGG Classic Mini Boots|UGG Classic Paisley Boots|UGG Classic Short Boots|UGG Classic Tall Boots|UGG Elsey wedge Boots|UGG Infant's Erin Baby|UGG Women's Langley Boots Black|UGG Lo Pro Button Boots|UGG Women's Locarno Boots|UGG Mayfaire boots|UGG Nightfall Boots|UGG Rainier Eskimo Boots|UGG Sundance II Boots|UGG Ultimate Bind Boots|UGG Ultra Short Boots|UGG Ultra Tall Boots|UGG Suede Boots|UGG upside Boots|UGG Roxy Tall Boots|UGG seline Boots|UGG Women's Corinth Boots in Cocoa|UGG Liberty Boots|UGG Highkoo Boots|UGG Knightsbridge Boots|UGG Bomber Jacket Boots|UGG Adirondack Tall Boot|UGG Suburb Crochet Boots|UGG Swell|UGG Desoto Espresso|UGG Cove|UGG Ashur|UGG Gaviota|UGG Shoreline|UGG Smithfield|UGG Tess|UGG Classic Tall|UGG Women's Stella|UGG Brookfield|UGG Roseberry|UGG Kensington|UGG Chrystie|UGG Sandra|UGG Tasmina Ultramarine|UGG Payton|UGG Felicity|UGG Gissella|Ugg Stripe Cable Knit|UGG Broome|UGG Adirondack|UGG Swell Tall Boots|UGG Desoto Espresso Boots|UGG Cove Boots|UGG Ashur Boots|UGG Gaviota Boots|UGG Shoreline Boots|UGG Smithfield Boots|UGG Tess Boots|UGG Classic Tall Boots II Boots|UGG Women's Stella Boots|UGG Brookfield Boots|UGG Roseberry Boots|UGG Kensington Boots|UGG Chrystie Boots|UGG Handbags|UGG Sandra Boots|UGG Tasmina Ultramarine Boots|UGG Payton Boots|UGG Felicity Boots|UGG Gissella Boots|Ugg Stripe Cable Knit Tall Boots|UGG Broome Boots|UGG Adirondack Boots II|UGG Bailey Button Fancy|Kid's UGG Boots 5281|UGG Bailey Button Triplet|UGG Classic Tall 5885|Kid's Classic Short 5251|UGG Men Classic Short2.timberland boots3.mbt shoes4.tiffany5.ugg uk
Post new comment