软件工程——第13章软件项目管理知识点整理(完结)

news2024/12/26 14:41:49

本专栏是博主个人笔记,主要目的是利用碎片化的时间来记忆软工知识点,特此声明!

 

文章目录

1.管理的定义?

2.软件项目管理地位?(重要性)

3.软件项目管理过程从一组项目计划活动开始,而制定计划的基础是?

4.估算软件规模的方法有?

5.什么是代码行技术?

 6.代码行技术的主要优点是?

7.代码行技术的主要缺点是?

8.功能点技术度量软件规模的单位是?

9.工作量估算模型有?

10.工作量是软件规模的函数,其通常的单位是?

11.Gantt(甘特)图是什么?

12.Gantt(甘特)图的主要优点和缺点是?

13.工程网络图是什么?

14.软件开发的人员组织方式有?分别简述每种方式的特点和优缺点?

15.软件质量是什么?

16.软件质量保证的措施主要有?

17.软件配置管理是什么?

18.基线是什么?如何才能够改变它?

19.软件配置管理主要有哪5项任务?

20.什么是能力成熟度模型(CMM)?

 21.能力成熟度的五个等级,从低到高依次是?

章末小结


1.管理的定义?

所谓管理,就是通过计划、组织和控制等一系列活动,合理的配置和使用各种资源,以达到既定目标的过程

2.软件项目管理地位?(重要性)

软件项目管理先于任何技术活动之前开始,并且贯穿于软件的整个生命周期之中

3.软件项目管理过程从一组项目计划活动开始,而制定计划的基础是?

制定计划的基础是工作量估算完成期限估算

为了估算项目的工作量和完成期限,首先需要估算软件的规模

4.估算软件规模的方法有?

  1. 代码行技术
  2. 功能点技术

5.什么是代码行技术?

即根据以往开发类似产品的经验历史数据估计实现一个功能所需要的源程序行数

 6.代码行技术的主要优点是?

代码是所有软件开发项目都有的“产品”,而且很容易计算代码行数

7.代码行技术的主要缺点是?

  1. 源程序仅是软件配置的一个成分,用它的规模代替整个软件的规模不太合理
  2. 不同语言实现同一个软件所需要的代码行数并不相同
  3. 这种方法不适用于非过程语言

8.功能点技术度量软件规模的单位是?

功能点(FP)为单位度量软件规模

9.工作量估算模型有?

  1. 静态单变量模型(基本的COCOMO模型)
  2. 静态多变量模型(COCOMO2模型、中级结构的COCOMO)
  3. 动态多变量模型(putnam模型)

【注】:没有一个估算模型可以适用于所有类型的软件

10.工作量是软件规模的函数,其通常的单位是?

人月(pm)

11.Gantt(甘特)图是什么?

Gantt(甘特)图是历史悠久,应用广泛的制定进度计划的工具

12.Gantt(甘特)图的主要优点和缺点是?

主要优点:

  1. 能够形象地描绘任务分解的情况
  2. 直观简明、容易掌握与绘制

主要缺点:

  1. 不能显示地描绘各项作业彼此之间的依赖关系
  2. 进度计划的关键部分不明确,难以判定哪些部分应当是主攻和主控的对象
  3. 计划中有潜力的部分以及潜力的大小不明确,往往造成潜力的浪费

13.工程网络图是什么?

工程网络图是制定进度计划时另一种常用的图形工具,是系统分析和系统设计的强有力工具。应该同时使用Gantt图和工程网络图来制定和管理进度计划,使得他们互相补充取长补短

14.软件开发的人员组织方式有?分别简述每种方式的特点和优缺点?

  • 民主制程序员组

特点:小组成员完全平等,享有充分民主,通过协商做出技术决策

优点:1.组员们对发现程序错误持积极态度,这有利于更快发现错误从而导致高质量的代码

           2.组员们享有充分的民主,小组有高度凝聚力,组内技术氛围浓厚利于攻克技术难关

缺点:如果组内成员技术水平不高或者是缺乏经验的新手,由于没有明确的权威指导开发工

          程的进行,组员间将缺乏必要的协调,最终可能导致工程失败

  • 主程序员组

特点:1.专业化 2.层次性

