软件度量

CMMI知识介绍

a 夏天 提交于 2020-03-09 00:01:03
第一级:初始级 在初始级,企业一般不具备稳定的软件开发与维护的环境。常常在遇到问题的时候,就放弃原定的计划而只专注于编程与测试。 第二级:可重复级 在这一级,建立了管理软件项目的政策以及为贯彻执行这些政策而定的措施。基于过往的项目的经验来计划与管理新的项目。 第三级:定义级 在这一级,有关软件工程与管理工程的一个特定的、面对整个企业的软件开发与维护的过程的文件将被制订出来。同时,这些过程是集成到一个协调的整体。这就称为企业的标准软件过程。 第四级:定量管理级 在这一级,企业对产品与过程建立起定量的质量目标,同时在过程中加入规定得很清楚的连续的度量。作为企业的度量方案, 要对所有项目的重要的过程活动进行生产率和质量的度量。软件 产品因此具有可预期的高质量。 第五级:(不断)优化级 在这个等级,整个企业将会把重点放在对过程进行不断的优化。企业会采取主动去找出过程的弱点与长处,以达到预防缺陷 的目标。同时,分析有关过程的有效性的资料,作出对新技术的 成本与收益的分析,以及提出对过程进行修改的建议。 CMM第一级:初始级 ◆ 特征 (1)软件过程的特点是杂乱无章,有时甚至混乱,几乎没有定义过程的规则或步骤。 (2)过分的承诺,常作出良好的承诺:如“按照软件工程方式,有序的工程来工作”;或达到高目标的许诺。但实际上却出现一系列问题。 (3)遇到危机就放弃原计划过程,反复编码和测试。 (4

2020-02-24

僤鯓⒐⒋嵵緔 提交于 2020-02-24 23:30:40
软件工程实践者的研究方法读书笔记 《软件工程—实践者的研究方法》这本书内容丰富,从软件工程的定义、软件过程、建模、质量管理到管理软件项目和软件工程发展趋势的探讨,作者逐个展开并做了大量的讲解。内容丰富,当然书也是非常厚。 这本书不像之前翻阅的软件工程书,里面有大量篇幅讲解敏捷开发,还有WebApp和移动App的分析、设计、测试和质量管理等。书中内容不局限于理论知识的阐述,使用大量篇幅在简单实例中进行分析和设计,主要以SafeHome来演示软件项目如何推进。也与Brooks的人月神话不同,Brooks的人月神话以工程项目中出现的重大问题为主线,以技术为核心,分析了软件开发和软件工程存在的一些问题,探寻到底有没有存在消灭“人狼”的“银弹”;而本书,我觉得作者想呈现给大家一套比较完整的软件工程理论体系,同时以项目示例演示如何将各种理论方法应用于项目工程。 本书主要分为五大部分,软件过程、建模、质量管理、管理软件项目和软件工程高级课程。在五部分之前还用了两章来讲述软件的定义和软件工程。软件是:(1)指令的集合(计算机程序),通过执行这些指令可以满足预期的特性、功能和性能需求;(2)数据结构,使得程序可以合理利用信息;(3)软件描述信息,它以硬拷贝和虚拟形式存在,用来描述程序的操作和使用。IEEE对软件工程下的定义是:(1)将系统化的、规范化的、可量化的方法应用于软件的开发、运行和维护

软件度量四问

本秂侑毒 提交于 2020-01-18 09:41:29
Q1:如果没有高层的支持,度量分析与改进可以成功吗? B公司一直被质量问题所困扰。技术负责人王总希望项目经理老金将精力放在开发上。但老金却有不一样的想法。他大学的专业是数学(请收下学渣的膝盖),因此希望通过数据准确描述质量,甚至希望用数据与客户达成质量评价的标准。 尽管王总不同意,老金这个耿直boy,还是带着团队做了一份包含详细度量数据与分析结果的测试报告。在项目试运行前,老金基于这份测试报告与客户进行了深入的讨论,明确了质量的标准。后期再沟通质量问题,也越来越顺滑了。 我们都遇到过“高质量”的这种要求。可 什么是高质量? 在没有进行度量之前,只能客户说了算。而乙方项目组则无能为力。其次,王总不支持度量,只看到了度量在短期对工作量的占用。而项目经理老金就有远见的多了。尽管没能得到王总的首肯,但毕竟对质量问题的改善提出了实质性的解决方案。一年后,老金坐上了王总的位置。这是一个脑袋决定了屁股的案例。 我也曾因度量工作所投入的大量资源而认定,“无高层不度量”,直到碰到老金。就算没有管理层的高度支持,项目经理考虑长、短期利益,也要主动度量。 Q2:短期能交付就已经很好了,长期利益那么渺茫,我一个项目经理为什么要度量呢? 亲,你不是一个人哦~ 很多项目经理都有这个疑问,他们的潜台词是, 度量之于交付有作用吗? 这是一个短期问题,从发展的角度,仍可从两个层面来回答: 短期来看。

二、COSMIC度量策略阶段

这一生的挚爱 提交于 2019-12-22 11:52:50
1.数功能点前的准备 a.首先,要数哪些功能?【范围、层】。比如:登陆、查询、删除...;应用层、驱动层;A、B、C子系统 b.哪些人、设备、其他软件与我交互?【功能用户】 c.需求详细到什么程度?【颗粒度级别】 2.COSMIC度量策略阶段要做的事儿 a.确定度量的目的 b.确定待度量软件的范围、识别功能用户、确定待度量软件的功能用户需求颗粒度 3.确定度量的目的 度量目的-定义:为什么需要度量和度量结果用途的描述。 度量目的的重要性; a.帮助度量者确定度量的范围和度量所需要的制品 b.帮助度量者确定功能用户 c.帮助度量者确定在项目生命周期中进行度量的时间点 d.帮助度量者确定度量的精确性,以及是否应该使用COSMIC方法,或者应该使用COSMIC方法的近似版本 4.确定度量的范围 度量范围-定义:在一次具体的功能规模度量活动中所包含的功能性用户需求的集合(FUR集合) 度量范围-规则: a.任何待度量软件块的范围必须从度量目的中导出(定义了总体范围的软件可根据其度量目的的不同,使用不同的办法划分为具有不同度量范围的多个软件快)-----总之,度量目的必须总是用来确定:总体范围中应该包含和排除在外的软件;将包含的软件分解成各个独立块的方法,每个块有自己的范围,并且被分别度量。 b.任何一次度量范围不能延伸超过被度量软件所在的层 5.层

软件过程改进练习题

烈酒焚心 提交于 2019-12-09 18:49:36
软件过程改进(SPI.Software Process Improvement) 软件过程方法从上世纪90年代开始在软件开发中得到应 用,被许多软件开发组织所接受。并被认为是软件生产达到 工业化前的一个必须经历的阶段,是软件工程学科发展中的 一个重要里程碑,软件过程理论是现代软件开发人员和管理 人员必备的知识。 软件过程将技术、人和管理紧密地结合在一起,过程改 进是软件开发组织提高软件质量、提高生产率、降低成本的 一种有效方法。 软件过程改进已经形成了一套改进和评估的方法,代表 性成果有CMMI、ISO15504、ISO9000、6σ等。国内外众多软 件开发组织都以通过过程改进评估为手段,达到提高竞争力 的目的。 一、名词解释 1.软件生存周期(Software Life Cycle) 软件生存周期又称为软件生命期,生存期。是指从形成开发软件概念起,所开发的软件使用以后,直到失去使用价值消亡为止的整个过程。一般来说,整个生存周期包括计划(定义)、开发、运行(维护)三个时期,每一个时期又划分为若干阶段。每个 阶段有明确的任务,这样使规模大、结构复杂和管理复杂的软件开发变得容易控制和管理。SDLC的六个阶段:1. 定义及规划2.需求分析3. 软件设计4.程序编码5.软件测试6.运行维护 2.项目(Project) 项目是指一系列独特的、复 杂的并相互关联的活动

软件缺陷数据度量和分析实例

拈花ヽ惹草 提交于 2019-11-29 19:02:54
  缺陷报告,是软件测试这个职位最重要得产出之一。甚至对软件测试这个行业你可以用比较狭隘的描述去定义他为:‘测试就是为了找到缺陷’。 测试人员报出的缺陷,可以很好的反应产品中的问题,修复了这些问题,就可以有效的降低产品风险。   其实缺陷报告不单单能帮助研发团队发现问题,他也可以起到重要的过程反馈作用。   缺陷报告是我们测试报告的两大核心要素之一,他与测试执行情况一起组成了我们测试报告的主要内容。那么缺陷报告,我们应该报告一些什么,是不是仅仅是缺陷数量呢?我们今天就来说说怎么用‘量化分析’的形式,来制作我们的缺陷报告。    我们用一个实际项目缺陷报告来阐述这个课题,这个项目情况是这样的: 该项目为一个COTS产品的定制性二次开发项目 项目周期计划为4个月,实际完成时间为6个月 项目是一个总体人员不到10人的小型项目 采用持续集成,高速迭代的研发方式   1.  我们要看到的第一个报表叫做‘缺陷到达率报告’,见下图:         缺陷到达率指的是单位时间内,报出缺陷的数量。 上图按照每月报出的缺陷数量进行了统计,并且按严重级别进行了分类。    解析:   ① 缺陷到达率在前四个月内呈明显下降趋势   ② 五月份的缺陷量回升主要体现在低严重级缺陷数量上   ③ 缺陷数的严重级别成正态分布   ④ 六月份缺陷明显回升      结合着项目的实际我们对这个报表进行分析

285.软件体系结构评估概述

送分小仙女□ 提交于 2019-11-29 10:29:56
7.1.1 评估关注的质量属性   软件体系结构的设计是整个软件开发过程中关键的一步。对于当今世界上庞大而复杂的系统来说,如果没有一个合适的体系结构而要有一个成功的软件设计几乎是不可想象的。   不同类型的系统需要不同的体系结构,甚至一个系统的不同子系统也需要不同的体系结构。体系结构的选择是一个软件系统设计成败的关键。但是,怎样才能知道为软件系统所选用的体系结构是否恰当?如何确保按照所选用的体系结构能顺利地开发出成功的软件产品呢?要回答这些问题,需要使用专门的方法对软件体系结构进行分析和评估。   体系结构评估可以只针对一个体系结构,也可以针对一组体系结构。在体系结构评估过程中,评估人员所关注的是系统的质量属性,所有评估方法所普遍关注的质量属性有以下几个。   1.性能   性能是指系统的响应能力,即要经过多长时间才能对某个事件作出响应,或者在某段时间内系统所能处理的事件的个数。经常用单位时间内所处理事务的数量或系统完成某个事务处理所需的时间来对性能进行定量的表示。性能测试经常要使用基准测试程序(用以测量性能指标的特定事务集或工作量环境)。   2.可靠性   可靠性是软件系统在应用或系统错误面前、在意外或错误使用的情况下维持软件系统的功能特性的基本能力。可靠性是最重要的软件特性,通常用它衡量在规定的条件和时间内,软件完成规定功能的能力。可靠性通常用平均失效等待时间(Mean