软件项目估算

常用估算方法:

  1. 基于已经完成的类似项目进行估算。
  2. 基于分解技术计划进行估算。
  3. 基于经验估算模型进行估算。

成本估算方法

  1. 自顶向下:从以前完成项目的总成本来估算现在的总成本,再进行分配。
  2. 自底向上:先分别估算每个自认为所需要的开发工作量,最后再进行相加。
  3. 差别估算方法:将待开发项目与已完成项目进行比对,找出其中差别所在,并估算每个差别对于成本的影响。
  4. 专家估算法
  5. 类推估算法
  6. 算式估算法

COCOMO估算模型

是一种精确的,易于使用的静态成本估算模型。
基本COCOMO模型:

中级COCOMO模型

COCOMOII模型

也是一种层次结构的估算模型,分为三个阶段性模型。

  1. 应用组装模型。在软件工程的前期使用。
  2. 早期设计阶段模型。在需求已经稳定并且基层的软件体系结构意见建立时使用。
  3. 体系结构阶段模型。在软件构造过程中使用。

Putnam估算模型

是一种动态多变量的模型,假设在软件开发的整个生存周期中工作量有特定的分布。

进度管理

软件项目进度管理目的是确保软件项目在规定的时间内按期完成。一个软件项目通常可以分为多个子项目和任务,这些任务之间存在一定的关系。项目管理的任务是定义所有的项目任务及其之间的依赖关系,制定项目的进度安排,规划每个任务所需的工作量和持续时间,并在开发过程中进行跟踪调整。

基本原则

  1. 划分。即对产品和过程进行分解。
  2. 相互依赖性。划分后各个活动或任务间的以来关系必须是明确的。
  3. 时间分配。必须为每个被调度的任务分配一定数量的工作单位,必须为每个任务制定开始和结束时间。
  4. 工作量确认。每个项目都有预定数量的人员参与。
  5. 确定责任。
  6. 明确输出结果。安排了进度计划的每个任务够应该有一个明确的输出结果。
  7. 确定里程碑。

进度安排

进度安排的常用图形描述方法有Gantt(甘特)图和项目计划评审技术(Program Evaluation & Review Technique,PERT)图。

Gantt图

是一种简单的水平条形图,他以日历为基准描述项目任务。水平轴表示时间线,每一个条形代表一个任务。左侧为任务名,水平条的起点和终点对应任务所需时间。

Gantt图能清晰地描述每个任务从何时开始,到何时结束,任务的进展以及各个任务之间的并行性。但不能清晰地反映出各个任务之间的依赖关系,难以确定整个项目的关键所在,也无法反映计划中有潜力的部分。

PERT图

是一个有向图,图中的箭头表示任务,可以标上完成任务所需时间,图中的结点表示在该结点上一任务的结束和下一任务的开始,称为事件。事件本身不消耗任何资源,仅表示某个时间点。

  • 最早时刻:表示在此时刻之前从该事件出发的任务不可能开始。
  • 最迟时刻:从该事件出发的任务必须在此时刻之前开始。
  • 松弛时间:在不影响工期的前提下完成该任务有多少机动余地。松弛时间为0的路径是完成整改工程的关键路径。


如图所示,各个量的计算方法如下:

  • 最少时间(关键路径):及图中完成任务的最长路径。
  • 最早开始时间:某段工程开始点之前最长输入流之和。
  • 最晚开始时间:关键路径-开始点到整个工程最后结束点的距离(如有多条路径,选择最小值的那条)。
  • 最早结束时间:某段工程结束点之前最长输入流之和。
  • 最晚结束时间:关键路径-该结束点到整个工程最后结束点的距离(选最小值)。
  • 松弛时间:最晚开始时间-最早开始时间。
  • 松弛时间:最晚结束时间-最早结束时间。
  • 松弛时间:关键路径-所求活动在的最长路径。

例:根据上图,求出关键路径和FG松弛时间
关键路径的计算
首先计算出各个路径长度:
1.ABEGJ:3+15+2+7=27
2.ACFGJ:6+4+3+7=20
3.ACFHJ:6+4+20+10=40
4.ADFGJ:10+8+3+7=28
5.ADFHJ:10+8+20+10=48
6.ADFIHJ:10+8+4+10=32
7.ADFIJ:10+8+4+12=34
综上最长为48,故最少时间为48
FG松弛时间的计算:
根据上述公式,可分别计算出:
最早开始:10+8=18
最晚开始:48-3-7=38
最早结束:10+8+3=21
最晚结束:48-7=41
得出松弛时间:38-18=20或者41-21=20

