《软件工程》课件-第12章 软件项目管理_第1页
《软件工程》课件-第12章 软件项目管理_第2页
《软件工程》课件-第12章 软件项目管理_第3页
《软件工程》课件-第12章 软件项目管理_第4页
《软件工程》课件-第12章 软件项目管理_第5页
已阅读5页,还剩94页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第12章

软件项目管理XX大学XX系XXX软件工程教程电子科技大学出版社学习目标l

掌握软件项目及软件项目管理基本概念和基本方法;l

理解软件项目管理的特点、过程和内容;l

熟悉软件项目过程管理各阶段管理内容和技术方法;l

掌握软件项目管理过程中常用基本工具、文档和应用。01020304软件项目管理概述软件项目估算目录软件项目进度管理软件项目风险管理0506团队管理质量管理07

软件配置管理08本章小结软件项目管理概述01软件项目管理概述◆

软件项目管理的目标就是希望项目能够取得成功。通过对软件开发的各个阶段进行合理的安排和控制,使得软件能够在规定的时间内,按照计划有序的推进软件开发过程,最终得到满足用户需求的软产品。◆

软件项目管理的目标一般包括如下四个方面内容。(1)在规定的时间内,开发的软件产品能够满足用户需求。(2)项目开发的成本控制在预算之内。(3)在项目开发过程,能够妥善处理用户需求的变动。(4)保证对软件项目进度的控制和跟踪。软件项目管理概述◆

软件项目管理包括如下五个方面内容。(1)软件可行性分析。可行性分析是软件项目开发前期必须要经历的阶段,主要从技术可行性、经济可行性、操作可行性、法律可行性、社会可行性等方面进行分析。(2)项目人员组织与管理。项目的参与人员直接关系着项目开发的效率,如何高效的将人员进行组织起来,发挥各自的优势,将会达到事半功倍的效果。软件项目管理概述(3)项目风险管理。通过预测和评估在将来软件项目中可能出现的各类危害软件产品质量、阻碍软件过程实施的潜在因素,并采取预防措施规避风险的发生,降低风险发生的概率。(4)软件质量管控。通过对软件产品和活动进行评审和审计来验证软件是合乎标准的。(5)软件配置。软件配置通过对软件发过程中各项活动的记录,特别是对发生改变的部分进行管理,使得修改正确,同时减少所需的花费,降低修改涉及的影响面。软件项目管理概述◆

软件产品与其他任何产业的产品不同,它是无形的,完全没有物理属性。◆

在开发的过程中,程序与其相关的文档常常需要修改。在修改的过程中又可能产生新的问题,并且这些问题很可能在过了相当长的时间以后才会发现。文档编制的工作量在整个项目研制过程中占有很大的比重。软件项目管理概述◆

软件项目管理涉及到的几个方面包括人员(Person)、产品(Product)、过程(Process)和项目(Project),即通常所说的4P。(1)人员人员管理是软件工程中的核心因素,直接决定这项目的成败。软件项目管理概述(2)产品就是要明确项目的目标,包括如下三个方面。①产品的工作环境;②产品的功能和性能;③

产品工作处理的是什么数据,经它处理后得到的什么数据。软件项目管理概述(3)过程过程是软件工程项目中很重要的因素。在软件项目中,过程分为技术实现过程和软件过程管理。(4)项目项目管理的任务是如何利用已有的资源,组织实施既定的项目,提交给用户适用的产品。一般将项目管理开展的主要工作分为计划管理、资源管理和成果管理三部分。软件项目估算02软件项目估算◆

软件工程项目的计划是指导项目开展的纲领性文件,需要认真准备。”◆

通常确定项目目标和待开发的软件功能后,就应该着手规划制定项目的计划。◆

项目估算是制定项目计划的基础和依据。软件项目估算◆

