Project Smart ~ Exploring trends and developments in project management today

Calendar iconNot recorded
Adobe PDF icon

Build Versus Buy: Making the Right Decision

~ By Sanjay Murthi

A businessman with question marks around his head

Tough Decisions

Many project teams have faced the time when they need to make a major decision. Should one try to custom build a solution or buy an off-the-shelf product and customise it? These solutions can run the gamut of being a full enterprise class package that does nearly everything but feed the dog to small programs or libraries that do something very specialised such as drawing graphs or providing encryption functions. Frequently, a wrong decision can result in cost overruns, project delays, or a solution that does not fit business needs very well.

In my experience, I have seen two extremes of behaviour among teams charged with making the "build vs. buy" decision. One believes that they can build everything needed and that no off-the-shelf solution will fit their needs. The other side of the coin is a belief that an off-the-shelf package will be much cheaper and will be able to fit one's needs. Unfortunately, both paths frequently can lead to disappointments if not carefully considered. At times, going the package route may make sense while at other times, a custom-built solution will be better and more often a hybrid solution that uses both will be the best solution.

Making the Decision

A first step to making the decision is to get an idea of what needs you are trying to satisfy. This involves meeting with customers or business units to find out their specific needs and goals. Try to avoid going to a very detailed requirement level unless they are very crucial and can make or break a project. However, the more information you get, the better. Break them up into long term, medium term, and immediate needs. Also, classify them by priority high, medium, and low. Make sure that stakeholders agree with this assessment.

Now that you have some idea of what needs you must satisfy, you can proceed to the next step. Estimate how much time, effort, and money this will involve, based on different options. A previous article of mine, Useful Estimation Techniques For Software Projects, (Developer.com, August 2002) has some useful hints on cost estimation. Options typically fall within the range of complete packaged solutions to fully custom-built solutions with hybrid solutions in the middle.

Packaged Solution(s)Custom-Built Solution(s)Hybrid Solution(s)
What it meansA complete or nearly complete solution provided by a vendor; for example, ERP packages, CRM packages, and so on.A solution that is custom built from scratch with few external components.An intermediate solution that uses different packaged components from different vendors as well as custom code to integrate them into a solution.
Some potential benefitsCan be cheaper. Software quality can be better if it is a widely used package. May be easier to migrate to newer options in the future.Will better fit business needs. Much more control over the solution. Can be customised for maximum business advantage.Can provide the best of custom-built solutions and packaged solutions. More customisation to business needs possible. Usually cheaper than a custom-built solution.
Potential risksVendor is financially unsound, product is immature, additional expensive customisation needed to meet business needs, requires major changes in existing business processes, and so forth.The technology platform to be used may be immature, skills with the platform are hard to find, bug fixes & enhancements can become very expensive, and so on.Vendor is financially unsound, technology platform is immature, people with the skills needed are hard to find, integration issues, and the like.
Costs to considerOngoing licensing costs, infrastructure costs (servers, databases, networks, and so forth), support costs, training and customisation required, quality assurance, and so on.Infrastructure costs (development, testing, and operations), development costs, training if the team is using new technology, quality assurance, and so on.Ongoing licensing, infrastructure costs (development, testing, and operations), support, development costs, and training if the team is using new technology, quality assurance, and so on.

Note: An option to consider when looking at custom or hybrid solutions is to work with an external consultant that may already have many parts of the solution you need. Many consulting companies have previously built frameworks that can be used to build a solution at less cost than starting from scratch.

At the end of this process, we may realise that we have found several different options. Based on the costs and risks associated with them, we can rank the different options based on a combination of the priorities of the different needs that have been identified earlier on, the costs involved and the risks associated with each option. Run these by your stakeholders and project team. This is a good way to communicate what you are trying to achieve and the upside and downside of each option. Try to get an agreement on the best option with an alternate option if things do not go as expected. Once a consensus has been reached, you can proceed with working on the chosen option. However, do not be unduly surprised if things change as you move along. This is a typical risk with any software project. A good way to handle this is to use an iterative development style. More about this and other useful techniques are mentioned in a prior article of mine, Better Management for Software Projects (Developer.com, August 2002). If things do not work as expected, the iterative style will help you change a particular decision before too much time & resources are spent. Realising that a particular path is unsuitable before too much time and money has been spent still has value.

Conclusion

Making build vs. buy decisions frequently can be a challenge. Often, we do not have enough information and things can change during the decision-making process. However, it must be remembered that the aim should be to make a "good decision," not necessarily the "best decision." The business is a driver for making this decision and taking too much or too little time to make a decision can have bad long-term effects for the business. This also means that one should be willing to change a decision in terms of new information and changes in the environment.


Sanjay Murthi is President of SMGlobal Inc. He has over fourteen years of experience in the software industry in a variety of roles and responsibilities. He now helps companies to review and improve their software definition, development and delivery process. He can be contacted at smurthi@smglobal.com


Comments

Be the first to comment on this article.

Add a comment



(never displayed)



 
1500
What is the day after Monday?
Notify me of new comments via email.
Remember my form inputs on this computer.

The Top Five Software Project Risks

Colour risk blocks falling

A look at the top five software project risks identified in 'Waltzing with Bears' and how they have solutions rooted in Agile methods.

Project Planning in a Nutshell

Gantt chart

This article provides an overview of why it is important to prepare a project plan. It also shows what elements a good project plan will include.

Authority Earned, Not Given

Group of business people looking and pointing at a chart

For project managers, the support of their team is critical for completing projects successfully. Yet, a team's respect cannot simply be assigned like a task.

Undertaking a Successful Project Audit

Audit checklist clipboard with checkboxes marked for related concepts

A project audit provides an opportunity to uncover issues, concerns and challenges encountered during the project lifecycle.

PROJECT SMART is the project management resource that helps managers at all levels improve their performance. We provide an important knowledge base for those involved in managing projects of all kinds. With weekly exclusive updates, we keep you in touch with the latest project management thinking.

WE ARE CONNECTED ~ Follow us on social media to get regular updates and opinion on what's happening in the world of project management.


Latest Comments

Samara Grantham commented on…
12 Tips for Being a Good Manager
- Thu 1 December 2:46pm

Adolfina commented on…
Introduction to Project Management
- Mon 21 November 9:52am

Edward Brown commented on…
Project Status Reports Everyone Can Understand
- Wed 16 November 3:38pm

Latest tweets

General Project Management • Re: Project Resource Challenges https://t.co/P5EYYQRLNE #projectsmart #pmot about 10 hours ago

General Project Management • Re: Prioritising Change Requests https://t.co/H7HUyTPAfs #projectsmart #pmot about 10 hours ago

Business Book Reviews • Re: Project Management Booklist https://t.co/uZ1kSXN7OR #projectsmart #pmot about 22 hours ago