软件过程与管理.第二讲

合集下载

软件项目管理及案例分析

软件项目管理及案例分析

软件项目管理及案例分析软件项目管理及案例分析引导语:美国项目管理专业资质认证委员会主席Paul Grace说过,在当今社会中,一切都是项目,一切也将成为项目。

下面是yjbys店铺为你带来的软件项目管理及案例分析,希望对你有所帮助。

中国科学院计算技术研究所是国家专门的计算技术研究机构,同时也是中国信息化建设的重要支撑单位,中科院计算所培训中心是致力于高端IT类人才培养及企业内训的专业培训机构。

中心凭借科学院强大师资力量,在总结多年大型软件开发和组织经验的基础上,自主研发出一整套课程体系,其目的是希望能够切实帮助中国软件企业培养高级软件管理与技术人才,提升整体研发能力。

迄今为止已先后为国家培养了数万名计算机专业人员,并先后为数千家大型国内外企业进行过专门的定制培训服务。

高水平项目管理是软件项目成功的关键,也是软件产品质量的根本保证,具有这方面理论和实践的人员是目前软件组织中急需的高层次人才。

为建立符合中国国情的软件开发过程和组织体系,培训中心特举办“软件项目管理”培训班,具体事宜通知如下:一、培训对象软件开发机构高级管理人员、项目经理、系统架构师、系统分析师、资深开发人员、质量保证人员以及其他对提升软件开发质量负有责任的人员。

二、学员基础1,对软件项目的分析、设计、组织和开发具有一定实践经验;2,有一定的软件项目管理、技术管理或质量保证的基础知识与实践经验。

三、师资由业界知名专家亲自授课:袁老师培训中心高级讲师,CMMI、GJB 5000A高级咨询顾问,具有多年成功管理大型软件项目的经验,对软件工程管理与过程具有深邃的理论见解和丰富的实践经验。

四、培训要点高质量软件来自于高水平的项目管理,这个观点已经成为业内的共识。

软件项目成功最重要的要素是什么?大型软件项目是依靠一个组织来完成的,如果这个组织在管理上是无序的,开发过程是非正式和混乱的,计划期限和成本目标通常超限,项目的成功取决于个人英雄式的行为,在人员发生变动时项目往往陷入灾难,那么很难说这个项目会获得成功。

第二讲 进程管理(1)--进程控制

第二讲 进程管理(1)--进程控制

N=account;
N=N+200; account=N;
建立一个能够描述程序的执行过程并且能用来共享资 源的基本单位。
2.1.5 进程的定义和特征
一、进程(Process) 进程是程序在一个数据集上的运行过程,是系统 进行资源分配和调度的一个独立单位。
其它定义:

进程是程序的一次执行。 进程是一个程序及其数据在处理机上顺序执行时所 发生的活动。 进程是进程实体的运行过程,是系统进行资源分配 和调度的一个独立单位”。
2.2 进程的描述
系统中需要有描述进程存在和能够反映其变化的物理实体,即进程的静态 描述。进程的静态描述由三部分组成:进程控制块PCB,有关程序段和该 程序段对其进行操作的数据结构集。
进程控制块PCB包含了有关进程的描述信息、控制信息以及资源信息,是 进程动态特征的集中反映。 系统根据PCB感知进程的存在和通过PCB中所包含的各项变量的变化,掌 握进程所处的状态以达到控制进程活动的目的。
21
2.2.1 进程控制块
4)进程控制信息:
程序和数据的地址——指程序和数据所在的内存或外存首地址; 进程同步和通信机制——如信号量、消息队列指针等,它们可能全 部或部分地存放在PCB中; 资源清单——是一张列出了除CPU外的、进程所需的全部资源及已 经分配到该进程的资源的清单; 链接指针——它给出本进程(PCB)所在队列中下一个进程的PCB的 首址。
27
2.3.1 进程的基本状态
进程的挂起/解挂状态
一、设臵原因
1、用户需要 :中间结果与预期不符; 2、操作系统需要:系统某些功能故障; 3、系统负荷过重 4、父进程需要 5、对换的需要
二、设臵挂起状态后进程状态的转换

