Business needs vary enormously from one organization to the next. So, naturally, continual improvement to processes and techniques to effectively run the business is a must. Business owners always have to step out of the normal day to day to evaluate whether or not we're being effective, how we can improve inefficiencies and how we can plan for the future.
Because competition comes so strong and swift, we are in an age of process perfection. That is, we must understand our processes and constantly mine them for improvements. In many ways, we need to be like McDonald's where every small step has a predetermined sequence. This doesn't mean we'll abandon creativity and personality. With all their systems, McDonald's can be an amazingly creative force (e.g. Monopoly, kid's meals, play places). It's a common misunderstanding that boundaries limit creativity, but the contrary is really true (see "Creative Constraint: Why Tighter Boundaries Propel Greater Results"). Instead, we need to impose boundaries by tightening processes. One way to do this and track results effectively is with specialized software.
This isn't an easy task and choosing the right software to help you grow and adapt is crucial. The question often becomes "should I build a custom app that fits my needs exactly, or can I adopt off-the-shelf software to get close enough?"
Sometimes, this is an easy decision. Accounting software is used by just about every business, so there are an enormous number of flavors to choose from - Quickbooks, Microsoft Dynamics, MAS90, etc. Building custom software for your accounting needs usually doesn't make sense. The biggest issue arises when the business need is not a commodity, such as, a recycling company that needs to monitor pickups, drop-offs, sorting, and selling. Or a school district that wants to monitor facility usage and automatically adjust the HVAC system and unlock doors.
But, even with non-commoditized needs, someone out there probably has fulfilled the need and built an off-the-shelf solution that you might be able to use. So, the decision ultimately becomes how good is the fit or can you do it better with a bigger bottom-line impact by building a custom application?
Here are some pros and cons of both.
- Lower up-front cost
- Contains many features, often more than you need
- Support is often included or can be added with a maintenance contract
- Upgrades may be provided for free or at reduced cost
- If it's software-as-a-service (SaaS) there is no hardware or software to install
- Slow to adapt or change to industry needs
- Your feature request may get ignored if it doesn't benefit the larger customer base
- May require you to change your process to fit the software
- Higher customization fees (proprietary software vendors often charge ridiculous hourly fees unless they provide an open API)
- You can start with the minimum necessary requirements and add on later
- Can be tailored to your exact business needs and processes
- Changes can be made quickly
- Very high initial cost
- All changes and feature requests will be billable
- May incur additional costs ramping up new developers
Ultimately, you'll need to decide if you can use out-of-the-box software and fit a square peg into a round hole without too much pain or if you should build around the processes and systems you've worked so hard to develop. I suppose you could also do nothing and stick to the old way you do things but what's the fun in that?
I was once told by a business veteran that if there is a software solution that is good enough, then why incur the expense for custom development? I guess the answer depends on how fanatical you are about your business systems and how effective you believe yours to be over theirs.