优点:1.有经验丰富的主程序员指导开发

           2.程序员间通信均通过主程序员进行,从而降低通信成本,提高了开发生产效率

缺点:1.在许多方面是不切实际的,如主程序员不仅要有高超的技术还要有优秀的管理技术

             这样的人才很难找;后背程序员更难找;编程秘书也很难找到

           2.小组成员会出现不愿意发现错误的心理

        

 

  • 现代程序员组

特点:优化了主程序员组,取消了主程序员大部分行政管理工作,将其分为技术负责人和

           行政负责人

优点:将民主制程序员组和主程序员组的优点结合起来了

缺点:在工作开始之前必须明确划分技术组长和行政组长的管理权限,否则可能造成混乱

         由于程序员组人数不宜过多,当软件项目规模较大时,应该把程序员分成若干个小组,组织结构如下图所示:

 

15.软件质量是什么?

软件质量就是软件明确地和隐含地定义的需求相一致的程度

16.软件质量保证的措施主要有?

  1. 基于非执行的测试(复审和评审)
  2. 基于执行的测试(软件测试)
  3. 程序正确性证明(数学方法)

17.软件配置管理是什么?

软件配置管理贯穿整个生命周期,是在软件整个生命周期内的管理变化的一组活动,用来标识、控制和报告变化,确保适当地实现了变化

18.基线是什么?如何才能够改变它?

基线是通过了正式复审的软件配置项,可以作为进一步开发的基础。

只有通过了正式的变化控制过程才能改变它

19.软件配置管理主要有哪5项任务?

  1. 标识对象
  2. 版本控制
  3. 变化控制
  4. 配置审计
  5. 状态报告

20.什么是能力成熟度模型(CMM)?

能力成熟度模型(CMM)是用于评价软件机构的软件过程能力成熟度的模型,用于帮助软件开发机构建立一个有规模的、成熟的软件过程

 21.能力成熟度的五个等级,从低到高依次是?

  1. 初始级
  2. 可重复级
  3. 已定义级
  4. 已管理级
  5. 优化级

章末小结

        软件工程包括技术和管理两方面的内容,是技术与管理紧密结合的产物。只有在科学而严格的管理之下,先进的技术方法和优秀的软件工具才能真正发挥出威力。因此,有效的管理是大型软件工程项目成功的关键

        软件项目管理始于项目计划,而第一项计划活动就是估算。为了估算项目工作量和完成期限,首先需要预测软件规模

        度量软件规模的常用技术主要有代码行技术和功能点技术。这两种技术各有优缺点。应该根据项目特点及从事计划工作的人对这两种技术的熟悉程度,选用适用的技术。

        根据软件规模可以估算出完成该项目所需的工作量,常用的估算模型为静态单变量模型、动态多变量模型和 COCOMO2 模型。为了使估算结果更接近实际值,通常至少同时使用上述3 种模型中的两种。通过比较和协调使用不同模型得出的估算值,有可能得到比较准确的估算结果。成本估算模型通常也同时提供了估算软件开发时间的方程式这样估算出的开发时间是正常开发时间,经验表明,用增加开发人员的方法最多可以把开发时间减少到正常开发时间的 75%

        管理者必须制定出一个足够详细的进度表,以便监督项目进度并控制整个项目。常用的制定进度计划的工具有 Gantt 图和工程网络,这两种工具各有优缺点,通常,联合使用 Gantt 图和工程网络来制定进度计划并监督项目进展状况。

        高素质的开发人员和合理的项目组组织结构,是软件项目取得成功的关键。比较典型的组织结构有民主制程序员组、主程序员组和现代程序员组 3 种,这3 种组织方式的适用场合并不相同。软件质量保证是在软件过程中的每一步都进行的活动。软件质量保证措施主要有基于非执行的测试(也称为复审)、基于执行的测试(即通常所说的测试)和程序正确性证明。软件复审是最重要的软件质量保证活动之一,它的优点是在改正错误的成本相对比较低时就能及时发现并排除软件错误。

        软件配置管理是应用于整个软件过程中的保护性活动,是在软件整个生命期内管理变化的一组活动。软件配置管理的目标是,使变化能够更正确且更容易被适应,在需要修改软件时减少为此而花费的工作量。

        能力成熟度模型(CMM)是改进软件过程的有效策略。它的基本思想是,因为问题是管理软件过程的方法不恰当造成的,所以采用新技术并不会自动提高软件生产率和软件质量,应该下大力气改进对软件过程的管理。事实上对软件过程的改进不可能一蹴而就。因此,CMM 以增量方式逐步引人变化,它明确地定义了 5 个成熟度等级,一个软件开发组织可以用一系列小的改良性步骤迈入更高的成熟度等级。

 

