软件工程师道德规范

2008-04-09 04:06:56来源:互联网 阅读 ()

新老客户大回馈,云服务器低至5折

  1993年5月,IEEE计算机协会的管理委员会设立了一个指导委员会,其目的是为确立软件工程作为一个职业而进行评估、计划和协调各种活动。同年,ACM理事会也同意设立一个关于软件工程的委员会。到1994年1月,两个协会成立了一个联合指导委员会,负责为软件工程职业实践制定一组适当标准,以此作为工业决策、职业认证和教学课程的基础。为完成这项工作,他们提出了如下建议:

  *采用标准定义;
  *定义所需的知识主体和推荐的实践活动;
  *定义道德标准;
  *定义本科生、研究生(硕士)和继续教育(再培训和转岗)的教学课程

  指导委员会决定通过设立一系列的专题组实现这些目标。最初的几个专题组包括:软件工程知识主体和推荐的实践活动;软件工程道德和职业实践以及软件工程课程体系。
  软件工程道德和职业实践小组的目标是为软件工程师在道德上和职业上的责任和义务制定一份文件。本道德规范(草案)由IEEE计算机协会和ACM联合指导委员会的软件工程道德和职业实践专题组开发,并且已经过该委员会的审查。
  任何规范,如果认真制定并正确推行,都会成为推动职业化和建立社会安全保障的有力工具。它们不应该也不会只开花不结果,但这常常是人们对规范的错觉。本规范草案是在对多个计算学科和工程学科规范进行广泛研究的基础上做出的,意在教育和激励采用规范的职业群体和成员。规范也告诉公众,一种职业的职责及其重要性。规范向实践者指明社会期望他们达到的标准,以及他们同行的追求和相互的期望。规范并不意味着鼓励讼争,并且它们也不代表立法;但它们的确就影响专业人员及其客户的一些问题给出了实际的建议,同时也给政策的制订者提供借鉴。

序言

  现在,计算机越来越成为商业、工业、政府、医疗、教育、娱乐、社会事务以及人们日常生活的中心角色。那些直接或通过教学从事设计和开发软件系统的人员,有着极大的机会既可从事善举也可从事恶行,同时还能影响或使得他人做同样的事情。为尽可能保证这种力量用于有益的目的,软件工程师必须要求他们自己所进行的软件设计和开发是有益的,所从事的是受人尊敬的职业。为此,软件工程师应该坚持下面的道德规范。
  本规范含有8组由关键词命名的准则,这些准则均与专业软件工程师的行为和他们所作出的决定有关,也适用于本行业的从业者、教育者、管理者和督办人、下午制定者以及职业受训者和学生。这些准则对参与其中的个人、群体和组织相互之间的各种关系给出了区别,并指出了在这些关系当中各自的主要义务。
  规范中的每一组准则均以三个层次的道德义务阐述,这些道德义务都是专业软件工程师在所述的各种关系中所应承担的。第一个层次给出的是一组道德价值,这也是专业软件工程师和所有其他人就人性而言所共有的。第二个层次则是对软件工程专业人员提出的比第一个层次更具挑战性的一些义务。之所以要求第二个层次的义务,是因为专业人员应对那些会受到他们工作影响的人们负有特别的责任。第三层次也是更深的层次,包括了只与软件工程的专业实践有关的因素所直接引出的几项义务。每组准则中的条款是对相应的关系中各层次的义务的详细阐述。
  每组准则中的条款由对应于三个层次的三种不同类型的陈述组成。
  第一层次:渴望(对于真正的人)。渴望的陈述给出了方向和目标,并用于指导职业行为。这些指导性的要求对道德判断是非常重要的。
  第二层次:期望(对于专业人员)。期望的陈述表达了所有专业人员的义务和职业态度。虽然它们没有描述具体行为细节,但是它们清楚地指明了在计算科学领域中的职业责任。
  第三层次:要求(对于良好的从业者)。要求的陈述提出了在软件工程中更具体的行为责任,这些责任与当前的技术状况密切相关。本层陈述的范围从一般的渴望陈述到具体的可度量的要求。
  虽然所有层次的职业义务都已列举,但本规范并不打算包罗万象,也不希望它的各个部分被孤立地用来判定失职或违规。所列的准则和条款并不是很详尽的,不希望读者对于所有实际情形中的职业行为,简单地以此来区分哪些是可接受的哪些是不可接受的。本规范也不是一个简单地给出道德判定的道德算法。在某些情况下,本规范的各个标准有可能相互冲突或与其他的标准冲突。此时,就要求软件工程师结合当时的环境,以与本道德规范的精神最一致的方式来进行道德判断和采取行动。
  对于道德问题最好是给出经过深思熟虑的基本准则,而不是仅仅列出许多详细的规定。这些准则应该影响你去更广泛地考虑谁将受到你的工作影响;去检查你和你的同事是否以应有的尊重对待他人;去推测如果公众被恰当地告知,那么他们将怎样审视你所做的决定;去分析你的决定的最低影响力是多少;去考虑是否你的作为够得上软件工程师的理想的职业行为。因为本规范代表那些从事该职业的人的共同意见,所以我们应该重视由那些有见识的、受人尊重的和有经验的同行在掌握全部事实的情况下,他们认为的什么是特定环境中最道德的行为方式,并且只在具有深刻的原因同时又经过认真仔细地判别之后才违反这种常规。
  软件工程的动态性和需求的前后关系,要求一个规范能对出现的新情形有较强的适应性和适用性。但是即使在这种一般性原则下,本规范也只对那些以文档记录职业道德态度并采取积极行动的软件工程师提供支持;即提供相应开发组中的个人以及整个开发组都可以求助的道德基础。本规范也帮助定义哪些是对软件工程师提出的道德上不适当的要求。
  本规范还具有教育的作用,它指出了对任何想加入的继续从事软件工程职业的人的要求。因为它表达了该有关道德问题的一致意见,所以可以用作决策制定的指导,它也可以作为公众和渴望从事该职业的人了解有关软件工程师的职业义务的教育工具。

准则1:产品

  软件工程师应尽可以确保他们开发的软件对于公众、雇主、客户以及用户是有用的,在质量上是可接受的,在时间上要按期完成并且费用合理,同时无错。特别地,软件工程师应尽可能发地做到:
  1.01 保证他们所做的软件的规格说明很好地制作了文档,能满足用户的需求,并得到客户的认可。
  1.02 努力去完全理解他们从事的软件的规格说明。

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇:组合语言之艺术9theend

下一篇:不同类型企业的ERP应用