项目策划是在项目开展初期阶段的重要工作,其目标是得到项目的计划。项目策划一般需要开展的活动表现在如下七”个方面。(1)确认分析项目的特征,项目开发团队应该与用户共同确定项目的各项需求,这是项目开展的出发点,也是开展项目策划的初始条件;软件项目估算(2)选择项目将遵守的生存期模型,确定各阶段的任务;(3)确定应得到的阶段性工作产品以及最终的产品;”(4)开展项目估算,包括对产品规模的估算、成本估算、工作量估算以及所需要的计算机资源;(5)制定项目进度计划;(6)对项目风险进行分析;(7)制定项目计划。软件项目估算◆

项目估算和风险分析都是项目策划过程中重要的内容,如果缺少这两项工作,制定出来的计划必定是盲目的,脱离实际的计划。◆

估算技术一般有代码行(LOC,Lines

of

Code)和功能点”(FP,Funciton

Point)估算法。◆

LOC或FP估算技术对于分解所需要的详细程度是不同的。当用LOC作为估算变量时,功能分解是绝对必要的且需要达到很详细的程度。而估算功能点所需要的数据是宏观的量,当把FP当做估算变量时所需要的分解程度可以不很详细。软件项目估算◆

LOC是直接估算的,而FP是通过估计输入、输出、数据文件、查询和外部接口的数目,以及复杂性校正值间接地确定的。”◆

代码行技术是比较简单的定量估算软件规模的方法。这种方法根据以往开发类似产品的经验和历史数据,估计实现一个功能需要的源程序行数。软件项目估算◆

LOC估算表包括如下内容。(1)每个功能的代码长度估算值=(乐观值+4*可能值+悲观值)/6;”(2)估算工作量=代码总估算长度/估算生产率;(3)估算总成本=日薪*估算工作量;(4)估算行成本=估算总成本/估算代码长度。软件项目估算◆

在具体应用中,可以由多名经验丰富的软件工程师分别作出估算,每个人估计程序的最小规模(a),最大规模(b)和最可能的规模(m),分别算出这三种规模的平均值之后,再计算程序规模的估计值L。”◆

用代码行技术度量软件规模,当程序较小时常用的单位是代码行数(Lines

of

Code,LOC),当程序的代码行数较多时,通常采用千行代码(KLOC)来衡量。软件项目估算(1)代码行技术的优点①

代码行是所有软件开发项目都有的产品,而且容易计算;”②

许多现有的软件估算模式使用LOC或者KLOC作为关键的输入数据;③已有大量基于代码行的文献和数据存在。软件项目估算(2)代码行技术的缺点①

源程序仅是软件配置的一部分,用它的规模代表整个软件规模是不太合理的;”②

采用不同的开发语言实现相同的软件产品,所需要的代码行数是不相同的;③该方法不适用于非过程语言。软件项目估算◆

功能点技术依据对软件信息域特性和软件复杂性的评估结果,估算软件的规模。这种方法用功能点作为单位,度量软件的规模。”◆

根据软件信息域特性可以计算出未调整功能点(UFP),根据基本系统持征可计算出软件复杂性因子(TCF),最后用公式FP=

UFP

*

TCF得出功能点规模。估算结果用功能点(FP)作为单位。软件项目估算◆

项目功能点参数主要有5个特征。(1)外部输入数(EI)。EI表示用户向软件输入的项数,通过界面等的输入,插入、更新等操作都”是典型的外部输入。其主要目的是维护一个或多个ILF,及更改系统的行为。软件项目估算(2)外部输出数(EO)。表示软件向用户输出的项数。它们向用户提供面向应用的信息,其主要目的是通过逻辑处理过程向用户呈现信息。”(3)外部查询数(EQ)。是向应用程序边界外发送数据基本处理的过程,其主要目的是从ILF或EIF中通过恢复数据信息来向用户呈现。软件项目估算(4)内部逻辑文件数(ILF)。是指软件内部需要维护(包括増/删/改/查)的数据,也可以是数据的一个逻辑组合。它可能是大型数据库的一部分或是一个独立的文件。ILF的主要目的是通过应用程序的一个或多个基本处理过程来维护数”据。(5)外部接口数(EIF)。表示在其他系统中维护但本系统需要调用的数据。一个应用程序中的EIF必然是其他应用程序中的ILF。EIF主要目的是为边界内的应用程序提供一个或多个基础操作过程来引用的一组数据或信息。软件项目估算一般情况下,可以采用如下三个步骤估算出一个软件的功能点数。(1)计算未调整的功能点数(UFP)”首先,将项目功能点参数信息(即EI、EO、EQ、ILF和EIF)都分类为简单级、平均级或复杂级,然后根据其等级,为每个特征性都分配一个功能点数。软件项目估算例如,一个平均级的输入项分配4个功能点,一个简单级的输入项是3个功能点,一个相对复杂级的输入项分配6个功能点。然后,采用下面公式进行计算UFP:”UFP=a1*EI

