- Leanne Cullen , Clair Hillier
- Architects, Engineering & Construction
- Distribution and transport
- Local government
- Professional services
Let’s start with a few assumptions
Whenever the word ‘bespoke’ is uttered with regards to business systems, alarm bells start ringing in people’s heads and there is an overwhelming urge to back away and keep a tight grip of your purse strings. An understandable reaction, given the horror stories that you hear of in the media about failed IT projects and bespoke systems; the most notable one recently being Lorenzo, a ‘full service software system for running an acute hospital’. The government has spent £11.4 billion on this to date, the project has been running for eight years and appears to have achieved very little. It has been stated in parliament that ‘the largest civilian I.T. project in the world has failed'.
This is one of the most recent high profile cases but the media is littered with examples of software project failure. So, on the back of all this negative media publicity that software projects get – why on earth would a business decide to opt for a bespoke system? They are expensive, time consuming, risky, scary, hard work, and poor quality… Or are they?
Well, I’d be lying if I said that all of the above is absolutely untrue; bespoke systems can be more expensive, they can take a long time to develop, they are quite scary and risky projects to undertake, they do require a lot of hard work and sometimes they cannot deliver to quality expectations. I would argue that those reasons don’t solely apply to bespoke systems; they apply to any change of business system, whether bespoke or ‘off-the-shelf'.
Terminology is often confused; we need to be clear on what we mean
Bespoke is ‘custom-made’ or ‘made to the customer’s specification’ and this definition can be applied to bespoke development. However ‘bespoke development’ doesn’t just mean a full, written from the ground-up, and built for a specific purpose, line of business application; it can also encompass:
- Bespoke integration between existing systems
- Small add-ons/plug-ins for off the shelf systems
- User friendly screens/forms that link to the back end databases of existing systems
- Reports that extract data from existing systems
- Heavy customisation of enterprise platforms (such as Microsoft SharePoint and Microsoft CRM)
Bespoke development is essentially any development that is implemented for a specific, unique purpose. An ‘off-the-shelf’ business system is provided by a commercial vendor who has developed the system based on a ‘one product fits all’ and a best of breed concept to fulfil the needs of many. ‘Off-the-shelf’ business systems that work purely out of the box and work perfectly when installed are few and far between because:
- They need to be configured to fulfil the business requirements
- They need to be integrated with other systems
- They require ‘tweaking’ to fit in with the business’ processes
- They may not have all of the features required
Generally, to make an ‘off-the-shelf’ product fit the business, process compromises have to be made OR some form of bespoke development is required.
Is bespoke more risky or is poor project management to blame?
With over 8 years involved in project managing the implementation of bespoke systems, experience has taught me that the difference in risk to a business choosing to develop a bespoke system or choosing to select and implement a product is negligible. The major risks are related to the process of actually delivering the system as well as the business change associated in implementing it. The perception and understanding of those risks are much greater when undertaking bespoke development – purely because they are more visible. Some of these major risks include:
Not well defined or understood requirements mean a bespoke system would be difficult to develop until the requirements are understood; with a product it will do ‘something’ but it may not fulfil your business requirements. You could argue that bespoke development forces you to look at your requirements and review/document your business processes. It is too easy to buy an off-the-shelf system with little regard for what is actually required.
Lack of engagement from the users
For a bespoke system to be successful it is essential that the people actually using the system explain their processes and requirements – as well as reviewing prototypes, demos, and engaging with the testing etc. With an off-the-shelf product this is not as important as there is less scope for the users to dictate the look, feel and exact functionality. The real risk of a lack of engagement is that the lack of involvement in shaping the system could lead to change management problems as well as a system that does not fit the users’ needs.
Lengthy timescales and the impact on delivery
During the development of a bespoke system, the business will change so the requirements for the system may need to change too. This problem is exactly the same for an off-the-shelf solution, as the selection and its implementation can be a lengthy process, where the need to cope with and respond to change during the process is also required.
Changing business processes and new systems training
Risks of change and user training exist whether the system is bespoke or off-the-shelf. Although there is likely to be more training materials and support for a product, it could be argued that a bespoke system could be more intuitive to use as (developed and project managed correctly) it will be designed to meet the needs of the users.
Bespoke is risky, but is not more risky.
The business objectives should define the solution – bespoke development is sometimes the best choice
Solutions driven by business requirements and technology should be selected through merit and the ability to meet the challenge. Based on this premise, a business should choose or develop a solution that solves their business problem. Here, I have highlighted both the circumstances under which a bespoke solution should be implemented and the advantages it may deliver:
- Exact Fit: The most obvious benefit is that you get a system that works specifically for you. No superfluous functionality. Nothing missing. No compromises.
- Fully Integrated: Building a bespoke system which ensures your business processes and any existing systems are fully integrated guarantees efficiency improvements through automation.
- Unique = Competitive Advantage: A system that is specifically built to your business needs and processes could provide your business with a competitive edge.
- No product exists in the market place: The requirements or the operations of the business may be so specialised or niche that there is no product that fits its needs.
- Sometimes it is inevitable: There are certain things that are generally considered to always be bespoke, such as a company website. Although these can be built using product-based Content Management Systems, the nature of a website is that it is unique to the company; content, design and structure is distinctive to your business.
- Technology Choice: Products are developed year upon year to increase functionality and improve quality. Changing the technology base of an existing product is time consuming and risky for the product vendor, which means products are usually slow to upgrade to the newest technologies. With bespoke you have full control over the technology chosen and can choose to use the most up to date technology and concepts – even co-ordinating them to your current systems.
- More Agility: The system is owned by you (assuming that you ensure the Intellectual Property is transferred to you), which means you can control it and control the changes that need to be made to tweak the system as and when your business processes change. Getting specific changes into a product developed by a product vendor may take a long time to appear into a released version of the product for use.
- Easier access to data: Systems integration and reporting can be easier in a bespoke system as the backend of the system is open and, assuming it has been designed correctly, intuitive to use. The data is not restricted through application interfaces as it would be with a product.
- Product License Costs and Support Costs: To license and support an implemented product can be costly, depending upon the number of users and their needs. After calculating the costs of licenses and the support/maintenance payments, it may be cheaper to build your own system, particularly if you are paying for features and functions that are not required.
- Product Upgrade Cycles: Having a bespoke system means you are not relying on and are not tied into a vendor upgrade cycle where you are forced to upgrade or risk running an unsupported system.
- A new product: For companies looking to be innovative and who believe they have found a niche in the market place; a bespoke system could form the basis of a new product, available for resale.
Where bespoke has worked
In the eight years that I have worked at Waterstons, we have delivered numerous bespoke systems to our clients. Some of the systems that we actively maintain and support were developed over 10 years ago and are still core to the businesses that they serve.
Here are some good examples where the use of bespoke software has added value to our customers:
B2B Salvage System
A business-to-business system to facilitate the communication of vehicle conditions between salvage operators and insurance companies.
The system was put in place to provide a mechanism to share data between the different third parties and provide integration with their own systems to ensure that the correct data flowed between them. The system was developed because:
- There were no other systems in the market place that would fulfil the specific business requirements – the requirements were in a niche market.
- There was a drive to improve the operational efficiency of the organisation through improvements to communication and the reduction of any duplication of effort. This meant the system had to be built to facilitate their business processes.
- There was a strong requirement to gain an edge over their competitors – the system enabled the business to ‘tie in’ their customers (insurance companies) due to the sophistication of the technology in place.
Supply Chain Management System
A supply chain management system for a global action sports brand distributor to enable their customers to view and order products online.
The system encompasses the whole of their core business process from product listing, sales ordering and purchase ordering, to integrating with their warehouse management system and with SAP Business One for their invoicing processes. The system was developed because:
- The business wanted to provide easier access to data, including: immediate visibility of changes to their product listings, collating information about which products were selling and improving the integrity of the sales data.
- There was a drive to improve the efficiency within their business processes by automating the collation of data and removing the duplication of effort and manual manipulation of orders, thereby removing any inaccuracy caused by human error.
- The business’ current SAP system could not be configured easily to satisfy their requirements. To build the bespoke elements into the system would have been costly as an initial expense, but would have also incurred additional costs and risks to the upgrade processes for their SAP solution.
- There was nothing available in the market place to deliver their specific requirements for the open communication and sharing of data with their customers.
- The system provided their customers with a better service as a result of the timely sharing of information.
- Their business processes were fluid and ever changing due to the influences of their parent company; the business wanted agility in their solution to change as the business changes.
Business Intelligence Warehouse
A repository of information stored about passenger data and trends for a regional airport.
The repository enables the calculation of key performance indicators to provide the airport with a mechanism to measure their performance, utilising data stored across disparate systems. The system was developed because:
- Core data was stored across several key systems within the airport and the combination of that data provided powerful insight into passenger behaviours.
- The wealth of information across the systems provided information on which to base and support future decision making.
- Tying all this data together provided the airport with an advantage over its competitors as it allows the airport to use the data and help provide a better passenger.
Getting it right – what are the main challenges?
If the business requirements and solution selection drives your business down the bespoke route, the most important things to get right are the delivery mechanism and the project management processes and capabilities:
The delivery mechanism
The mechanisms by which the project is estimated, planned and delivered will be imperative. There are many development methodologies employed by software developers, the prevalent ones being ‘waterfall’, a classically linear and sequential approach to software design and systems development, and ‘agile’, an iterative and incremental model. The methodology to apply to the development of a bespoke solution will depend on a number of factors including:
- How well defined the requirements are/can be at the beginning of the project
- How fixed the feature set is
- The nature of what is being delivered
- The availability of the users to engage throughout the process
- The nature of the organization
- The size of the team
- The non-functional requirements, such as safety and security
Choosing the right delivery mechanism suitable for the organisation and the project will impact the success or otherwise of the final solution.
The project management processes and capabilities
The application of thorough project management that delivers the solution is also imperative. The processes, tools and techniques employed to manage risk, change, quality, costs and communications in a structured and organised way is vital. In addition, employing a project manager with the social intelligence that is required to manage people under pressure is essential.
It’s all about understanding the risks and making an informed judgement
The choice of whether to develop a bespoke system or whether to implement a product is wholly dependent on the requirements of your business. If there is a product in the market place that fits the requirements, then an organisation would be foolish to look to re-invent the wheel. If the costs of implementing the product stack up against the business case, the requirements are fully understood, the implementation of the system is well managed, and the change within the business is acknowledged and managed, then product adoption will be a success.
Equally, if a bespoke system is chosen then as long as the costs for developing the system stacks up against the business case, the requirements are fully understood, the project is well managed and the change within the business is acknowledged and managed, the bespoke system will also be a success.
The major risks dictating the success or failure of a system are not related to the choice of a bespoke system or an off-the-shelf product; they are related to ensuring that the project management rigours, the delivery processes, the risk management processes and the change management processes are in place and are well executed.