《QUML:量化需求分析与建模》节选之二:一个量化管理项目的一生(1)

面向需求的项目度量 1          引言作为软件开发项目经理的你,是否真正了解项目当前的状态?作为软件外包项目的甲方,你是否真正了解项目的实际规模?是否了解项目的进度情况?要正确的回答以上问题,并不是一件容易的事情。一般情况下,这些对项目的评估往往是来自于项目经理的判断,缺乏客观依据。而比较合理的做法是应用一套科学的方法,对软件开发各个阶段的数据进行有效的度量和监控。软件(项目)的度量可以说不是一个很 阅读详情

本书由本人编写,于2014-09-09在百度阅读首发,博客将转载试读部分的20%内容,以及非试读章节的某些片断。

电子版链接:http://yuedu.baidu.com/ebook/c7a9a6dc680203d8ce2f24a6### 


一个量化管理项目的一生

​本章通过一个例子展示本书所述的量化需求分析与建模方法在项目中实际应用的情况。

注意本章所有数字均只需要两个来源:本章中的配图,业界的数据。配图中的元素隐含了量化规则,只从其中某些元素的个数、样式即可获得量化数据。除此之外不需要任何其他额外信息,也不需要其他额外的估算或度量过程。

预防针

下面的例子中将会看到大量度量数据,对于曾经用过传统估算、度量方法的读者,可能会心生恐惧。

不过,全部这些数据,不是来自独立的或者说额外的“度量和估算活动”,而是一种量化需求分析与建模方法的产物。在按照这种方法绘制完几个简单图形并根据图形元素编写Word后,可以从Word目录直接生成度量数据。配合本书提到的Word和Excel模板,全程只需要2分钟就能自动计算得到规模、工作量、进度、某些类的数量、某些方法的数量、测试用例、质量……等数据,也就是本章所提到的所有数据。

第一天

产品经理兴冲冲地走进会议室,高层经理昨天已经同意了包括“在已有电子商务网站上增加收发货等子系统”的新版本提议,不过需要项目组尽量简化功能,以逐步递增功能的形式推进。

愿景

尽管需求很不明确,但领导倒是提出了一些抽象的愿景。比如其中一条是做一个“值得信赖的收发货子系统”。一般团队或许此时会一筹莫展,但这个使用QUML的团队花费15分钟讨论绘制了这样一张“角色-业务图”:

买家在确认收货后才,店主才会和物流结帐,这样就保证了物流“值得信赖”。尽管可能还有其他实现方案或者扩展功能——比如买家可以评价物流——但是团队决定这个版本到此为止。

实体,关系

10分钟后,人们分析下面这张“实体-关系图”中的数据是实现这个版本的充分必要条件:

这个实体关系图可不是凭空来的。店主,物流,买家是愿景图里边的;结帐记录来自“结帐”“收账”两个词的宾语,而“发货记录”来自“发货”“送货”“确认收货”三个词的宾语。

规模,工作量

这个子系统中的2个业务数据(即实体,“结帐记录”和“发货记录”)预示着2×平均35功能点=70功能点的规模(注:这里不是我们口语中常说的“功能点”,而是与IFPUG和NESMA兼容的国际标准功能点,有严格的定义和很好的一致性、可比性),换算成人天差不多也正好是70人天左右的工作量——碰巧当前中国业界的生产率大约就是1功能点需要1人天——不过这是覆盖从需求到上线所有活动的工作量。作为开发团队,他们感受到的只有一半左右,也就是35人天。

这个数据不会很准,但由于领导需要下午就要给出一个大致的工作量估计,因此团队没有进一步细化需求,而是转而分析其他子系统。

整个版本

最终,团队又用类似方法分析了所有其他这个版本的子系统(本例中未给出),最后估算出整个新版本总计需要400功能点,也就是大约400人天的工作量。不过,这是按照业界数据估算的结果,他们团队决定按自己的生产率修正到300人天——这得益于他们已经统计和修正过自己的生产率数据——5个人工作60人天,也就是大约3个月的时间。团队决定使用3个迭代来完成开发,最后一个迭代包括部署上线。


