Quality ….. A perspective into software quality standards
Rules are meant for fools
Know the rules to break them …
These are age old proverb which inadvertently is applied in all walks of life. Many of us don’t even realise it. Take a simple example like when you are learning to drive. Your instructor teaches you to start your car in gear 1, apply the clutch and when the car moves switch to 2nd gear. Carry on so forth. He gives clear directions on which gear to use under which circumstances. When in freeway switch to top gear, when negotiating a curve use 2nd gear or 3rd gear. All is good and followed till you master driving. Once you know the rules and have mastered it then there is no reason to follow it. You take things in your hands and start experimenting ….. Of course this concept of experimenting applies for the passionate lot only and not for mundane ordinary people who want to live because they just don’t want to die. We are talking about people who go the extra mile, people who want to make their own rules & create some history in the passage called Life. Such people will try all combination of gear, clutch and brakes in a car to see its reactions and enjoy the thrill.
Now focussing back to this article, what am trying to do it is to apply the same to our Software Industry considering the service based organisations and product based companies. Quality is a key parameter in any software product and many companies are trying their best to show the quality standards they meet. Coming to IT service industry in India, the companies primary business is to supply man power or take up jobs out sourced from other OEM vendors or tier 1 supplier. In such a business model they try to demonstrate their capabilities by showing that they are CMM Level 5 company or ISO certified organisation or in automotive world, SPICE complaint. When taking this direction I strongly feel that that primary crux of engineering is lost in this game. They simply focus on making and remaking standards and processes. They simply don’t understand the real game but just to show in paper and to win business, they get all levels of certifications. But all this is simply like getting a college degree. Its just the beginning and its not an achievement to assume real quality output which matters for a product based company. In order to emphasise this more consider the major product based companies like Microsoft, Apple or Oracle. What CMM standards they follow ? Are they level 5 certified or are they aligned to industry common quality standards. No. Why ? Thats because they know the rules far better to bend it and even break it. They simply clearly understand their business, their customer and make their own standards/processes to meet this. They feel the pulse of the customer and take decision at what matters most for the customer. This is definitely not CMM level or ISO standard. Whereas countless service based companies with many certifications struggle to meet the expectation of their customer. There is a subtle difference between engineering a software when in a service based company and in a well proven product based company. This is well understood by Software Designers & Architects. Real quality is never achieved by these standards, real quality can only be shown by passionate engineers i.e architects, designers & testers who clear know the game they are into. Management support for such engineering team and the understanding they have is the key to successful business. In this context in service based industries when it comes to management team then there is a gap. Because they simply don’t get the game. All they know is customer is complaining that should not happen. Bring a QA person and include quality, thats all. Nothing can be achieved in this way. So understand, rules are really meant for fools… know the rules to break it. Enjoy your engineering ….. !