反反复复,扎扎实实;念念不忘,必有回响! 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/745762.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

怎么制作查询成绩的网页?这个不用代码的方法你用过没?

作为一名老师,与家长沟通交流是日常工作中重要的一部分。特别是每次考完试后,家长都急切地想了解孩子的成绩,以便能及时了解孩子的学习情况并给予适当的支持和指导。然而,为了保护学生的隐私,大部分学校不公开张榜学生…

字符设备驱动led灯实验

应用程序代码 #include<stdio.h> #include<string.h> #include <sys/types.h> #include <sys/stat.h> #include <fcntl.h> #include <unistd.h> #include <string.h>int main (int argc, const char *argv[]) {char buf[128] &quo…

马上就要到2023年秋招的黄金时期了,计算机专业面试究竟需要注意些什么?

说说自己&#xff0c;不算很突出。本人 17 年就读于一所普通的本科学校&#xff0c;20 年 6 月在三年经验的时候顺利通过校招实习面试进入大厂&#xff0c;现就职于某大厂安全实验室。 所以我还是比较有话语权的吧。 话不多说直接进入主题。 1.理论知识准备&#xff1a;复习计算…

驱动 day9 作业

要求&#xff1a; 现象 按下key1 led1灯的状态取反&#xff0c;number的值取反&#xff0c;然后应用程序打印从内核读到的number的值 应用程序test.c #include <stdio.h> #include <stdlib.h> #include <sys/types.h> #include <sys/stat.h> #incl…

Bash 有效电话号码

193 有效电话号码 给定一个包含电话号码列表&#xff08;一行一个电话号码&#xff09;的文本文件 file.txt&#xff0c;写一个单行 bash 脚本输出所有有效的电话号码。 你可以假设一个有效的电话号码必须满足以下两种格式&#xff1a; (xxx) xxx-xxxx 或 xxx-xxx-xxxx。&…

三维重建以及神经渲染中的学习(三)

三维重建以及神经渲染中的学习 公众号AI知识物语 本文内容为参加过去一次暑期课程学习时的笔记&#xff0c;浅浅记录下。 三维图形可控生成&#xff1a; 1&#xff1a;学习一个图形生成模型 2&#xff1a;具有可控三维变量&#xff1a;1物体形状&#xff1b;2物体位置&…

ScannerException: while scanning for the next token found character ‘@‘ 问题解决

问题描述 后端项目启动的时候报ScannerException: while scanning for the next token found character ‘‘ 异常&#xff0c;自己有些疑问&#xff0c;项目前一会都还可以&#xff0c;到报错的过程中&#xff0c;项目都没有动过。 解决办法 重新刷新项目就解决了。

RxSwift 使用方式

背景 最近项目业务&#xff0c;所有模块已经支持Swift混编开发&#xff0c;正在逐步使用Swift 方式进行开发新业务&#xff0c;以及逐步替换老业务方式进行发展&#xff0c;所以使用一些较为成熟的Swift 的三方库&#xff0c;成为必要性&#xff0c;经过调研发现RxSwift 在使用…

HarmonyOS/OpenHarmony应用开发-程序包多HAP机制(上)

一、多HAP机制设计目标 方便开发者模块化的管理应用&#xff0c;好的应用一般都是模块化管理&#xff0c;模块之间属于松耦合关系。多HAP方便了开发者将业务划分成多个模块&#xff0c;每个模块放到独立的HAP中。例如支付类应用&#xff0c;有统一的主界面&#xff0c;主界面管…

命令注入(Command Injection)安全漏洞(SQL注入、LDAP注入、OS命令注入、XPath注入、JavaScript注入)

