[SystemSafety] Licensing software engineers - care to take a test?

Steve Tockey Steve.Tockey at construx.com
Sat Mar 15 17:20:40 CET 2014


Oh. I should have added…

The example exam question is even wrong from the perspective that you don't "verify" requirements. You "verify" that the design and the code are consistent with the requirements (by testing and/or peer review). You "validate" that the requirements represent actual user/customer need. So the question really should have read "107. Requirements validation techniques include:"

:^)



From: Steve Tockey <Steve.Tockey at construx.com<mailto:Steve.Tockey at construx.com>>
Date: Saturday, March 15, 2014 8:12 AM
To: Les Chambers <les at chambers.com.au<mailto:les at chambers.com.au>>, "systemsafety at techfak.uni-bielefeld.de<mailto:systemsafety at techfak.uni-bielefeld.de>" <systemsafety at techfak.uni-bielefeld.de<mailto:systemsafety at techfak.uni-bielefeld.de>>
Subject: Re: [SystemSafety] Licensing software engineers - care to take a test?


Les,
A couple of comments in reply:

*) Canada, UK, and Australia have been licensing software engineers for many years. In Canada it's called "P Eng". In the UK it's called a "Chartered Engineer". I don't recall the label in Australia. In each case, I don't know how much any kind of exam figures into the entire process but I'm pretty sure there's some kind of critical exam somewhere in the process. And in all cases, I'm not aware of software being treated as any kind of special case. In other words, they all parallel the process already established for Civil Engineering, Chemical Engineering, …

*) The difference between licensing and certification is that licensing is mandatory to practice in some arenas (e.g., in the US it is where the health, safety, and the welfare of the general public is at risk) while certification is purely voluntary. I run the Certified Software Development Professional (CSDP) and Certified Software Development Associate (CSDA) certification programs for IEEE Computer Society (see http://www.computer.org/portal/web/certification). CSDP has been available for about 13 years, CSDA for about 6. CSDA can be obtained based on exam score alone. CSDP requires a 4-year degree (or CSDA) and about 5 years of on-the-job experience before one can even take the exam.

*) I am/was a member of SELC. The "Principles & Practices" exam (aka "P&P") that you are referring to is somewhat modeled on CSDP. There are many similarities but I can't speak for the precise details because I wasn't involved in the actual Software P&P exam. At an absolute minimum, CSDA/CSDP and the Software P&P exam are all based on the "Guide to the Software Engineering Body Of Knowledge" (aka "SWEBOK Guide", see www.swebok.org). According to the National Society of Professional Engineers (NSPE) one needs to be a professional engineer (PE) to work on any P&P exam. The Software P&P exam was created by people who are licensed PEs but in (mostly) different disciplines.

*) There have been licensed Software PEs for at least 10 years or more. The state of Texas had a waiver process where if you had roughly 15-20 years of on-the-job experience (less with a relevant advanced degree), you could get 2-3 already licensed PEs to write recommendation letters. The nationwide NSPE-level process was largely motivated by Texas getting inundated by waiver-process requests and not being able to handle them.

*) The requirements for getting a Software PE vary by state. Some states require a relevant technical undergraduate degree, some don't. Some states require the candidate to have already passed the "Fundamentals of Engineering" (aka "FE") exam. Some require more or less on-the-job experience. Some give more or less credit for having an advanced degree.

*) I would go for the Software PE myself, but my home state of Washington requires passing the FE exam first and it's quite the chore from looking at the FE study guide. An entire chapter of the study guide is on physical constants alone…

So understand that one is not able—under any circumstances that I am aware of—to become a licensed engineer of any kind (at least in the US) on the basis of one exam alone. Some degree of education and some degree of experience are required as well.

As well, as I say so often, certification and licensing do not prove competency—they only serve to reduce the risk of incompetency. Licensing a pilot, a doctor, a lawyer, or a hairdresser(!) does not guarantee that said individual is competent, either. Again, it just reduces the risk of them being incompetent.

