The true nature of Custom Software Development – 1st Myth

See AMP Version

The New Millennium has witnessed the splendid triumph of « best practices » and « quality control » concepts, in almost all fields of activities. And most of all, best pratices and quality control have come to define the true nature of Custom Software Development in particular and IT in general, Communications and Information Technologies, which have accelerated their broadcasting.

2000 à 2010 – reminder

  • Web democratization, as well as Web design and programming jobs
  • Communications, Sharing & Implementation of Best Practices
  • Democratization of « best practices » concept in custom software development

 

Who defines the concept of best practices, broadcast it and why?

Expert firms such as Gartner, Forrester, KPMG, Deloitte, etc., that counsel large corporations and assess the evolution of standards within different industries to take their pulse, which is quite useful for investors and shareholders as well as for managers. It helps decision-makers to weigh their enterprise against their industries and to get to know the necessary means to keep the pace with the competition.

And clients? No doubt that the concepts of « bests practices and quality control » have benefited many clients from many different fields of activities over the last few years, among which IT in general and Software Development, in particular.

 

Who’s responsible for implementing best practices within enterprises?

Before the New Millennium, each Department Leader was responsible for implementing quality control (ISO 9000) and best practices within his production cycle. Since the New Millennium though, considering most departments of most enterprises have automated more or less their business processes mostly by way of Information Technologies, the responsibility have fallen upon the shoulders of the IT guy, namely, the CTO.

The CTO will be responsible, whether by its own initiative or as a request from another C-level, to implement best practices when either automating processes related to a new need, a new challenge or along an update or an upgrade.

 

Quantity vs Quality

Large corporations (Microsoft, Oracle, SAP, etc.) have invested massively in the development of their Software Suites which are, let’s be honest here, of great quality and pretend implicitly to integrate the best practices of the industry. And they sell dozens of thousands of these, which could be quite reassuring, we agree.

Thus, the general perception of decision-makers (CTO…) is that there are far less risks in buying a commercial software than to get one custom-designed; as though quantity (high sales volume) would guarantee quality.

Quality instead of quantity is part of the premises; it’s in the nature of Custom Software Development to create a unique software for every client.

 

Another false premise underlying the purchase of a commercial software is that it’s far cheaper to pay an annual license fee than to pay for the custom development of a software that you will have to maintain every year.

When in fact, in our opinion, both product go through the same development / implementation steps:

Commercial Software                                  Custom Development

Implementation Development / automation
Integration Development / integration
Personalization Development / personalization
Training Training
Updates / Annual Licence Fees Updates / Maintenance

« Personalization » being Achille’s heel of both approaches.  Some commercial softwares will be more expensive to implement because too many modifications are needed AND future updates would then become quite a challenge.  On the other hand, developing a custom software whose scope is too « elastic » could easily generate cost and schedule exceedings.

One must emphasize though that “personnalization” is deeply integrated in the nature of Custom Software Development, it’s part of the equation, it’s given.

 

Tell me what you sell and I’ll tell you who you are

While the commercial software will reach large volume of sales, the custom software will be developed once and will be sold and used by only one enterprise!

While the commercial software wants you to adapt the (their) « best practices », custom development wants to automate your best practices… and enhance them!

Custom development would also, by the same token, eliminate non-performant processes, automate the best practices because they are known to be performing, and if needed, integrate other best practices from your industry and finally, add some personalized functionalities specific to your enterprise or field of activities.

The goal of the commercial software is to get the commercial software going.

The goal of custom software development is to get the Client going, it is its nature.

 

The true nature of quality

The fact is that the concept of « best practices » has also been implemented in Custom Software Development; namely through quality control models such as CMMI or ISO 9001.

So if your custom software development supplier has implemented his industry’s best practices, the CMMI model or the ISO 9001 norm; well then, there are absolutely no reasons for you to believe you’ll be experiencing more risks in terms of cost or schedule.

Quite the contrary, considering that in the case of custom software development, custom integration and personalization to processes into place are de facto included with the methodology; then clearly, the level of integration and personalization will be higher in terms of quality.

Characteristics_of_Capability_Maturity_Model

 

CMMI / Iterative Model – Source : Modern Requirements

With Custom Software Developers; well, some are good, some are better. A good custom developer understands perfectly the impact of « best practices » on the performance of any enterprise because he, himself, has integrated his industry’s own.

So why, his approach would present more risks than a commercial software, that you will have to go through adaptation and personalization, anyway?

The answer lies in the software functionalities’ level of adequacy to your needs.  For example, if a commercial software truly meets more than 75% of your priority needs, then by all means, do choose this commercial solution.

 

Conclusion

A good custom software developer will have integrated his industry’s best practices in his processes, either the CMMI quality control model or ISO 9001 (or any other model); which in itself is a guarantee of quality control of in terms of cost and schedules.

They say the difference between a piece of art and a masterpiece lies in the details. If you enhance a business process’ performance critical to your enterprise to beat the competition, by automating it; maybe you will ensure growth for the next 5 years. This is an important detail, wouldn’t you say, a good software developer will spot that right away; and that also is the true nature of Custom Software Development!

So, which is in the best interest of your company; quantity or quality?

 

Denis Paul & Michel

Leave a Reply

Your email address will not be published. Required fields are marked *