Software Inadequacy

Software or System Inadequacy is often found late in the game.

Software or system inadequacy could involve multiple or single aspects of its usage, such as functionality, reliability, useability, efficiency or portability.

If one or more of these facets are hindering business operations, this can not only have repercussions across functional areas of a business, but can also have a major impact on the bottom line.

The situation is further complicated by the fact that even after a proof of concept test, problems are often not found until "real" scenarios are encountered. This is the reason why it is sometimes more economical to use a consultancy firm that has experience with platforms and architectural issues and have familiarity with the potential problems and nuances of specific systems.

In identifying whether a business has software or systems that are inadequate, these questions are often asked:

This may seem like too basic a question, but sometimes asking the basic questions can identify the most significant business pains. Off the shelf software or modified open source software can often fall short when it comes to delivering what is needed. Although in-house solutions can be a better choice, sometimes the initial architecture can fall short by not anticipating and meeting all the requirements.

Scalability and the ability to increase volume and capabilities of a system should be something that is a basic requirement of any enterprise architecture and any element or node within that architecture.

This question would relate to the accurateness and maturity/recoverability levels in addition to the fault tolerance levels of the system. Reliability of a system can make or break a business.

The ability to integrate with different applications and systems can improve reusability, speed and effiency of any IT infrastructure. It also lends itself to a much more easily maintained infrastructure.

Tight coupling is sometimes necessary, however, if systems are more loosely coupled, it lends itself to a more easy-to-integrate architecture.