软件工程的管理_第1页
软件工程的管理_第2页
软件工程的管理_第3页
软件工程的管理_第4页
软件工程的管理_第5页
已阅读5页,还剩82页未读 继续免费阅读

下载本文档

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

文档简介

软件工程的管理

内容

■软件项目管理

■软件度量与软件质量度量

■软件项目估算

■风险分析

■项目组织与计划

■软件配置管理

■软件过程成熟度

1.项目管理概念

什么是项目

为创造独特的产品、服务或结果而进行的一次性努力

■特点:一次性,以前从未以完全相同的方式来完成过

相同的产品

■特点:明确的起始点

基于项目的这两个特点,我们在研究软件项目

的成功规律上着重在项目之间的共性上:构造

软件产品的过程上,而非产品本身。

茎釜物孤身日函目西■

减戢追在J—函地‘密律'珞奈:蔑在■

国冬叱物日物晋X函驰:智u■

V条:哲Y■

dWM°(1”「o」d)

目西叱(ssaoojd)系祢'(^onpojd)

智J'(o[doed)哲丫过条爵昙目函■

军辞爵导目诋

项目管理才既念

软件项目管理内容

■软件配置管理

■项目估算和资源管理

■项目风险评估

■制定项目计划

■项目跟踪和监督

项目管理

<1

项目管理的技术

■软件度量技术

■项目估算

■风险分析

■进度计划

■软件过程成熟度

.2.软件度量

■度量是实施软件有效管理的重要手段

■软件度量难以获得绝对值

■度量的概念

■测量(Measurement)是对产品过程的某个属性的范

围、数量、维度、容量或大小提供一个定量的指示;

■度量(Metric)是对软件产品进行范围广泛的测度,

它给出一个系统、构件或过程的某个给定属性的度的

定量测量;

■指标(Indicator)是一个度量或一组度量的组合,

采用易于理解的形式,对软件过程、项目或产品质量

提供更全面、深入的评价和了解,以利于过程和质量

的分析

股世耳

甘二

济’

蛤(靠

也嘲-

<甘

<林

济)

取小水

月M德

失M

型K恢