软件工程方法学和软件过程

软件工程方法学和软件过程

第二讲软件工程方法学和软件过程一、软件的生命周期1、软件的生命周期软件同世界上其它所有事物一样,也有产生、发展、成熟到消亡的过程,称为软件的“生命周期”(life cycle)。

“生命周期”把软件不仅仅看作一个静态的事物,而看成是一个过程,需要动态地进行控制和管理,这对纠正软件开发中的各种错误观念,实现对经济上合理有效的软件开发是至关重要的。

“生命周期”的概念是软件工程的基石,一切软件工程的研究和实践都是在此概念基础上进行的。

2、软件生命周期的阶段划分根据软件自身的特点,生命周期可以划分为以下四个主要阶段:(1)软件定义:确定软件开发的目标和具体要求。

(2)软件开发:实现软件实体,测试,并交付用户(3)使用和维护:用户使用软件,开发者进行维护(4)软件废弃:软件不再适应新的需求,维护代价太高,停止使用二、软件工程方法学1、软件工程方法学软件工程方法学是指一套完整的、相关的软件开发技术,包括原则、方法、过程和工具,也称为软件开发范型。

目前主要的软件工程方法学包括:生命周期方法学面向对象方法学敏捷方法学2、生命周期方法学:(1)定义:生命周期方法学是指严格按照软件的生命周期,采用分阶段计划和控制,以及顺序实施的步骤,和各种结构化分析(SA,Structured Analysis)和结构化设计(SD,Structured Design)技术的软件开发方式。

生命周期方法学首先是一种软件开发的方式,它的特点,一是分阶段计划、控制、顺序实施,另外就是在各个阶段采用结构化(包括结构化分析和结构化设第 1 页计)技术。

要注意:软件的生命周期概念和软件工程的生命周期方法学概念是两个不同的概念,不能混淆。

软件的生命周期方法学,只是软件开发的一种方法学,同其他软件开发方法学一样,都是以软件生命周期的概念为基础而研究建立的。

生命周期方法学是软件工程最传统的方法学,虽然它并未完全解决软件危机的问题,但是对软件工程的发展起到了极其重要的促进作用,至今仍旧是最成熟和应用最为广泛的方法学。

软件工程第2讲 软件生命周期模型

软件工程第2讲 软件生命周期模型

敏捷开发4软件生命周期模型1瀑布模型及几个衍生模型2迭代和递增3其他生命周期模型及模型比较5敏捷开发4软件生命周期模型1瀑布模型及几个衍生模型2迭代和递增3其他生命周期模型及模型比较57P32: 2.9.2P23: 2.2 P25: 2.3P34: 2.9.3模型构造多使用脚本语言、基于现有基础代码库、UI工具制作,制作过程一般不会考虑性能、稳定敏捷开发4软件生命周期模型1瀑布模型及几个衍生模型2迭代和递增3其他生命周期模型及模型比较5迭代-递增生命周期模型递增也是软件工程的一个固有特性P27P26: 2.5P28P29P30 2.7敏捷开发4软件生命周期模型1瀑布模型及几个衍生模型2迭代和递增3其他生命周期模型及模型比较58个体和交互胜过过程和工具以人为本我相信没有比面对面交流更高效的沟通渠道了•尊重和信任激发个人内心的责任感和使命感,激发了个体的潜能。

•基于互相信任的前提,敏捷提倡自治的全功能团队。

在工作形式上,整个团队平时坐在一起工作,从物理空间上创造了更加便捷面对面的沟通机会。

•要摒弃这种重流程和重工具,提倡轻量级流程和轻量级工具,而这些流程和工具又在促进个体交互。

比如,我们在日常工作中会使用Trello、Jira、Keynote等工具。