文章目录 命令注入&#xff08;Command Injection&#xff09;发生场景示例防范手段其他类型命令注入漏洞1. SQL注入&#xff08;SQL Injection&#xff09;2. LDAP注入&#xff08;LDAP Injection&#xff09;3. OS命令注入&#xff08;OS Command Injection&#xff09;4. XP…

VectorCAST对外部函数打桩和查看覆盖率

一、对外部函数打桩 在单元测试中&#xff0c;如果要调用到外部函数调用的时候&#xff0c;就要对外部函数进行打桩。 对外部函数进行打桩的目的&#xff0c;一方面是为了验证外部函数接口的正确性&#xff0c;另一方面是对外部函数打桩 之后就可以自定义外部函数返回值。 对…

Unity5.4.1打砖块游戏Breakout_Game_Starter_Kit

Unity5.4.1打砖块游戏Breakout_Game_Starter_Kit 童年的回忆 项目地址&#xff1a;https://download.csdn.net/download/Highning0007/88042779

vue 使用 npm run dev命令后 自动打开浏览器为谷歌

文章目录 需求分析 需求 vue 启动后&#xff0c;想要其自动打开指定浏览器&#xff08;谷歌&#xff09;并设置要打开的IP地址和端口号 分析 package.json 打开package.json文件加上 --open chrome index.js 打开index.js文件&#xff0c;将浏览器设置为自动打开

【力扣刷题 | 第十七天】

目录 前言&#xff1a; 55. 跳跃游戏 - 力扣&#xff08;LeetCode&#xff09; 45. 跳跃游戏 II - 力扣&#xff08;LeetCode&#xff09; 总结&#xff1a; 前言&#xff1a; 今天两道类型都是贪心算法&#xff0c;希望可以有所收获 55. 跳跃游戏 - 力扣&#xff08;LeetC…

入门车载以太网

前言 近些年来,随着为了让汽车更加安全、智能、环保等,一系列的高级辅助驾驶功能喷涌而出。未来满足这些需求,就对传统的电子电器架构带来了严峻的考验,需要越来越多的电子部件参与信息交互,导致对网络传输速率,稳定性,负载率等方面都提出了更为严格的挑战。 除此以外…

哪些职位需要CISP证书?快进来看看你需不需要

CISP是目前中国最主流的信息行业的证书&#xff0c;也是业界公认的最专业的信息安全技术和管理资格培训。无论是政府部门、金融、电力、交通能源、IT等相关行业&#xff0c;都可以看到CISP证书的持有人。现在持证的人数日趋上升&#xff0c;成为一个必备证书。CISP知识体系是国…

【JavaEE】HTTP协议和抓包工具的使用

目录 1、HTTP的概述和抓包工具的使用 1.1、HTTP是什么 1.2、了解HTTP协议的工作过程 1.3、抓包工具的使用 1.3.1、抓包工具在HTTP传输时的工作原理 1.3.2、Fiddler抓包工具的下载和使用 2、HTTP协议格式 2.1、HTTP 请求格式 2.1.1.基本格式 2.1.2、了解HTTP请求包中的…

有趣的命令——————用随机密码新建20个用户,并输出密码

vim test.sh 输入以下内容&#xff1a;for i in seq 10douseradd user$ipassecho $RANDOM | md5sum |cut -c 1-6echo "$pass" | passwd --stdin "user$i"echo -e "账户&#xff1a;user$i\n 密码&#xff1a;$pass" >> /root/passwddone例…

Layui关于如何添加连接数据库的选项卡(三)

目录 1.实现效果&#xff1a; 2.思路&#xff1a; 3.PermissionDao类&#xff08;增加属性&#xff09; 4.主页&#xff1a;jsp 5.简洁风格修改选项卡的样式&#xff1a; 6.关于style中的属性设置使用 7.关于Element 组件介绍&#xff1a; 8. Layui 中的页面进行更新和…

如何解决git中拉取或提交代码出现的ssl证书问题?

问题描述 执行命令的时候&#xff0c;出现"…certificate problem…"报错&#xff0c;一般在执行"git push“ (推送分支) 或者 “git clone”(克隆仓库)时出现&#xff0c;原因时因为SSL安全验证问题&#xff0c;不能获取到本地的的证书。那么如何解决这个问题…