【博客汇总】UV打印机博客汇总 UV平板机博客汇总 阅读详情

相关推荐

STM32MP157+AD7606BSTZ四通道IEPE传感器采集方案实战(附完整电路图)

本文详细介绍了基于STM32MP157和AD7606BSTZ的四通道IEPE传感器采集方案,涵盖硬件电路设计、软件驱动开发及系统性能优化。通过精确的恒流源设计和同步采样技术,实现高精度振动信号采集,适用于工业振动监测等应用场景。

weixin_42713608的博客 700

《QUML:量化需求分析与建模》节选之一:序言

本书由本人编写,于2014-09-09在百度阅读首发,博客将转载试读部分的20%内容,以及非试读章节的某些片断。电子版链接:http://yuedu.baidu.com/ebook/c7a9a6dc680203d8ce2f24a6### 序言统一建模语言UML,量化管理,功能点分析FPA,三个令人敬畏的概念。只有被强制使用的时候,人们才会使用UML进行系统分析,而且多数止步于第一步:用例图。只有所

陈勇的博客 - Scrum 敏捷开发培训咨询,绩效管理,团队管理,《火星人敏捷开发手册》 9773

Dify工作流自动化:如何用Trae AI助手10倍提升你的开发效率(含避坑指南)

本文详细介绍了如何利用Trae AI助手自动化生成Dify工作流,实现开发效率的10倍提升。通过构建DSL示例库、精准需求描述和四步实战法,开发者可将重复的配置工作交给AI,快速生成可运行的工作流,并提供了关键的避坑指南。

weixin_29062865的博客 369

量化需求