(

:

V

金E嘲

即照甘固

校口国虎

嘲@

成下耳烈

米园。

—世百二

高里

L世

林博如。

X陋

懈的博

G。一

H舶格

嘲(

—驷一

中4

校£室

甘济£

嘲林

%

%咚

封目

川f

聊源中

挛i水

米乐M

在济杂杂

)

申皿M二

i枝越

排。二噌

M耐格球电济怅

Jm

、r

度量原理

,­•—•■••--•

经验(现实世界形式(数学)世界

数据分析G假设6命题S理论

度量应用<-操作定义G定义6概念

分解.应用于

软件实体♦

拥有度量数值决定

徵量)

限制

・矗・表示为测量

方法

单位•

客观量化使用

条件属于

结果

尺度

类型

、测量原理一度量尺度

■分类尺度(Nomnalscale)某个指标被分成一系列的类别

(完备性、排斥性)。如产品质量属性有:功能性、适用

性、性能、安全性、可靠性、可维护性等。

■序列尺度(Ordinalscale)分类的序列,即在分类的基础

上,再加以排序。如用1、2、3、4、5表示用户的满意度,1

满意度最低,5满意度最高。也可以用某中线为基准的相对百

分比来表示程度。

■间隔尺度(Intervalscale)通过数值来表示两个邻近测

量点之间的差异,但没有绝对的“零”值。

■比值尺度(RatioScale)和间隔尺度相似,但有绝对的

“零”值存在。

测量原理-测量值

■比值:来自两个不同的组并且互为排斥

的两个数值之比

■比例:比例的分子是分母的一部分

■比率:是个动态的测量表示方法,提供

了一段时间内某个因素的表现信息,通

常是熊时间而发生变化

■百分比:用于比值、比例中更为直接的

表示方法,即在一百个单位中所占比例

测量标准

J

■要保证测量的质量,必须遵守一定的标准和规则。

7

由型下;容翔量,得荆蜘的嗝<性。多次娜最^^

越接近,可靠性就越高;反之则可靠性越低。

测量过程和原则

测量过程

=吊忖曲

.

&北长

得耳金噌

¥里咪

耳i型配勰

皎X水中

-b

甘H也源衰

U

中出他都

K

衰皿晶曲

,太

科型反鼠

京品

*八瓦

丽网长

品飓

C豺够

赳境

国H品型

N一太

-丑唱—

*礴仙

即—吟也那必

畋i

依型帮

令K

噌因

M

&

得帏忖G

描标

4

H斐熊照

杼K

菖耳4耳怖

S

耳B八

陋塔X腱长集

,L曲

欧H胆科瞄组

B喉宾

H

耳杂植领X皿尔

豺会

屈申品曲湍审烬或

8

方源林《§悔

中-百苗

腐长女麒品褥耳帐

崂(喉

H

屈里4枚杼眯咪

中科目

源耳皿个杂耳与氏费

衰。水

中杂—水申中胞临申枫

&

M凶

=

源曲=祭源祭耳源普源

K

"

^・

软件度量

软件度量很少借助硬件设备、仪器仪表等,而是

通过软件的方式进行,如软件工具、数理统计

和自身特定方法,度量方法一般分为产品度

量、过程度量和项目度量三种:

■软件开发生命周期的度量活动

■软件的项目度量(多维度)

■软件产品的规模度量

■代码行度量方法

■功能点分析法

■面向对象软件的对象点方法

的欢与皿即网杂曲叱

格界长瞄收蒯同网屈好

小陋豺陋

品翌曲渊淤目

埠R豺

股相一「中里

坦汽舞心

4的

乐胆也£马

4

,c

区中制姮一曾中

中唱皿世

4世

1

嚣购品中.

也番将

4

M将

个口壮4

M如

不4十的

盛仲斜H品曾

八腱

吸整的

杂±

,叔,试

§

♦,

M

M区

¥改

电唱俱6

曲咪人①区斜杂前

成£

籁生同中君皿陋

皿段国

杂杂

唱乐一「品群W腐

唱用卷皿

眄人型岩申

成源

也,杂4

嚣相申M

世熠媒

,c。

W

申胆靠M杂

*铃

蛤,,

K

M小皿申的杂唱

将fr

却。4。

整申杂辱购泰去叱上总

M

强於£

怖扇购那犯靠犯世K也

,抬‘

或世杂伞相除陋皿将陋皿制

辟源

始豺K

蒯唱引怖铃精豺唇止

M里黄氏的品,友

去也灰氏除世将

@水一凶件罪一我

一刖与环狼

申购申皿射中壮

申曲怪假方嘴

M

M

国M

世M收中

虫第友

C

。>

唱唱由幽皿起埼陋就■

皿曾。

蛤也曲唱用恭叱豺陋轻/

上寻番

在申也世成■世舒容鬃

。,杂

R杂

始^嘱始型在蛤铃仲阪

fr

・・・

《软件开发生命周期的度量活动

,面向过程度量

■分析模型度量(功能)

■设计模型度量(体系结构)

■源代码度量(长度估算)

■测试度量(错误数)

■维护度量(产品稳定性)

软件的项目度量

I规模度量(sizemeasurement):以代码行数、功能点

量霹鎏摩雄后遇物的蠢础零资瞬小篝物制嗓直瓯标比。

25.磬国度斯第能6耐豳电期酒龈加r豳剧传谕力<定程谢磐

于毋索羲预测软件产品的可测试性、可靠性和可维护

禅顿武琪悭卑孚鼠揖策略谈§失”来评估风险。

7睿膻塞盘磬俺C仗偎^^&界](^^债芈售强展航电产品缺陷

分佛崩情的并映陷窕联翊赦而薛4)从前帮敌3?^^修复

康幅地需的〔山作整热的珀冬小程中存程哪典弱魄ej)预问

测骈翎人布尊阐也海测1杆醺翎阿留赎陷辔碍动态增长等。

软件产品的规模度量

■德尔菲法:德尔菲法(Delphitechnique)是一种专家评估

技术,适用于在没有或没有足够的历史数据情况下,来评定

软件采用不同的技术、新技术所带来的差异,但专家的水平