+

a2*EO

+

a3*EQ

+

a4*ILF

+

a5

*

EIF其中,ai(1≤i≤5)是信息域特征性系数,其值由相应特性的复杂级别决定,如表12.1所示。软件项目估算(2)计算技术复杂因子(TCF)这一步将度量14种技术因素对软件规模的影响程度。在下表中技术因素,结合软件的特点,分别为每个因素分配一个从0(不存在或者对软件规模无影响)到5(”对软件规模有很大影响)的值。然后,利用下面计算技术因素对软件规模的综合影响程度DI,如表12.2所示。DI=表12.2

技术因素软件项目估算(3)计算功能点数(FP)FP

=

UFP

*

TCF功能点数与开发软件采用的语言没有关系,因”此,功能点技术比代码行技术更合理一些,但在判断信息域特征复杂级别及技术因素的影响程度时,具有一定的主观因素。软件项目估算◆

项目成本估算,是对完成项目工作所需要的费用进行估计和计划,是项目计划中的一个重要组成部分。◆

为了使开发项目能够在规定的时间内完成,而且不超过预算,成本预算和管理控制是关键。”◆

(1)成本估算方法成本估算方法有自顶向下、自底向上和差别估算方法。软件项目估算1)

自顶向下估算方法估算人员参照以前完成的项目所耗费的总成本(或总工作量),来推算将要开发的软件的总成本(或总工作量),然后把它们按阶段、步骤和工作单元进行分配,

这种方法称为自顶向下估算方法。自顶向下估算方法的主要优点是对系统级工作的重视,所”以估算中不会遗漏系统级的诸如集成、用户手册和配置管理之类的事务的成本估算,

且估算工作量小、速度快。它的缺点是往往不清楚低层次上的技术性困难问题,而往往这些困难将会使成本上升。软件项目估算2)

自底向上估算方法这种方法的优点是对每一部分的估算工作交给负责该部分工作的人来做,

所以估算较为准确。”其缺点是其估算往往缺少与软件开发有关的系统级工作量,如集成、配置管理、质量管理和项目管理等,所以估算往往偏低。软件项目估算3)

差别估算方法差别估算是将开发项目与一个或多个已完成的类似项目进行比较,找出与某个相类似项目的若干”不同之处,并估算每个不同之处对成本的影响,

导出开发项目的总成本。该方法的优点是可以提高估算的准确度,缺点是不容易明确“差别”的界限。软件项目估算除以上方法外,还有许多方法,大致分为专家、类推和算式估算法。①

专家估算法。依靠一个或多个专家对要求”的项目做出估算,其精确性取决于专家对估算项目的定性参数的了解和他们的经验。软件项目估算②

类推估算法。自顶向下的方法中,它是将估算项目的总体参数与类似项目进行直接比较相比得到结果。自底向上方法中,类推是在两个具有相似条件的工作单元之间进行。”③

