关于软件工程师可以与医学专业人员或会计师归为同一类的观点,对他们试图解决的“问题”一无所知。在我对此发表意见之前,让我们先分解一下提出这项立法的监管机构副主席桑顿先生的一些论点。
桑顿说:“就像医生,会计师和护士这样的执业专业人员一样,软件工程师也应该获得许可。” “ 在选择承包商编写软件时,公众需要能够依靠某种凭证。”
-IEEE授权和注册副主席Mitch Thornton
表面上听起来很合理。毕竟,还有其他行业可能被认为是“成功监管”的行业。通过成功监管,我的意思是,如果您在黄页上仰望医生,则可以肯定地确定他或她已经在认可的大学接受了彻底的教育,并通过了许多考试,并且已经完成了居留权。以下是一些“成功监管”的行业(就专业人员而言)。
毕竟,您不希望任何人从胰腺中清除肿瘤或在镇外研究该核电站的离心机。为什么软件工程师不应该有类似的限制?
只有那些程序可能“危害公共健康或安全,保安,财产或经济的人,才需要进行测试”
这是一个模糊的表述,可以自由解释和应用。我可以说苹果公司或Facebook是美国经济不可分割的一部分-我现在是否需要获得政府的特别许可才能为他们编写代码,因为如果我无能为力地关闭该网站,可能会损害美国人的利益。经济?在我的上一份工作中,我不小心关闭了谷物升降机,因为它的cron工作有问题-可能危及食品供应。
我意识到我正在避免该提案的实际意图。其背后的思想是确保在您的新捷达上编写防抱死制动系统代码的人有能力并且得到适当的许可,可以为防抱死制动系统编写代码。在你的捷达上。
问题是:当今时代的软件工程涵盖了所有内容,您不可能针对所有学科进行测试。业务规则过于具体,各学科之间的差异也很大。我们的假设工程师在捷达(Jetta)上为ABS系统编写代码可能正在为伊兰特(Elantra)上的ABS系统编写完全不同的内容。他必须重新获得认证吗?
如果您对所有这些派生学科进行测试怎么办?假设一下,每个在电子商务网站上工作的程序员都被认证为具有电子商务能力的程序员。所以?这是否突然意味着这些程序员和公司实际上将做必要的验证并建立PCI合规?即使他们这样做,故障仍然会发生。
IEEE许可和注册委员会副主席Mitch Thornton认为,该考试将测试基础知识,而不是主题知识。
这是踢脚线。缺乏基础知识永远不是问题。我的防抱死制动器没有停止工作,因为Chuck苦苦挣扎于控制结构的概念。他们之所以失败,是因为由于尾灯电气短路而导致ABS关闭的故障,并且电源未正确重新布线。或者其他的东西。
我写的胰岛素泵软件没有停止工作,因为我缺乏基本技能。之所以停止,是因为当我的欧洲队友使用公制但我没有使用时,我在测量胰岛素分配方面存在一个错误。
您可以在开发中考虑到这一点,但是您永远无法通过认证进行测试。
如果此“证书”生效,将会发生以下情况:事件的数量将保持不变。为什么?因为它无法消除ABS或胰岛素泵故障的实际问题。