Return to Archive
Runtime - The Software Outsourcing Newsletter
for Executives and Investors
from Accelerance and Steve MezakI'll Gladly Pay You Tuesday For Software Today
The title of this Runtime paraphrases the immortal words of the character Wimpy in the old Popeye cartoons. Wimpy seemed like he was always trying to get something for nothing. His request for a hamburger, with a promise to pay later, was comical but never a very believable proposition. Similarly, how you pay an outsourced software development team— "Tuesday for a hamburger today", or some other financial agreement— will impact your results. What is the best way to structure a deal so you can get your software developed on-time and on-budget?
A consultant I met recently is originally from India but is now working here in the US. He complained about his experience with outsourcing. "I'm from India, I know the regional accents and there is no confusion about what the software I need is supposed to do. And still I do not get the software I asked for!"
Good communication is a critical success factor for outsourced software development. You also need an outsourcing team that not only understands what you need but also has a vested interest in your success. They need to have some skin in the game. One way to do this is with financial incentives.
Outsourced software development is paid for with three different ways - fixed price, time and materials (T&M), or a hybrid approach that combines the two.
Fixed Price
In a fixed price project you clearly define the software you need and the outsourced team charges you a fixed total amount for delivering the software. You can make some changes during development but you have to know pretty much what you want before work is started.
Variations of the fixed price approach can include milestone payments rather than one large payment at the end of the project. Incentives for early completion may be offered and/or penalties for late delivery if on-time is a critical issue for you.
A fixed price arrangement is a great way to budget your money when you know exactly what you need. However, you don't always know what you need at the beginning of a project. When you are developing a new software product, you never know.
A consultant with experience at larger firms told me they loved to charge clients on a T&M basis. In some cases it enables the outsourcing company to charge for additional services and expand the scope of the original project. With these risks, naturally his clients preferred fixed price. Even so, it is unfair to demand a fixed price deal from an outsourcing team unless you can clearly define what you need.
The other problem with fixed price is that the outsourced team will pad their bid to cover your unexpected changes and the risk of misunderstandings. You can actually pay more for a fixed price project than if you work with an outsourced team you can trust on a T&M basis.
Time and Materials
T&M means you pay for only the time spent by the outsourced team to develop your software. There is usually n0 charge for "materials" although sometimes you may have to provide or pay for special software or hardware required for your project.
T&M is the approach used when you want to hire outsourced engineers to augment your internal team. You want the engineers to be available full time and you direct their activities as needed.
Developing software is a creative process. T&M is often used when you want the outsourced team members to contribute to the design as well as the development of your software.
However, problems can arise with T&M when too much freedom is granted to the outsourced team. You do not want to pay for engineers going off and creating software not needed by your customers.
Also you must make use of effective project management to get the best results from T&M projects. Frequent status reports and constant communication will help ensure engineers are working on the most important tasks.
Over my career, I have worked on both fixed-price and T&M projects, and I have gotten both good and bad results with each. What I find works best for clients using the Accelerance Vision Success service is a "hybrid" approach that combines features of both fixed-price and T&M.
The Hybrid Approach
The hybrid approach reduces the risk of your paying too much and also reduces the risk of the outsourced team doing too much to complete a project whose scope was not well understood initially.
Here's how it works. A large project, requiring six months or more to complete, is divided into smaller pieces with well-defined milestones. By "well-defined", I mean specific features of your software are clearly specified and the outsourced team makes a firm commitment to deliver them by a specific date. The definition of these features can be in the form of a written specification, a software prototype, and/or a set of use cases that show how your customer will use the software to solve their problem.
The definition of the first milestone is the most important. Later milestones can be defined in general terms along with target dates for completion. But only the next milestones is defined in enough detail to enable a commitment for a completion date and cost. In the hybrid model, this is a fixed price commitment.
In the hybrid approach, completion of your entire project is not offered on a fixed-price basis - only the next milestone. Before the milestone is completed, the next milestone is defined and a similar commitment to its completion is made. Changes based on information discovered during work on the previous milestone is incorporated into the next.
I wrote about the hybrid approach in a previous Runtime (See Runtime - Get Guaranteed Results) that shows the relationship between Agile software development techniques and the hybrid method of payment. Among other things, the Agile method includes frequent builds and product release milestones.
The phrase "Time Boxes" is used in Agile development to describe the fixed periods of time you decide to use between milestones for your project. You then put the features you want implemented into each box with high priority features in the time boxes to be completed sooner than later. If a feature is too big to fit in a time box, it must be decomposed into smaller features
Of course you collaborate with the outsourced team to determine how many features will fit in each box. It is important to obtain a commitment from your outsourced team by having them involved in the decision of what will be completed for each milestone.
Choose your outsourcing team and payment approach carefully. Use fixed-price when you can communicate a clear description of what you need. Use the T&M approach when you have a strong degree of trust with your outsourced team and you need them to work on various tasks that are difficult to predict ahead of time. Finally, the hybrid approach of splitting your product development into smaller amounts of time and functionality gives you the benefit of tracking both costs and software development progress and give you risk - free outsourcing.
Vision Resources
![]()
Are you wondering how you will select an expert offshore team
to develop your software?Use the Accelerance Vision Resources(sm) outsourced vendor
selection service and cut the time of your vendor selection
process by as much as 90%.Vision Resources leverages members of the Accelerance's 17
teams in 14 countries around the world.Click here to learn more about Vision Resources
Accelerance, Inc. delivers impartial & expert strategies and services
for risk-free outsourcing of your software development.
Visit our web site at www.Accelerance.com
Until next time,
Steve Mezak
Accelerance, Inc.
Risk-Free Outsourcing213 Garcia Avenue
Half Moon Bay, CA 94019
1-650-712-8990(c) 2005 Accelerance, Inc. All rights reserved. You are free to use material from the "Runtime" eZine in whole or in part, as long as you include complete attribution, including live web site link. Please also notify me where the material will appear.
The attribution should read:
"By Steve Mezak, CEO of Accelerance, Inc. Please visit the Accelerance web site at http://www.Accelerance.com for more information and resources on outsourcing and creating great software products."