Sep 24

 

It is imperative that a development team recognize technical limitations. It is equally imperative that a business work with the development group to build functional requirements which recognize these limitations.

Conversations about technical limitations need to happen early. Take the time to dig deep into the real limiting factors. Look at what changes can be made to business requirements to greatly simplify the system. This will help with scalability and maintainability. It will also lower the initial development cost and time. Often these changes can be made without significant impact to the usability and value of the product. By recognizing technical limitations early, time and money is saved now and into the future.

Time and time again I see systems that have been built around functional requirements requiring a far more complex system than necessary if technical limitations were recognized early.  An example of this is an application I have been working on for the past several years. It was built with the ability to edit any number of records on multiple pages of a search result set before saving the changes. Doing this made scaling difficult and costly. It also increased the complexity of the system to the point where maintaining and extending the system was slow and costly.

After a few years of supporting this model our development team finally asked how necessary this really was. After a little thought and discussion we realized that this ability was not actually useful.

If this conversation had taken place a few years ago we would have saved many thousands of dollars and had happier customers with a better performing system.

Recognize technical limitations early by putting in reasonable limitations and your products will be more profitable.