及对项目的理解程度是工作中的关键点。

■COCOMO模型:造性成本模型(COCOMO:constructivecost

model)是一种精确、易于使用的基于模型的成本估算方

法。它有分为基本COCOMO模型,中间COCOMO模型和详细

COCOMO模型

代码行度量方法

■面向规模的度量

■生产率=kLOC/PM

■质量二错误数/kLOC

■成本二元/LOC

■文档二文档页数/kLOC

(注意LOC的单位,考虑归一化后计算)

功能点分析法

■功能点(FP)

■用户输入数

■用户输出数

■用户查询数

■文件数

■夕卜者B接口数

■FP=总计数*(0.65+0.01*sum(Fi))

功能点分析法

信息域参数计数加权因子加权计数

箱单中间复杂

—------------------

输入数346二

输出数457=

查询数346二

文件数71015=

接口数5710=

总数

功能点的校正值

■可靠的备份■主文件更新

■数据通信■输入输出文件查询复杂?

■分布处理■内部处理复杂?

■性能是否关键■要可复用设计?

■操作环境■包括转换和安装?

■有否联机数据■系统可在不同部门使用

■是否要多重窗口■要求易于修改和使用

校正值层次分析

每个因素平分为0〜5

012345

没有影响偶然适中普通重要的极重要的

&面向功能度量

■生产率=FP/PM(人月)

■质量二错误数/FP

■成本二元/FP

■文档二文档页数/FP

代码行与功能点的关联

程序设计语言LOC/FP(平均值)

汇编语言300

COBOL100

FORTRAN100

Pascal90

Ada70

面向对象语言能否用一种度量方法评价

第四代语言不同队伍的开发水平?

代码生成器1b

《面向对象软件的对象点方法

■对象类间的耦合

■类的响应

■类的内聚

q基于UseCase的估算

■将软件需求用UseCases方式表达后,利用Actor(参

与者)和UseCase(用例)的数量乘以相应的权值来

计算UUCP(未经过调整的UCP)。

估算UUCP

WeightsFactorsTotal

Num

SimpleAverageComplexPoints

Actors(参与者)921324320

Usecases(用例)281151210515250

TotalUnadjustedUseCasePoints(UUCP):270

注:复杂度标准

ActorsSimpleGUI

AverageInteractiveorprotocal-driverinteiiace

ComplexAPI/lowlevelinteractions

UsecasesSinple1-3transactions/scenarios(交易/场景)

Average4-7transactions/scenarios(交易/场景)

Complex>7transactions/scenarios(交易/场景)

技术复杂性调整因子

ValueExtended

FactorDescriptionWeight

(0-5)Value

T1Distributedsystem分布式系统020

12Responseobjectives响应或吞吐量绩效要求020

T3End-userefficiency终端用户效率(联机)010

T4Complexintemalprocessing复1杂的内部处理过程010

T5Reusablecode可重用性010

T6Easytoinstall易安装性00.50

T7Easytouse易使用性00.50

T8Portable可移植性020

T9Easytochange易更改性010

T10Concurrent并发处理要求010

T11Securityfeatures安全要求010

T12Providesdirectaccessforthirdparties为第三方提供访问接口010

T13Specialusertrainingrequired特殊的用户培训要求010

Tffactor(sumofextendedvalues)=0

TechnicalComplexityFactor(TCF)=0.60+(0.01*Tfactor)=0.6

注:影响等级

0noinfluence,表明因素与项目无关

3average,影响程度中等

stronginfluencethroughout,

5表示必不可.少的因素,在整个软件开发过程中都有较强的影响

1.环境调整因子

估算EF(EnvironmentalFactor)

FactorDescriptionValue(0-5)WeightExtendedValue

T1FamiliarwithUML,熟悉UML01.50

T2Applicationexperience,开发经验00,50

T3Object-orientedexperience,面向对象的经验010

T4Leadanalystcapability,系统分析能力00.50

T5Motivation,积极性010

T6Stablerequirements,稳定的需求020

T7Part-timewoikers,兼职员工5-1-5

T8DifficultprogrammingLanguage,复杂的编程语言5-1

-5

