There are many blogs arguing both sides of the build vs. buy software argument. The “buy” camp believes you get more for your money purchasing off-the-shelf software, while the “build” camp believes you get more of what you want by creating software yourself.
Is there a single correct answer? No, but when it comes to enterprise asset tracking software, it is far cheaper, easier and more valuable to work with an expert, off-the-shelf solution vs. creating one yourself.
Building software is harder than you think
I wrote software for ten years and have been building a software company for more than a decade since then. I’ve learned that projects usually take three times as long as you think, due to the incredible volume of hidden landmines that lie in your path. Increased development time results in additional costs and lost opportunity.
Requirements are never fully known up front and change over time, systems with which you must integrate change underneath you, new hardware devices and operating systems release and break what you built…All these factors create a chaos that can destroy the best laid schedules and increases costs. You will spend three days on what you think should take three hours, no matter how well you architect your software.
You get the benefit of expertise
At AMI, all we do is build asset tracking software and work with clients to track millions of assets. When we meet for our daily standup, we discuss features requested from our enterprise AssetTrack clients, problems we’ve encountered with new ITAM or CMDB system updates, new devices our customers have purchased they need supported, all of it having to do with tracking assets well.
When you work with experts like AMI, you benefit from their experience and save a lot of time and money by not learning the hard way. Their customers have the same needs and problems as you. Therefore, they know your requirements and roadblocks before you do, because they’ve dealt with many clients trying to solve the same problems.
You need more functionality than you think
Asset tracking seems simple. You just need barcode or RFID data capture tools to easily capture asset information, and to have those tools integrated with your backend. Simple.
Or is it? (Hint: No, you need more than you realize)
- Scanning tags is easy. Evaluating what is scanned to differentiate asset tags from model codes from location codes from PO numbers is harder. Using the scanned data to retrieve records from the appropriate sources to perform the right function is downright difficult.
- Data capture tools must be implemented across all device platforms and must support various scanning technologies and plug-ins. Your users have various device platforms that will change and improve year-after-year. Try telling your iOS users they have to stick with iOS 7 as iOS 10 ships, or try telling your Android guys to use Windows Phones. These limitations lead to frustration, slow user adoption and ultimately poor data quality.
- Handling data conflicts between multiple users is hard. You need to apply updates to the repository in the correct order so data doesn’t get out of sync. The software must detect conflicts and handle them appropriately.
- You need to track user activity and log exceptions to learn where your asset tracking processes are failing to remedy problems. You can lead the proverbial horse to the data center, but you can’t make it scan a barcode. Your solution requires logging, so asset managers can monitor the process and ensure it’s being followed.
- Data collectors must be able to create new models, locations and users that aren’t found in master lists to complete their work. Without a data reconciliation method, this data will stream into the repository unchecked and lead to a corrupt database.
- The system must detect unknown assets and enable data collectors to quickly capture asset inventory details without excessive clicks and taps. Developing clean, efficient user interfaces takes planning and experience. You need years of user feedback incorporated into the product design to build an effective and superior software product.
- Asset managers must be able to review collected data for exceptions, and be given tools to reconcile and correct errors before changes are applied to your backend. Without this, your internally built asset tracking software will corrupt your database.
- Data must easily integrate with your backend repository which will go through upgrades year-after-year, potentially breaking interfaces and requiring code changes.
Off-the-shelf software is more affordable
When you build your own solution, the cost of development is all on you. AMI has invested more than 40,000 developer hours into designing, building and refining AssetTrack. You do the math.
With off-the-shelf software, the cost of development is spread across many clients, allowing software producers to license the product at a fraction of the cost to build it. The .99c app from the App Store cost quite a bit more than that to build, but if a million users download it, the economics make sense for the developer. For this reason you get more for your money with an off-the-shelf product.
Well-built software will let you customize easily
Yes, you CAN buy software that lets you customize the interface and workflows without writing code. Not all tools are hard-coded to do specific tasks in a generic way. AMI’s AssetTrack was designed from day one to provide configuration tools enabling customers to customize data fields, tasks, security and workflows specific to their process, vs. requiring customers to change process to meet the requirements of the tool.
Off-the-shelf software is maintained for you
As backend systems and platforms change, well-supported software is maintained by the software companies that create it, ensuring compatibility with new releases of operating systems, devices and backend systems. Rely on the software manufacturer to keep an eye on the market and spend the time building, testing and ensuring compatibility as the environment changes.
Software developers are mobile
You may have a great developer on staff today, but will you tomorrow? You have that one developer who built a scanning tool that interfaces with your ITAM or CMDB system, letting you scan in serial numbers and update locations of assets. It works pretty well, it’s simple, and gets the job done…
..Until it doesn’t work anymore, and that developer moved on to another company or department. He never saved the source code in an accessible repository, nor created any documentation or transferred any knowledge of how the software works. Now you’re left wondering how to fix what you don’t understand, spending money again to have a new developer try to unwind the source code, if she can even find it.
This is the dreaded hit-by-a-bus scenario that will happen to you if you rely on a single named resource to build custom software for you. Developers get bored often leaving for new opportunities. I sure did.
Software development is not your core business
Okay, maybe you’re a software company, but chances are you’re not, and chances are that you don’t create asset tracking software as a business. If you do, fine, you can build your own system. Otherwise, you should spend your resources on doing what makes you special in the market, adding value to your products and services.
There is no one single correct answer to buying or building software, as different applications, requirements and market opportunities affect the decision. When it comes to asset tracking systems, leave it to the experts. You’ll be glad you did.
Author: Tom Watson
Tom Watson is AMI’s President and CEO. He began his career in high tech in 1996, as a software engineer for his own software company, Market Matrix. After joining IT Asset Management firm Micropath as senior architect for that company’s asset tracking system, he founded AMI to develop hardware asset tracking technology solutions for enterprise IT Asset Management customers to maintain complete, current and accurate data on their own.