04.10    

> home
> About
>
Contact Us
>
Editorial Info

> IEEE-USA

   feature   


04.10

Why Should Software Engineers Be Licensed?

By Lance Kinney

The licensing of professional engineers in the United States began in 1907. Since then, every state in the union has developed some sort of licensure process to protect the health, safety and welfare of its citizens by verifying the competency of those who wish to practice engineering.

To demonstrate engineering competency, all state licensing organizations require some form of the “three e’s” — education, experience and examination. At a minimum, these are operationalized in the form of an ABET-accredited baccalaureate degree in engineering, a minimum amount of engineering practice under the supervision of a licensed professional engineer, and the Fundamentals of Engineering (FE) and Principles and Practice of Engineering (PE) exams.

While many areas of engineering — civil, mechanical, electrical, to name a few — have been recognized and included in the licensure paradigm since its inception, software engineering as a distinct area of engineering practice is relatively new. The practice was first identified as a discipline separate from computer engineering and computer science in the 1960s, but the structure needed to support professional licensure did not exist until recently. The first baccalaureate software engineering program was accredited by ABET in 2002, and the body of knowledge for software engineering was formalized in 2004. However, the growth in the field has been rapid — with 19 ABET accredited programs to date and the approval by the NCEES in 2009 to develop a Professional Engineering (PE) examination for software engineers (see www.todaysengineer.org/2009/Sep/Software-PE.asp).

Given all of this progress in formalizing a structure for software engineering as a profession, the question still remains: why should software engineers be licensed? The answer is simple: virtually every technology in existence or in development today is directly impacted by software engineering, including safety-critical artifacts such as real-time controllers and logistics systems. There is an enormous proliferation of products and services in both the public and private sectors that are directly dependent on software engineering. The need to establish a credential to demonstrate professional competency is the logical next step.

The Software Engineering Licensure Consortium (SELC), a group made up of representatives from IEEE-USA, the IEEE Computer Society, the National Society of Professional Engineers (NSPE), the Texas Board of Professional Engineers (TBPE), and NCEES, summarized the reasons for licensure as follows:

  • Licensure is appropriate: software engineering is a maturing discipline in which engineering principles are effectively applied to the development of software

  • Licensure is necessary: software engineering plays a vital role in the development of systems that affect the health, safety and welfare of the public

  • Licensure is feasible: the necessary infrastructure and support elements are in place to support an effective software engineering licensure path

  • Licensure places responsibility: software engineering designs and projects should be signed and sealed to ensure the quality of the work and protect the health, safety and welfare of the public

Failures attributed to software have been noted since the early days of computing, and the damage caused by those failures has ranged from trivial to catastrophic. There are many examples of software failures that might have been mitigated through the proper engineering design, evaluation and oversight by a professional software engineer, including electrical grid blackouts, air traffic control failures, medical equipment failures and various other high-profile corporate failures.

Imagine a large public works project such as a water treatment plant. Currently, this type of project requires the design expertise of many types of engineers — geotechnical, environmental, civil, mechanical, electrical and structural — who must all be licensed professionals. However, the person designing the software that integrates and controls all of the systems does not currently have to be a licensed professional. If all aspects of the design need to be signed and sealed by a professional engineer (P.E.) to ensure that they are done competently and correctly, then why do we allow the plant’s control system — which is critical for the success and safety of the project — to be designed by an unlicensed individual?

Traffic control systems, ‘smart’ buildings, and other systems that integrate software with the built environment also pose a major risk that we cannot afford to take now or in the future. Software engineers need to be licensed to demonstrate competency, to take responsibility, and to protect the health, safety and welfare of the public.

Back

 


Lance Kinney, P.E., is the interim executive director of the Texas Board of Professional Engineers (TBPE) and represents TBPE in the Software Engineering Licensure Consortium (SELC).

Comments may be submitted to todaysengineer@ieee.org.


Copyright © 2010 IEEE

 

short circuits

Your Engineering Heritage: Titanic, Wireless Communications, and the Popular Delusions of Mass Media

World Bytes: Animal Wildlife Crossings

viewpoints

reader feedback

archives

career articles
policy articles
all articles
2012
Dec Nov Oct Sep
Aug Jul Jun May
Apr Mar Feb Jan
2011
Dec Nov Oct Sep
Aug Jul Jun May
Apr Mar Feb Jan
 
 

archive search

 
 

Comments on this story may be sent directly to Today's Engineer or submitted through our online form.