Industry Transits towards Meeting International Standards
Date: Tuesday , September 04, 2012
PRQA develops static analysis and coding standards compliance tools. Headquartered in Surrey, U.K. and Boston, U.S., the company helps organizations develop high quality C and C++ code-software which generates results that are reliable and safe. Founded in 1993, the company is headed by Paul Blundell, Chief Executive Officer. Paul brings with him a sea of experience in the software industry including several start-ups. A dynamic leader, he has held key positions at various international companies over the last 30 years including Spectrum Energy and Exploration Services, Merlin Geophysical Ltd, and Sefel Geophysical. Paul is keen on finding the right talent in India to set up a development centre here and he explains how C++ is catching up with C language.
Helping Achieve Standards
At PRQA, we build and develop static analysis engines which are used by testers and developers to develop good quality code from the onset. The tools also help developers meet international standards like the ISO, MISRA C, MISRA C++ or the JSF. Our work is to analyze the codes and find defects in them. So we are all about failure and prevention of bugs in software. The key industrial area we work in is the embedded software markets. We are now aiming at the enterprise market too. Infotainment is another sector we cater to which is satellite navigation and that can be applied across any industry such as the medical industry. Because of our expertise we figure on international standards committee for C++.
Trends and the Growing Markets
We have had a 30 percent growth in our revenues this year. We see potential growth in automotive, aerospace, defense, medical and consumer durables. Another area that we now see growing is the enterprise area and banking system, especially dealing systems.
Automation in Germany, Japan and America is big. India and China are also catching up fast. US., Europe and China are very big in defense. The Medical industry is becoming a lot bigger especially in U.S. and Europe. We have very big growth rates in Korea. In China it's a lot of space and in South Korea it's largely automotive and consumer products.
The Indian automotive industry has a major uptake. Increasing quality issues are cropping up in the software industry. The Indian software industry realizes that it needs to be better than the Americans. We do not see many Indian companies building products of their own. It is surprising, since all the skills are here. For an instance it would be interesting if Tata build their own software for engine management, suspension or software systems for the cars. Probably as the auto industry matures here more such companies will come.
The most quality mindset I have seen in the software industry is Japan. They take software quality very seriously. Europe comes next, and then the U.S. The trouble with India is they are very worried about the cost in investment so that acts as a blockage. A lot of engineers here are aware of these requirements. There is still a mindset where other countries perceive India as a cheap resource.
C vs C++: The Superior Language
Although we see more products being written in C these days, C++ is growing greatly in the embedded market and also in the aviation industry. C++ is more difficult a language to use as compared to C. It has a bigger and richer library which allows developers to do things which would be much difficult to do in C. hence, more complex systems are being built in C++.
Use of C in the automotive industry is in the small control units but we see much bigger systems going into the aviation industry. We see C++ being adopted more because there are more tools supporting the language like tools that let people check if the product is working in the way that it was supposed to. But the biggest language by far is still C.
Presence of PRQA in India
We have more than 3000 customers worldwide. One of the major reasons for us to set up the Indian office was because there were a lot of offshore development centers in India and many of our customers like GE wanted to use our products in India as well. Though initially our clients were MNCs developing in India but we now cater to a host of indigenous organizations like ISRO, Ministry of Defence, TATA, Philips and many more.
The Indian office has sales operation and a support centre. All the development is currently done in London. It is a highly specialized field and we are on the lookout for language experts for C, C ++ and C sharp but also basically compiler writers. I am convinced that there is good quality software being produced in India but like every other part of the world there are people copywriting software where they are not qualified to do so.
Ever since our operations started in India in 2005, our interest has been to service only software companies developing C and C++ to systems that are producing high integrity software.
The importance of quality software in India increases because the country is a big name in outsourcing for big companies all around the world. The Indian industry needs to embrace standards and tooling. Employing engineers may be less expensive but we are fundamentally challenged as humans. Computing can automate the process and make it more accurate and much faster.
Challenges & Road Blocks
When companies hit a bottleneck while writing software, they call us onsite. The problem creeps in when even though the client knows that they have a problem with particular software, they are not willing to share information with us. All they say is that they want a software analysis on a piece of code.
Another issue is that the senior management does not understand the complexities of the software. They think software should be produced like mechanical parts. When software was first brought into cars, mechanical engineers were the driving force because they produced the functionality of the car. But as development stagnated software was brought in to increase functionality. But what they did not understand is that software is much more complex than mechanical engineering ever was.
Senior management also does not understand that an engineer can excel at writing software but he will still make mistakes. The company must provide engineers with the tools that will help them find those errors. Senior executives look at the cost of tooling and think that they can get more employees at the same cost. But throwing in more employees in the problem is not going to solve it.
The senior executives of the companies need to take an interest in how the software codes are run. There are hordes of disillusioned software managers because they don't receive enough support and investment from the board level. Certain companies recognize the problem and invest heavily in software. Such companies are a plenty in the North West. This maturity must develop in every sector.
What Lies Beyond
The industry will transit towards meeting international standards like the ISO standards in the software development area. For an instance the ISO 262626 requires not only the mechanical spare parts and the electronic spare parts to be certified but also the software. This is a new development and an indication towards the transition to standardization.
In the long term we will see governments insisting on more standards. In case the use of faulty software leads to loss of life, the government will check the reliability of the software and also the standards. We will have state of the art practices to ensure the reliability of the software. Governments around the world are now deciding on who can write software. A short course in programming does not make a person a software engineer. The industry itself has to make sure that the practitioner is well qualified to ensure quality.
(As told to Rachita Sharma)