版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第十一章 软件项目管理,软件项目管理是现代项目管理在软件领域的发展分支,是软件工程学科和工程管理学科的交叉点。,软件项目管理内容,范围管理 成本管理 时间管理 风险管理 沟通管理 质量管理 人力资源管理,软件项目管理过程,启动软件项目 度量 估算 风险分析 进度安排(方法 P202) 追踪和控制,思考题,大型软件的研制必须采用现代化大生产的方式才能完成。谈谈大型软件开发过程中存在的各种困难及其存在的原因,以及你对这种困难与原因的认识。,参 考 答 案,大型软件的开发的困难主要有如下几点:(1)一致性的保持十分困难。(2)测试的难度大大增加。(3)工作进度难以控制。(4)文档与代码的协调十分困难
2、。(5)版本更新带来的困难。,困难存在的原因:(1)大系统的复杂性。(2)人员之间的组织与协调也会带来大量困难。(3)各应用系统间的差异也导致困难的加重。(4)变动的因素如时间的因素、变化的因素也会给软件开发工作带来困难。,11.5 软件文档管理,文档的定义 文档的作用 文档的类型,文档的定义,文档(document)是指某种数据媒体和其中所记录的数据。 它具有永久性,并可以由人或机器阅读,通常仅用于描述人工可读的东西。 在软件工程中,文档常常用来表示对活动、需求、过程或结果进行描述、定义、规定、报告或认证的任何书面或图示的信息。,软件文档的作用P205,提高软件开发过程的能见度。把开发过程中
3、发生的事件以某种可阅读的形式记录在文档中。管理人员可把这些记载下来的材料作为检查软件开发进度和开发质量的依据,实现对软件开发的工程管理。 提高开发效率。软件文档的编制,使得开发人员对各个阶段的工作都进行周密思考、全盘权衡、减少返工。并且可在开发早期发现错误和不一致性,便于及时加以纠正。,软件文档的作用(续),作为开发人员在一定阶段的工作成果和结束标志。 记录开发过程中有关信息,便于协调以后的软件开发、使用和维护。 提供对软件的运行、维护和培训的有关信息,便于项目人员之间或与用户进行交流。,软件文档的作用(续),从某种意义上来说,文档是软件开发规范的体现和指南。 按规范要求生成一整套文档的过程,
4、就是按照软件开发规范完成一个软件开发的过程。 所以,在使用工程化的原理和方法来指导软件的开发和维护时,应当充分注意软件文档的编制和管理。,文档的桥梁作用,软件文档的类型,软件文档从形式上来看,大致可分为两类: 一类是开发过程中填写的各种图表,称之为工作表格; 一类是应编制的技术资料或技术管理资料,称之为文档或文件。,软件文档的类型,按照文档产生和使用的范围,软件文档大致可分为三类: 开发文档 管理文档 用户文档,开发文档,软件需求说明书 数据要求说明书 概要设计说明书 详细设计说明书 可行性研究报告 项目开发计划,管理文档,测试报告测试计划 项目开发计划开发进度月报 项目开发总结,用户文档,用
5、户手册 操作手册 维护修改建议 软件需求说明书,第十二章 软件质量与可靠性,软件质量与可靠性,12.1 软件质量保证 12.2 软件能力,软件质量的理解,软件质量的经典理解 如果一个软件产品满足软件需求规格说明书中规定的条款,则认为该软件产品的具有较高的质量。 在市场经济中,即使软件产品已经满足原先在需求规格说明书中规定条款,但在使用过程中用户并不满意,销路不好,这不能认为该软件具有很好的质量,因此需求变化十分迅速,企业间的竞争分外剧烈。,软件质量影响到开发费用、交付日期和用户满意度。 一个高质量的产品是一个能给它的用户提供最重要的能力的产品。 直到已经有了明确的需求,才可开发出高质量的软件。
6、在开始时可能没有清晰而明确的需求,但在结束之前,必须对需求有充分的了解。,软件质量特性,功能度 可靠性 易使用性 时间经济性 资源经济性,可维护性 可移植性 安全性(可选) 可重用性(可选) 可装接性(可选),软件质量保证工作的特点,软件系统的质量是决定复杂巨系统成败的关键。软件系统质量难于保证,其主要原因: 软件系统固有的复杂性 软件系统及其管理工作固有的不可见性,改善管理工作的可见性,软件工程需要以度量学为基础. 采用定量软件工程,制定软件产品质量的度量准则,可以提高软件产品的质量,改善管理工作的可见性。,软件质量保证应贯穿于软件开发的全过程,人员和过程是决定软件质量的关键因素。 软件的质
7、量是在软件开发过程中逐步建立起来的。 应在软件开发的全过程中,始终注意提高人员的素质和技能,始终注意软件产品质量的度量和软件过程的改善。,软件质量保证与软件过程的改善,软件质量保证的作用是使软件企业增值 好的过程应该带来好的质量 软件质量保证活动的结果客观地反映了软件过程的情况 软件质量保证过程必须由高层管理部门启动 软件质量保证过程改善需要全体有关人员的积极参与 软件质量保证需要必要的资源 必要的培训将提高软件质量保证活动的质量,12.2 软件能力,软件能力:软件企业或软件项目机构的开发能力。 软件过程:软件企业或项目开发组,在软件计划、开发和维护一个软件的过程中所执行的工程技术和软件管理等
8、一系列活动。 软件过程成熟度:一个特定的软件过程被明确和有效的定义、管理、测量和控制的程度。,没有定义过程的规则或步骤,依靠精英; 执行情况是不可预知的。,有一定的项目管理系统; 执行情况是可重复的。,定义了和开展了公共的软件工程和管理过程.,定量地管理软件产品和过程。,用制度来保证过程改进。,1,2,3,4,5,初始级,可重复级,定义级,管理级,优化级,软件过程能力成熟度模型CMM,CMM的 五 个 等 级,CMM家族(CMMI),软件能力成熟度模型 SW-CMM 软件获取能力成熟度模型 SA-CMM 系统工程能力模型 SE-CM 集成产品开发能力成熟度模型 IPD-CMM 人员能力成熟度模
9、型 P-CMM 等等,CMM的应用,能力评估 过程改善,关于CMM的价值,基于软件过程改进的CMM可以指导组织在性能上有效地改进: 软件产品的质量 开发软件的生产率 开发软件的周期 软件工程管理的可预测性 基于软件过程改进的CMM已经广泛采用。,软件开发工具总结(补充),软件工具是一种软件,它是辅助和支援其它软件研制和维护的工具。 研制软件开发工具的主要目的是为了提高软件生产率和改进软件的质量。,软件开发工具总结,软件开发工具的功能 软件开发工具的特性 (性能指标) 软件开发工具的分类 软件开发工具与环境的关系 软件开发工具发展趋势,软件开发工具总结,软件开发工具的功能 软件开发工具的特性 (
10、性能指标) 软件开发工具的分类 软件开发工具与环境的关系 软件开发工具发展趋势,软件开发工具的功能,帮助认识与描述客观系统。 帮助存储及管理开发过程中的信息。 帮助代码的编写与生成。 帮助文档的编制或生成。 帮助软件项目的管理。,帮助认识与描述客观系统,这主要使用在软件开发工作的第一个阶段需求分析阶段。 由于需求分析在软件开发中的地位越来越重要,人们迫切需要在明确需求、形成软件功能说明书方面得到工具的支持。,帮助存储及管理开发过程中的信息,在软件开发的各阶段都要产生及使用许多信息。例如需求分析阶段要收集大量客观系统的信息,在此基础上形成系统功能说明书。而这些信息到了测试阶段还要用来对已经编好的
11、软件进行评价 。 当项目规模比较大时,这些信息量就会大大增加,当项目持续时间比较长的时候,信息的一致性就成为一个十分重要、十分困难的问题。,帮助代码的编写与生成,在整个软件开发工作过程中,程序编写工作占了较多的人力、物力和时间,提高代码的编制速度与效率显然是改进软件工作的一个重要方面。 代码的自动生成对于某些比较固定类型的软件模块来说,可以通过总结一般规律,制作一定的框架或模块,在一定程度上加以实现。,帮助文档的编制或生成,文档编写也是软件开发中十分繁重的一项工作,不但费时费力,而且很难保持一致。在这方面,计算机辅助的作用可以得到充分的发挥。 在各种文字处理软件的基础上,已有不少专用的软件开发
12、工具提供了这方面的支持与帮助,如文档自动生成系统等。,帮助软件项目的管理,这一功能是为软件项目管理人员提供支持。 主要体现在对测试工作方面的支持和对版本的管理 。,软件开发工具总结,软件开发工具的功能 软件开发工具的特性 (性能指标) 软件开发工具的分类 软件开发工具与环境的关系 软件开发工具发展趋势,软件开发工具的特性 (性能指标),软件功能是指软件能做什么事,而性能则是指事情做到什么样的程度。 换句话说,前者是定性地说明能不能做的问题,告诉我们它能在软件开发工程中提供哪些帮助; 后者则尽可能定量的说明软件开发工具能做到什么样的程度,说明这些支持或帮助的程度如何。,软件开发工具的特性 (性能
13、指标),(1)表达能力或描述能力。 (2)保持信息一致性的能力。 (3)使用的方便程度。 (4)工具的可靠性。 (5)对硬件和软件环境的要求。,(1)表达能力或描述能力,因为软件项目的情况千变万化,软件开发工具要能够使用某些软件项目,就要能适应软件项目的种种不同的情况。 比如在代码生成类型的软件开发工具中,常常是根据使用者的若干参数来生成特定的代码段。这些参数的多少与选择是否合理就决定了这个工具的能力大小。如果选择合理、参数详尽,则使用者就可以通过选择适当的参数,充分的规定自己所需要代码段的各种特征,从而成为自己真正需要的代码段落。 在选择与比较软件开发工具的时候,这一点应当是首先要考虑的。,
14、(2)保持信息一致性的能力,软件开发者在管理开发过程中涉及大量的信息。 至少在出现不一致的情况时要能够给出警告与提示。 这方面的要求现在越来越高:各部分之间的一致,代码与文档的一致,功能与结构的一致都要求软件开发工具提供有效的支持与帮助。,(3)使用的方便程度,既然是工具,当然就应当尽量方便用户,而不能使用户因为使用工具而增添麻烦。 软件的开发应当与用户(或预期用户)有充分的交流,其中涉及的表达方法,人机界面应当尽量通俗易懂,以便吸引使用者参与开发过程。 因此,对于软件开发工具来说,是否易用是一项重要的性能指标。,(4)工具的可靠性,软件开发工具应当具有足够的可靠性。即在各种各样干扰条件下仍能
15、保持正常工作,而不致丢失或弄错信息。 软件开发工具涉及的都是软件开发过程中的重要信息,绝对不能丢失或弄错,因此,可靠性特别要紧。 使用软件开发工具的目的就是要防止出现不一致的情况,如果工具自己都不具备可靠的信息,怎么能够起到这样的作用呢?,(5)对硬件和软件环境的要求,如果软件开发工具对硬件、软件的环境要求太高,也会影响它的使用范围。 一般来说,软件开发工具对环境的要求不应当超出它所支持的应用软件的环境要求,有时甚至还应当低于应用软件的环境要求。,软件开发工具总结,软件开发工具的功能 软件开发工具的特性 (性能指标) 软件开发工具的分类 软件开发工具与环境的关系 软件开发工具发展趋势,软件开发
16、工具的分类(基于工作阶段),基于各个阶段对信息的需求不同,软件开发工具大致可以分为三类: 设计工具 分析工具 计划工具,基于工作阶段的软件开发工具分类,1)设计工具从工作的抽象程度来看,它是最具体的,它是指在实现阶段对人们提供帮助的工具。 例如各种代码生成器、一般所说的第四代语言和帮助人们进行测试的工具(包括提供测试环境或测试数据)等,都属于设计工具之列。它是最直接的帮助人们编写与调试软件的工具。 在实践中,设计工具是出现最早、数量最大的软件工具。,2)分析工具主要是指用于支持需求分析的工具 例如,帮助人们编写数据字典的、专用的数据字典管理系统(包括DEC公司的CDD,HP公司的Diction
17、ary/3000),帮助人们绘制数据流程图的专用工具,帮助人们画系统结构图或ER图的工具等。 它们不是直接帮助开发人员编写程序,而是帮助人们认识与表述信息需求与信息流程,从逻辑上明确软件的功能与要求。,3)计划工具则是从更宏观的角度去看待软件开发。 它不仅从项目管理的角度帮助人们组织与实施项目,把有关进度、资源、质量、验收情况等信息有条不紊地管理起来,而且考虑到了项目的反复循环、版本更新、实现了跨生命周期的信息管理与共享,为信息以及软件的复用创造了条件。,软件开发工具总结,软件开发工具的功能 软件开发工具的特性 (性能指标) 软件开发工具的分类 软件开发工具与环境的关系 软件开发工具发展趋势,
18、软件开发工具与环境的关系,任何软件的开发工作都是处于某种环境中,软件开发环境的主要组成成分是软件工具。 为了提高软件本身的质量和软件开发的生产率,人们开发了不少工具为软件开发服务。例如,最基本的文本编辑程序、编译程序、调试程序和连接程序;进一步还有数据流分析程序、测试覆盖分析程序和配置管理系统等自动化工具。,软件开发工具与环境的关系,面对众多的工具,开发人员会感到眼花缭乱,难于熟练的使用它们。针对这种情况,从用户的角度考虑,不仅需要有众多的工具来辅助软件的开发,还希望他们能有一个统一的界面,以便于掌握和使用; 另外,从提高工具之间信息传递的角度来考虑,希望对共享的信息能有一个统一的内部结构,并且存放在一个信息库中,以便于各个工具去存取。 因此,软件开发环境的基本组成有三个部分:交互系统、工具集
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- (2026年)乡村少年宫音乐小组活动计划
- 压力容器作业人员理论考核试卷
- 热敏电阻红外探测器制造工班组协作竞赛考核试卷含答案
- 清扫工岗前技术突破考核试卷含答案
- 纬编工诚信竞赛考核试卷含答案
- 典当业务员岗前岗后考核试卷含答案
- 计算机整机装配调试员成果水平考核试卷含答案
- 渣油热加工工持续改进评优考核试卷含答案
- 空调器零部件制作工岗中应急响应预案考考核试卷含答案
- 浮选药剂工复测水平考核试卷含答案
- 2026年自动控制原理期末考试题及答案
- 草原牧区人畜共患病中西医结合科普课件
- 新教科版科学四年级上册3-1《声音是怎样产生的》课件
- 2026年叉车司机N1证理论知识考试题库完整答案
- 双创知识培训课件
- 作品鉴赏+澧水船夫号子+课件-2025-2026学年高中音乐人音版必修+音乐鉴赏
- 医院肿瘤TNM分期课件
- 创伤失血性休克应急预案演练脚本(2篇)
- (高清版)DB54∕T 0484-2025 《健康体检机构 服务规范》
- 水运工程质量培训课件
- 部编版五年级语文上册第一单元习作-我的心爱之物
评论
0/150
提交评论