算式估算法。专家估算法和类推估算法的缺点在于,它们依靠带有一定盲目和主观的猜测对项目进行估算。算式估算法则是企图避免主观因素的影响。用于估算的方法有两种基本类型,由理论导出和由经验得出。软件项目估算◆(2)成本估算模型1)COCOMO估算模型结构性成本模型COCOMO(ConstructiveCostMode)是最精确、最易于使用的成本估算方法之”一。该模型分为:基本COCOMO模型,

它是一个静态单变量模型,对整个软件系统进行估算。软件项目估算中级COCOMO模型,它是一个静态多变量模型,将软件系统模型分为系统和部件两个层次,系统是由部件构成的,它把软件开发所需人力(成本)看作是程序大小和一系列“成本驱动属性”的函数,用于部件级的”估算,更精确些.详细COCOMO模型,将软件系统模型分为系统、子系统和模块3个层次,它除包括中级模型中所考虑的因素外,还考虑了在需求分析、软件设计等每一步的成本驱动属性的影响。软件项目估算◆2)基本COCOMO模型估算公式E=ab(KLOC)exp(bb)D=cb(E)exp(db)式中,E为开发所需的人力(人-月),D为所需的开发时间(月),

KLOC为估计提交的代码行。ab,

bb,

cb和db是指不”同软件开发方式的值,如图12.1所示。有机方式意指在本机内部的开发环境中的小规模产品。嵌入式计算机开发环境往往受到严格限制,例如时间与空间的限制,

因此对同样的软件规模,其开发难度要大些,估算工作量要大得多,生产率将低得多。半有机方式介于有机方式与嵌入方式之间。软件项目估算◆3)中级COCOMO模型中级COCOMO模型先产生一个与基本COCOMO模型一样形式的估算公式,然后对15个“成本驱动属性”进行打分,定出“乘法因子”,对公式进行修正。15个成本驱动属性分成如下4组。①产品属性。指所需软件可靠性、数据基大小及产品复杂性。”②

计算机属性。即执行时间方面的限制、主存限制、虚拟机的易变性及计算机周转时间。③

人员属性。即分析员能力、应用领域中实践经验、

程序员能力、虚拟机使用经验及程序语言使用经验。④

项目属性。即现代程序设计方法、

软件工具的使用及所需的开发进度。其估算公式为:E

=

ai(KLOC)exp(bi)×乘法因子其中,ai,bi值如图12.2所示:(公式12.7)”软件项目进度管理03软件项目进度管理◆

软件项目管理的对象是软件工程项目的相关活动,涉及的范围覆盖了整个软件工程的过程。◆

软件项目进度管理开始于技术工作之前,在软件从概念到实现的过程中持续运行,最后终止于软件工程过程的结束。◆

要有效地进行进度控制,必须对影响进度的因素进行分析,事先或及时采取必要的措施,尽量缩小计划进度与实际进度的偏差,实现对项目的主动控制。◆

在软件开项目的实施中,人的因素是最重要的因素,技术的因素归根到底也是人的因素。软件项目进度管理(1)范围、质量因素对进度的影响。(2)资源、预算变更对进度的影响。这里所说的资源最主要的还是人力资源,还有一个很重要的资源,就是信息资源。(3)低估了软件开发项目实现的条件。首先是低估技术难度。低估技术难度实际上也就是高估人的能力。其次,低估了项目的协调复杂度。另外,项目主管和项目经理也经常低估环境因素。(4)执行计划的严格程度。(5)计划变更调整的及时性。(6)未考虑不可预见事件发生造成的影响。软件项目进度管理项目进度安排的内容如下。(1)估算开发工期①

将待开发系统按阶段分割为若干基本活动如系统规划、系统分析、系统设计、系统实施、系统测试、系统切换等,基本活动可再次分割为若干子活动②

分别估算各子活动的工期及费用预算(构造项目建设工期估计和预算分摊估计表);③