可以工作的软件胜过面面俱到的文档价值导向为客户交付可工作的软件是我们的核心目标•我们应该尽早交付可进行端到端测试的代码,该目标决定了我们不应该花过多精力在面面俱到的文档上。

•但这不代表我们要抵制任何文档。

实践证明,轻量级的文档策略有助于团队高质量交付可工作的软件。

•在开发过程中,交互设计原型也是一种轻量级文档,交互设计师交付可以尽早地跟团队和客户进行确认验收的核心业务场景的原型,快速收集反馈。

客户合作胜过合同谈判客户团队帮助客户实现他们真正想要的价值•让客户也作为团队的一分子,跟客户建立信任的合作关系取代敌对的谈判关系。

•需求的变化往往来自客户,让客户参与进来可以在开发的过程中尽早的发现变化,从而尽早采取解决方案。

3-MIS概念

3-MIS概念


• BPR(business process reengineering) 企业过程再造工程
– 80年代
• 以企业过程为对象,从顾客的需求出发,对企业过程进行根本 性地思考和彻底地再设计;以信息技术和人员组织为使能器 (enable),以求达到企业关键性能指标和业绩的巨大提高或 改善,从而保证企业战略目标的实现。
• 管理的性质
– 管理是艺术还是科学
• 管理是艺术也是科学
– 管理是定性还是定量
• 管理需要定性和定量
– 管理是文科还是理科,但管理科学是理工科。
• 管理已成为了一门独立的学科
主要管理科学家的论点
• 泰勒
– 1911年《科学管理原则》
• 第一次把科学原则应用于管理领域,也将管理带入科学殿堂 • “科学管理之父”
管理信息系统
• 主要内容
– 管理信息的定义和性质 – 信息生命周期的各阶段
管理信息系统不只是计算机的应用,计算 机只是其工具。管理信息系统也不是“计算机
辅助企业管理”,管理信息系统是企业的神经
系统,是一个人-机系统,是每个企业不能没
有的系统。
——薛华成 《管理信息系统》
主要内容:
1、管理信息系统的概念 2、管理信息系统的分类 3、管理信息系统与现代管理方法
非结构化决策的 计算机应用系统。它是管理信息系统(MIS)向更高一级发展而产生的先进信息 管理系统。它为决策者提供分析问题、建立模型、 模拟决策过程和方案的环境,调用各种信息资源和分析 工具,帮助决策者提高决策水平和质量。
信息技术是指有关信息的收集、识别、提取、变换、存贮、传递、处理、检索、检测、分析和利用等的技术。
附1
数据驱动的DSS 数据驱动的DSS是DSS的一种,强调以时间序列访问 和操纵公司的内部数据, 也有时是外部数据。通过查询和检索进行访问的简单的文件系统提供了最基本的功 能。 数据仓库系统提供另外一些功能。数据仓库系统允许采用应用于特定任务或 设 置的特制的计算工具或者较为通用的工具和算子来对数据进行操纵。结合了联 机分析 处理(OLAP)的数据驱动DSS提供最高级的功能和决策支持,并且此类决 策支持是基于大规模历史数据分析的。 主管信息系统(EIS)以及地理信息系统( GIS)属于专用的数据驱动DSS。 模型驱动的DSS 模型驱动的DSS强调对于模型的访问和操纵,比如, 统计模型,金融模型,优 化模型和/或仿真模型。简单的统计和分析工具提供最基本的功能。一些允许 复杂 的数据分析的联机分析处理系统(OLAP)可以分类为混合DSS系统,并且提供模 型和数据的检索, 以及数据摘要功能。一般来说,模型驱动的DSS综合运用金融 模型,仿真模型,优化模型或者多规格 模型来提供决策支持。模型驱动的DSS利 用决策者提供的数据和参数来辅助决策者对于某种状况进行分析。 模型驱动的 DSS通常不是数据密集型的,也就是说,模型驱动的DSS通常不需要很大规模的数 据库。模型 驱动的DSS的早期版本被称作面向计算的DSS, Bonczek, Holsapple 以及 Whinston (1981)。这类系统也称为面向模型或基于模型的决策支持系统。

