《第7章-社会与职业问题.pdf》由会员分享,可在线阅读,更多相关《第7章-社会与职业问题.pdf(76页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、第第7章章 社会与职业问题社会与职业问题 2020世纪世纪8080年代以来年代以来,随着计算技术随着计算技术,特别是网络技术的迅特别是网络技术的迅 猛发展和广泛应用猛发展和广泛应用,由这一新技术带来的诸如网络空间的自由这一新技术带来的诸如网络空间的自 由化由化、网络环境下的知识产权网络环境下的知识产权,以及计算机从业人员的价值以及计算机从业人员的价值 观与工作观等社会与职业问题已极大地影响着计算产业的发观与工作观等社会与职业问题已极大地影响着计算产业的发 展展,并引起业界人士的高度重视并引起业界人士的高度重视。 主要内容主要内容 道德评价和道德选择的步骤道德评价和道德选择的步骤 职业化的本质职
2、业化的本质 与检举有关的内容与检举有关的内容 检举和检举的类型检举和检举的类型 ( (员工员工) )有效的检举行为有效的检举行为 Therac-25事件事件 软件测试软件测试 团队工作团队工作 知识产权知识产权 隐私和公民自由隐私和公民自由 计算机犯罪计算机犯罪 第第7 7章章 社会与职业问题社会与职业问题 Kitchener提出了下面提出了下面5条为公众和许多社会组织接受的道德条为公众和许多社会组织接受的道德 原则原则。 (1)自治自治(Autonomy)原则原则。 (2)公正公正(Justice)原则原则。 (3)行善行善(Beneficence)原则:尽量预防和制止对他人造成原则:尽量预
3、防和制止对他人造成 的危害的危害,并主动作对他人有益的事并主动作对他人有益的事。 (4)勿从恶勿从恶(Nonmaleficence)原则:强调不要对他人造成原则:强调不要对他人造成 伤害伤害,并避免可能对他人造成伤害的行为并避免可能对他人造成伤害的行为。 (5)忠诚忠诚(Fidelity)原则:诚实对人原则:诚实对人,信守诺言信守诺言。 道德选择一般包括以下步骤道德选择一般包括以下步骤 (1)确定所面临的问题确定所面临的问题: :尽量搜集更多的信息以帮助自己尽量搜集更多的信息以帮助自己 对当前问题有一个清晰的认识对当前问题有一个清晰的认识,包括问题的性质包括问题的性质、已有的已有的 事实事实、
4、前提和假设等前提和假设等。 (2)利用现有的道德准则利用现有的道德准则,检查该问题的适用性检查该问题的适用性,如果适如果适 用则采取行动进行解决用则采取行动进行解决; ;如果问题比较复杂如果问题比较复杂,解决方案尚不解决方案尚不 明确明确,则继续下面的步骤则继续下面的步骤。 (3)从不同的角度认识所面临的难题的性质从不同的角度认识所面临的难题的性质,包括确定特包括确定特 定情况下适用的道德原则定情况下适用的道德原则,并对相互之间可能发生冲突的并对相互之间可能发生冲突的 道德原则进行权衡道德原则进行权衡。 道德选择一般包括以下步骤道德选择一般包括以下步骤 (4)形成解决问题的候选方案形成解决问题
5、的候选方案。 (5)对候选方案进行评价对候选方案进行评价,考虑所有候选方案的潜在道德后考虑所有候选方案的潜在道德后 果果,做出最为有利的选择做出最为有利的选择。 (6)实施所选方案实施所选方案。 (7)对实施的结果进行检查和评价对实施的结果进行检查和评价。 职业化的本质职业化的本质 “职业化职业化”是是从业人员从业人员、职业团体职业团体及其及其服务对象服务对象(公众公众) 之间的三方关系准则之间的三方关系准则。该准则是从事某一职业该准则是从事某一职业,并得以生存并得以生存 和发展的必要条件和发展的必要条件。 实际上实际上,该准则隐含地为该准则隐含地为从业人员从业人员、职业团体职业团体(由雇主由
6、雇主 作为代表作为代表)和和公众公众(或社会或社会)拟订了一个三方协议拟订了一个三方协议,协议中规协议中规 定的各方的需求定的各方的需求、期望和责任就构成了职业化的基本内涵期望和责任就构成了职业化的基本内涵。 职业化的本质职业化的本质 例如例如, 从业人员希望职业团体能够抵制来自社会的不合理要求;从业人员希望职业团体能够抵制来自社会的不合理要求; 能够保持该职业的吸引力能够保持该职业的吸引力。 职业团体要求从业人员具有与职业理想相称的价值观念职业团体要求从业人员具有与职业理想相称的价值观念, 具有足够的具有足够的、完成规定服务所要求的知识和技能完成规定服务所要求的知识和技能。 类似地类似地,社
7、会对职业团体以及职业团体对社会都具有一定社会对职业团体以及职业团体对社会都具有一定 的期望和需求的期望和需求。 任何领域提供的任何一项专业服务都应该达到三方的满任何领域提供的任何一项专业服务都应该达到三方的满 意意,至少能够使三方彼此接受对方至少能够使三方彼此接受对方。 职业化的本质职业化的本质 “职业化职业化”是一个适用于所有职业的一个总的原则性协是一个适用于所有职业的一个总的原则性协 议议,但具体到某一个行业时但具体到某一个行业时,还应考虑其自身特殊的要求还应考虑其自身特殊的要求。 例如例如,在广播行业里在广播行业里,公众要求广播公司和广播人员公公众要求广播公司和广播人员公 正地报道新闻事
8、件正地报道新闻事件,广播公司则对广播人员的语言有特别的广播公司则对广播人员的语言有特别的 要求要求。 职业化的本质职业化的本质 软件工程师的道德准则及行为规范:软件工程师的道德准则及行为规范: 公众公众 客户和雇主客户和雇主 产品产品 判断判断 管理管理 职业职业 同事同事 自身自身 与检举有关的内容与检举有关的内容 检举检举 指公司雇员指公司雇员、组织成员或其他社会成员对欺诈组织成员或其他社会成员对欺诈、辱骂辱骂、 虐待等不正当行为虐待等不正当行为向特定对象进行揭发举报向特定对象进行揭发举报或或向社会公开曝向社会公开曝 光光的行为的行为。 检举的类型检举的类型 个人检举:个人检举:针对某个人
9、针对某个人( (而不是针对某个组织或系统而不是针对某个组织或系统) )的的 不正当行为进行的检举不正当行为进行的检举。 例如例如,社会某一成员揭露性骚扰者的不正当行为社会某一成员揭露性骚扰者的不正当行为、公司某公司某 员工检举所遭遇的暴力侵犯等员工检举所遭遇的暴力侵犯等。 内部检举:内部检举:针对出现在一个组织或系统内部的不正当行针对出现在一个组织或系统内部的不正当行 为进行的检举为进行的检举。 例如例如,公司员工向董事会揭发某些员工或领导的不正当行公司员工向董事会揭发某些员工或领导的不正当行 为为,学生检举考试作弊行为等学生检举考试作弊行为等。 检举的类型检举的类型 外部检举:当事态过于严重
10、外部检举:当事态过于严重,检举者从组织内部得不到检举者从组织内部得不到 令人满意的答复时令人满意的答复时,他就不得不将事情他就不得不将事情告知组织以外的人告知组织以外的人。 一般只有目光短浅的公司里才会发生对外检举事件一般只有目光短浅的公司里才会发生对外检举事件,一个一个 管理良好的公司会避免发生此类事件管理良好的公司会避免发生此类事件。 政府检举:政府检举:政府工作人员政府工作人员向管理性或调查性机构对向管理性或调查性机构对其所其所 在部门发生的不道德行为进行的检举在部门发生的不道德行为进行的检举。 例如例如,向立法委员会报告费用超额的现象向立法委员会报告费用超额的现象,向新闻媒体批向新闻媒
11、体批 露政府内部的腐败情况等露政府内部的腐败情况等。 有效的检举行为有效的检举行为 对于公司员工来说对于公司员工来说,任何检举行为都是不忠实和不服从任何检举行为都是不忠实和不服从 的表现的表现,可能会给公司带来负面影响或将公司牵涉到某项调可能会给公司带来负面影响或将公司牵涉到某项调 查之中查之中。 那么那么,在什么情况下员工能够检举公司在什么情况下员工能够检举公司,什么情况下不什么情况下不 能能? 有效的检举行为有效的检举行为 若满足下面三个条件若满足下面三个条件,则员工的检举行为是公正的:则员工的检举行为是公正的: 1. 公司的公司的产品或政策产品或政策将会将会给公司员工或公众给公司员工或公
12、众造成造成严重严重、巨大巨大 的伤害的伤害,无论受害人是使用者还是旁观者或其他人员无论受害人是使用者还是旁观者或其他人员。 2. 一旦一旦员工员工确定某种产品可能会给使用者或公众造成严重危确定某种产品可能会给使用者或公众造成严重危 害害,应向其直接领导报告应向其直接领导报告,使其了解自己的意见使其了解自己的意见。否则否则,该该 员工的检举行为就不是完全公正的员工的检举行为就不是完全公正的。 3. 若员工的上级领导没有对员工的报告作出积极地反应若员工的上级领导没有对员工的报告作出积极地反应,员员 工应该尽一切可能工应该尽一切可能通过公司内部程序通过公司内部程序在公司内部解决问题在公司内部解决问题
13、。 有效的检举行为有效的检举行为 如果满足了这三个条件如果满足了这三个条件,公司还没有采取措施防止危害发公司还没有采取措施防止危害发 生生,则员工已经履行了对公司应尽的义务则员工已经履行了对公司应尽的义务,这时这时,就有充足的就有充足的 理由对外检举公司产品可能造成的危害理由对外检举公司产品可能造成的危害。 但这但这并不表示公司里的员工有义务并不表示公司里的员工有义务对外检举公司的错误对外检举公司的错误。 有效的检举行为有效的检举行为 在上面三项条件的基础上在上面三项条件的基础上,如果还满足下面两项条件如果还满足下面两项条件,则则 员工的检举行为就是义不容辞的道德义务员工的检举行为就是义不容辞
14、的道德义务。 4. 检举人必须检举人必须有令人信服的确凿证据有令人信服的确凿证据,能说服一个理智能说服一个理智、 公正的观察员相信他对事情的估计是正确的公正的观察员相信他对事情的估计是正确的,公司的产品公司的产品,法法 令或政策确实会给公众或顾客造成严重的伤害或巨大威胁令或政策确实会给公众或顾客造成严重的伤害或巨大威胁。 5. 员工必须员工必须有充分的理由相信有充分的理由相信,一旦将问题公之于众后一旦将问题公之于众后, 产品会进行改进产品会进行改进。而且员工而且员工应有绝对把握应有绝对把握,值得为此冒险值得为此冒险。 有效的检举行为有效的检举行为 若员工不顾自己是否确信估计的正确性若员工不顾自
15、己是否确信估计的正确性,不顾领导和同不顾领导和同 事的意见事的意见,不通过公司内部机制而直接进行检举不通过公司内部机制而直接进行检举,由于检举由于检举 可能对公司产生严重的后果可能对公司产生严重的后果,这时就需要后两个附加条件起这时就需要后两个附加条件起 作用作用。 检举必须满足一定的条件检举必须满足一定的条件,不能滥用不能滥用。 历史上软件风险的例子历史上软件风险的例子 Therac-25事件:事件: Therac-25是加拿大原子能公司是加拿大原子能公司(AECL)和一家法国公和一家法国公 司司CGR联合开发的一种医疗设备联合开发的一种医疗设备(医疗加速器医疗加速器),它产生的它产生的 高
16、能光束或电子流能够杀死人体毒瘤而不会伤害毒瘤附近健高能光束或电子流能够杀死人体毒瘤而不会伤害毒瘤附近健 康的人体组织康的人体组织。 该设备于该设备于1982年正式投入生产和使用年正式投入生产和使用。 在在1985年年6月到月到1987年年1月不到两年的时间里月不到两年的时间里,因该设备因该设备 引发了引发了6起由于电子流或起由于电子流或X光束的过量使用造成的医疗事故光束的过量使用造成的医疗事故, 造成了造成了4人死亡人死亡,2人重伤的严重后果人重伤的严重后果。 Therac-25事件事件 Therac-25与其前两代产品与其前两代产品Therac-6和和Therac-20相比相比,最最 大的不
17、同之处在于软件部分在系统中作用的差异大的不同之处在于软件部分在系统中作用的差异。 在前两代产品中在前两代产品中,软件仅为操作硬件提供了某种方便软件仅为操作硬件提供了某种方便, 硬件部分具有独立的监控电子流扫描的保护电路;硬件部分具有独立的监控电子流扫描的保护电路; 而在而在Therac-25中中,软件部分是系统控制机制必要的组成软件部分是系统控制机制必要的组成 部分部分,保证系统安全运转的功能更多地依赖于软件保证系统安全运转的功能更多地依赖于软件。 Therac-25系统有系统有X模式和模式和E模式两种工作模式模式两种工作模式。 在在X模式下机器产生模式下机器产生25MeV的的X光束光束,在在
18、E模式下则产生模式下则产生 各种能量级别的电子流;由于前者的能量非常高各种能量级别的电子流;由于前者的能量非常高,所以必须所以必须 经过一个厚厚的钨防护罩之后才能够与病人发生病变的人体经过一个厚厚的钨防护罩之后才能够与病人发生病变的人体 组织相接触组织相接触。 Therac-25事件事件 模式的选择由操作员从终端上输入的数据决定模式的选择由操作员从终端上输入的数据决定。 据调查据调查,1985年到年到1987年间发生的年间发生的6起事故是操作员的起事故是操作员的 失误和软件缺陷共同造成的失误和软件缺陷共同造成的。 在在1985年第一起事故中年第一起事故中,操作员在终端上输入错误的控操作员在终端
19、上输入错误的控 制数据制数据“X”后随即对此进行了纠正后随即对此进行了纠正。但就在纠正输入数据但就在纠正输入数据 的操作结束时的操作结束时,系统发出错误信息系统发出错误信息,操作员不得不重新启动操作员不得不重新启动 计算机计算机。然而就在这段时间然而就在这段时间,躺在手术台上接受治疗的病人躺在手术台上接受治疗的病人 一直接受着过量的一直接受着过量的X光束的照射光束的照射,结果造成其肩膀灼伤结果造成其肩膀灼伤。 三周之后三周之后,同样的事情又发生了同样的事情又发生了。当操作员重新启动计当操作员重新启动计 算机的时候算机的时候,支撑钨防护罩的机械手已经缩回支撑钨防护罩的机械手已经缩回,而而X光束却
20、光束却 Therac-25事件事件 没有被切断没有被切断,结果病人被置于超出所需剂量结果病人被置于超出所需剂量125倍的强光束的倍的强光束的 辐射之下而最终致死辐射之下而最终致死。 事后的调查表明事后的调查表明,Therac-25系统中使用的软件有一部分系统中使用的软件有一部分 直接来自为前两代产品开发的软件直接来自为前两代产品开发的软件,整个软件系统并没有经过整个软件系统并没有经过 充分的测试充分的测试。 而而1983年年5月月AECL所做的所做的Therac-25安全分析报告中安全分析报告中,有有 关系统安全分析只考虑了系统硬件关系统安全分析只考虑了系统硬件(不包括计算机不包括计算机)的因
21、素的因素, 并没有把计算机故障所造成的安全隐患考虑在内并没有把计算机故障所造成的安全隐患考虑在内。 Therac-25事件事件 Therac-25作为医疗加速器设备历史上最为严重的辐射作为医疗加速器设备历史上最为严重的辐射 事故之一事故之一,给人们以深刻的启示:软件设计的不当很可能对给人们以深刻的启示:软件设计的不当很可能对 系统的安全性造成巨大隐患系统的安全性造成巨大隐患,甚至危及人的生命甚至危及人的生命。 因此因此,在开发应用系统在开发应用系统,尤其是安全至上的应用系统尤其是安全至上的应用系统 时时,必须充分地考虑当系统出现故障时必须充分地考虑当系统出现故障时,怎样才能将危害降怎样才能将危
22、害降 至最低至最低。 软件测试软件测试 软件测试软件测试(Software Testing)是发现软件缺陷是发现软件缺陷、保证软保证软 件质量的主要手段件质量的主要手段。 软件测试:软件测试: 以手工或自动方式,通过对软件是否满足特定的需求进以手工或自动方式,通过对软件是否满足特定的需求进 行验证,或者识别软件的实际运行结果与期望值之间的行验证,或者识别软件的实际运行结果与期望值之间的 不同,从而对系统或系统部件进行评价的过程。不同,从而对系统或系统部件进行评价的过程。 软件测试的目标软件测试的目标 (1)测试是一个执行程序的过程测试是一个执行程序的过程,其目标是发现错误;其目标是发现错误;
23、(2)一个好的测试用例能够发现至今尚未察觉的错误;一个好的测试用例能够发现至今尚未察觉的错误; (3)一个成功的测试则是发现至今尚未察觉的错误的测试一个成功的测试则是发现至今尚未察觉的错误的测试。 遗憾的是遗憾的是,目前没有一种测试方法能够找出软件中存在的目前没有一种测试方法能够找出软件中存在的 所有错误所有错误。 对于大型软件系统对于大型软件系统,更加难以保证它是没有任何错误的更加难以保证它是没有任何错误的。 “测试只能够证明软件是有错的测试只能够证明软件是有错的,但不能证明软件是没有但不能证明软件是没有 错误的错误的。” 形式化方法形式化方法 团队与群体的区别团队与群体的区别 团队团队(t
24、eam): 指为了共同目标而进行合作的两个人以上的集合。指为了共同目标而进行合作的两个人以上的集合。 团队合作:团队合作: 利用团队之间的彼此了解和个人特长,利用团队之间的彼此了解和个人特长, 发挥自我优势,发挥自我优势, 在团队中一起通过责任、奉献和知识共享,在团队中一起通过责任、奉献和知识共享, 通过成员的共同努力产生积极的作用,通过成员的共同努力产生积极的作用, 使团队的绩效水平远大于个体成员绩效的总和。使团队的绩效水平远大于个体成员绩效的总和。 团队属于群体的概念范畴,而又不同于一般的群体团队属于群体的概念范畴,而又不同于一般的群体。 团队与群体的区别团队与群体的区别 一个群体是不是一
25、个团队一个群体是不是一个团队,是有一定的判断标准的是有一定的判断标准的。 例如例如,一群人偶然一起乘一部电梯一群人偶然一起乘一部电梯,那这只能说是一群那这只能说是一群 人在一起人在一起,而不能将其视为一个通过共同合作来达到共同目而不能将其视为一个通过共同合作来达到共同目 标的团队标的团队。 若电梯突然坏了若电梯突然坏了,而这群人要想方设法尽快从电梯中逃而这群人要想方设法尽快从电梯中逃 离离,那么这一群人由于有了共同的目标成为一个团队那么这一群人由于有了共同的目标成为一个团队。 群体中不一定需要积极的协同力量群体中不一定需要积极的协同力量,群体的总体绩效也群体的总体绩效也 不一定大于个人绩效之和
26、不一定大于个人绩效之和。 在群体中责任常常由个人承担在群体中责任常常由个人承担,每个人的职责很明确;每个人的职责很明确; 在团队中在团队中,个体责任与共同的责任同时存在个体责任与共同的责任同时存在,甚至更多的时甚至更多的时 候是共同责任候是共同责任。 工作关系和团队关系工作关系和团队关系 工作关系是以完成各自的工作为目标而产生的关系;工工作关系是以完成各自的工作为目标而产生的关系;工 作组成员之间存在一定的等级关系作组成员之间存在一定的等级关系,下级只是因为工作的职下级只是因为工作的职 位原因才服从上级位原因才服从上级。 在工作关系的模式下在工作关系的模式下,一般管理层和员工之间由于没有一般管
27、理层和员工之间由于没有 共同的目标共同的目标,他们之间的关系是中性或者消极的他们之间的关系是中性或者消极的。 工作关系和协作致力它的基础建设工作关系和协作致力它的基础建设,即互相尊重即互相尊重、信任信任 与和谐与和谐。 在中国更多是讲工作关系在中国更多是讲工作关系。 工作关系和团队关系工作关系和团队关系 团队关系是建立大家共同要实现的业绩目标基础之上的团队关系是建立大家共同要实现的业绩目标基础之上的, 大家为了共同的业绩利益一起工作而产生的一种关系大家为了共同的业绩利益一起工作而产生的一种关系。 在团队关系下在团队关系下,管理层和员工之间能融洽的合作管理层和员工之间能融洽的合作,不会因不会因
28、为个人利益而产生冲突为个人利益而产生冲突,他们之间的关系是积极的他们之间的关系是积极的。 团队合作和团队关系侧重的是采取实际行动和具体步骤团队合作和团队关系侧重的是采取实际行动和具体步骤, 以解决团队内部问题并实现目标以解决团队内部问题并实现目标。 在西方一般讲的是团队关系在西方一般讲的是团队关系。 团队的目的团队的目的 团队组建的目的是为了业绩团队组建的目的是为了业绩,剩下的工作就是围绕这个剩下的工作就是围绕这个 目标而展开目标而展开。 不少人强调:团结不少人强调:团结、归属感是团队的重要特征归属感是团队的重要特征。实际并实际并 非如此非如此! 当工作组强调业绩标准而非所谓的团结和归属感的时
29、候当工作组强调业绩标准而非所谓的团结和归属感的时候 ,它不仅能取得显著的业绩它不仅能取得显著的业绩,而且因为共同的切身利益而且因为共同的切身利益,团队团队 个人之间个人之间,往往会更加彼此尊重往往会更加彼此尊重,并最终促进各自的友谊并最终促进各自的友谊。 要寻找解决团队问题的最佳方案要寻找解决团队问题的最佳方案,就必须始终以团队面就必须始终以团队面 临的业绩为中心临的业绩为中心,坚定不移地应用最合适的机制坚定不移地应用最合适的机制,取得最大的取得最大的 业绩业绩。 团队机制团队机制 团队最重要的特征团队最重要的特征不是团结不是团结、归属感归属感,也不是授权也不是授权,而而 是它的运作机制是它的
30、运作机制。 机制:机制: “有序的或规定的行动和行为方式”。“有序的或规定的行动和行为方式”。 是建立在基本原则基础上的,欲从这些准则的实施中有所获是建立在基本原则基础上的,欲从这些准则的实施中有所获 益就必须恪守基本原则。益就必须恪守基本原则。 比如,如果想减肥,就必须坚持“少吃、吃得科学、加强锻炼”这比如,如果想减肥,就必须坚持“少吃、吃得科学、加强锻炼”这 三条原则,少其中一条减肥计划就难以成功。三条原则,少其中一条减肥计划就难以成功。 两种最常见的团队机制两种最常见的团队机制 单一领导制单一领导制 在单个领导的指导和管理下在单个领导的指导和管理下,通过集合每个人的工作贡通过集合每个人的
31、工作贡 献来实现整体的目标献来实现整体的目标。 领导主要负责的活动是:领导主要负责的活动是: 做出并传达决策;做出并传达决策; 确定业绩目标;确定业绩目标; 确定工作节奏和工作方法;确定工作节奏和工作方法; 评估成果;评估成果; 设定标杆和标准;设定标杆和标准; 通过明晰的个人的职责,掌握工作组的工作情况,强调成果的通过明晰的个人的职责,掌握工作组的工作情况,强调成果的 管理。管理。 大多数组织部门和事业部主要采用这样的机制大多数组织部门和事业部主要采用这样的机制。 两种最常见的团队机制两种最常见的团队机制 团队制团队制 团队制与单一领导制有以下不同之处:团队制与单一领导制有以下不同之处: 在
32、团队制中,在团队制中,由最适合的人做出决策由最适合的人做出决策; 应用团队制的团队分别制定、确认自己的团队目标,也可应用团队制的团队分别制定、确认自己的团队目标,也可 以由团队统一制定、确认;以由团队统一制定、确认; 团队制中,团队制中,工作的节奏和工作的方法由团队制定工作的节奏和工作的方法由团队制定; 团队制中,团队制中,团队会坚持进行严格的成果评估团队会坚持进行严格的成果评估; 团队制中的团队成员会制订高标准团队制中的团队成员会制订高标准; 团队制中的成员既对自己负责,又对他人负责团队制中的成员既对自己负责,又对他人负责。 以成果为目标进行描述以成果为目标进行描述 面向结果面向结果 vs.
33、 面向过程面向过程 以成果为目标进行描述以成果为目标进行描述 vs. 以活动为目标进行描述以活动为目标进行描述 SMART标准:标准: 具体的具体的 Specific 可测量的可测量的 Measurable 可以实现的可以实现的 Achievable 现实的现实的 Realistic 有时间限制的有时间限制的 Time-bound 以成果为目标进行描述以成果为目标进行描述 基于成果:基于成果: 例例7.1 7.1 第二季度公司要赢得至少第二季度公司要赢得至少5 5个新客户。个新客户。 例例7.2 7.2 月底前,完成新软件许可权的审批工作。月底前,完成新软件许可权的审批工作。 基于活动:基于活
34、动: 例例7.3 7.3 制定赢得新客户的实施计划。制定赢得新客户的实施计划。 例例7.4 7.4 改变新软件许可权的审批过程。改变新软件许可权的审批过程。 团队激励团队激励 除了根据个体的贡献进行评估和奖励以外除了根据个体的贡献进行评估和奖励以外,还应该考虑还应该考虑 以团队为基础来进行绩效评估以团队为基础来进行绩效评估、利润分享等利润分享等。 1. 物质奖励强化整体绩效目标物质奖励强化整体绩效目标 2. 精神激励推动个体目标实现精神激励推动个体目标实现 尽量让团队成员做自己感兴趣的事;尽量让团队成员做自己感兴趣的事; 让沟通畅通无阻;让沟通畅通无阻; 通过参与决策获得凝聚力;通过参与决策获
35、得凝聚力; 通过授权使员工有成就感;通过授权使员工有成就感; 给员提供工学习和成长的机会。给员提供工学习和成长的机会。 团队激励团队激励 将将团队成员的物质奖励团队成员的物质奖励与与集体绩效集体绩效挂钩挂钩, 塑造团队的凝聚力、提升团队合作性。塑造团队的凝聚力、提升团队合作性。 而将而将精神奖励精神奖励与与团队成员的个体目标团队成员的个体目标挂钩挂钩。 激发和保持团队工作热情、积极性。激发和保持团队工作热情、积极性。 敏捷开发敏捷开发规避早期评估潜在弊端的一种有效方法规避早期评估潜在弊端的一种有效方法 过低的成本评估会导致企业产品质量的降低过低的成本评估会导致企业产品质量的降低,将来存在将来存
36、在 返工的可能返工的可能,而且会增加项目失败的风险而且会增加项目失败的风险。根据帕金森定律根据帕金森定律, 过高的产品评估会降低项目的生产力过高的产品评估会降低项目的生产力,拉长项目的完成时间拉长项目的完成时间。 这就是为什么我们要考虑是否做成本评估这件事这就是为什么我们要考虑是否做成本评估这件事,若不若不 必评估必评估,或者后续阶段才需要评估或者后续阶段才需要评估,那么不评估那么不评估、或等后续或等后续 获得更多信息再评估获得更多信息再评估,反而更安全反而更安全。敏捷开发就是规避早期敏捷开发就是规避早期 评估潜在弊端的一种有效方法评估潜在弊端的一种有效方法。 Magne Jorgensen
37、What We Do and Dont Know about Software Development Effort Estimation Posted ,2014.8.29 敏捷开发敏捷开发 计费系统项目计费系统项目 案例描述:案例描述: Acme公司公司(一家中型的玩具厂商一家中型的玩具厂商)已经看到由于它的已经看到由于它的 扩张方案导致的持续损失而使其股票价格暴跌扩张方案导致的持续损失而使其股票价格暴跌,每个部门都每个部门都 被要求把他的成本消减被要求把他的成本消减10%,以帮助盈利并恢复投资者的信以帮助盈利并恢复投资者的信 心心。 会计经理会计经理Karen提出了集成由她的团队使用的多
38、个财务提出了集成由她的团队使用的多个财务 应用程序的主意应用程序的主意,使得只需要把数据往新的主应用程序中输使得只需要把数据往新的主应用程序中输 入一次即可入一次即可,然后自动把它们复制到其他应用程序中然后自动把它们复制到其他应用程序中,她的她的 部门通过消除多次相同的数据部门通过消除多次相同的数据,从而可以消减从而可以消减3个全职的数据个全职的数据 输入人员输入人员。 针对项目假设的常规方法:针对项目假设的常规方法: 传统项目管理的隐藏假设 针对项目假设的常规方法 (1)范围可以完整定义 (2)范围定义可以在项目开始前完成 没有机会重新评估或调整项目的范围。 在创建完所有功能之后,更改需求就
39、必须要 抛弃一些现有代码并重写,增加项目成本 (3)软件开发由截然不同的活动组成 (4)可以对软件开发活动进行排序 (5)可以单独把团队成员分配给活动 需求收集、设计、构造和测试这些活动之间 缺少交叠,人员交流有限。无法讨论问题或 者提供反馈。 (6)团队成员的规模不会影响开发过程 团队规模非常小,通过采用一种不那么正式 的开发过程更高效工作 (7)总会有一种方式产生有意义的估计 (8)能够获得可接受的准确估计 (9)一位开发人员等同于另一位开发人员 在确定团队成员之前就对项目进行评估,没 有把个人技能差异考虑在内。团队以前从未 在一起工作,无法对照以前项目的结果来检 查估计 (10)指标足以
40、用于评估软件的质量 使用两个指标评估进度,误导了团队相信修 正错误就足以修正软件 针对项目假设的常规方法:针对项目假设的常规方法: 活动 资源 名字 持续时间 成本/美元 项目发起人 Salim 无 无 关键业务所有者 Karen 无 无 需求 1位业务分析师 Brian 半个月 7500 设计 1位软件架构师 Angelal 一个月 20 800 构造 4位开发人员 Reiko、Tim Hua、Mike 两个半月 138 600 系统测试 1位测试员 Ian 半个月 6100 用户测试 1位最终用户 Emily 半个月 4300 返工 4位开发人员 Reiko、Tim Hua、Mike 半个
41、月 27 700 项目管理 半个项目经理 Phil 4个月 34 700 总计 239 700 表1-1项目活动的持续时间、资源和成本估计 针对项目假设的常规方法:针对项目假设的常规方法: 表1-2风险登记表 计费系统项目的风险 概率 /% 影响 /% 偶然性 /% 更改需求 20 25 5 与现有系统集成的问题 25 20 5 开发人员不像期望的那样能干 10 20 2 系统 具有比期望的更多错误 30 10 3 员工生病将会使项目延误 10 0 0 将发生未知的风险 10 总计 25 针对项目假设的常规方法:针对项目假设的常规方法: 避免项目假设的敏捷方法:避免项目假设的敏捷方法: 传统项
42、目管理的隐藏假设 避免项目假设的敏捷方法 (1)范围可以完整定义 (2)范围定义可以在项目开始前完成 在每次迭代之后都会重新评估和调整项目的范围;而且,开发人 员与客户代表协同工作,无论何时需要,都可澄清细节。 团队使用分诊和特性权衡确保工作总量不会使预算难以承受 (3)软件开发由截然不同的活动组成 (4)可以对软件开发活动进行排序 (5)可以单独把团队成员分配给活动 团队的开发过程结合了设计、构造和测试,因此可以根据需要细 化设计,并且从一开始就测试软件。 开发人员在收集需求、定义架构和产生估计方面通力合作,因此 每个人都有机会问问题和提出建议。交流丰富并且有效。 (6)团队成员的规模不会影
43、响开发过 程 团队非常小,开发人员能够采取一种非常随便而且高效的开发过 程。 使用为团队的规模自定义的Rational统一过程配置,并且使极限编 程实践适应项目 (7)总会有一种方式产生有意义的估 计 (8)能够获得可接受的准确估计 (9)一位开发人员等同于另一位开发 人员 使用SWAT团队允许基于团队的以前项目的结果来给出估计,使它 们更为准确。 预留的偶然性数量部分基于分诊足以应对估计的不准确度。 范围研究还给开发人员提供了一个机会,针对项目的特定情况检 查他们期望的生产率水平。 (10)指标足以用于评估软件的质量 开发人员在结对编程期间,相互之间持续不断地评估彼此的代码。 自动化单元测试
44、可以帮助开发人员非常快地知道新的错误,因此 软件可以维持较低的缺陷水平。由最终用户持续进行的验收测试 确保还可以评估软件的有用性和功能。 避免项目假设的敏捷方法:避免项目假设的敏捷方法: 表2-2项目各阶段的持续时间、范围和成本 迭代过程 预算 实际 阶段 持续时间/ 周 成本/美元 阶段 持续时间/周 成本/美元 第1次迭代 范围研究 2 33200 范围研究 2 33200 第2次迭代 细化 2 33200 细化 2 33200 第3次迭代 第1次构造 2 33200 第1次构造 2 33200 第4次迭代 第2次构造 2 33200 第2次构造 2 33200 第5次迭代 第3次构造 2
45、 33200 第3次构造 2 33200 第6次迭代 第4次构造 2 33200 第4次构造 2 33200 第7次迭代 交付 2 33200 第5次构造 2 33200 第8次迭代 偶然性 2 33200 交付 2 33200 第9次迭代 偶然性 2 33200 偶然性 0 0 总计 18 298800 16 265600 避免项目假设的敏捷方法:避免项目假设的敏捷方法: 项目成本:265600 持续时间:16周周 项目结果:项目成功 敏捷方法的优点敏捷方法的优点 传统项目管理的隐藏假设 敏捷方法优点 (1)范围可以完整定义 (2)范围定义可以在项目开始前完成 敏捷方法不需要预先定义全部范围
46、:范围定义是 在项目的整个进程中完成 (3)软件开发由截然不同的活动组成 (4)可以对软件开发活动进行排序 (5)可以单独把团队成员分配给活动 敏捷方法把开发视作单个活动,因此设计、编码 和测试是并发进行的。开发人员都在做相同的工 作 (6)团队成员的规模不会影响开发过程 水晶方法取决于项目团队的规模,定义了对方法 的明确改变。在XP中,隐含的指出该方法打算用 于212位开发人员的小团队或子团队 (7)总会有一种方式产生有意义的估计 (8)能够获得可接受的准确估计 (9)一位开发人员等同于另一位开发人员 估计可以基于先前迭代的经验,允许构建真实指 标的历史记录,使估计更准确。确切的知道特定 团
47、队的工作效率有多高 (10)指标足以用于评估软件的质量 开发人员相互之间评审彼此的代码,评估质量并 发现问题。在XP中,相关的实践是结对编程和代 码集体所有权。在水晶方法中。则是密切/渗透 式交流和反思改进 敏捷开发敏捷开发 计费系统项目计费系统项目 敏捷方法的目标是:敏捷方法的目标是: 创建满足客户需求的高质量软件创建满足客户需求的高质量软件。 避免了项目管理中的无效假设避免了项目管理中的无效假设,减少了项目中总风险的等级减少了项目中总风险的等级。 规划敏捷项目的规划敏捷项目的7 7种技术种技术 持续发展:持续发展:把软件开发转变成一个具有固定运营成本的把软件开发转变成一个具有固定运营成本的 持续过程持续过程。 按需编程:按需编程:使用同一团队处理多种系统上的持续工作使用同一团队处理多种系统上的持续工作, 使他们的项目更高效使他们的项目更高