Build vs. buy: A new software paradigm
Building comes with a lot of development and maintenance costs. Buying, especially with so many specialized vendors and products available today, is typically in our best interests in the majority of cases.
Editor’s note: This blog post was originally published on CIO.com.
Every organization, no matter how complex, will add more software over time. This is because many process improvements are best solved with computerization. If better data or a simpler technique won’t improve a process, then chances are high that we will deploy new software to handle the need.
We’ve always had the choice to build or buy. But building comes with a lot of development and maintenance costs. Buying, especially with so many specialized vendors and products available today, is typically in our best interests in the majority of cases.
The costs of building
Building software is always an option. Most companies have either an available programming staff or access to consulting firms that will eagerly take on a project.
But when you build, you need to handle challenges that stand outside the actual data and application you need. Challenges like:
- Security – specifically user roles and privileges – securing data and the application from hacking, the environment, and so forth
- Audit logging
- Managing unstructured content that surrounds processes
- Another database you need to administer
- Perpetual maintenance requiring staffing and expertise
Developing appropriate software, expertise and processes to cover these needs is where the hidden costs of building crop up.
The costs of buying
As a result of the cost to build, most companies seek out the best boutique product on the market that fits their needs in a cost-effective manner. In addition to the software cost and maintenance, there are additional costs to consider:
- Administration staff: Managing the database, servers, network connectivity, devices, and so forth
- SaaS reduces this cost significantly
- Application limitations may reduce the maximum potential of automating the process
- What happens if you’re only using 40 to 60 percent of the features in the product you paid full price for?
- Frequent contact with the vendor on enhancements and issue resolution
- Software evolution control is external, so it requires time and energy to be heard by the vendor
- Impact to a complicated infrastructure of software solutions that have interdependencies of OS, database, browser and other compatibilities that this product will affect
- Are you suffering from IT sprawl?
These are all important factors you need to weigh before making your decision.
A new paradigm for building
Enterprise content management (ECM) systems are one answer to both the cost and challenge of adding new software. They are configurable platforms that let you build software solutions on top of significant infrastructure.
ECM systems inherently provide support for key build-development issues: Security, audit logging and support for unstructured content. They are extremely flexible platforms, enabling you to model the necessary business data and user experience you need.
And with the best of these products, you handle all of this through configuration, not custom programming.
An integrated collection of solutions
Because ECM products are solution development platforms, the expectation is that you will craft multiple solutions on top of them. Each solution and its assets (data structures, process flows, user experiences) are then accessible for every future solution.
The integration of data is all done with configuration, not custom code. This implicit ability to tie solutions together makes it very easy to build a 360-degree view of anything. And with configurable integration capabilities, you can tie the solutions into data within your main lines of business where they are the system of record.
Imagine accomplishing the 360-degree visibility you truly need without waiting for your line-of-business vendor to build their version for you.
Reducing the complexity of your future
Investing in ECM can reduce your overall software product purchasing trajectory. It eliminates the need for custom integration logic that you are writing today to blend and commingle data from disparate software products. With ECM, you significantly reduce the challenges of buying – and integrating – new software.
Since training in ECM solution development is measured in weeks, not years, for software development skills, you can be operational and building solutions for fractions of the staffing costs. With so much infrastructural functionality already present, you can also eliminate the risks on top of the costs for building solutions yourself.
The promise of ECM
Although ECM vendors and their products are all different, the general promise is that with ECM you will reduce the total cost of ownership and complexity of the software solutions you are managing and will add to the mix over time. The mature ECM infrastructure makes it easy to build exactly what you need for much less expense, time and project risk.
So take your time and do the research. It will pay off, tremendously.