构造项目开发活动网络图,通过该网络图计算得到项目的最早完成时间,即工期。软件项目进度管理(2)项目进度安排软件开发项目的进度安排有两种方式:一是系统最终交付的日期已经确定,软件开发部门必须在规定期限内完成;二是系统最终交付日期只确定了大概年限,最后交付目期由软件开发部门确定。软件项目进度管理进度安排的基本工作内容包括如下。①项目分解。②确定各部分之间的相互关系。③时间分配。④确认投入的工作量。⑤确定人员的责任。⑥规定工作成果。⑦规定里程碑。软件项目进度管理◆

过程调整完善是指对企业标准过程进行添加、删除和修改,使其更适于实现当前项目的目标。为了有效地使用企业制定的标准过程,需要提供一些调整完善指南,包括过程修改的条件、类型和允许的偏差。◆

过程调整是项目计划中的首要任务,在计划评审时要特别予以重视。软件项目进度管理进行任务分解的基本步骤一般如下。(1)确定任务分解标准及要求。(2)将项目逐级分解为组成要素。(3)确认分解的底层每一子项是否适合项目团队分工,是否有交付成果,能否作为进度和费用估计依据。(4)验证分解底层的每一子项的必要性、充分性和清晰性。验证正确后,为分解结果建立一套编号系统。软件项目进度管理(1)甘特图(GanttChart)◆

甘特图又称为横道图。甘特图的图表结构较为特殊,该图表示方法简单易懂,一目了然,动态反映软件开发进度情况,它是进度计划和进度管理的有力工具,在子任务之间依赖关系不复杂的情况下常使用此种方法。软件项目进度管理◆

该图将整个任务分解成子任务,线段表示每个子任务的开始时间和完成时间,线段的长度表示子任务完成所需要的时间,线段是否重叠表示子任务之间的并行和串行关系。◆

甘特图只能表示任务之间的并行与串行的关系,难以反映多个任务之间存在的复杂关系,不能直观表示任务之间相互依赖制约关系,以及哪些任务是关键子任务等信息。软件项目进度管理◆

网络图是用网络分析的方法编制的进度计划图。主要可以描述每个活动及其之间的关系。◆

网图有多种表示法,常用的有单代号法(又称优先图法,Precedence

Diagram

Method,PDM)和双代号法(又称箭线图法,Arrow

DiagramMethod,ADM)。单代号法用节点表示话动,用箭线指向表示活动先后逻辑关系。双代号法用箭线表示活动,用箭线前后节点指向活动的前导活动和后续活动,不同的表示法只是表示形式不同,实质并无大的差别。软件项目进度管理◆

网络图常用术语包括如下。①

路径与关键路径。在网络图中,从始点开始,按照各个活动的顺序,连续不断地到达终点的一条通路称为路径,所花费时间最多的路径称为关键路径。②

关键活动。关键路径上的活动称为关键活动。如果能缩短关键活动所需的时间,就可以缩短项目完工的时间。软件项目进度管理③

活动持续时间。确定活动时间有两种方法:一是“一点时间估计法”,即确定一个时间值作为完成活动需要的时间;二是“三点时间估计法”,在未知的和难以估计的因素较多的条件下,对活动估计3种时间:乐观时间(在顺利情况下,完成活动所需的最少时间,常用符号a表示)、最可能时间(在正常情况下,完成活动所需的时间,常用符号m表示),悲观时间(在不顺利情况下,完成活动所需的最多时间,常用符号b表示),并按以下公式计算活动时间:T

=

(a

+

4m

+

b)

/

6软件项目进度管理④

最早/晚开始时间与结束时间。活动的最早结東时间

=

活动最早开始时间十

活动持续时间;活动的最早开始时间

=

所有前导活动最早结東时间中最晚的一个;最早开始时间和最早结束时间要从初始活动开始逐次向后计算;项目最后一个活动的最早结束时间也是项目的结束时间,同时也是该活动的最晚结東时间。从项目的最后活动逐次向前计算,活动的最晚开始时间等于活动的最晚结束时间减去持续时间;最晚结束时间等于所有后继活动最晚开始时间中最早的一个。活动的最晚开始时间和最早开始时间的差值就是其缓冲时间。在PERT图的关键路径中,各活动的缓冲时间均为0。软件项目风险管理04软件项目风险管理◆