Maple软件的介绍 使用方法

Maple软件的介绍 使用方法

一、基本概念和操作
• 目前在科技、工程、教育界比较流行和著名的 数 学 软 件 主 要 有 五 个 : Maple、MATLAB、 MathCAD、Mathematica和SAS。它们功能全面, 各有特色。 • Maple 的功能主要包括符号计算、数值计算、 图形处理、程序设计等 (MATLAB、MathCAD 的符号计算功能来源于Maple) 。 • Maple 包括处理用户命令输入、管理内部数据 的“内核”;外挂函数库(工具包,在需要时可 以由用户自行加载) ;交互式图形用户界面(通 过这个接口,用户才能够向 Maple 发出指令并 得到执行)。
一、基本概念和操作(6)
• 清除变量 :一旦定义了变量,Maple将在整个 工作过程中记得变量的值。再次赋值可以覆盖 前一次赋值。 • 有时我们需要从内存中清除变量的值。 • 使用 x:=‘x’;格式可清除变量x的值。注意这里 使用单引号。 • 立即清除内存中所有变量的值使用 restart 命令。 在开始新问题时可以使用 restart 命令确保无赋 过值的变量。
一、基本概念和操作(8)
命令: evalf:用来把非浮点数的计算结果或者表达式转 化为浮点数形式的近似结果。其基本的命令格 式为evalf(expr,n) expr:任意的算术表达式 n:计算结果的精度,当n缺省时采用环境变量 Digits的值
一、基本概念和操作(9)
simplify(expr):对计算的结果进行化简 combine(f):对数的乘积的合并 coeff(p,x,n)或coeff(p,x^n)以x为变量的 多项式p中x^n项的系数 degree(p,x):计算多项式p中变量x的最高次 数 sort(p,[x,y]):对多项式p按字典序排列 subs(x=a,expr):用表达式a替换表达式expr 中出现的所有子表达式x。 eval(expr,x=a) eval(name)完全求值命令

第二次课-软件生存周期过程与过程体系(9.11)

第二次课-软件生存周期过程与过程体系(9.11)

-- 必须明确人员的责任
3.建立有效的软件过程
①条件 过程文件得到充分的理解、遵循和实施 ⑴得到管理者的切实有效支持 • 并不停留在口头上,文件上 • 理解到过程的实施最终是与业务目标是一致的 • 不是为给别人看的,是给自己用的 ⑵要明确过程的责任人和所有者 过程不能没有责任人和所有者,否则会出现混乱
为了表述软件开发需要做什么,引入了以下三个概念: 软件过程(process):活动的一个集合; 活动(activity):任务的一个集合; 注:”软件过程”和”活动”相当于复合映射. 任务(task): 将输入转换为输出的操作。 注:”任务”相当于原子映射.
2) 过程分类 按过程的主体,可分为三类过程: (1)基本过程(primary processes) 是指那些与软件生产直接相关的活动集。 (2)支持过程(supporting processes ) 是有关各方按其目标所从事的一系列支持活动集。
提出解决 方案 策划 行动
建立 ⑶Establishing
确定 设臵 推荐 优先 改进 途径 顺序
2.软件过程改进框架 • 四个组成部
----软件过程基础设施 软件过程改进路线图 软件过程评估方法 软件过程改进计划
C.软件过程 评估方法 B.软源自过程改 进路线图 D.软件过程 改进
• 四部分关系 -- 互相联系,缺一不可 -- 基础设施是条件 -- 评估是改进的推动力 -- 路线图为改进指向 -- 全部活动需18-24个月
1、获取过程 获取过程是获取者所从事的活动和任务。 • 其目的是获得满足客户所表达的那些要求的产品或服务。 • 功能需求和非功能需求 • 约束和满足条件
2、供应过程 供应过程是供方为了向客户提供满足需求的软件产品 或服务所从事的一系列活动和任务。 • 其目的是向客户提供一个满足已达成需求的产品或服务。 • 该过程的启动,或通过为应答需方的招标书而开始编制 投标书的决定,或通过与需方签订一项提供系统、软件 产品或软件服务的合同。 • 继之,确定为管理和保证项目所需的规程和资源,包括 编制项目计划,执行计划,一直到将系统、软件产品或 软件服务交付给需方为止。

