Thriving in 2014 will be all about being able to adapt fast because the business environment is changing every day. And while organisations are trying hard to keep up with the demands placed on them they are frequently let down by unsuitable software. Mazdak Afshar, Software Architect, Geeks Ltd, explains why it sometimes pays to go bespoke.

Those organisations that can adapt their day-to-day operations faster stand the best chance of survival. With ever-growing reliance on software systems, adaptability of the whole organisation is somewhat bound to the adaptability and flexibility of its IT.

Business applications and the systems that support operations, sales, finance, marketing, customer service, and so on, play a huge role in how possible and practical it is to implement a change in any area of the organisation.

A recently published Forrester Research report on top technology trends for 2014 and beyond, states: ‘IT is losing its control over business intelligence platforms, tools, and applications often due to IT’s inability to operate at the increased pace of the business’.

The report also notes that business process management, which has been traditionally the territory of IT, is increasingly becoming the domain of other functions. Users demand more user-friendly, self-service features to automate ad-hoc processes without expensive and scarce IT resources. They also demand greater levels of process and data innovation, leading to various functional leaders wrestling control away from IT.

Ask around the office to see how many colleagues think of the applications they use every day as ‘perfect tools’ that enable them to be as productive as they can be. In fact how often do you hear ‘I love our IT. When I think of a better way to do things the IT guys will quickly implement my proposed change and enable me to do my job more efficiently.’ It’s more likely to be the opposite.

If you asked users and management in different departments such as sales, finance or operations ‘In an ideal world how would things be different in the applications you use every day?’, they won’t be short of great ideas that will not only make themselves but also the whole organisation more productive and effective. So how come they don’t get implemented?

The problem: software

Most software applications in use today are packages developed by third-party vendors who license them to a number of their clients. Some are cloud-hosted and some installed on premise. They usually provide a good foundation for common features and advertise themselves as being ‘flexible’ and ‘customisable’.

But how far can their ‘flexibility’ go in reality? Does the following story ring a bell?

  1. Everyone is unhappy with the current systems, or lack thereof.
  2. Different products are reviewed. Demos, sales pitches, …
  3. A vendor is selected. Their product seems perfect. Everybody’s excited.
  4. Weeks into implementation, everyone learns that the Devil is in the details.
  5. It’s now clear that the product was far from a perfect match. Compromises are made.
  6. The new system goes live; after a period of chaos it settles.
  7. Nagging starts about missing features, too much manual data entry, lack of integration with other processes, missing fields, many unused parallel and confusing features.
  8. Everyone learns that the product is not quite as flexible. Changing the product is too expensive or impossible.
  9. Hacks and work-arounds come in. Efficiency drops. Employee satisfaction drops.
  10. Frustration prevails. Innovation dies. IT’s catch phrase becomes ‘it’s complicated...’
  11. Back to step 1.

The truth is any product is bound to fail if its aim is to be a perfect and fit solution for more than one client, or even for a single client but at more than one point in time. Why? Because the target is moving. For example:

  • One client wants field XYZ to be mandatory, another wants it optional.
  • One wants an email to be sent automatically when ABC happens, the other doesn’t.
  • One wants X to be captured before Y, the other one wants Y before X.

Most products try to address this issue by being ‘configurable’, but their ‘configurability’ is limited to the specific areas considered during their design. And no, that won’t cover everything. And this becomes a bigger problem when the organisation is facing a pressure to change. If a change in the process cannot be implemented on the software applications that support the process, then it can become impossible to implement that change.

Bespoke software: It’s all about change

It has been long known that bespoke business software will by definition be superior to any off-the-shelf alternative in many areas such as:

  • It’s easier to use because it works the way you work.
  • It will increase productivity and reduce costs by automating repetitive tasks.
  • It makes business information easier to understand by incorporating your business know-how.
  • It precisely matches your working practices, resulting in improved efficiency, less supervision and fewer errors.

However, there is an even more important fundamental advantage to this when it comes to the organisation’s ability to adapt and change quickly and efficiently. Why?

  • You own the software and can choose to implement changes at will without being at the mercy of any vendor.
  • The turnaround time for implementing changes is much shorter because no other users’ interests need be taken into account.
  • Your own software differentiates you from the competition with unique and better products and services.
  • You will never outgrow the software or need to migrate to a different package and worry about complex data transition or retraining issues. Changes are made gradually with minimum risk over time.

So what’s the catch?

Developing your own custom business software can take quite a bit of time and budget initially and this has traditionally been the main reason for businesses to shy away from it and subsequently lose out on its long-term benefits.

However, times are different now. New programming languages and frameworks are promising order of magnitude productivity in bespoke software development, making it a viable option and economically sound strategic possibility for a wide range of organisations.

But what about IT departments?

With such drastic reduction of risks, time and costs in software development, bespoke systems can today be a viable option for forward-thinking organisations and business leaders who value business agility, responsiveness and flexibility. These values are important to the business, but how about the IT department?

The problem is that software development requires specialist knowledge not held by most IT staff and can be outside of their comfort zone. Generally, they will feel more comfortable delivering less specialist services such as installation of off-the-shelf applications along with their configuration and day-to-day operation.

To reduce risks, ensure delivery and secure a long-term investment, it’s usually sensible to outsource development of bespoke systems to specialist firms. They can design, build and manage bespoke applications usually for the long run. However this can sometimes create a territory problem for in-house IT unless there is a culture of innovation and forward-thinking already established.

As confirmed by many recent cases, in most organisations the decision to adopt a change-friendly bespoke software approach for business systems will usually have to be made at the top level, by the CEO, CIO or business department directors. Also, involving a specialist bespoke development firm to facilitate the implementation can fuel the transition to a change-friendly and dynamic business IT.

Mazdak Afshar is co-founder and managing director of Geeks Ltd, a successful and rapidly-growing software house in south London. As a developer, architect and business director, Mazdak has first-hand experience with all sorts of challenges, uncertainties and complexities involved in software delivery and maintenance cycle.