对于任何的软件项目都会存在一定的风险,重要的是在这些风险出现之前,是否已经做好的相应的对策,这才是项目取得成功的关键。风险管理是软件项目开始时制定项目计划时要认真考虑一个重要问题。◆

风险具有两个显著的特点,分别是不确定性和造成的损失性。不确定性主要表现在造成风险的事件可能发生,也可能不发生。造成是损失性主要表现在如果风险一旦发生,必然会对软件项目造成一定的影响和损失。◆

项目风险分类可以从风险的影响范围和风险的可预测性两个方面进行分类。软件项目风险管理(1)项目风险是指预算、进度、人力、资源及需求等方面的潜在问题以及它们对软件项目造成的影响。项目风险直接会影响到整个项目,一旦这类项目变为现实,可能会拖延项目的进度,造成项目成本的增加。(2)技术风险是指设计、接口、实现、验证、维护等方面的潜在问题。技术风险直接会影响软件产品的质量和交付时间。如果技术风险变成现实,开发工作可能变得很困难。存在技术风险是因为问题比我们前期设想的更加复杂,更加难以解决。软件项目风险管理(3)商业风险是指开发了一个没有人真正需要的产品和系统(市场风险);或开发的产品不符合公司的整体商业策略(策略风险);或构成了一个不知如何出售的产品(销售风险)等。商业风险直接影响软件产品的生存力,也往往危机项目或产品。(4)已知风险(knowns)是通过仔细评估项目计划、开发项目的经济和技术环境以及其他可靠的信息来源之后可以发现的那些风险。软件项目风险管理(5)可预测风险(known-unknowns)指可预见、可计划、可管理。又称为已知-未知风险,是指能够从过去项目的经验中推测出来的风险。(6)不可预测的风险(unknown-unknowns)指不可预见、不可计划、不可管理,需要应急措施。软件项目风险管理◆

项目风险管理是指为了最好的达到项目的目标,要求能够识别、分配、应对软件项目生存周期内风险的科学与艺术。◆

项目风险管理的目标是使潜在的机会或回报最大化,使潜在的风险最小化。风险管理涉及的主要过程包括:风险识别、风险量化、风险应对计划制定和风险监控四个方面,如图12.5所示。◆

风险识别在项目的开始时就要进行,并在项目执行中不断进行。换句话说,在项目的整个生存周期内,风险识别是一个连续的过程。软件项目风险管理(1)风险识别风险识别包括确定风险的来源,风险产生的条件,描述其风险特征和确定哪些风险事件有可能影响本项目。风险识别不是一次就可以完成的事,应当在项目的自始至终定期进行。(2)风险量化涉及对风险及风险的相互作用的评估,是衡量风险概率和风险对项目目标影响程度的过程。风险量化的基本内容是确定那些事件需要制定应对措施。软件项目风险管理(3)风险应对计划针对风险量化的结果,为降低项目风险的负面效应制定风险应对策略和技术手段的过程。(4)风险监控风险监控的主要任务是对整个项目管理过程中的风险进行应对,该过程的输出包括应对风险的纠正措施以及风险管理计划的更新。软件项目风险管理项目管理协会PMI(ProjectManagementInstitute)将项目风险管理划分为6个步骤进行管理①

规划风险管理。定义如何实施项目风险管理活动的过程;②

识别风险。判断哪些风险会影响项目并记录其特征的过程;③

实施定性风险分析。评估并综合分析风险的发生概率和影响,对风险进行优先排序,从而为后续分析或行动提供基础的过程;软件项目风险管理④

实施风险定量分析。就已识别风险对项目整体目标的影响进行定量分析的过程;⑤

规划风险应对。针对项目目标,制定提高机会,降低威胁的方案和措施的过程;⑥