第二讲--2 工程设计集成分系统

第二讲--2 工程设计集成分系统

了描述各个组成面素的信息的面表。即曲面是由哪些基
本曲线构成。
三. 曲面生成方法
1.对于一般常用的曲面,可以采用几种简化曲面生成
的方法。
1)线性拉伸面(平移表面) 这是一种将某曲线,沿固 定方向拉伸,而产生的曲面的方法。
2)直纹面
给定两条相似的NURBS曲线或其它曲线,
它们具有相等的次数,和相等的节点个数,将两条曲
线上的对应的节点用直线连接,就形成了直纹曲面。
3)旋转面
将指定的曲线,绕旋转轴,旋转一个
角度,所生成的曲面就是旋转曲面。
4)扫描面
扫描面构造方法很多,其中应用最多、最
有效的方法是沿导向曲线(也有称它为控制线)扫描
而形成曲面,它适用于创建有相同构形规律的表面。
5)边界曲面
在4条连接直线或多义线间建立一个三维表面
2 工程设计集成分系统
CIMS工程设计集成分系统(CIMS/EDIS) 是指用计算机辅助产品设计、制造准备及 产品性能测试等产品开发各过程的系统。 随着计算机应用日益广泛,在EDIS中也相 继出现了多个计算机辅助子系统,包括计 算机辅助设计(CAD)、计算机辅助工艺规程 制定(CAPP)和计算机辅助加工制造及监控 (CAM)。
(5)软件设计技术 如窗口界面设计、 软件工具、软件工程规范等。 近十多年来,由于先进制造技术 的快速发展,带动了先进设计技术的同 步发展,使传统CAD技术有了很大的扩 展,将这些扩展的CAD技术总称为“现 代CAD技术”。
值得指出的是:不应该将CAD与计算机绘图、 计算机图形学混淆起来。 计算机绘图的内涵;计算机绘图是使用 图形软件和硬件进行绘图及有关标注的一种 方法和技术,以摆脱繁重的手工绘图为其主 要目标。 计算机图形学(computer graphics,CG) 的内涵:计算机图形学是研究通过计算机将 数据转换为图形,并在专用设备上显示的原 理、方法和技术的科学. CG的研究内容有以下四个方面:
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

