《软件工程项目资料教学提纲.ppt》由会员分享,可在线阅读,更多相关《软件工程项目资料教学提纲.ppt(33页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、软件工程项目管理资料v生产任务生产任务组装小件组装小件组装内部发动机组组装内部发动机组安装座椅安装座椅安装外壳安装外壳整体验收整体验收v管理任务管理任务每天必须生产每天必须生产45个工件个工件共需要共需要80名工人名工人有工人请假有工人请假新进机器不会用新进机器不会用缺少配件缺少配件机器坏了机器坏了寻找机器使用手册寻找机器使用手册v看看软件开发过程出现的一些任务,哪些属于管看看软件开发过程出现的一些任务,哪些属于管理任务?理任务?v软件生产软件生产需求分析需求分析系统设计系统设计编码编码测试测试软件维护软件维护v软件管理任务软件管理任务生产期限生产期限人员组成,技能要求人员组成,技能要求人员变
2、动人员变动新技术不会用新技术不会用合作伙伴发生变动合作伙伴发生变动寻找对应版本的技术资料寻找对应版本的技术资料代码走查代码走查阶段评审阶段评审一、软件项目管理的任务一、软件项目管理的任务一、软件项目管理的任务一、软件项目管理的任务v软件项目管理的任务软件项目管理的任务制定项目计划和工程进度安排制定项目计划和工程进度安排监督和检查项目实施过程监督和检查项目实施过程保证工程满足要求的质量标准保证工程满足要求的质量标准分析确定并排除风险分析确定并排除风险在规定的期限和预算成本内完成项目在规定的期限和预算成本内完成项目进度进度质量质量风险风险成本成本v什么是软件项目管理什么是软件项目管理为为了了使使软
3、软件件项项目目能能够够按按照照预预定定的的成成本本、进进度度、质质量量顺顺利利完完成成,而而对对成成本本、人人员员、进进度度、质质量量、风风险险等等进进行行分分析析和和管理管理的活动。的活动。软软件件项项目目管管理理的的对对象象是是软软件件工工程程项项目目,它它所所涉涉及及的的范范围围覆盖了整个软件工程过程。覆盖了整个软件工程过程。二、二、二、二、项目计划项目计划项目计划项目计划v项目计划项目计划是一个软件项目进入系统实施的启动阶段是一个软件项目进入系统实施的启动阶段项目计划是一个反复的过程,只有当项目完成时计项目计划是一个反复的过程,只有当项目完成时计划才告一段落。划才告一段落。v项目计划中
4、包含的内容项目计划中包含的内容项目划分的各个实施阶段项目划分的各个实施阶段每个阶段的工作重点和任务是什么每个阶段的工作重点和任务是什么完成本阶段工作和任务的人力、资源需求,时间期完成本阶段工作和任务的人力、资源需求,时间期限限阶段工作和任务的成果形式阶段工作和任务的成果形式项目实施过程中对风险、疑难、其他不可预见因素项目实施过程中对风险、疑难、其他不可预见因素等的处理机制等的处理机制各任务组及开发人员之间的组织、协调关系等。各任务组及开发人员之间的组织、协调关系等。1.1.1.1.项目进度项目进度项目进度项目进度v项目进度项目进度管理人员必须估算完成各项活动所需要的时间和资管理人员必须估算完成
5、各项活动所需要的时间和资源,并按照一定的顺序把他们紧密组织起来。源,并按照一定的顺序把他们紧密组织起来。项目进度安排通常是将复杂的整体项目分解成许多项目进度安排通常是将复杂的整体项目分解成许多可以准确描述、度量、可独立操作的相对简单的任可以准确描述、度量、可独立操作的相对简单的任务,然后安排这些任务的执行顺序,确定每个任务务,然后安排这些任务的执行顺序,确定每个任务的完成期限、开始时间和结束时间。的完成期限、开始时间和结束时间。用分阶段生命周期计划严格管理2 2 2 2 进度管理工具进度管理工具进度管理工具进度管理工具v进度管理工具进度管理工具项目进度通常用一系列的图表表示,通过这些图项目进度
6、通常用一系列的图表表示,通过这些图表可以了解任务分解、活动依赖关系和人员分配表可以了解任务分解、活动依赖关系和人员分配情况。情况。v常用的项目进度表示法常用的项目进度表示法甘特图(甘特图(Gantt)活动网络图(活动网络图(PERT)v常用软件管理工具软件常用软件管理工具软件MS-Project练习练习练习练习任务标识符任务标识符任务描述任务描述持续时间持续时间 优先级优先级1 1从国际交流办公室获取表格从国际交流办公室获取表格1 1无无2 2填写并递交国外大学申请填写并递交国外大学申请3 31 13 3收到外国大学的批准收到外国大学的批准21212 24 4申请奖学金申请奖学金3 32 25
7、 5收到奖学金批准的通知收到奖学金批准的通知30304 46 6安排筹措资金安排筹措资金5 53,53,57 7安排宿舍住宿安排宿舍住宿25256 68 8获得护照和必要的签证获得护照和必要的签证35356 69 9递交学校预登记表递交学校预登记表2 28 81010制定旅行安排制定旅行安排1 17,97,91111确定服装需求和购物确定服装需求和购物101010101212打包并作最后的出发安排打包并作最后的出发安排3 311111313旅行旅行1 112121414搬入宿舍搬入宿舍1 113131515完成班级登记和其他大学文书工作完成班级登记和其他大学文书工作2 214141616开始上
8、课开始上课1 11515假设必须先完成所有优先的任务,然后开始随后的任务,并对假设必须先完成所有优先的任务,然后开始随后的任务,并对任务进行归类。任务进行归类。三、质量管理三、质量管理三、质量管理三、质量管理v背景背景质量是产品的生命线,不论任何产品,质量都是极质量是产品的生命线,不论任何产品,质量都是极端重要的。端重要的。软件产品开发周期长,需耗费巨大的人力、物力,软件产品开发周期长,需耗费巨大的人力、物力,更必须特别注意保证产品质量。更必须特别注意保证产品质量。v软件质量定义软件质量定义软件与明确的和隐含定义的需求相一致的程度软件与明确的和隐含定义的需求相一致的程度与明确描述的功能和性能需
9、求相一致的程度与明确描述的功能和性能需求相一致的程度与文档中明确描述的开发标准相一致的程度与文档中明确描述的开发标准相一致的程度与任何专业开发的软件产品都应该具有的隐含特征相与任何专业开发的软件产品都应该具有的隐含特征相一致的程度一致的程度v事后检验事后检验事后检验的方式是在产品生产的最后环节进行质量检查,合格事后检验的方式是在产品生产的最后环节进行质量检查,合格的产品准许出厂,不合格的产品作为次品处理。的产品准许出厂,不合格的产品作为次品处理。v全面质量管理全面质量管理运用质量管理的科学理论、技术、方法,建立起运用质量管理的科学理论、技术、方法,建立起贯穿于贯穿于产品质产品质量形成量形成全过
10、程全过程的质量保证体系,使企业全体职工树立质量观点,的质量保证体系,使企业全体职工树立质量观点,提高工作质量,经济地生产用户满意的产品。提高工作质量,经济地生产用户满意的产品。它要求从影响软件产品质量的各个方面加强对软件质量的全面它要求从影响软件产品质量的各个方面加强对软件质量的全面管理。管理。v权威认证权威认证认证已经成为一个组织资质的证明,也成为买方选择合格供应认证已经成为一个组织资质的证明,也成为买方选择合格供应方的首要考虑。方的首要考虑。例如,例如,CMM认证和认证和ISO9000认证认证3.1 3.1 3.1 3.1 软件质量管理种类软件质量管理种类软件质量管理种类软件质量管理种类坚
11、持进行阶段评审v软件质量与软件的内部特性及其组合有关。要软件质量与软件的内部特性及其组合有关。要度量度量软件质量,就应根据这些内部特性(即软件质量,就应根据这些内部特性(即软软件属性件属性)建立起软件度量模型,进而构建软件)建立起软件度量模型,进而构建软件质量度量体系。质量度量体系。3.2 3.2 3.2 3.2 软件质量模型软件质量模型软件质量模型软件质量模型产品修改产品修改产品转移产品转移产品运行产品运行可理解性可理解性可维护性可维护性灵活性灵活性可测试性可测试性可移植性可移植性可重用性可重用性互运行性互运行性轻便性轻便性 正确性、健壮性、效率、完整性、可用性、风险正确性、健壮性、效率、完
12、整性、可用性、风险v从管理角度对软件质量进行度量的从管理角度对软件质量进行度量的McCall软件质量模型软件质量模型v上述模型反映了上述模型反映了用户用户在使用软件产品时的在使用软件产品时的三种不同的倾向三种不同的倾向:产品运:产品运行、产品修改和产品转移。行、产品修改和产品转移。软件质量模型软件质量模型软件质量模型软件质量模型四、配置管理四、配置管理四、配置管理四、配置管理v软件配置管理(软件配置管理(SCM)是人们在软件工程实践过程中总结出的一套管理是人们在软件工程实践过程中总结出的一套管理办法和原则。是在软件整个生命周期内管理变化办法和原则。是在软件整个生命周期内管理变化的一组活动。是对
13、工作成果的一种有效保护。的一组活动。是对工作成果的一种有效保护。软件配置管理将伴随整个软件生存周期。软件配置管理将伴随整个软件生存周期。软件配置管理是在软件项目启动时就开始,并且一软件配置管理是在软件项目启动时就开始,并且一直持续到软件软件退役才终止的一组直持续到软件软件退役才终止的一组追踪和控制追踪和控制软软件件变动变动的的保护性活动保护性活动。v目标目标使变化更准确且容易被适应,在必须变化时减少使变化更准确且容易被适应,在必须变化时减少所需要花费的工作量。所需要花费的工作量。配置项配置项=软件基准软件基准配置项开发过程软件基准提交配置项软件基准正式技术评审软件基准SCM变更控制确认存储存储
14、提取修改配置库软件基准非基准配置项项目名称及编号项目名称及编号编码实现编码实现数据库设计数据库设计功能模块设计功能模块设计软件设计与实现过程软件设计与实现过程开发策划开发策划需求分析需求分析项目启动项目启动立项与可行性分析立项与可行性分析软件策划过程软件策划过程市场前期策划过程市场前期策划过程软件交付、实施、验收、维护过程软件交付、实施、验收、维护过程分包方分包方相关资料相关资料软件维护软件维护软件实施与验收软件实施与验收软件交付软件交付确认测试确认测试软件释放过程软件释放过程系统测试系统测试软件测试过程软件测试过程功能测试功能测试编码检查编码检查配置库的结构配置库的结构配置库的结构配置库的结
15、构五、组织管理五、组织管理五、组织管理五、组织管理v软件项目管理的关键是人员管理。软件项目管理的关键是人员管理。项目管理者必须利用其团队成员,用可能最有效的项目管理者必须利用其团队成员,用可能最有效的方式解决技术和非技术上的问题。方式解决技术和非技术上的问题。v软件项目成功的关键是合理组织人员。软件项目成功的关键是合理组织人员。能够将高素质的软件开发人员合理地组织起来,使能够将高素质的软件开发人员合理地组织起来,使他们有效地分工协作,共同完成开发工作。他们有效地分工协作,共同完成开发工作。v项目组的组织原则项目组的组织原则软件开发小组的规模不宜太大,人数不能太多,软件开发小组的规模不宜太大,人
16、数不能太多,一般一般3-5人左右为宜。人左右为宜。切忌在开发过程中增加人员,这将使人员之间的切忌在开发过程中增加人员,这将使人员之间的联系增多,造成通信成本的增加而导致效率降低。联系增多,造成通信成本的增加而导致效率降低。开发小组的人员应该少而精v项目组的组织方式项目组的组织方式民主制程序员组民主制程序员组小组成员完全平等,享有充分民主,通过协商做出决小组成员完全平等,享有充分民主,通过协商做出决策。策。主程序员组主程序员组主程序员组使用经验丰富、技术好、能力强的程序员主程序员组使用经验丰富、技术好、能力强的程序员作为主程序员。同时,利用人和计算机在事务性工作作为主程序员。同时,利用人和计算机
17、在事务性工作方面给主程序员提供充分支持,而且保证所有通讯都方面给主程序员提供充分支持,而且保证所有通讯都通过一两个人进行。通过一两个人进行。现代程序员组现代程序员组将将“主程序员组主程序员组”中的主程序员的职则划为技术负责中的主程序员的职则划为技术负责人和行政责任人来承担。人和行政责任人来承担。现代程序员组 大型项目的技术管理组织结构v现代程序员组现代程序员组v软件企业的组织架构软件企业的组织架构实现阶段实现阶段构成阶段构成阶段立项阶段立项阶段需求分析阶段需求分析阶段需求分析师项目经理系统架构设计师软件架构设计师数据库设计师软件界面设计师网络架构设计师系统分析师软件开发工程师编码程序员网络工程
18、师软件测试工程师质量保障工程师产品发布工程师结束阶段结束阶段项目经理软件企业的职位概况软件企业的职位概况软件企业的职位概况软件企业的职位概况v定义定义“风险风险”是指对项目有利或不利的不确定因素是指对项目有利或不利的不确定因素。v分类分类按照风险的影响范围分类按照风险的影响范围分类项项目目风风险险:预预算算、进进度度、人人力力、资资源源、客客户户及及需需求等方面求等方面技技术术风风险险:设设计计、实实现现、接接口口、验验证证和和维维护护等等方方面面商商业业风风险险:无无人人真真正正需需要要的的“优优秀秀产产品品”,不不符符合商业策略的产品等合商业策略的产品等六、风险管理六、风险管理六、风险管理
19、六、风险管理v风险管理的内容风险管理的内容风险管理风险管理风险评估风险评估风险控制风险控制风险识别风险识别风险分析风险分析风险优先级风险优先级风险管理计划风险管理计划风险化解风险化解风险监控风险监控练习练习练习练习v风险分析和管理是软件开发的一项重要活动。在软风险分析和管理是软件开发的一项重要活动。在软件工程领域考虑风险是,主要基于以下三个概念件工程领域考虑风险是,主要基于以下三个概念(1)以及必须抓住选择机会。实践中存在许多种)以及必须抓住选择机会。实践中存在许多种软件风险,如软件风险,如“潜在的设计、实现、维护等方面的潜在的设计、实现、维护等方面的问题问题”属于(属于(2)风险;)风险;“
20、开发了一个没有人真正开发了一个没有人真正需要的优秀产品需要的优秀产品”属于(属于(3)风险;)风险;“开发的产品开发的产品不再符合公司的整体商业策略不再符合公司的整体商业策略”属于(属于(4)风险。)风险。通常在软件项目开发过程中,我们首先希望实现通常在软件项目开发过程中,我们首先希望实现(5)用例。)用例。1:A关心当前,关心变化关心当前,关心变化B关心当前,关心不变性关心当前,关心不变性C关心未来,关心变化关心未来,关心变化D关系未来,关心不变性关系未来,关心不变性2、3、4:A技术技术B过程过程C项目项目D商业商业5:A风险最小风险最小B风险最大风险最大C风险中等风险中等D任意风险任意风
21、险软件工程基本原理软件工程基本原理软件工程基本原理软件工程基本原理v用分阶段生命周期计划严格管理用分阶段生命周期计划严格管理v坚持进行阶段评审坚持进行阶段评审v实行严格的产品控制实行严格的产品控制v采用现代程序设计技术采用现代程序设计技术v结果应能清楚地审查结果应能清楚地审查v开发小组的人员应该少而精开发小组的人员应该少而精v承认不断改进软件工程实践的必要性承认不断改进软件工程实践的必要性本章知识点总结本章知识点总结本章知识点总结本章知识点总结v项目管理的任务项目管理的任务v项目计划项目计划项目计划的内容和方法项目计划的内容和方法v质量管理质量管理软件质量模型和软件质量的属性软件质量模型和软件质量的属性v配置管理配置管理配置管理的内容和目的配置管理的内容和目的v组织管理组织管理项目组的组织方式及其特点项目组的组织方式及其特点v风险管理风险管理风险管理中识别和应对风险的方法风险管理中识别和应对风险的方法此此课课件下件下载载可自行可自行编辑编辑修改,修改,仅仅供参考!供参考!感感谢谢您的支持,我您的支持,我们们努力做得更好!努力做得更好!谢谢谢谢
限制150内