作者:基思·布雷思韦特(KeithBraithwaite) “速度快”不能算作需求,“响应灵敏”和“可扩展”也不能算需求,因为我们无法客观的判断是否满足了这样的条件。但是这些又确实是用户想要的。架构师的工作在很大程度上是平衡这些需求之间的不可避免的冲突和矛盾,同时又使系统尽可能的满足他们。如果缺乏客观的规律,架构师就只能任凭挑剔的用户和偏执的程序员摆布(“还不够快,我拒绝接受”和“还不够快,我不

Ascetic的博客 2135

JAVA + 海康威视SDK + FFmpeg+ SRS 实现海康威视摄像头二次开发

海康威视SDK接入方案摘要 本文介绍了使用海康威视官方SDK开发物联网平台摄像头接入功能的完整方案。系统采用Java后端集成HCNetSDK控制摄像头,通过FFmpeg将RTSP流转为RTMP推送到SRS流媒体服务器,前端基于HTTP-FLV协议实现视频播放。文章详细说明了开发准备工作,包括SDK下载、SRS部署、FFmpeg安装等关键步骤,并提供了数据库表设计和接口定义。核心部分展示了如何集成海康SDK,包括提取必要代码、加载DLL文件、配置打包插件等具体实现细节,最终形成了一套支持实时预览、回放和下载的

2401_83057947的博客 2261

MATLAB实战:5步搞定铣削稳定性叶瓣图(附完整代码解析)

本文提供了一份基于MATLAB的铣削稳定性叶瓣图实战指南。通过5个清晰步骤,从动力学原理出发,详细解析了利用半离散法构建稳定性判据、模块化代码设计、高效参数扫描及高级可视化的完整流程,并附有完整代码,帮助工程师快速预测和规避加工颤振,优化铣削工艺参数。

weixin_29197051的博客 194

《QUML系列图书》写作计划

QUML作为UML、功能点分析FPA、敏捷开发三种管理方法的集大成者,可以被应用于不同的场景。以下的图书各自侧重于一个方面,供不同领域的读者选择。《QUML:量化需求分析与建模》本书从需求分析与建模的角度,介绍QUML的结构、规则、使用方法,是QUML的基本图书。全书通过对一个电商网站的实例分析,分层次地介绍了QUML的结构、用途、规则和最佳实践;书中还概要地对如何将UML应用于早期估算、产品版本

陈勇的博客 - Scrum 敏捷开发培训咨询,绩效管理,团队管理,《火星人敏捷开发手册》 1万+

逆向实战:如何绕过iTunes 12.6.5.3的反调试机制(附X64dbg插件配置)

本文深入剖析了iTunes 12.6.5.3的反调试机制与登录协议。通过X64dbg动态调试与IDA静态分析,详细演示了如何绕过其反调试检测,并定位到核心的登录协议加密函数,揭示了其请求签名(X-Apple-ActionSignature)的生成逻辑与依赖关系,为客户端安全研究与协议分析提供了实战思路。

weixin_29202213的博客 740

《QUML:量化需求分析与建模》节选之四:一个量化管理项目的一生(3)

本书由本人编写,于2014-09-09在百度阅读首发,博客将转载试读部分的20%内容,以及非试读章节的某些片断。电子版链接:http://yuedu.baidu.com/ebook/c7a9a6dc680203d8ce2f24a6### 第二个月从图形到Word测试经理正在审视第一个迭代的测试用例——因为历史原因,他们还没有形成真正的开发+测试的混合团队,独立的测试团队还只能在每个迭代后期单独执行

陈勇的博客 - Scrum 敏捷开发培训咨询,绩效管理,团队管理,《火星人敏捷开发手册》 8374

Flutter加载本地HTML的优雅解决方案:轻松实现富文本展示

通过以上步骤,我们实现了Flutter加载本地HTML的完整流程,并简单介绍了如何通过WebView与HTML页面进行交互。HTML文件作为一种灵活、易维护的富文本展示方式,能有效提升Flutter应用的内容呈现能力。这种方法在展示新闻、资讯或帮助文档等内容时非常有用,能够让开发者灵活调整内容的样式和排版。希望这篇文章能对你在Flutter开发中的HTML加载有所帮助!

四楼没电梯的专栏 3641

OpenCV实例(二)手势识别

手势识别的范围很广泛,在不同场景下,有不同类型的手势需要识别,例如:● 识别手势所表示的数值。● 识别手势在特定游戏中的含义,如“石头、剪刀、布”等。● 识别手势在游戏中表示的动作,如前进、跳跃、后退等。● 识别特定手势的含义,如表示“OK”的手势、表示胜利的手势等。理论基础凸包和凸缺陷在图像处理中具有非常重要的意义,被广泛地用于图像识别等领域。逼近多边形是轮廓的高度近似,但是有时候,我们希望使用一个多边形的凸包来简化它。凸包和逼近多边形很像,只不过凸包是物体最外层的凸多边形。

小幽余生不加糖 9409

《QUML:量化需求分析与建模》节选之五:一个量化管理项目的一生(4)

本书由本人编写,于2014-09-09在百度阅读首发,博客将转载试读部分的20%内容,以及非试读章节的某些片断。电子版链接:http://yuedu.baidu.com/ebook/c7a9a6dc680203d8ce2f24a6### 第三个月​结项度量第三个月月底,项目成功交付。看惯了文山会海,高层领导希望这个小项目做一个简短的总结。结果他看到了下面的表格:功能点耗时率是指完成每个功能点需要5

陈勇的博客 - Scrum 敏捷开发培训咨询,绩效管理,团队管理,《火星人敏捷开发手册》 8517

LabVIEW实现TCP通信

在本节中,我们将简要探讨TCP通信的基础知识,并以工业物联网平台TLINK中的云端设备数据发布设计为例,详细阐述在互联网环境下TCP客户端应用程序设计的基本方法。

不脱发的程序猿 1959

《QUML:量化需求分析与建模》节选之三:一个量化管理项目的一生(2)

本书由本人编写,于2014-09-09在百度阅读首发,博客将转载试读部分的20%内容,以及非试读章节的某些片断。电子版链接:http://yuedu.baidu.com/ebook/c7a9a6dc680203d8ce2f24a6### 第一个月从用例到用户故事,从用户故事到代码在敏捷计划会上——是的,他们采用敏捷开发,确切说是Scrum——产品经理正在给开发人员讲解需求。他并不是空手来的,而是带

陈勇的博客 - Scrum 敏捷开发培训咨询,绩效管理,团队管理,《火星人敏捷开发手册》 8309

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

efm32 入门.pdf

本PDF共计22页,介绍的是操作驱动API,下载与否自己斟酌。

QUML建模第一层:角色-业务图实现愿景(2)

本书由本人编写,于2014-09-09在百度阅读首发,博客将转载试读部分的20%内容,以及非试读章节的某些片断。电子版链接:http://yuedu.baidu.com/ebook/c7a9a6dc680203d8ce2f24a6### 角色-业务图(RB图)下面是QUML中使用的方法,称之为“角色-业务图”(Role-Bussness Diagram,简称RB图)。通过分析角色和主要业务,表达愿

陈勇的博客 - Scrum 敏捷开发培训咨询,绩效管理,团队管理,《火星人敏捷开发手册》 1万+

华为的C语言编程规范.pdf

华为技术有限公司内部技术规范。本规范制定了编写C语言程序的基本原则、规则和建议。从代码的清晰、简洁、可测试、安全、程序效率、可移植各个方面对C语言编程作出了具体指导。

敏捷开发中QA的职责之敏捷中的QA

QA,通常指的是质量保证(Quality Assurance)工程师,但我更喜欢定义敏捷中的QA为质量分析师(Quality Analyst),主要基于以下几个方面的原因:   质量保证更偏向于工业说法,称参与软件测试的人员为质量分析师感觉更恰当;   质量保证师更多的还是把测试当作软件质量的最后把关着、看门人,而敏捷中的QA更多的是建议提供者而非看门人,把QA称为质量分析师更能体现敏

xinke453的专栏 8500

pscad IEEE标准系统搭建说明

pscad IEEE标准系统搭建说明,包含典型的IEEE 9节点、14节点、30节点、39节点和118节点系统。内含标准测试系统的原始数据和潮流结果。

QUML建模第一层:角色-业务图实现愿景(1)

本书由本人编写,于2014-09-09在百度阅读首发,博客将转载试读部分的20%内容,以及非试读章节的某些片断。电子版链接:http://yuedu.baidu.com/ebook/c7a9a6dc680203d8ce2f24a6### 本章讲解如何将非常模糊的高层需求,也就是愿景,表达为一个清晰、简单、确定的模型。基于这种简单的模型进行开发,要比基于大段似是而非的文字更容易得到最终想要的结果。什

陈勇的博客 - Scrum 敏捷开发培训咨询,绩效管理,团队管理,《火星人敏捷开发手册》 9818

敏捷开发与个人管理

1、概论         敏捷开发,其实道理很简单,但是太多的事情是道理简单却做不到。         敏捷开发(Agile)的核心是去中心化,扁平化结构,拥抱变化,习惯不确定性,当然,还有最重要的迭代。 2、三种角色         在上面这张图中可以看到,在Scrum中有三种角色,产品负责人(scrum owner)、Scrum master和menbers。    

lyx的专栏 2338

UML统一建模语言

  程序员行业中有句不成文的名言:“程序猿,人傻钱多死的早!”其实这话,半对半错,对于码农而言,确实996加班模式长期熬下来确实印证了名言,但是同样也有不少人从码农阶段经过一段时间拼搏上升到了管理层,这时候名言就不太适合这阶层的人了,但是要成为软件方面管理层人员,一个躲避不了的难点就是软件工程,一个软件拿来第一件事不是编代码,而是先进行可行性分析,给出需求分析,总体设计,最终给出具体的详细设计,...

蓝天梦 1038

量化进阶——为什么量化投资一定要多模型

阅读原文:http://club.jr.jd.com/quant/topic/1263612 京东金融官方资讯QQ群:417082141 有什么想咨询的都可以来询问我们哦 有些新手会问量化投资为什么这么多模型,,为什么不找一个收益率最高的做?为什么不找一个夏普比率最高的做?我今天来分享一下为什么量化投资必须要多个模型。 首先看几个概念:收益和波动,赔率和概率,优化和过度拟合

JDquant的博客 3941

QUML建模第一层:角色-业务图实现愿景(3)

本书由本人编写,于2014-09-09在百度阅读首发,博客将转载试读部分的20%内容,以及非试读章节的某些片断。电子版链接:http://yuedu.baidu.com/ebook/c7a9a6dc680203d8ce2f24a6### 愿景取舍——高层优先级排序画完图后,产品经理和项目经理一起找到马总。马总:一口气画了4张?第4张好像很强大啊,我们提到的需求都涵盖了,而且还把评价分为了文字和数值

陈勇的博客 - Scrum 敏捷开发培训咨询,绩效管理,团队管理,《火星人敏捷开发手册》 1万+

阿里敏捷教练如何优化优酷需求分析流程?

摘要: 如何帮助优酷迅速融合到阿里研发体系?如何优化优酷的需求分析流程?针对需求信息不明确,开发出来的功能不是产品想要的痛点如何解决?点此查看原文:http://click.aliyun.com/m/41381/导读:如何帮助优酷迅速融合到阿里研发体系?如何优化优酷的需求分析流程?针对需求信息不明确,开发出来的功能不是产品想要的痛点如何解决?本文由阿里巴巴敏捷教练张迎辉(花名问菊),详述如何通过调...

阿里云云栖号 1301

八分钟敏捷开发(scrum)扫盲

敏捷开发(scrum)是一种软件开发的流程,强调快速反应、快速迭代、价值驱动。 Scrum的英文意思是橄榄球运动的一个专业术语,表示“争球”的动作;运用该流程,你就能看到你团队高效的工作。 敏捷开发的特点就是下面4句话: 「个体与交互」胜过「过程与工具」 「可以工作的软件」胜过「面面俱到的文挡」 「客户协作」胜过「合同谈判」 「响应变化」胜过「遵循计划」 敏捷开发(scrum)适...

ddonking的专栏 2万+

需求分析——需求建模技术

需求分析学习目录:https://blog.youkuaiyun.com/weixin_42562514/article/details/90572761 需求建模技术需包含以下特征: 与外部实体的接口:对软件系统来说,外部实体包括:硬件、其它软件、人等。 要执行的功能:除了描述软件功能以外,还要描述执行功能的条件(前、后置条件),对于实时系统来说,还要精确定义引起功能执行的外部事件(外部中断、定...

Joshua Lee的博客 5120

JavaSE_8系列博客——Java语言的特性(六)--泛型(3)--泛型和类型通配符

视野拓展 Java泛型和C plus plus的模板技术 泛型和类型通配符的关系 通配符是什么 为什么以及什么时候需要类型通配符 通配符以什么样的形式出现 小结视野拓展:Java泛型和C plus plus的模板技术?GJ 程序的语法在表面上与 C++ 中的模板非常类似,但是二者之间有着本质的区别。首先,Java 语言中的泛型不能接受基本类型作为类型参数――它只能接受引用类型。这意味着可以定义 Li

softwareCraftsman 584

Scrum学习笔记

2019独角兽企业重金招聘Python工程师标准>>> ...

weixin_33672109的博客 1446
上一篇: 《QUML:量化需求分析与建模》节选之一:序言
下一篇: 《QUML:量化需求分析与建模》节选之三:一个量化管理项目的一生(2)
火星人陈勇
博客等级 码龄18年 4899粉丝 381原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值