阅读《构建之法》P384~391
通过阅读《构建之法》P384~391以及参考阅读杜老师给出的链接,得出一个重要的结论:软件工程师的职业道德至关重要。
软件工程的动态性和需求的前后关系,要求一个规范能对出现的新情形有较强的适应性和适用性。但是即使在这种一般性原则下,本规范也只对那些以文档记录职业道德态度并采取积极行动的软件工程师提供支持;即提供相应开发组中的个人以及整个开发组都可以求助的道德基础。本规范也帮助定义哪些是对软件工程师提出的道德上不适当的要求。
原则1 公众
软件工程师的行为应与公众的利益一致。
原则2 客户与雇主
软件工程师应以其客户和雇主利益最大化的方式做事,与公众利益保持一致。
原则3 产品
软件工程师应当确保自己的产品以及相关的修改满足最高的专业标准。具体来说,软件工程师应当:
3.01 力求高质量、可接受的成本和合理的计划,确保雇主和客户了解并同意你做的重要折衷,并让用户和公众也能了解这些折衷。
3.02 确保在开展或提议任何项目时,设定恰当、可行的目标。
3.03 识别、定义和解决各种与项目相关的道德、经济、文化、法律和环境。
3.04 确保自身有足够的资质去参与或准备参与相关项目。这里的资质由相应的教育、培训和经验组合而成
3.05 确保在参与或准备参与的项目中采用得当的方法。
3.06 只要条件许可,就应当采取最合适的专业标准去完成手头的任务,除非有道德或者技术上的正当理由来支持你不这么做。
3.07 力求完全理解参与开发的软件的规格要求。
3.08 确保软件的规格说明书是完善的、满足用户需求的,也经过了恰当的批准。
3.09 对于任何正在或计划进行的项目,要在费用、进度、人员质量和产出上进行合乎实际和量化的评估,而且要说明评估的不确定性。
3.10 确保项目的程序和文档经过足够的测试、调试和复审。
3.11 确保项目文档齐全,包括所有发现的问题和解决的方法。
3.12 致力于开发尊重用户隐私的软件和文档。
3.13 留心只用合乎道德和法律的手段去使用准确的数据,并且只按照被适当授权的方式去使用这些数据。
3.14 维护数据的完整性,注意过期和有问题的数据。
3.15 对于任何形式的软件维护工作,要具备同开发新软件时一样的专业精神。
原则4 判断
软件工程师应当具备完整且独立的专业判断。
原则5 管理
软件项目的经理和领导人应该提倡并亲自采用符合道德规范的方法来管理软描开发与维护。
原则6 职业
在与公众利益一致的原则下,软件工程师应当保证其职业的诚信和声誉。
原则7 同事
软件工程师应当公平对待同侪,并予以支持和帮助。
原则8 自身
软件工程师应当终生学习以提高自身的专业水平,并在工作实践中推动落实道德准则。
对于道德问题最好是给出经过深思熟虑的基本准则,而不是仅仅列出许多详细的规定。这些准则应该影响你去更广泛地考虑谁将受到你的工作影响;去检查你和你的同事是否以应有的尊重对待他人;去推测如果公众被恰当地告知,那么他们将怎样审视你所做的决定;去分析你的决定的最低影响力是多少;去考虑是否你的作为够得上软件工程师的理想的职业行为。因为本规范代表那些从事该职业的人的共同意见,所以我们应该重视由那些有见识的、受人尊重的和有经验的同行在掌握全部事实的情况下,他们认为的什么是特定环境中最道德的行为方式,并且只在具有深刻的原因同时又经过认真仔细地判别之后才违反这种常规。
posted on 2016-06-03 21:35 Glp_Moliny 阅读(260) 评论(0) 编辑 收藏 举报