I/O Logic Set-up Text
9.01 7.55 3.88 3.75
12.06 10.98 5.04 8.00
16.15 15.98 6.56 17.07
21.62 23.25 8.53 36.41
28.93 33.83 11.09 77.66
通用计划框架
客户需求 定义需求 概要设计 规模估算 客户 资源估算 日程计划 交付产品 开发产品 PROBE 估算方 法 规模历史数 据 生产效率历 史数据 团队资源水 平 规模、资源、 日程数据收集 过程分析 管理层 跟踪报告
PROBE 估算流程
概要设计
代理识别和代理规模(E)
估算并调整程序规模
估算并调整资源
计算预测区间
计算预测区间
线性回归调整规模估算
线性回归调整时间估算
预测区间
PROBE方法的应用 历史数据的处理 有限历史数据 个别极端数据的处理
历史数据的处理 简单方法 正态分布 对数正态分布
估算流程 历史数据组织 有限历史数据
问题回顾 为什么要有PSP? PSP是什么? PSP该如何实施? 关于估算的思考与讨论
r = 0.91
•160 •140 •120 •Writing Time •100 •80
•60
•40 •20 •0 •0 •5 •10 •15 •20 •25 •30 •35 •Chapter Pages
本章小结 PSP基本概念 PSP过程度量
时间、规模、缺陷
PROBE估算方法
PSP成熟度级别
PSP过程度量 过程度量在过程管理和改进中起着极为重 要的作用。 PSP基本度量项
即时间 缺陷 规模 日程(TSP)
PSP时间度量(时间日志)
日志内容 序号 所属阶段 注释 该条记录的序号; 该条记录所属的PSP阶段,如策划、设 计、编码、编译、单元测试、总结等; 该条记录的开始时间,精确到分钟;
软件过程与管理 第二讲 个体软件过程
荣国平 南京大学软件学院 2015年 秋
经典语录 “在很多方面,管理一个大型的计算机编程 项目和管理其他行业的大型工程很相似— —比大多数程序员所认为的还要相似;在 另外一些方面,它又有差别——比大多数 职业经理人所认为的差别还要大”
——Frederick P. Brooks. JR
200 120 160 400
书房
150
240
340
130+200+90×2+60+25+240+400 = 12பைடு நூலகம்5(平方尺)
相对大小矩阵C++语言
类型 Calculation Data
VS 2.34 2.60
S 5.13 4.79
M 11.25 8.84
L 24.66 16.31
VL 54.04 30.09
开始时间 结束时间
中断时间
该条记录的结束时间,精确到分钟;
该条记录的计时过程中,需要中断的 时间,精确到分钟,典型的中断如电话 等; 结束时间-开始时间-中断时间,用以表 示某个阶段任务的纯工作时间; 如果有中断事件,往往需要在备注信 息中简单记录,用以帮助记录者了解时 间被消耗的原因;
净时间 备注信息
规模度量的困境 精确的度量方式往往不便于早期 规划; 有助于早期规划的度量往往难以 产生精确度量结果; LOC VS. FP? PROBE的作用
内容 PSP简介
流程 度量
PROBE估算方法
PROBE原理示例 PROBE(PROxy Based Estimation)
需求
策划
设计
过程操作指南
编码 日志 (时间、缺陷)
编译
单元测试
总结 计划总结
完成的产品
PSP基本原则
软件系统的整体质量由该系统中质量最差的某些组件 所决定; 软件组件的质量取决于开发这些组件的软件工程师, 更加确切的说,是由这些工程师所使用的开发过程所 决定; 作为合格的软件工程师,应当自己度量、跟踪自己的 工作,应当自己管理软件组件的质量; 作为合格的软件工程师,应当从自己开发过程的偏差 中学习、总结,并将这些经验教训整合到自己的开发 实践中,也就是说,应当建立持续地自我改进机制。

r≥0.7; 略。 s≤0.05; β0≤估算结果的 25%; 0.5≤β1≤2; r≥0.7; 略。 s≤0.05; β0≤估算结果的 25%; 0.5≤β1≤2; 无 无 按比例 调整。 猜测。
B
C