EFactor(sumofextendedvalues)=-10

EnvironmentalFactor(EF)=1.40+(-0.03*EFactor)=1.7

环境调整因子

■Value根据各因素的影响等级来确定:

■0:nottrueforanyteammembers,项目组成员都不具备该因素

■对于与经验有关的因素,表示没有该主题的经验

・对于积极性,表示没有积极性

.对于需求的稳定性,表示非常不稳定的需求

・对于兼职员工,表示全力兼职员工

・对于编程语言,表示容易掌握的编程语言

■3:average,影响程度中等

■5:trueforallteammembers,所有项目组成员都具有该因素

.对于与经验有关的因素,表示专家水平

・对于积极性,表示积极性高

.对于需求的稳定性,表示不变的需求

・对于兼职员工,表示全为全职员工

.对于编程语言,表示非常难的编程语言

估算UCP

I、估算UCP规模

UUCP(未经过调整的UCP)270

TCF(技术因子)0.6

EF(环境因子)1.7

UseCasePoints(UCP)(UCP=UUCP*EF*TCF)275.4

计算工作量

2、估算工作量

规模(size):275.4UCP

生产率(productivity):2.5人日/UCP

工作量(effort=size*productivity):688.5人日

注:1UCP工作量为2.5人日

软件质量度量

软件缺陷

IEEE(1983)729软件缺陷一个标准的定义:

□从产品内部看,软件缺陷是软件产品开发或维护过程中所存在的错

误、毛病等各种问题;

□从外部看,软件缺陷是系统所需要实现的某种功能的失效或违背。

缺点(defect)偏差(variance)

谬误(fault)失败(failure)

问题(problem)矛盾(inconsistency)

错误(error)毛病(incident)

异常(anomy)

《软件质量的定义

ANSI/IEEESTD729给出了软件质量定义:

软件产品满足规定的和隐含的与需求能力有关的全

部特征和特性:

(1)软件产品质量满足用户要求的程度;

(2)软件各种属性的组合程度;

(3)用户对软件产品的综合反映程度;

(4)软件在使用过程中满足用户要求的程度。

《软件质量的其它定义

SEI的WattsHumphrey认为软件质量是“在实用性r、需求、可

靠性和可维护性一致上,达到优秀的水准”

1.客户满意度:使最终的软件产品能最大限度地满足客户需求

的程度。

2.一致性准则:在生命周期的每个阶段中,其工作产品总能保

持与上一阶段工作产品的一致性,最终可追索到分配需求。

3.软件质量度量:设立软件质量度量指标体系(例如:iso-

9126),并以此来度量软件产品的质量。

4.过程质量观:软件的质量就是其开发过程的质量。Humphrey

的质量观是“软件系统的质量取决于开发和维护它的过程的质量。'

软件产品质量属性

■功》U生Functionality

■可用性Usability

■可靠性Reliability

■4生育邑Performance

■容量Capacity

■可测量性Scalability

■可维护性Servicemanageability

■兼容Compatibility

■可扩展性Extensibility

明量术具员织备用复障程度度

书和率时间度

质间隔

量时

用户要求与软件质量特性

用户要求要求质量的定义质量特性

功金巨•能否在有一定错误的情况下也不停止运行?完整性

•软件故障发生的频率如何?可靠性

.故障期间的系统可以保存吗?生存性

•使用方便吗?可用性

性能.需要多少资源?效率性

•是否符合需求规格?正确性

•能否回避异常状况?安全性

•是否容易与其它系统连接?互操作性

干爹改•发现软件差错后是否容易修改?可维护性

变更•功能扩充是否简单?可扩充性

•能否容易地变更使用中的软件?灵活性

•移植到其它系统中是否正确运行?可移植性

.可否在其它系统里再利用?再利用性

管理•检验性能是否简单?可检验性

•软件管理是否容易?可管理性

软件质量指标

ANSI/IEEE:

■功熊J生:实现的功能达到设计规范,并满足用户需求的程度

■可靠4生:规定的时间和条件下,仍能维持其性能水准的程度

■可用4生:用户掌握软件操作所要付

温馨提示

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

评论

0/150

提交评论