In a previous post, we discussed the business case for custom application development versus cloud-based Software-as-a-Service (SaaS) solutions. Custom applications can be designed to precisely meet your business needs and conform precisely to your business processes and workflows.
That’s not to say that custom apps are always the way to go. It can be a waste of time and money to reinvent the wheel by developing custom software when there are functional, reliable and cost-effective solutions already available on the market.
For example, it rarely makes sense to develop office productivity tools, backup software, security tools or graphics applications. There are many applications in these categories that are technically mature and tuned to the needs of a large audience of users.
Commercially available software products will often fit the bill nicely if your needs are general rather than specific. It is particularly suitable when an organization is:
- Small and able to adapt to the software
- Implementing very standard functionality, such as accounting software
- Implementing something that is very industry-focused
- Willing to adapt to market standards as opposed to taking a leadership position
Of course, you may have to configure these applications to suit your preferences, but that shouldn’t involve much time or effort — unless you are trying to make a square application fit a round requirement. It can be a budget-killing mistake to attempt to “customize” an off-the-shelf product in hopes of magically transforming it into something else entirely.
Customization should not be confused with configuration. Configuration can be classified as making minor adjustments to software packages to suit your existing environment and processes. You pick and choose various options to change certain aspects of a system’s capabilities, often using wizards provided by the vendor.
Customization involves significant changes being made to software to tailor it to unique requirements. It can often take weeks or even months, and generally involves teams of vendor engineers working with in-house staff to test, pilot and implement the changes.
Like anything else, customization can be taken to extremes. Some organizations make a valiant attempt to customize commercially available software only to find that their specific needs demand a professionally developed application. The wasted time, effort and cost can place severe strain on the IT budget.
When do you need to create your own software from the ground up? The key criteria appear to be business needs and costs versus benefits. Here are the five questions to ask:
- Can you make more money, cut costs, increase productivity or serve customers better with an application designed for your unique business processes?
- Are the available packages expensive compared to the value they bring to your organization? Are they overly complex and hard to use?
- Is the market dominated by one or two players who are not driven to innovate?
- Are commercially available options technically immature?
- Is integration with other applications within your environment needed?
Most importantly, you should consider whether a custom application could give your organization a competitive edge. If every other business in your industry is using the same software, a custom app could set you apart.
Contact SSD to discuss your business software needs. Our application development team can help you determine if a custom app is right for your situation.