阅读《构建之法》P384~391

时间:2022-08-31 13:23:27

  通过阅读《构建之法》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  自身

  软件工程师应当终生学习以提高自身的专业水平,并在工作实践中推动落实道德准则。

    对于道德问题最好是给出经过深思熟虑的基本准则,而不是仅仅列出许多详细的规定。这些准则应该影响你去更广泛地考虑谁将受到你的工作影响;去检查你和你的同事是否以应有的尊重对待他人;去推测如果公众被恰当地告知,那么他们将怎样审视你所做的决定;去分析你的决定的最低影响力是多少;去考虑是否你的作为够得上软件工程师的理想的职业行为。因为本规范代表那些从事该职业的人的共同意见,所以我们应该重视由那些有见识的、受人尊重的和有经验的同行在掌握全部事实的情况下,他们认为的什么是特定环境中最道德的行为方式,并且只在具有深刻的原因同时又经过认真仔细地判别之后才违反这种常规。

阅读《构建之法》P384~391的更多相关文章

  1. 2nd 阅读构建之法有感

    阅读构建之法有感 利用这一周的时间,我大致了解构建之法一书,这本书带我走进了一个全新的领域.它让我以一种新的视角去了解软件产业的发展和工作,领略软件工程的独特魅力,更给出了简单易懂的方式去理解何为软件 ...

  2. SE_Work1_阅读构建之法&项目管理实践

    项目 内容 课程:北航-2020-春-软件工程 博客园班级博客 要求:阅读<构建之法>并回答问题 个人博客作业 我在这个课程的目标是 提升团队管理及合作能力,开发一项满意的工程项目 这个作 ...

  3. 阅读&lt&semi;构建之法&gt&semi;第三10、11、12章并提出问题

    <构建之法>第10.11.12章 第10章: 问题:对我们了解了用户的需求后,但是我们想法和做出来的软件会和用户的需求有偏差,比如风格.界面的修饰等等,那么我们程序猿怎样才能让自己的想法更 ...

  4. 阅读&lt&semi;构建之法&gt&semi;第13、14、15、16、17章 与 《一个程序员的生命周期》读后感

    第十三章   软件测试 这一章介绍了很多关于测试的方法,比如说单元测试,代码覆盖率测试,构建验证测试,验收测试等,我有一个很纠结的问题,如果我开发软件,是把这么多测试全做完,还是挑一些测试来进行呢?如 ...

  5. 阅读&lt&semi;构建之法&gt&semi;10、11、12章

    第十章: 典型用户和场景对后面工作有什么帮助吗? 第十一章: 每日构建的目的是什么呢?有没有具体说明? 第十二章: 产品定位人群是否也局限了产品的可拓展性?

  6. 阅读&lt&semi;构建之法&gt&semi;第三10、11、12章

    第10章:典型用户和场景 阅读了第10章之后,我知道典型用户很重要,典型用户是某类群体的代表,他们的观点能够反映一类人的观点与对产品的要求,那么要怎么样才能够从一类群体里,选择正确的典型用户反映我们研 ...

  7. 阅读&lt&semi;构建之法&gt&semi;13、14、15、16、17章

    13章 这么多测试为什么不能整理出一个包括所有功能的测试呢?看着那么多测试都感觉奇怪了. 14章 怎样才能体现一个测试人员的工作价值呢?这样的判断又是否会太独断了? 15章 在时间上,会不会因不同功能 ...

  8. 阅读&lt&semi;构建之法&gt&semi;第10、11、12章

    第10章 典型用户和场景 10.2 规格说明书 10.3 功能驱动的设计 问题:怎样写好spec?功能驱动设计的功能设计阶段怎样实现一个具体的功能? 第11章 软件设计与实现 11.2开发阶段的日常管 ...

  9. 软件工程---阅读《构建之法》P384~391

    -阅读<构建之法>P384~391后,我充分认识到软件工程师的职业道德的重要性,具体有: 原则1:公众 原则2:客户与雇主 原则3:产品 原则4:判断 原则5:管理 原则6:职业 原则7: ...

随机推荐

  1. IIS10 设置支持wcf服务&lpar;&period;svc&rpar;

    感谢: http://www.cnblogs.com/dudu/p/3328066.html 如果提示web.config配置重复的话,很有可能是.net framework版本的问题,把IIS中的版 ...

  2. Linq101-Miscellaneous

    using System; using System.Collections.Generic; using System.Linq; namespace Linq101 { class Miscell ...

  3. 普通用户登录PLSQL后提示空白OK对话框错误

    问题描述: 1.普通域账号登录域成员服务器后,打开PLSQL正常,输入用户名密码登录后提示一个空白的OK对话框,点确定后又返回到输入用户密码界面. 2.在CMD窗口下调用SQLPLUS登录数据库时报如 ...

  4. 打造你自己ajax上传图片

    今天,我们需要的图片上传插件,但是,互联网不提供符合他们的需要和易于使用的.所以我写了自己. 方法1,只使用jquery代码,.代码例如以下 <p> <label>上传图片&l ...

  5. app间互相启动及传参数

    http://blog.sina.com.cn/s/blog_13bc6705b0102wmc5.html http://blog.csdn.net/iefreer/article/details/8 ...

  6. 详解常用的gulp命令

    gulp.js是一款自动化构建工具,我们经常使用它在开发过程自动执行常见的任务.gulp.js 是基于 Node.js 构建的,利用 Node.js,可以快速构建项目. 由于gulp使用基于node, ...

  7. JFinal极速开发框架使用笔记&lpar;三&rpar; 分析Model和ActiveRecord

    JFinal框架的一些新发现的用法: 在JFinal框架中,实体类并不需要设置属性,更不需要配置getset方法就可以很方便的操作数据库,如果需要设置或者获取属性,可以直接使用一下方式: User u ...

  8. Java学习--抽象类和接口

    https://www.cnblogs.com/dolphin0520/p/3811437.html 抽象类 先了解一下[抽象方法]—一种特殊的方法,只有声明,没有具体的实现  abstract vo ...

  9. ES查询-term VS match (转)

    原文地址:https://blog.csdn.net/sxf_123456/article/details/78845437 elasticsearch 中term与match区别 term是精确查询 ...

  10. 12&period;Redis运维点

    12.Redis运维点12.1 Linux配置优化12.1.1 内存分配控制12.1.2 swappiness12.1.3 THP12.1.4 OOM killer12.1.5 使用NTP12.1.6 ...