软考复习-软件工程05-软件项目估算进度管理相关推荐

  1. 软考-高项-论文-信息系统项目的进度管理

    2020年3月至2021年3月,我作为项目经理参与了某公司SaaS平台项目的建设,项目金额560万元人民币,工期12个月.该项目以交通运输部<危险货物道路运输安全管理办法>为准则,搭建了一 ...

  2. java 进度管理系统,java毕业设计_springboot框架的软件项目开发过程进度管理

    今天介绍一个java毕设题目, 题目内容为springboot框架的软件项目开发过程进度管理, 是一个采用b/s结构的javaweb项目, 采用java语言编写开发工具eclipse, 项目框架jsp ...

  3. 软考复习经验分享 软件设计师 软考中级 复习思路

    首先分享一下我的喜悦,在经历了约三个月的复习(上班族,学习时间基本就是晚上也打游戏,复习时间比较零散),给我有惊无险的通过了.先晒晒我的成绩单.         虽然分数没有像其他人那么高,但是作为一 ...

  4. 软件项目管理课后习题——第6章软件项目的进度管理

    东北林业大学出版社 主编:李冰.张桥珍.刘玉娥 主审:刘辉玲 目录 1.选择题 2.填空题 3.判断题 4.名词解释 5.简答题 6.应用题 1.选择题 (1)快速跟进是指(A). A.采用并行执行任 ...

  5. 软考复习笔记|项目管理过程与可行性分析及可行性分析报告编写

    正文开始之前,先恭喜一波,一大早就是满满的喜讯: 恭喜同学们顺利通过PMP考试,没有通过的同学也不要灰心哦,继续努力! 项目管理过程 1.项目管理过程与项目管理过程组 1) 启动过程组:确定并核准项目 ...

  6. 软考复习笔记、项目论证与评估与项目招投标流程及管理,建议收藏

    项目论证与评估 项目论证是指对拟实施项目技术上的先进性.适用性,经济上的合理性.营利性.实施上的可能性.风险可控性进行全面科学的综合分析,为项目决策提供客观依据的一种技术经济研究活动.项目论证应围绕着 ...

  7. 软考2021年报考——软件设计师中级 全国计算机技术与软件专业技术资格(水平)考试

    准备报考今年5月份的软件设计师. 参考知乎链接:https://www.zhihu.com/question/25105576/answer/797224919 软考官网链接:https://www. ...

  8. 软件项目估算之代码行估算方法

    软件项目估算之代码行估算方法 现在软件在大多数基于计算机的系统中已成为最昂贵的部分,如果 软件成本估算的误差很大,就会使盈利变成亏损. 软件项目估算是一种解决问题的形式,在多数情况下,要解决的问题非常 ...

  9. 软考高项 : (11)论信息系统项目的进度管理

    11[论文]论信息系统项目的进度管理 项目进度管理是保证项目的所有工作都在指定的时间内完成的重要管理过程.营理项目进度是每个项目经理在项目管理过程中耗时耗力最多的一项工作,项目进度与项目成本.项目质量 ...

最新文章

  1. error 图片,加载错误-》实用笔记
  2. 局部敏感哈希Locality Sensitive Hashing归总
  3. git rebase简介(基本篇)
  4. linux下c++版本线程池的实现
  5. OC6_代理的基本概念
  6. 数据分析师mysql面试题_30个sql面试题及答案(数据分析师福利)
  7. chrome官网下载网址
  8. 机器人酷跑电脑版下载地址_机器人酷跑游戏
  9. html对象转换为字符串,如何使用JavaScript将对象转换为字符串?
  10. r语言图形怎么保存到c盘,图像 – 将R中的图保存为GIF
  11. js实现的极简计算器
  12. 老李聊股:中油工程(第三篇)
  13. 【智力题】小环绕大环
  14. 思维导图ubuntu_XMind for Linux - 思维导图 | linux软件
  15. PR模板如何使用?Premiere模板如何替换图片、视频及文字的PR模板使用教程
  16. 通过搜狗抓取微信公众号--------破解url
  17. JAVA电子竞技赛事管理系统计算机毕业设计Mybatis+系统+数据库+调试部署
  18. 【MongoDB】安全认证
  19. Android画板,橡皮擦为黑色痕迹的问题
  20. 我学习Javascript的心得体会与Javascript的小总结

热门文章

  1. KNN的实现(超级具体)
  2. 约书亚·布洛赫(Joshua Bloch):Bumper-Sticker API设计
  3. SomeProbles:关于Mac不能格式化新的wd硬盘问题
  4. SDUSTOJ1670 Problem C: 农夫果园
  5. Android开发目前为止记载最全的有关项目的网址
  6. AndroidQ(10)黑暗模式适配
  7. JavaWeb-06 (项目案例3)
  8. neuoj1472 yuki的氪金之旅(倒置树状数组
  9. RT-Thread——STM32——FAL库
  10. rtt 使用fal时出现找不到分区表问题