Software engineers should be licensed

Civil engineering puts heavy emphasis on being licensed and for good reasons. In most areas of engineering being a licensed professional is of great interest to employers.

There is ample evidence that defective software is a cause in many failures of critical systems. In 1996, the European Space Agency (ESA) spent 7 billion dollars to produce the Ariane V, a giant rocket. On its maiden launch, the Ariane V exploded just forty seconds after its lift. A board of inquiry investigated the causes of the explosion and in two weeks issued a report. It turned out that the cause of the failure was a software error.

Reliability is especially important in certain systems. I would not expect all the software to have been made and signed by software engineers but, I could reasonably expect that the software that controls the crossing of trains or airport operations were signed off by a licensed software engineer.

It is all about liability and risk assumption. A licensed software engineer could place his/her signature on a document and that makes the insurance industry a bit happier. Professor David Parnas stated: “In other technical fields the engineering professions were invented and given legal standing so that customers could know who was qualified to build technical products. Software customers deserve no less.” (in An Unconsummated Marriage, IEEE papers, November, 1997).

Certification is a voluntary process administered by a profession; licensing is administered by a governmental authority. The IEEE computer Society has developed a certification program for software engineers and strongly recommends SW engineering licensing.

There are legally certified SW Engineers in many parts of the world. In the UK the IEE, Institute of Electrical Engineers and the BCS, British Computer Society via the Engineering Council confer Chartered Engineer status in exactly the same way it does on Civil, Mechanical, Marine and Aeronautical engineers. There are more than 30 other countries which are harmonising their requirements for licensed, certified or registered Software engineers.

I am quite confident that licensing and certification of software Engineers will happen in the next decade in order to increase the safety of the critical software. At least it will start to become a legal requirement in more places and projects.