Software Engineering Licensing Exam available for the first time in April 2013

Discussion in 'Off-Topic Discussions' started by BobbyJim, Feb 7, 2012.

Loading...
  1. BobbyJim

    BobbyJim New Member

    Licensing Software Engineers Is in the Works - IEEE - The Institute

    “If software engineers who write programs for systems that expose the public to physical or financial risk knew they would be tested on their competence, the thinking goes, it would reduce the flaws and failures in code—and maybe save a few lives in the bargain. That’s why IEEE has been working on an initiative to license software engineers who pass a competency exam. Several IEEE members are developing the specifications for the Principles and Practices Exam of Software Engineering, which is to be given for the first time in April 2013.”

    “So far 10 states have indicated they will offer the test: Alabama, Delaware, Florida, Michigan, Missouri, New Mexico, New York, North Carolina, Texas, and Virginia. Thornton says he expects the other 40 states and four U.S. territories to follow suit. That’s because NCEES produces exams that are used by all 54 U.S. jurisdictions as part of their licensure model, so by default the jurisdictions will have the new examination available.”

    Also: FAQs about Software Licensing Answers to FAQs about Software Licensing - IEEE - The Institute
     
  2. mcjon77

    mcjon77 Member

    Interesting, but pretty pointless. These kind of licensing regs pretty much govern the use of the title Engineer. What you will see happen is people will simply stop referring to them as software engineers, and start referring to them as software developers or a similar title(which they pretty much already do).

    This just seems like more of a money/power grab.
     
  3. BobbyJim

    BobbyJim New Member

    Pointless??? Protecting the public’s health, safety and welfare is pointless???

    Let’s just open up all professions to anyone that thinks they are qualified. Why not start with medicine, and then we can move on to deregulating teaching, accounting, the law and engineering. They are all just good ol boy regulations to restrict supply anyway.

    I think we disagree just a little bit here! :sigh1:

    “Professional licensure protects the public by enforcing standards that restrict practice to qualified individuals who have met specific qualifications in education, work experience, and exams.” NCEES: Licensure

    “Groups representing software engineers have long maintained that software engineering should be licensed because it is increasingly practiced in areas that reach into the everyday lives of the general public, such as traffic control systems and the electrical grid. An IEEE Computer Society survey of software engineers indicated that two-thirds of those employed in the industry support a licensure exam for their profession. “ And “"The Texas board believes that software engineering is a critical component of many engineering projects and that it's important to recognize the impact that software engineering has on the public's health, safety, and welfare," said Lance Kinney, Deputy Executive Director of the Texas board. "We're very encouraged by the support shown by IEEE, NSPE, and NCEES in the development of this exam." NCEES: NCEES approves new PE exam in software engineering

    BobbyJim, a Licensed Professional Engineer
     
  4. BobbyJim

    BobbyJim New Member

    I think the main point of the software engineering licensing program is to regulate engineered systems that are controlled by software – for the protection of the public. It should not matter what the job title is, but the person(s) doing the software engineering function is to be regulated.

    Of course, there will be industrial exemptions like in all other areas of engineering, but usually the industry exempted already has high-level quality assurance programs in place.

    Note: I disagree with industrial exemptions for any branch of engineering!
     
  5. mcjon77

    mcjon77 Member

    In this case it is a solution looking for a problem. We ALREADY have software running mission critical systems. How many of those systems were designed by LICENSED software engineers?

    So if none of them were developed by licensed software engineers, where are all of the thousands (hell, even hundreds) of deaths a year due to unlicensed software engineers?

    Your argument is flawed. You have mentioned examples of ENDING existing regulation on fields. We are talking about ADDING additional regulation on a field that has shown no need for it. We licensed doctors because hundreds (perhaps thousands) of people were DYING due to untrained "physicians". Again, where are the hundreds or thousands of deaths due to unlicensed software engineers?

    Regarding teachers, the law doesn't REQUIRE Catholic school and other private school teachers to be licensed, but it does REQUIRE public school teachers to be licensed. Maybe your area is different, but where I am the Catholic schools are VASTLY better than the public schools. I don't see scores of Catholic school students being left under-prepared when compared to their public school counterparts.

    As someone who has held the title of "software engineer" and has many colleagues who also hold that title, I GUARANTEE you that that two-thirds number will drop like a brick the moment folks read the details and discover that they need to take the Fundamentals of Engineering Exam, specifically the General Exam which covers:
    Mathematics
    Engineering Probability and Statistics
    Chemistry
    Computers
    Ethics and Business Practices
    Engineering Economics
    Engineering Mechanics (Statics and Dynamics)
    Strength of Materials
    Material Properties
    Fluid Mechanics
    Electricity and Magnetism
    Thermodynamics
    Biology

    Fundamentals of Engineering exam - Wikipedia, the free encyclopedia

    They are all going to have the EXACT same response that I have, "What possible reason would I need to know that stuff?"

    Do you realize that the VAST majority of software engineers do not have degrees in "software engineering" (which is a relatively new field)? Also, the VAST majority of software engineers (EVEN those who have degrees in software engineering) NEVER took classes that would qualify them to pass that exam. Why? Because the bulk of the information on the General Exam is POINTLESS for a software engineer.

    This is nothing more than a power play. there is a large segment of the "software engineering" community that feel as though they don't get the respect from "Real" engineers that they deserve. There is also a segment of the community that wants to create a firewall against further outsourcing encroachment into their field.

    This whole desire to just add government regulation and bureaucracy for little apparent benefit is annoying. Oh well.

    mcjon77, an Unlicensed Professional Software Developer.
     
  6. mcjon77

    mcjon77 Member

    Let me qualify my previous remarks with one note:

    I would have ZERO problem with the license as long as the exam and licensure guidelines were developed SOLELY by ACM/IEEE and was NOT under the guidance of NCEES. The IEEE exam is actually decent. IF we have an exam, lets make it an exam that covers WHAT WE DO. Not some exam filled with a bunch of crap that the NCEES thinks all "real" engineers should know (e.g. strength of materials, fluid mechanics, thermodynamics, etc).

    I still don't see much of a point (although there is more credence to a more focused exam being valuable), but that would be a fun certificate to get.
     
  7. SteveFoerster

    SteveFoerster Resident Gadfly Staff Member

    I've worked with IT since the '90s, including developing information systems, and I agree with mcjon77 completely. This is indeed a solution in search of a problem.
     
  8. BobbyJim

    BobbyJim New Member


    I didn’t look very hard for examples, but here is a small sample of ‘engineered systems’ software failures resulting in deaths:
    In one celebrated case, the radiological physicist and oncologist on duty could see nothing wrong with the device -- they ran it through a series of prescribed tests that showed nothing abnormal. And the patient injured by the X-ray had no visible sign of burns. But that patient, Voyne Ray Cox, died four months later. The Engineer's Companion/FAQ on Failures: THERAC-25

    Patriot missile radar system, used in Operation Desert Shield. A software roundoff error increased monotonically after eight hours continuous operation. This was corrected, but not before a Scud missile killed several US Marines. The Engineer's Companion/FAQ on Failures, Part One

    Eight Fatal Software-Related Accidents in which software-related problems were reported to have played a role. Eight Fatal Software-Related Accidents - Projects Processes - News & Reviews - Baseline.com

    Software can also have small unnoticeable errors or drifts that can culminate into a disaster. On February 25, 1991, during the Golf War, the chopping error that missed 0.000000095 second in precision in every 10th of a second, accumulating for 100 hours, made the Patriot missile fail to intercept a scud missile. 28 lives were lost. Software Reliability

    Again, I didn't look too hard but here are some financial cost associated with ‘engineered systems’ software failures:
    Northeast blackout. A programming error has been identified as the cause of alarm failures that might have contributed to the scope of last summer's Northeast blackout, industry officials said Thursday. ... The failures occurred when multiple systems trying to access the same information at once got the equivalent of busy signals, he said. The software should have given one system precedent. With the software not functioning properly at that point, data that should have been deleted were instead retained, slowing performance, he said. Similar troubles affected the backup systems.
    $6.8 – 10.3 billion. http://www.solarstorms.org/ICFBlackout2003.pdf

    It's now common to see multibillion-dollar efforts that take years or even decades to complete. And when that software is good, it can transform entire organizations, as companies like Wal-Mart and Dell Computer have shown. But when it's bad, it's horrid. Nobody really knows how much is wasted. In the United States, a conservative estimate is US $60 billion to $75 billion dollars every year. Learning From Software Failure - IEEE Spectrum


    Now, would you like to speculate as to the cost of potential terrorist attacks on infrastructure for poorly ‘engineered systems’ software: It may be only a matter of time -- 5 or 10
    years perhaps -- before we have a software failure that kills 1000 or more, but I doubt that
    will happen. So far our risky systems have proven to be robust even with ubiquitous
    software failures. A mounting concern, however, is the risk of cyberattacks that deny
    service or take over systems. http://www.yale.edu/sociology/faculty/pages/perrow/SW_Perrow_11-08.pdf
     
  9. BobbyJim

    BobbyJim New Member

    mcjon77, you are shooting the messenger. I didn’t have a hand in implementing the program, but I can see where it is something needed in the future as engineered systems become more software dependent.

    Re the exams: NCEE is mainly the administrator and record keeper for licensing exams. The fundamentals of engineering (and all of the course leading up to that point) are pretty useless in daily activities….until they are needed to prevent an engineered system from being a physical or financial risk to the public, and engineered systems are the topic. That exam is a step to the principles & practices exam …..what you actually do!
     
  10. mcjon77

    mcjon77 Member

    The question is whether you can demonstrate that those software bugs would have been caught had a LICENSED software engineer been on staff. With unlicensed physicians it is EASY to show how a licensed physician would have, most likely, not made the same mistake. I am reminded off a case where a person impersonating a physician missed obvious signs of severe diabetes in his patient that virtually any licensed physician would have caught.

    The reality is that there will always be bugs. Yes it is good to implement processes that make systems more reliable, but is it necessary to LEGALLY mandate licensure? I think not. If we are going to MANDATE that certain software engineers be licensed, we must first determine that licensure will significantly increase safety relative to the safety we have now AND that the additional expense of licensure is worth the additional safety. As of yet, I have seen no evidence of this.

    For example, some of the articles you linked to had multiple stories of engineering errors that were NOT software related. In many of them I would assume licensed Professional Engineers were involved in the process. Based on the fact that PE's were involved in the design of systems that ultimately failed, perhaps that means that PE's are inadequately trained. Maybe we should REQUIRE that any PE have a PhD his engineering specialty and AT LEAST 10 years experience . Additional education and experience can only help, correct?

    Would mandating that all PE's have at least a PhD and 10 years experience increase safety? Is it worth the expense?

    Look, I am not someone that says we should have no standard practices for developing safety critical systems. We should, and in most cases we do. My problem comes from government MANDATES that a software developer have a license. Make such certifications voluntary. If they have any value in the marketplace in terms of demonstrably increasing safety you will see an increase in demand for individuals with those certifications.

    We actually see that now in IT, particularly in the area of information security. The market has determined that certain certifications are very valuable for information security personnel and places a premium on those certs (the CISSP certification, for example).

    Above all, I do not want NCEES dictating that Software Engineers be required to learn (and be tested on) a bunch of topics that have virtually no relevance to their profession simply because all of the other "engineers" have to learn it.
     
  11. mcjon77

    mcjon77 Member

    I apologize if it seemed that I was attacking you. That was not my intention at all. I must admit that I do get a little passionate about this issue, if only because I have been observing it for over 10 years and have seen it take a decidedly unappealing turn.

    I actually agree that additional training, particularly in engineering processes for developing reliable systems is EXTREMELY important. In fact, it DOES need to be formally taught more. I would welcome a certification that covers those issues. My problem lies in government mandates, particularly when I suspect that these mandates are part of a power grab by certain organizations.

    The issue with the general exam is that it would add a solid year to year-and-a-half of formal schooling to SOLELY cover those topics that I have already stated are of almost no value to software engineers.

    Your point about the information being useless UNTIL it is needed to prevent an engineered system from being a risk is well taken. However, in cases where that would happen, the software would be part of a larger physical system. My assumption would be that physical system would be designed under the direction of a PE. I would much prefer that the PE manage those issues by communicating his requirements to the software engineer and participating in the establishment of testing processes to insure that those requirements are met.

    If PE's in charge of these projects develop a consensus that, as a matter of best practices, a particular certification be required for software engineers working in their projects, so be it. That is an informed market dictating the qualifications it deems necessary to perform a task. I have much more confidence in that than some government mandated license.
     
  12. BobbyJim

    BobbyJim New Member

    The question is whether you can demonstrate that those software bugs would have been caught had a LICENSED software engineer been on staff.
    How many people have to die, maimed or financially ruined before adequate proof exists? How much evidence is enough? You can still be an idiot if licensed – but you are legally liable for your screwups!

    My problem comes from government MANDATES that a software developer have a license.
    Actually the individual states mandate engineering licensing, not the NCEES nor the federal government…..’states rights’, ya know.

    For example, some of the articles you linked to had multiple stories of engineering errors that were NOT software related. In many of them I would assume licensed Professional Engineers were involved in the process. Based on the fact that PE's were involved in the design of systems that ultimately failed, perhaps that means that PE's are inadequately trained.
    Engineering licensing only requires minimum requirements to be met. Again, you can still be an idiot if licensed – but you are legally liable for your screwups!

    Maybe we should REQUIRE that any PE have a PhD his engineering specialty and AT LEAST 10 years experience . Additional education and experience can only help, correct?
    The various state licensing boards are actually considering higher education requirements: MEng or BSEng+30 by 2020.:cool:
     
  13. mcjon77

    mcjon77 Member

    There is an EXCELLENT article by the Association for Computing Machinery (the world's largest and most prestigious scientific and educational computing society) regarding this issue.

    http://www.kaner.com/pdfs/acmsafe.pdf

    The article was published back in 2000, however virtually all of their problems with software engineering licensure still stand (and in some cases have been magnified) in the decade since.
     
  14. BobbyJim

    BobbyJim New Member

    I would much prefer that the PE manage those issues by communicating his requirements to the software engineer and participating in the establishment of testing processes to insure that those requirements are met.
    Actually, that’s one of the legal loopholes in most states – responsible charge by a PE, and those working for him don’t actually need to be PEs. (Her for Kizmet)
     
  15. BobbyJim

    BobbyJim New Member

    Do you realize that the VAST majority of software engineers do not have degrees in "software engineering " (which is a relatively new field)? Also, the VAST majority of software engineers (EVEN those who have degrees in software engineering ) NEVER took classes that would qualify them to pass that exam. Why? Because the bulk of the information on the General Exam is POINTLESS for a software engineer . mcjon77

    Skipping over the need argument for software engineering licensing for a moment - if I were the Czar of software engineer licensing this is how I would handle the process.

    I’d recognize that software engineers are spilling out of the pipeline with ABET approved degrees (21 software engineering bachelors programs, 218 computer engineering bachelors programs, etc. per ABET Accredited Program Search), and that many qualified folks are currently in positions without the requisite engineering education…but otherwise qualified. So I’d allow a grandfathering and/or limited license clause.

    I’d allow 1) a period of time (3 years?) of ‘or equivalent’ education (a bachelors and some minimum science, software design, advanced math, etc. courses), 2) allow exemption of the fundamentals of engineering exam, 3) require the principle & practices and the ethics exams, and 4) require a minimum of 5 references from professional engineers….. to be sufficient for licensing. (In rare cases of exceptionally well qualified individuals like mcjon77, etc. :cool: I’d allow for an exemption of the principle & practices exam also, but require more references.)

    This would allow long-term practitioners to get on board, and they would encourage future graduates to become licensed software engineers.

    Remember the result of licensing is not to guarantee excellent competence or esteem – only a minimum level of competence. Licensing is primarily to assure minimally qualified and potentially legally libel engineers….. if the public is exposed to harm as a result of their actions.

    But I’m not the Czar……:sorry:
     
    Last edited by a moderator: Feb 10, 2012

Share This Page