D 没有历史 数据
PROBE 估算时间
PROBE 方法 A 数据要求 3组或者3组以 上 代 理 规 模 (E) 与 实际开发时间。 数据质量要求 计算方法 略。
本讲要解决的问题 为什么要有PSP? PSP是什么? PSP该如何实施?
内容 PSP简介
流程 度量
PROBE估算方法
PSP渊源和作用
过程改进运动
TQM Humphrey早期工作 PSP/TSP
PSP作用
个人级别估算和计划 承诺和拒绝承诺 理解和改进 工业水准的过程和规范 客观决策的数据
计算结果:
在上述例子中,VS = -1.67,S =7.68,M = 17.04,L = 26.39,VL = 35.75。
对数正态分布(1) 大部分人习惯写很多规模很小的程序,少量规 模较大的程序 此外,程序的规模不可能出现负数
对数正态分布(2) 计算方法:
以e为底计算所有数据的自然对数; 计算取对数之后的值的均值作为M,计算相应标 准差 σ。 那么S = M- σ ,VS = M-2 σ ,L = M+ σ ,VL = M+2 σ 。 取反对数;
什么是PSP? PSP是包括了数据记录表格、过程操作指 南和规程在内的结构化框架。 一个基本的PSP流程包括策划、设计、编 码、编译、单元测试以及总结等阶段。 在每个阶段,都有相应的过程操作指南, 用以指导该阶段的开发活动 所有的开发活动都需要记录相应的时间日 志与缺陷日志。
典型PSP流程
序号 1 2 3 用途 厨房 卧室 卫生间 相对大小及数量 1个中等大小 1个大卧室;2个小卧室 1个中等大小;1个小型
4
5
书房
客厅
1个中等大小
1个大客厅
相对大小矩阵
小型 (平方尺) 中等 (平方尺) 大型 (平方尺)
大小 类型
卧室 卫生间 厨房 客厅
90 25 100 150
140 60 130 250
显著性 它描述的是上述两组数据的相关关系出现的偶 然性 因此,显著性越小越好。在PSP中要求显著性 s≤0.05
PROBE 估算规模
PROBE 方法 A 数据要求 3 组或者 3 组以上代理 规模 (E) 与实 际程序规模。 3 组或者 3 组以上计划 程序规模与 实际程序规 模。 有历史数 数据质量要求 计算方
有限历史数据 Probe方法依赖历史数据,但是实际历史数 据有可能
历史数据少于3个数据点; 有足够的历史数据,但是数据的质量不高
相关性
相关性描述的是两组变化的数据之 间相互关联的程度; 在PSP中为确保估算质量,对于历 史数据的相关性要求r≥0.7。
rx , y n n n n xi yi xi yi i 1 i 1 i 1 n 2 n 2 n 2 n 2 n xi xi n yi yi i 1 i 1 i 1 i 1
PSP缺陷度量(缺陷日志)
日志内容 序号 发现日期 注释 该条记录的序号; 该缺陷被发现的日期;
注入阶段
消除阶段 消除时间 关联缺陷
经过分析,确定该缺陷被引入的阶段,典型引 入阶段如设计、编码、编译、单元测试等; 该缺陷被消除的阶段,在引入阶段之后;
为了修正该缺陷所消耗的时间; 如果缺陷的引入阶段是编译或者单元测试等通 常用以消除缺陷的这些阶段,那么往往意味着, 该缺陷实在消除另外的一个缺陷是被引入,因此, 需要建立一种关联关系; 对于缺陷产生根本原因的简要描述;
某人的历史数据
类 A B C D E F 方法数 3 5 2 3 1 2 代 码 行 (LOC) 39 127 64 28 12 21
计算每个方法的代码行数,可以得出如下的数 据:13,25.4,32.9.333,12,10.5。
简单方法 基本思想是:
将每个方法的代码行数进行排序 选择最小值作为VS; 选择最大值作为VL; 选择中值作为M; 选择VS与M的均值作为S; 选择VL与M的均值作为L。
略。
按比例调整。 猜测。
极端数据 PROBE A方法和B方法的时候,对于数据 的相关性有要求。 然而很多时候,历史数据中的一些极端数 据会造成相关性的“假象”。
r=0.26
45 40 35
Writing Time
30 25 20 15 10 5 0 0 5 10 Chapter Pages 15 20
计算结果:
VS = 5.55,S =9.19,M = 15.22,L = 25.21, VL = 41.75。
三种方法对比 简单方法
计算简单,但是,不稳定
正态分布法
相对稳定,在历史数据基本符合正态分布的情 况下,可以给出非常好的相对大小矩阵
对数正态分布法
更加符合人们对于程序的规模的直观感觉
PSP规模度量标准选择 选择的规模度量方式必须反映开发成本; 选择的度量方式必须精确; 选择的度量方式必须能用自动化方法来统计; 选择的度量方式必须有助于早期规划;
相关文档
最新文档