SAN JOSE Ė Can you pass the software test? Thatís the question The National Council of Examiners for Engineering and Surveying will answer when it offers its first Principles and Practice of Engineering exam in software engineering in April 2013.
NCEES got its start in 1920 running tests for state licenses that include a broad range of civil, mechanical and electronic engineering fields. Now itís stepping into the 21st century with its first software exam.
The developers of Angry Birds and their many peers can breathe a sigh of relief. This test is geared for coders working in so-called safety-critical fields.
Many state licensing boards have long said code developers should be regulated the same way as other engineering disciplines. Their expanding work in areas such as electric grids, traffic control systems and water treatment plants argues for such an exam, said a release from the IEEE-USA, a co-sponsor of the test.
"The exam is the result of a comprehensive survey study of several hundred software engineering professionals and the hard work of a dedicated committee of practicing software engineers with extensive experience in a wide range of mission-critical systems," said Phillip Laplante, a professor of software engineering at Penn State who chairs the committee developing the test, speaking in the IEEE-USA release.
So far ten U.S. states have requested a formal software engineering exam, including Alabama, Delaware, Florida, Michigan, Missouri, New Mexico, New York, North Carolina, Texas and Virginia, LaPlante said in an email exchange with EE Times. "I suspect that we will see test takers in other states too," he said.
The National Society of Professional Engineers and the Texas Board of Professional Engineers helped develop the test. It will be administered yearly and used by engineering licensing boards across the U.S.
"A software engineering license is not required by anyone I know--the proper college degree and work experience is all that's needed," said Dave Kleidermacher, chief technology officer for Green Hills Software (Santa Barbara, Calif.), a developer of embedded systems software. "Software engineering is definitely a mix of art and science," he said.
LaPlante disagreed. "If itís practiced well, it ought to be science, but it looks like art," he said.
The software exam will be similar in format to the three existing NCEES electronics engineering exams. They are open book style and consists of two batteries of 40 multiple choice questions. The group currently administers tests in person, but plans to move to an online test system in 2014.
Sample questions will be available in October. Registration for the test will start in mid-December.
The software exam will test nine roughly equal areas according to an online description. Topics span areas including requirements gathering, design methods, profiling, testing, maintenance and lifecycle models.
As a developer of mission critical comms. I don't think this exam will be very useful, it will be too general and not correctly targeted. Most of the critical errors encountered in our systems are due to configuration or specific un tested (previously unknown) use scenarios. Often mistakes are made by "non engineers", who would be outside the scope of this exam. Developing reliable mission critical systems requires plain common sense discipline from all levels of an organization.
I work with a computer based testing software company and have found that using computer based exams help meet the diverse needs of exam administrators in the academic, certification and licensing realms. Computer based tests provide fair and easy access to everyone. Moreover, enabling the use of computers would improve readability, thereby simplifying the grading process and deter cheating.
My name is Tim Miller and I'm the Director of Exam Development at NCEES. I need to clear up something written in this article. Currently, all of our exams are pencil and paper. We are moving for Fundamentals of Engineering and Fundamentals of Surveying exams ONLY to a computer-based testing format in 2014.This will NOT be online testing, but offered at specific computer testing centers.
Also, at this time the Professional (PE) exams will remain pencil and paper. The decision to move them to computer-based testing has not yet been made.
Have taken a similar approach to completing the online traffic school option offered to occasional speeders in California. Ten years ago, screen-scraped the motorists manual into a single searchable document, and I just run the test questions against it while online at home. Whole thing is just a racket to generate extra fees. Broke 100 mph this morning along the Mendocino coast in an A3. I'll never learn.
Nobody is forcing anyone to take the exam!
But, if you want to be called an Engineer rather than an engineering school graduate, you will have to prove you can pass the Fundamentals and Principles & Practices exams. In my experience, the most of the bellyaching comes from those that never bothered or knew they couldn't. Yet those same folks would never dream of going to an unlicensed physician, dentist, attorney or accountant ... go figure.
GM Samaras Pueblo, CO
It is difficult for me to understand how this could improve software quality or reliability when I deal with software groups around the globe that work together towards completing one product (embedded`- critical) . On top of that they use 3rd party software, open software and legacy software always on constrained schedules and resources. We even struggle to get the ideal software engineering workforce. If some states require licensed engineers I don't know how that would translate to good software engineers. Even if it translated to that, we would still have a myriad possibilities to get pieces of software from other places, and compliance to process, or understanding or experience do not correlates directly to software quality.(For example experienced engineers become over confident and skip process and are the ones introducing bugs).
Here's a thought: Wait until the exam is offered online in 2014, and meanwhile write a program that logs you into the exam site, parses each question and each multiple choice answer, searches the web for the correct answer, then enters that answer for you.
You score 100% by having a piece of code you wrote solve this problem while you are off doing something productive.
If you can do that, you pass :)
Join our online Radio Show on Friday 11th July starting at 2:00pm Eastern, when EETimes editor of all things fun and interesting, Max Maxfield, and embedded systems expert, Jack Ganssle, will debate as to just what is, and is not, and embedded system.