COSMIC规模度量方法
文章平均质量分 73
COSMIC方法是新一代的软件规模估算方法,该方法适合于各种类型的软件系统,简单易学,准确客观,是解决软件规模度量的最有效的手段。
本专栏会介绍COSMIC方法的基本原理,度量过程,度量规则,实际案例,该方法的最新进展等。
麦哲思科技任甲林
麦哲思科技(北京)有限公司总经理
敏捷性能合弄模型评估师
认证的Scrum Master
认证的大规模敏捷顾问SPC
CMMI高成熟度主任评估师
COSMIC MPC,IAC 成员,中国分部主席
展开
-
如何选择度量元
选择度量元的5个原则 在设计度量体系时,要针对度量目标选择合适的度量元,同一个度量目标可以有多个度量元,究竟要如何选择合适的度量元呢,我们可以参考如下的5个原则进行选择: 原则1:对度量目标的表达能力,即度量元是否准确刻画了度量目标以及要解决的问题?比如,想要监督项目的进展,我们有如下三个选择: 1) 需求完成的百分比; 2) 活动完成的百分比; 3) 已完成活动的计划工作量/所有活动...原创 2022-03-29 16:25:24 · 1219 阅读 · 0 评论 -
度量体系建立与COSMIC方法应用36问
Q1:度量体系建设的难点有哪些?后来是采取哪些策略解决的?A1:难点:采集哪些数据是有用的?有了数据如何抓结论出来。Q2:故障解决闭环率,类似这种KPI考核指标,有什么好的方法可以高效推进闭环呢?A2: 分析故障解决的时间分布,看看哪个环节耗时最长,是否针对这个环节有改进措施。短期见效的措施最受欢迎。Q3:度量规模给传统公司带来了哪些价值啊?A3:有了规模才可以比较生产率和质量。从软件开发方的角度,通过生产率的度量,判断当前的生产率究竟是高还是低,比较不同项目组,不同部门..原创 2021-09-03 13:16:51 · 1301 阅读 · 0 评论 -
COSMIC规模度量案例集四:业务应用软件案例—新增用户
流程图原型: 1.在用户维护页面点击【新增用户】按钮,进入到新增用户:输入 序号 输入项 类型 字段描述 说明 机构信息 1. 机构全称 自动匹配输入框 必填 来源于CWAP后台的机构信息;可按照机构名模糊匹配; 长度300字节 ...原创 2020-07-07 10:05:21 · 2351 阅读 · 0 评论 -
COSMIC规模度量案例集三:业务应用软件案例—页面维护
概述展示前台注册及后台新增的用户信息的页面。流程图用户查询界面原型输入: 序号 输入项 类型 字段描述 说明 1. 用户名/姓名 输入框 选填 按照用户名或者姓名模糊查询 2. 机构全称 输入框 ..原创 2020-07-06 09:39:43 · 1703 阅读 · 0 评论 -
COSMIC规模度量案例集二:业务应用软件案例——银行卡签约/解约
功能描述客户开卡成功后要求与第三方结算系统中的一卡通进行账户绑定或者解除绑定。界面原型第一屏 机构号: XX农村商业银行核心业务系统 日期: 2011-01-01 柜员号: ...原创 2020-07-02 09:44:46 · 1448 阅读 · 2 评论 -
COSMIC规模度量案例集一:五个应用软件的需求规模度量
一、手机操作系统更新手机每天在凌晨两点钟的时候自动检测是否有新版的操作系统。如果有,则保存当前打开的所有应用及其信息,关闭所有的应用,然后下载新版的操作系统,自动更新操作系统,然后重启手机,自动恢复到工作环境(打开之前的所有应用,并回到所有的操作等),如果没有新版的操作系统需要更新,则退出该功能。简易环境图:按照数据移动为主线识别功能点: 10CFP 数据移动 兴趣对象(数据组) 备注 E .原创 2020-06-29 18:29:06 · 2890 阅读 · 0 评论 -
COSMIC案例:发票处理功能的规模度量
原始需求描述:1)收费功能,可以选择打印收据、增值税普通发票和增值税专用发票。(1)打印收据:收费时,系统直接打印收据。收费完成后,系统弹出对话框询问客户是否生成电子发票。Ø选择“是”,系统直接生成电子发票并将电子发票信息以短信的形式发送到客户的手机中;Ø选择“否”,则完成收费过程,不生成电子发票。(2)打印增值税普通发票:收费时,系统直接打印增值税普通发票。(3)打印增值税专用发票:收费时,系统直接打印增值税专用发票。梳理后的需求 ...原创 2020-05-21 09:20:08 · 1154 阅读 · 0 评论 -
用COSMIC方法帮助澄清需求的案例
实施COSMIC方法,除了可以度量软件的规模以外,还可以通过数功能点,识别需求中模糊不清的地方,起到需求澄清、需求验证的作用。下面通过一个简单的例子来说明之。某系统的需求规格说明书中有如下的一个功能需求描述:考勤明细查询功能说明:1展示员工每天的有效打卡记录,清晰展示上下班时间、打卡照片等;2可查看员工每天所有的打卡记录,显示的信息包括:名称、部门、员工状态、工号、日期、上...原创 2019-06-09 07:53:39 · 2232 阅读 · 0 评论 -
COSMIC度量案例:一个简单、明确的软件需求
培训教室管理需求描述:维护教室信息可新增/修改/删除教室,维护信息字段:教室编号、楼层、容量、功能、说明。1 有几个功能处理?新增、修改、删除、查询四个功能处理。2 为什么查询是单独的一个功能处理?因为进入培训教室管理的页面后,列出了已经输入的所有的教室的信息,可以不做其他任何操作退出,只是看看有哪些已有的教室。在上述的需求描述中没有明确说明查询的功能,但是根...原创 2019-06-06 13:27:41 · 5587 阅读 · 0 评论 -
快速学习COSMIC方法之十七:如何寻找更简单有效的规模度量方法?
很多企业都在探索合理估算工作量的方法,而工作量的多少主要取决于软件规模的大小,因此在估算软件工作量之前需要先估算其规模。传统的规模估算方法是进行代码行的估算,但是对于同一个需求,不同经验的人员去估算,结果差别很大,不同的实现语言,估算结果差别也很大,即使不同经验的人员针对同一种需求去实现,实际的代码行数也差别很大,并且实际情况中,往往一个需求可能需要多种语言结合才能实现。因此,使用代码行作为衡...原创 2018-05-24 15:52:06 · 3932 阅读 · 0 评论 -
快速学习COSMIC方法之十六:如何进行生产率的标杆对比?
当我们采集了历史的规模数据与工作量数据之后,我们可以和业内的数据进行标杆对比,其中在国际上影响最大的就是从ISBSG的数据库中获取行业数据进行标杆对比。 一 ISBSG是什么? ISBSG全称为国际软件基准标准小组,是一个非盈利性组织,其创建于1997年,主要目的是为了促进IT行业的数据使用,并提升软件过程和软件产品。该组织有两套数据库,一套是包含IT开发项目的数据,一套是包含...原创 2018-04-14 21:57:59 · 1792 阅读 · 2 评论 -
快速学习COSMIC方法之十五:如何度量需求变更的规模
合理的度量需求变更的规模是COSMIC方法比第一代的功能点估算方法更科学的亮点。在度量需求的变更时,首先需要明确我们的度量目的,即我们要度量的是本次变更的规模,而不是变更之后的规模。明确目的后,要将变更的需求按照功能处理拆分,在一个需求变更中,可能存在几种情况: 1 新增的功能处理,此时按照前面讲的度量方法识别功能点即可; 2 删除的功能处理,被删除的功能处理的功能点个数即是本次变更的规模...原创 2018-03-30 16:59:55 · 3008 阅读 · 0 评论 -
快速学习COSMIC方法之十四:嵌入式软件功能点识别案例
前面的几讲,我们讲完了如何计算功能点的方法,接下来我们看一个完整的案例。这是COSMIC官方网站上曾经发布的一个嵌入式软件的案例,有多个版本,我们改编自其中一个版本来讨论一下。 需求描述如下: 1. 电饭煲可以有3种模式煮饭:快,正常,慢。可以由人来手动设置,设置后直接记录在RAM中,不需要通过软件来存储。 2. 当按下START按钮后,启动定时器,开始煮饭。 3. ...原创 2018-03-23 14:41:46 · 3290 阅读 · 0 评论 -
快速学习COSMIC方法之十三:如何识别读和写?
在实践中识别读和写是比较简单的,出错的概率比较小。读和写都是被度量的软件与存储介质之间的数据交互动作。读是从持久存储介质移动数据到功能处理内部,写是从功能处理移动数据到存储介质,二者的方向是相反的。在识别读和写时,要注意以下几点:1 每个读或写移动的是一个兴趣对象的一个数据组。如果是移动的多个兴趣对象的数据组,则需要识别为多个读或写。如果是一个兴趣对象的不同数据组,也是要识别为多个读或写。如果一个...原创 2018-03-16 14:15:48 · 2445 阅读 · 0 评论 -
快速学习COSMIC方法之十二:如何识别输出?
输出是从功能处理向功能用户移动数据组的数据移动。每个输出移动的是一个兴趣对象的一个数据组。在识别输出时要注意如下的问题:1 输出不要和写混淆。输出是把数据组移动到功能用户,不是移动到存储介质。虽然识别错了数据移动的类型不影响功能点的多少,但是概念上是错误的。2 查询固定文本的内容应识别为输出。比如在word中有按钮:关于word。当我们点击后,显示出来关于word的一些信息,这些信息就是一个固定文...原创 2018-03-09 10:39:06 · 2445 阅读 · 0 评论 -
快速学习COSMIC方法之十一:如何识别输入?
在COSMIC方法中,功能处理可拆分为四种数据移动:输入,输出,读,写。数据移动是最小的、不可再拆分的、软件内部的动作。在数据移动中包含了算术运算如加减乘除,关系运算如等于、不等于,逻辑运算如与或非,这些数据运算都是不计算功能点的。 在识别功能处理的输入(包括触发输入即第一个数据移动,也包括其他输入)时要注意如下的问题: 1 每个数据移动仅能移动一个兴趣对象的一个数据组。 ...原创 2018-03-02 11:13:56 · 4085 阅读 · 0 评论 -
快速学习COSMIC方法之十:系统登录功能案例分析
我们已经讲了如何识别功能处理与兴趣对象,下面我们找一个稍微复杂点的需求来实际运用一下前面学到的知识。 功能需求描述如下: 登录系统的界面原型: 用例描述: 我们识别的功能点如下: 记录格式一: 记录格式二: 对上述的需求,容易出错的地方分析如下: 1)用户的账户信息与用户录入的登录信息是两个兴趣对象,还是一个兴趣对象呢?注意用户录入的登录信息与...原创 2018-02-08 18:05:23 · 3568 阅读 · 0 评论 -
快速学习COSMIC方法之九:如何识别兴趣对象?
兴趣对象是COSMIC方法中一个关键的概念。它影响了我们识别的功能点的多少。兴趣对象是描述中在功能需求中的、功能用户感兴趣的事物,它可以是一个具体的东西,也可以是一个抽象的概念,系统一定要对它执行输入、输出、读或写的动作。 在COSMIC中对兴趣对象有明确的定义,识别兴趣对象的规则也有定义。结合度量手册与其他指南,结合我的实践经验,总结了如下的实用性规则,供大家参考:1兴趣对象一定是来自于功能需求原创 2018-01-19 14:14:40 · 2909 阅读 · 0 评论 -
快速学习COSMIC方法之八:如何识别功能处理
在上一讲中我们讨论了对功能处理概念的理解,那是我们识别功能处理的基础。本节我们将继续讲解如何识别功能处理。在度量手册中,对识别功能处理给出了如下的规则:a) 一个功能处理应该完全属于某层且仅属于某一层的一个软件块的度量范围。b) 一个功能处理至少包含两个数据移动,一个输入加上一个输出或写。一个功能处理中数据移动的数量没有上限。c) 一个执行中的功能处理,当其响应了触发输入并满足FUR时原创 2018-01-12 14:12:32 · 3149 阅读 · 0 评论 -
快速学习COSMIC方法之七:如何理解功能处理的定义?
在COSMIC度量手册中对功能处理的定义如下:a) 体现了待度量软件的功能性用户需求基本部件的一组数据移动,该功能处理在这些FUR中是独一无二的,并能独立于这些FUR的其他功能处理被定义。b) 一个功能处理只有一个触发输入。每个功能处理在接受到由其触发输入数据移动所移动的一个数据组后,开始进行处理。c)一个功能处理的数据移动的集合是响应触发输入的所有可能的功能性需求所需要的集合。注1:实现时,一个原创 2018-01-05 13:58:47 · 3673 阅读 · 0 评论 -
快速学习COSMIC之六:如何识别触发事件
要度量功能点,就要先识别功能处理,要识别功能处理,就要先识别触发事件。 触发事件通俗地讲就是发生在被度量软件以外的,由其他事物所产生的,要求被度量软件响应的事件。 触发事件由功能用户所感知,然后功能用户产生一个输入,来激发功能处理响应这个事件,这个输入被称为触发输入,它要么仅仅起到通知功能处理、激发功能处理的作用,要么除此之外还移动了其他的数据给功能处理。除非在一个功能处理中只有一个输原创 2017-12-29 13:07:56 · 2884 阅读 · 0 评论 -
快速学习COSMIC之五:如何识别功能用户
一个(类)功能用户是软件的功能性用户需求中数据的发送者或预期的接收者。功能用户是与被度量软件交互的人、设备或软件系统。度量目的决定了功能用户,功能用户不同,度量范围不同,度量出的功能规模就不同。 在识别功能用户时,要注意如下几点: 1 功能用户是从功能性用户需求中识别出来的。 比如有这样一个需求:业务员录入订单信息: 显然,业务员是录入订单信息这个功能的功能用户,而在需求原创 2017-12-22 13:59:46 · 3286 阅读 · 1 评论 -
快速学习COSMIC方法之四:早期快速估算功能规模的方法
在介绍详细的COSMIC方法之前,我们先介绍一下在项目早期,在需求没有详细到可测试的程度时,如何估算软件的规模。实际上很多公司为了减少度量的工作量,往往采用近似的估算方法进行确定项目的预算。 进行快速估算的原理为:通过分析历史的粗颗粒度需求与实际规模之间的相关关系,找到二者之间的换算关系,然后对于新的粗颗粒度需求参考历史的换算关系快速地得到近似规模。这里的粗颗粒度需求的规模可以是功能处理个数原创 2017-12-15 10:17:35 · 5946 阅读 · 0 评论 -
快速学习COSMIC方法之三:度量策略阶段的执行要点
很多公司在度量规模的时候,不重视度量策略阶段的活动,但是在后续的度量过程中往往就会遇到疑问,在遇到问题时,才发现原来没有做到度量策略的定义,没有确定好度量的前提,因此度量策略阶段虽然可能很简单,很快速,很例行公事,但是不能忽视。 1)确定度量目的:为什么执行本次度量。 软件规模度量的常见目的有: 作为估算项目的工作量输入; 作为计算缺陷密度的输入;原创 2017-12-08 13:18:04 · 3384 阅读 · 0 评论 -
全功能点估算方法简介
说明:本文已刊登于《信息技术与标准化》07年第3期新一代的功能点规模估算方法: COSMIC-FFP1 引言软件规模估算是估计软件开发的工作量、成本与资源需求的基础,通过规模与其他度量数据还可以度量项目的生产率、缺陷密度,目前在工程界流行的估算方法是代码行估算方法和功能点分析方法(function points analysis,FPA法)。代码行估算方法是一种经验估算方法,通常会采用原创 2009-12-08 11:26:00 · 5290 阅读 · 1 评论 -
快速学习COSMIC方法之二:COSMIC方法的度量过程
COSMIC方法的度量分为三个阶段:1 度量策略阶段2 映射阶段3 度量阶段在度量策略阶段,主要包括四个活动: 1)确定度量目的:为什么执行本次度量。比如你要度量一个房子的面积,是为了卖房子?是要装修?还是为了装中央空调?目的不同,度量的范围不同,度量的结果也不同。卖房子是要包含建筑面积与分摊面积的,装修房子要考虑套内面积与晾台面积,而装中央空调时只考虑套内面积,目的不同,度量的范围不同,度原创 2017-12-01 10:55:43 · 14368 阅读 · 0 评论 -
快速学习COSMIC之一:COSMIC方法的简单案例
COSMIC方法是新一代的软件规模度量方法,其基本的原理很简单,就是度量软件需求中的输入、输出、读、写这4类数据移动的个数,我们通过2个简单的例子来说明其基本的原理。 案例一:针对MIS类软件的需求 对于应用软件而言,我们都有这样的需求:允许合法用户登录到系统中; 对于上述的功能需求,我们可以采用USE CASE的方式详细描述需求如下:原创 2017-11-24 10:13:02 · 16708 阅读 · 0 评论 -
COSMIC规模度量方法v4.0度量手册中文版正式发布了!
COSMIC是通用软件度量国际联盟的简写,它成立于1998年,是一个由全球软件度量专家组成的非盈利自愿性组织,致力于软件规模度量方法的研究与推广。2002年1月COSMIC所推出的全功能点规模度量方法成为了ISO的标准,最新标准为ISO/IEC 19761:2011“软件工程—COSMIC—功能规模度量方法”。COSMIC规模度量方法相对于传统的规模度量方法简单实用,学习周期短,易于上手。一经推出原创 2014-07-25 17:06:50 · 7140 阅读 · 5 评论