How to Unlock Business Growth with Custom Software Development
Sensible business solutions should increase profitability
Profits are highest when delivering products or services with the least effort (expense) for the maximum returns. Because of this, businesses that leverage fast, resource-light, efficient technology systems tend to grow fast and outmaneuver the competition. Enter custom software development
When it comes to business software, you have two options, off-the-shelf software and then you have custom software.
While off-the-shelf software packages can seem to promise a “one-size-fits-all” solution, they’re unlikely to provide the perfect answer to your own personal business pain points.
Custom software development is fast becoming a recognized go-to for gaining the edge in business growth.
Let’s look at why.
What is custom software development?
Before we can make any intelligent look at the scene we need to make sure we’re all on the same page regarding what we’re actually discussing. So we’ll first establish an understanding of exactly what we’re talking about when we say custom software development.
“Custom” simply means made or fitted to the needs or preferences of a specific customer. Also called “custom-made”, “bespoke” or “tailor-made”. The opposite of custom would be “off-the-shelf” meaning not designed or made to order but, instead, made for the mass-market.
To put this in a more friendly manner, “Software” is a list of instructions and it follows them based on what information it received. Just like many business processes, it is a formulated set of “if this” then “do that”. Software is no different. This is why many, if not all, businesses use software (instead of interns) to become successful.
“software should make processes more efficient.
“Development” of course simply refers to the process of building or creating something.
Putting this all together…
When we’re talking about custom software development we’re talking about: creating personalized technology systems that look at the exact workflow of your business, understand it’s various barriers and pain points and create ways to simplify them and take the confusion and human effort out of them.
The aim of custom software is to improve the value and profitability of your business by making it work better and faster while using less effort.
Why not simply buy “tried and true” off-the-shelf software?
1. Attempting to do everything without any knowledge of your unique requirements
Off-the-shelf software, also called “single-use software” will solve a specific or well-defined need or want. Another kind of off-the-shelf software, called “enterprise software” aims at providing several tools and workflows to allow a company to try and solve more diverse or fluid problems.
Single-use software: When off-the-shelf software stays within a very specific area and solves a specific problem well it becomes valuable and useful, think Microsoft Word, Excel, Outlook, Windows, Adobe Photoshop etc. These examples all refer to software developed for single use. When one tries to use off-the-shelf software to solve a more complex, constantly changing demand, for example automating the production flows in a business, it may add complexity and inefficiency. It can therefore actually hinder the value and profitability of the company.
Enterprise software: We call software that addresses the needs and wants of an entire organization (as opposed to an individual) enterprise software. Examples are Salesforce, SAP, and Oracle. Any major off-the-shelf, enterprise software solution still requires a software developer to customize the software to your own unique business’s needs. It then needs to be integrated with whatever other systems you’ve currently got running. The price of this specialist work is often just as much as the software product itself. This brings us to the next point…
2. Not necessarily cheap
Off-the-shelf, enterprise software also typically works off a subscription model which is charged for monthly per authorized user. This cost is over and above the cost of the initial setup fee. The initial fee is generally software cost plus the setup and integration with existing systems by the development team. The more specialized your requirements, the smaller the market is and the higher the subscription fee.
Unfortunately, this business model does not scale with the growth of your business. As you grow, your software costs will grow with you, instead of decreasing. This is in direct contrast to custom software, in which your fees typically stay fixed while your business grows.
The setup costs of off-the-shelf, enterprise software are also proportional to the size of the system being installed and these costs can be high.
The city of Cape Town, for example, spent over R1 billion ($70 million) to implement its process automation system. Even smaller to medium-sized businesses can easily pay upwards of R1 million ($70 000) to implement enterprise automation systems and this isn’t even accounting for recurring future costs.
Since these systems are powered by corporate giants like Microsoft and SAP they often attract top salesmen and sales agencies. One reseller will typically only sell one brand’s products. Unfortunately, this can drive a reseller to do anything to make their software look like the perfect choice, instead of taking care to truly understand your individual needs. This cycle can leave buyers at the mercy of an expensive system that they’re now heavily invested in.
3. Often bloated with useless features
Off-the-shelf software is usually fairly complex because it tries to offer a little bit of everything to everyone to appear more valuable. An extensive study on the actual percentage of features used in a typical off-the-shelf enterprise software application found around 65% of features are never used at all and only around 20% are used often. Consider what this means to your on-the-ground user in the trenches in your business trying to get production going and make you money… Realize that this individual on your payroll is going to have to wade through 65% to 80% of a program they will never even touch. Wasted time equals less production equals less profitability.
Proceedings of the Third International Conference on Extreme Programming and Flexible Processes in Software Engineering (XP 2002), Alghero, Sardinia, Italy.
To make a truly efficient, optimized workflow you want the only available choices the user could make to be 100% relevant to your business.
Let’s look at an actual real-world example of this…
A Safety, Health, Environment, and Quality Consultancy Agency (at that time called SHEQ Consultants, now called Elint) first attempted to use an off-the-shelf enterprise software package for their major client in 2014.
It ended up decreasing the amount of consultancy expenses (billable hours) by only around 9%. However, the price of the off-the-shelf software was just as expensive as the consultancy itself. The price to render services effectively doubled with the deployment of the off-the-shelf tool instead of dropping.
Much of the expense incurred by the off-the-shelf tool was to try to make it handle an area of business it wasn’t specifically designed for.
This highlights another point here: even though an off-the-shelf solution may have many features, it very often lacks key features you absolutely need.
If you’re interested in the entire case study covering this check out A Case for Outsourced Custom Software Development —The Elint/Co-Foundry Partnership.
“even though an off-the-shelf solution may have many features, it very often lacks key features you absolutely need.”
4. Locked into a provider’s network
Another disadvantage of using off-the-shelf solutions is that they don’t grow in the same direction as your business. Their functions and features are there to serve the mass market demand. In a year or two, you’ll inevitably plan to expand to a new level, break into another market or adapt your business to better service its customer base.
With an off-the-shelf solution every time you look at bringing in a new workflow involving new technologies and systems you’re going to have a certain anxiety present… How difficult is it going to be to integrate this new change into my existing system? Enterprise software developers are very open to expanding their software to incorporate new approaches or functionality. However, they may charge you for adding your requested functionality to their software. They may opt to build it for free but then make it available to all other users of the platform (even your competitors.) Factually in most cases, they will still charge but the cost will be less or more dependent on the choice you make (only open to you or open to all).
__________________________
In reviewing these points this isn’t to say all off-the-shelf solutions are a terrible choice. However, realize with an off-the-shelf solution you are walking down a road that is likely well-trodden and already adopted by competitors.
Custom software development already provides the edge in many markets
There’s a saying if you’re not ahead of the game you’re falling behind. You’re either disrupting the market or slowly fading into obscurity, maybe without even realizing it.
Evidence of this is everywhere. Streaming media giants like Netflix, Showmax, and others have made video rental sales plummet. Music CD stores can’t compete with cheaper, faster Streaming services like Spotify and Apple Music.
Everyone is looking for that secret, that extra edge on the market.
Take a close look at virtually any major enterprise in 2019 and you’ll see custom built web-based software and applications everywhere. As we covered earlier an advanced website is, in essence, the work of a software developer who has custom-built it to serve a certain purpose. The easiest to cite examples are of course: Google, Facebook, and Amazon. However, a look at virtually any business past a certain size and you’ll start seeing custom-built software being used more often than not.
Typical Uses of Custom Software
It is important to understand that you don’t need to be a large or digitally focused company to benefit from custom software development. Every company has software. Custom simply means it’s been tailored to your needs. Past the obvious examples like Google and Facebook, in which their custom software virtually is their business, let’s look at ways in which custom solutions are currently being used to get an edge on the game.
1. Content Management Systems (CMS)
Businesses that rely on a database of resources that need to be accessed internally or by their customers need an efficient system to manage this resource pool.
We partnered with SlikourOnLife, which has now become an urban music publication platform using our custom-built music sharing system. They wanted a system that would allow up-and-coming artists to share their talent with fans of the urban music genre. This system of connecting artists and fans has led to millions of downloads, just in South Africa alone. The platform advanced Slikour Onlife to a whole new level of operation as a business.
The ICC (International Cricket Council) sponsorship team had the problem of tracking and approving all the advertising content provided by multiple agencies for several big brands. The team had previously managed everything with email and checklists. They needed a custom content management system to centralize and categorize their enormous database of footage and media. They also needed to be able to easily track what advertising media was being displayed to the public. With our well-built database and server system this is no longer a problem.
2. Customer Relationship Management Systems (CRM)
A CRM system allows businesses to manage business relationships and the data and information associated with them. While there are many CRMs available as off-the-shelf options, for the reasons mentioned previously you may require a specific automated workflow in your customer interactions. It’s not hard to imagine how creating a highly tailored process of lead acquisition, service quality control, supplier control, order fulfillment, sales and repeat customer business can be a huge benefit to your business.
For example, an international client of ours, who opted to remain confidential, partnered with us to replace their existing CRM environment. They had been using an outdated and clumsy combination of 2 legacy applications, Salesforce (an expensive enterprise application) and their online payment portal. The new custom application CRM we developed for them lowered their licensing costs and left them with highly customized customer experience and a robust, easily scalable system for future growth.
3. Business Process Automation
Business process automation, also known as business automation or digital transformation, is the technology-enabled automation of complex business processes. It can streamline a business for simplicity, achieve digital transformation, increase service quality, improve service delivery or contain costs
These enterprise planning and automation systems very much fall into the complex and expensive categories covered earlier.
A custom process automation system, however, looks at the core issue you are hitting up against as a business and first addresses that issue precisely and rapidly. Then after handling one specific problem or bottlenecked area, the development team would move onto the next most pressing area and develop a system to deal with that. Before long you have a precise handling for a specific problem or series of workflows, without adding complexity and without creating more problems in the process.
Demonstrating examples of these systems in action could almost be as varied as there are business workflows in operation in the world today.
I’ll use an easy to understand example of this by sharing an issue a large retail chain had. This chain has many stores nationwide. A lot of them are outside major city centers in more remote areas. These remote stores had an issue with staff not showing up for work. The issue was further complicated by staff and local managers making it seem like they were showing up for work. Head office was pulling it’s hair out looking for a solution with no easy view of what was happening on ground level.
All the managers’ offices already had fingerprint ID scanners for access to the office. By simply using that existing hardware, an extra layer of software was written to allow all staff members to scan their finger, without gaining access to the office. Once their fingerprint was scanned it was compared to the shift schedule in SAP (their current enterprise system). After 1-hour head office was able to see who was at work and who was not.
Choosing the Right Software Developer
1. How to find a developer you can trust
With custom software development we don’t easily see what’s being built or ordered until it’s already completed. This can make the process of choosing a provider and understanding its value more challenging.
An easy to grasp analogy for this process is the process of building a house.
You wouldn’t expect a beautiful, functional house to be built without an expert architect designing it and drawing up precise blueprints. You wouldn’t expect the architect to design exactly what you wanted without really understanding what kind of a building you were trying to create.
With custom software development the situation is no different. The development process begins with a highly specific request for proposal. This is best done from an informed point of view. If you’re going to commission a project in an area you possibly don’t understand that well, get someone who does understand on your side who can advise your decision-making process.
2. Draw up the plans
Once you’ve chosen your “architect”, using a consultant to inform this choice as needed, let them go ahead and create the precise plan required for your project.
Without a detailed plan, well laid out by a professional, you’re going to miss out on accounting for essential features. Hidden costs can then come back to haunt you as the project unfolds.
3. Take the project to tender
You now know exactly what your project requires.
It’s time to find that developer who matches these documented needs. Developers tend to steer you in the direction of building software that suits their own skills and specialties, not necessarily what is best for your project. For example, the technology platform you build on has a huge impact on the project as a whole. Different developers have different preferred technology platforms.
The fact of drawing up your accurate planning documentation in the previous step, guards against this possible pitfall. Instead of getting what any one developer specializes in, you’re held on the best path for your specific project. You can now more easily select a developer who is best suited to your specific project.
4. Establish your project management approach (Agile vs Waterfall)
Essentially this a question of how to execute the project. There are two basic approaches here: the waterfall (traditional) development approach and the agile development approach.
“Waterfall” means that you as the payer get to outline what you want. The developer will go and build it to completion and then give it back to you, as per the specifications. This is purely a deal between the payer and developer at the pre-established cost. The needs and wants of the user are only assumed and not tested in the real world. However, as the payer, you are reassured that you are getting 100% of what you are paying for because you are buying a product. You end up with good cost control, not necessarily a useful end product.
The “agile” approach means that the developer will build sections of the project to completion at a time, instead of the entire project at once. These sections are then released to the user, and the developer moves onto the next section. While the user is now testing out the product, insights into workability are gained and new business opportunities can arise. The payer has the discretion to direct the developer to act on these findings. This may mean that some of the initial scope of the project will be put aside, or project costs will increase as new project scope is established. The payer in this approach is buying time. The aim of agile is to build the best product for the user, in that amount of time.
One could say that Waterfall (traditional) is more centered on the process, while Agile is focussed on the best possible experience for the user.
At Co-Foundry Development House we highly recommend an agile approach. We’ve found this gives you a far better chance of building software that serves the purpose it was built for. It also gives you a workable system in a short space of time so you can immediately start seeing results and choose the best path ahead.
In summary
I hope you come away from this article feeling better informed about this growing trend in business growth and process optimization.
If you’re looking to partner with a reliable, high integrity, high-quality custom software development house able to rapidly turn out a workable product on schedule, drop us a line.
We’d love to hear what kind of challenges and opportunities your business runs into that our development house could help you solve and capitalize on.
Want Help With Your Software Project?
Get Our Free Ebook: How to Build Winning Custom Software – A Guide For Businesses and Entrepreneurs
By subscribing, you agree to get emails from Co-Foundry. We’ll respect your privacy and you can unsubscribe at any time.