Finally, the answer to the sample exam question is obviously (A). In (B), a project management review has little if anything to do with requirements verification. The same can be said for debugging in (C) and critical design reviews in (D). The question is really way too easy in my view. I would hope that the exam questions on the real P&P exam are much more thoughtful than that one. Given how difficult it is to write a good exam question, it's completely understandable that the poor questions make it to the "sample questions" pool and not on the real exam…


-- steve



From: Les Chambers <les at chambers.com.au<mailto:les at chambers.com.au>>
Date: Friday, March 14, 2014 11:29 PM
To: "systemsafety at techfak.uni-bielefeld.de<mailto:systemsafety at techfak.uni-bielefeld.de>" <systemsafety at techfak.uni-bielefeld.de<mailto:systemsafety at techfak.uni-bielefeld.de>>
Subject: [SystemSafety] Licensing software engineers - care to take a test?

Hi
There is a developing trend towards licensing software engineers, especially where they perform work on systems that affect the property, health and safety of the public at large. In the US, software engineers can be certified by State licensing boards if they have an accredited bachelor's degree in software engineering or equivalent, four to six years practical experience and can pass a multiple-choice test.
I have included a summary of what's happening in the US below.
Is anyone aware of similar testing initiatives elsewhere in the world?

Intrigued as to how you could possibly judge someone's competence to build a life-critical system with a multiple-choice test, I downloaded some sample questions. Given the conversation we recently had on V&V - would anyone care to test their arm on the right answer (as per the IEEE)?
Cheers
Les

----------- Software Engineering Licensure test question ---------------
107. Requirements verification techniques include:
(A) Formal inspections (e.g., Fagan inspections), requirements reviews with customers,
peer reviews, structured walkthroughs
(B) Project management reviews, requirements reviews with customers, peer reviews,
structured walkthroughs
(C) Formal inspections (e.g., Fagan inspections), requirements reviews with customers,
debugging, structured walkthroughs
(D) Formal inspections (e.g., Fagan inspections), critical design review, peer reviews,
quality assurance reviews



---------- Licensing in the USA ------------------
In the U.S.A. the Software Engineering Licensing Consortium (SELC) is the driving force behind SE licensure. SEs can be licenced if they have an accredited bachelor's degree in software engineering or equivalent, four to six years practical experience and can pass a test. The test specification is available at:
http://cdn1.ncees.co/wp-content/uploads/2012/11/Exam-specifications_PE-Software-Apr-2013.pdf
SELC comprises members of the IEEE-USA Licensure and Registration Committee and the IEEE Computer Society, along with the National Council of Examiners for Engineering and Surveying (NCEES), the National Society of Professional Engineers and the Texas Board of Professional Engineers.
The test is developed by IEEE representatives and administered by NCEES. Refer:
http://ncees.org/exams/pe-exam/
The test is offered by U.S. State licensing boards which have the ultimate authority over requirements in their jurisdiction. Each state may choose to either use the test or offer alternative paths to licensure, such as qualifying for “grandfathering” - qualification based on demonstrated experience in the field.
As of November 2013, thirty U.S. states required licensure for software engineers working on safety critical systems as well as those offering their services directly to the public.
Further details, including links to a study guide and sample test questions are provided at:
http://www.todaysengineer.org/2012/Oct/software-engineering-licensure.asp


-------------------------------------------------
Les Chambers
Director
Chambers & Associates Pty Ltd
www.chambers.com.au<http://www.chambers.com.au>
Blog:www.systemsengineeringblog.com<http://www.systemsengineeringblog.com/>
Twitter: @ChambersLes<http://www.twitter.com/chambersles>
M: 0412 648 992
Intl M: +61 412 648 992
Ph: +61 7 3870 4199
Fax: +61 7 3870 4220
les at chambers.com.au<mailto:les at chambers.com.au>
-------------------------------------------------

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.techfak.uni-bielefeld.de/mailman/private/systemsafety/attachments/20140315/5ee87d4f/attachment-0001.html>


More information about the systemsafety mailing list