监控风险。在整个项目中,实施风险应对计划,跟踪已识别的风险,监测残余风险,识别新风险和评估风险过程有效性的过程。软件项目风险管理软件项目的风险无非体现在以下四个方面,即需求、技术、成本和进度。软件项目开发中常见的风险有如下九类。(1)需求风险(2)计划编制风险(3)组织和管理风险(4)人员风险(5)开发环境风险(6)客户风险(7)产品风险(8)设计和实现风险(9)过程风险软件项目风险管理影响风险管理成功的六个因素如下。(1)对风险管理价值的认同(2)个人承诺/责任(3)开诚布公的沟通(4)组织级的承诺(5)量化项目上风险管理的投入(6)与项目管理整合软件项目风险管理风险管理策略主要有以下四条。(1)风险管理要趁早。(2)不要忽视参考以前相关的项目经验。(3)要充分考虑项目成员对风险的态度。(4)借助相关的风险管理工具。团队管理05团队管理◆

软件开发人员一般分为:项目负责人、系统分析员、高级程序员、程序员、初级程序员、资料员和其他辅助人员。◆

组织机构不等于开发人员的简单集合,要求有好的组织结构;合理的人员分工;有效的通讯。◆

生存周期由许多阶段组成,每个阶段都有一系列的运行规律和规则,用来调节和管理对象的行为。团队管理(1)

主程序员组织机构。是由一位高级工程师(主程序员)主持计划、协调和复审全部技术活动;一位辅助工程师(或辅助程序员)协助主程序员工作,

并在必要时代替主程序员工作;若干名技术人员(程序员)负责分析和开发活动;可以有一位或几位专家和一位资料员协助软件开发机构的工作。资料员非常重要,负责保管和维护所有的软件文档资料,帮助收集软件的数据,并在研究、分析和评价文档资料的准备方面进行协助工作。主程序员组的制度突出了主程序员的领导,责任集中在少数人身上,有利于提高软件质量。团队管理(2)专家组组织机构。是由若干专家组成一个开发机构,强调每个专家的才能,充分发挥每个专家的作用。这种组织机构虽然能发挥所有工作人员的积极性,但往往有可能出现协调上的困难。(3)民主组织机构。是由从事各方面工作的人员轮流担任组长。很显然,这种组织机构对调动积极性和个人的创造性是很值得称道的,但是,由于过多地进行组长信息“转移”,不符合软件工程化的方向。团队管理◆

软件是为用户开发的,在开发过程中自始至终必须得到用户的密切合作和支持。◆

用户的干扰和阻力主要有。(1)不积极配合。(2)求快求全。(3)功能变化。质量管理06质量管理◆

软件质量反映了软件的本质。软件质量是一个软件企业成功的必要条件◆

我们把影响软件质量的因素分成三组,分别反映用户在使用软件产品时的三种不同倾向或观点,这三种倾向分别是产品运行、产品修改和产品转移,如图12.7所示。◆

影响软件质量的因素主要包括:正确性、可靠性、效率、可使用性、完整性等。质量管理软件质量保证的主要步骤包括如下六点。(1)以客户对于质量的需求为基础,对项目开发周期的各个阶段,建立质量目标。(2)定义质量度量(metrics)标准,来衡量项目活动的结果,协助评价有关的质量目标是否达到要求。(3)确定质量活动。对于每一个质量目标,确定那些能够帮助实现该质量目标的活动,并将这些活动集成到软件生存周期模型中去。质量管理(4)执行已经确定的质量活动。(5)评价质量。在项目开发周期的各阶段,利用已经定义好的质量度量来评价有关的质量目标是否达到。(6)若没有达到质量目标,采取补救措施。质量管理软件度量和保证的条件通常包括适应性、易学性、可靠性、针对性、客观性和经济性。软件质量度量方法有以下三种。(1)精确度量。使用质量度量评价准则进行详细度量,工作量大,但度量精确度也高。(2)全面度量。可以与简易度量并用对各个质量设计评价准则进行度量,工作量可以控制在一定的范围内。(3)简易度量。

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论