【中级软件设计师】上午题12-软件工程(3):项目活动图、软件风险、软件评审、软件项目估算

news2025/2/22 9:21:22

【中级软件设计师】上午题12-软件工程(3)

  • 1 软件项目估算
    • 1.1 COCOMO估算模型
    • 1.2 COCOMOⅡ模型
  • 2 进度管理
    • 2.1 gantt甘特图
    • 2.2 pert图
    • 2.3 项目活动图
      • 2.3.1 画项目图
  • 3 软件配置管理
  • 4 软件风险
    • 4.1 风险管理
    • 4.2 风险识别
    • 4.3 风险预测
    • 4.4 风险评估
    • 4.5 风险控制
  • 5 ISO IEC 9126 软件质量模型
  • 6 Mc Call 软件质量模型
  • 7 软件评审
    • 7.1 设计质量的评审内容
    • 7.2 程序质量的评审内容
  • 8 软件容错技术
  • 9 软件维护工具
    • 9.1 软件开发工具
    • 9.2 软件维护工具

1 软件项目估算

1.1 COCOMO估算模型

1.基本COCOMO模型
静态单变量模型
2.中级COCOMO模型
静态多变量模型
3.详细COCOMO模型
它将软件系统模型分为系统、子系统和模块3个层次

1.2 COCOMOⅡ模型

(1)应用组装模型。对象点
(2)早期设计阶段模型。功能点
(3)体系结构阶段模型。代码行

2 进度管理

2.1 gantt甘特图

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

2.2 pert图

最早时刻表示在此时刻之前从该事件出发的任务不可能开始;
最迟时刻表示从该事件出发的任务必须在此时刻之前开始,否则整个工程就不能如期完成。
每个任务还可以有一个松弛时间(Slack Time),最迟时刻-最早时刻为松弛时刻

最早时刻:选max
最迟时刻:选min
关键路径:松弛时刻为0的路径

2.3 项目活动图

做法和pert图类似,但是松弛时刻为0的路径不一定是关键路径
比如:
在这里插入图片描述
在这里插入图片描述

2.3.1 画项目图

在这里插入图片描述
在这里插入图片描述

3 软件配置管理

软件配置管理其主要目标包括:变更标识、变更控制、版本控制、确保变更正确的实现、变更报告、

软件配置管理其主要内容包括:版本管理、配置支持、变更支持、过程支持、团队支持、变化报告、审计支持。

上下为两个不同的版本

软件配置管理其主要内容包括:软件配置标识、变更管理、版本控制、系统建立、配置审核、配置状态报告。

配置数据库可以分为以下三类:
1.开发库
2.受控库
3.产品库

4 软件风险

4.1 风险管理

一般认为软件风险包含两个特性:不确定性和损失。
不确定性是指风险可能发生也可能不发生;损失是指如果风险发生,就会产生恶性后果。

项目风险威胁到项目计划。

技术风险威胁到要开发软件的质量及交付时间。

商业风险有主要的以下5个:
1.市场风险
2.策略风险
3.销售风险
4.管理风险
5.预算风险

4.2 风险识别

风险识别试图系统化地指出对项目计划(估算、进度、资源分配等)的威胁。
识别出已知风险和可预测风险后,项目管理者首先要做的是在可能时回避这些风险,在必要时控制这些风险。

识别风险的一种方法是建立风险条目检查表。该检查表可用于风险识别,并且主要用来识别下列几种类型中的一些已知风险和可预测风险。

4.3 风险预测

风险预测又称风险估计,它试图从两个方面评估一个风险:风险发生的可能性或概率;如果风险发生了所产生的后果。

如果风险真的发生,有3个因素可能会影响风险所产生的后果,即风险的本质、范围和时间。

整体的风险显露度(Risk Exposure,RE)可由下面的关系确定:
R E = P × C RE=P×C RE=P×C
其中,P是风险发生的概率,C是风险发生时带来的项目成本。

4.4 风险评估

一种对风险评估很有用的技术就是定义风险参照水准。

4.5 风险控制

风险控制的目的是辅助项目组建立处理风险的策略。
应对风险的最好办法是主动地避免风险

这种监测活动有3个主要目的:
1.评估所预测的风险是否真的发生了
2.保证正确地实施了各风险的缓解步骤
3.收集能够用于今后风险缝隙的信息。

5 ISO IEC 9126 软件质量模型

由3个层次组成:第一层是质量特性,第二层是质量子特性,第三层是度量指标。

其中,各质量特性和质量子特性的含义如下:
(1)功能性(Fumctionality)。与一组功能及其指定的性质的存在有关的一组属性,功能是指满足规定或隐含需求的那些功能。
(2)可靠性(Reliability)。与在规定的一段时间内和规定的条件下软件维持在其性能水平有关的能力。
(3)易使用性(Usability)。与为使用所需的努力和由一组规定或隐含的用户对这样使用所做的个别评价有关的一组属性。
(4)效率(Efciency)。在规定条件下,与软件的性能水平与所用资源量之间的关系有关的软件属性。
(5)可维护性(Maintainability)。与进行规定的修改所需要的努力有关的一组属性。
在这里插入图片描述

6 Mc Call 软件质量模型

McCall 软件质量模型从软件产品的运行、修正和转移3个方面确定了 11个质量特性(如图 5-16 所示)。Mc Ca! 也给出了一个三层模型框架,第一层是质量特性,第二层是评价准则,第三层是度量指标。
在这里插入图片描述

7 软件评审

7.1 设计质量的评审内容

通常从以下几个方面进行评审:
(1)评价软件的规格说明是否合乎用户的要求
(2)评审可靠性,
(3)评审保密措施实现情况,
(4)评审操作特性实施情况,
(5)评审性能实现情况,
(6)评审软件是否具有可修改性、可扩充性、可互换性和可移植性。
(7)评审软件是否具有可测试性
(8)评审软件是否具有复用性

7.2 程序质量的评审内容

(4)模块结构。
控制流结构、数据流结构、模块结构与功能结构之间的对应关系。

进行正式的技术评审:其唯一的目的是揭露质量问题。在多数情况下,评审能像测试一样有效地揭露软件中的缺陷。

8 软件容错技术

实现容错的主要手段是冗余。冗余是指对于实现系统规定功能是多余的那部分资源,包括硬件、软件、信息和时间。由于加入了这些资源,有可能使系统的可靠性得到较大的提高。通常,冗余技术分为4类。

(1)结构冗余。结构冗余是通常采用的冗余技术,按其工作方法可以分为静态、动态和混合几余 3种。
(2)信息冗余。
(3)时间冗余。
(4)冗余附加技术。

在屏蔽硬件错误的容错技术中,冗余附加技术包括:
1.关键程序和数据的几余存储及调用。
2.检测、表决、切换、重构、纠错和复算的实现。在屏蔽软件错误的容错系统中,冗余附加技术的构成包括:
①冗余备份程序的存储及调用。
②实现错误检测和错误恢复的程序。
③实现容错软件所需的固化程序

9 软件维护工具

9.1 软件开发工具

软件开发工具通常有需求分析工具、设计工具、编码与排错工具、测试工具等。

9.2 软件维护工具

软件维护工具主要有版本控制工具、文档分析工具、开发信息库工具、逆向工程工具和再工程工具。


已完结,但是还需后续补充,星期天补充~软考真是一场酣畅淋漓的记忆考试

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

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

相关文章

大模型(LLM)调用API论文研究合集

1、API-BLEND: A Comprehensive Corpora for Training and Benchmarking API LLMs 中文标题:API-BLEND: 一个用于训练和评测 API 语言模型的全面语料库 简介:随着大型语言模型(LLM)的发展,它们需要能够有效地利用各种工具和应用程序接口(API)来完成复杂…

GNU Radio之OFDM Channel Estimation底层C++实现

文章目录 前言一、 OFDM Channel Estimation 模块简介二、C 具体实现1、初始化和配置参数2、forecast 函数3、计算载波偏移量4、提取信道响应5、核心的数据处理任务 前言 OFDM Channel Estimation 模块的功能是根据前导码(同步字)估计 OFDM 的信道和粗略…

Java:SpringBoot如何优化启动速度

一、yml中设置懒加载 spring:main:lazy-initialization: true 二、SpringBoot启动类中添加注解 Indexed (Spring5才有该注解) Indexed EnableAsync RestController SpringBootApplication(exclude {WxMaAutoConfiguration.class}) EnableTransactionM…

web服务的部署及高级优化

搭建web服务器 1.1、配置主机IP以及软件仓库搭建 [rootserver129 ~]# vmset.sh 100 //主机IP配置为172.25.254.100 1.2、查看搭建web服务器所需的软件包 [rootserver100 ~]# dnf search nginx 名称 精准匹配:nginx nginx.x86_64 : A high performance web serve…

31.基础乐理-首调与固定调

首调与固定调的概念: 首调 与 固定调 这两个词都是针对 唱名 来说的,针对唱名1234567 来说的,和别的没什么关系,这两个概念是唱名的两种不同表达方式 首调:虽然各个大调实际使用的按键、使用的音名都是不一样的&#x…

【4103】基于小程序实现的老年人健康管理平台

作者主页:Java码库 主营内容:SpringBoot、Vue、SSM、HLMT、Jsp、PHP、Nodejs、Python、爬虫、数据可视化、小程序、安卓app等设计与开发。 收藏点赞不迷路 关注作者有好处 文末获取源码 技术选型 【后端】:Java 【框架】:spring…

学习C语言的指针

有一阵没更新了,因为最近比较繁忙,所以更新比较慢,还在慢慢学习 话不多说,开始今天的内容,聊一聊C语言指针。 很多小伙伴可能会被指针这个名字吓到,觉得很难,实际上确实有点难,但是…

算力云平台

先预热下 目标: 算力互联,随需随取;让算力化零为整,化整为零 场景: 1. 个人pc改造,个人算力出租,类似之前的jiluyou模式 2. 服务器中间商准系统集成,目前了解到挖矿不好弄了以后…

MVC架构简述

MVC简介 MVC 是一种非常常见且常用的分层架构,主要包括;M - mode 对象层,封装到 domain 里。V - view 展示层,但因为目前都是前后端分离的项目,几乎不会在后端项目里写 JSP 文件了。C - Controller 控制层&#xff0c…

qt安装历史版本5.15.2

0 背景 因为需要,所以需要安装qt5的最后一个版本qt5.15.2,但是下载qt安装器后,发现没有想要的版本。后面才发现,可以筛选历史版本进行安装。 1 解决 1,打开qt安装程序,勾选Archive后,点击筛选…

【简洁易学】TypeScript 学习笔记

文章目录 TypeScript学习笔记一、TS简介1. 学习前提2. TypeScript是什么?3. TypeScript增加了什么? 二、TS开发环境搭建1. 下载、安装Node.js2. npm安装TypeScript3. 创建一个TS文件,使用tsc对TS文件进行编译 三、TS的类型1. 类型声明2. 类型…

技术不爱听:可视化大屏难点不在于制作过程,而是做成什么样

制作可视化大屏的是一个技术活,需要掌握一定的前端技术和数据可视化技术,例如HTML、CSS、JavaScript、Canvas、SVG、three.js、甚至还涉及到建模、BIM、GIS等等。 但是,仅仅掌握这些技术并不足以制作出一个好的可视化大屏,更重要的…

js逆向进阶篇-某团酒店

提示!本文章仅供学习交流,严禁用于任何商业和非法用途,未经许可禁止转载,禁止任何修改后二次传播,擅自使用本文讲解的技术而导致的任何意外,作者均不负责,如有侵权,可联系本文作者删除! 案例分析: 先来看看请求中有哪些参数是需要我们逆向,如下: mtgsig、fp、roh…

数据结构与算法-抽象数据类型ADT系列

以前在学习数据结构的时候做实验,老师要求用ADT抽象数据类型来写这些实现代码。后面也要复习数据结构,在这里就先放下链接。不过以前学习的时候使用的编程语言是C,里面会用到很多指针。现在编代码过程大多数时候都是用Java。不过思路应该还是…

C# WinForm —— 09 标签、文本框、按钮控件

标签 Label 一般显示不能编辑的文本或图像 常用属性、事件: 属性用途(Name)标签对象的ID,在代码里引用标签的时候会用到,一般以 lbl 开头Text设置或获取 界面上显示的 文本信息Image显示图像ImageList图像集,通常和 ListView ToolStrip Tre…

MS17-010---利用“永恒之蓝”漏洞攻击 win7主机

免责声明:本文仅做技术交流与学习.... 目录 一.前置知识 1.何为永恒之蓝? 2.什么是SMB协议? 3.SMB工作原理是什么? 二、实验环境 三、实验步骤 nmap扫描 msf一把梭哈 shell执行命令 远程连接 一. 二. 一.前…

C++常用的输入输出方法(ACM模式)

文章目录 前言一、输入输出方法1、cin2、getline()3、getchar() 二、算法案例1、一维数组1.1 输入固定长度1.2长度不固定 2、固定二维数组3、以非空格隔开的元素输入3、常见数据结构定义以及输入3.1 链表 前言 C中的输入输出函数有很多,我们本章只针对大部分算法题…

vue +antvX6 根据节点与线,动态设置节点坐标生成流程图

需求 vue2 antvX6完成流程图,但只有节点与线,没有节点的坐标,需要根据节点的顺序显示流程图。 需求: 1.根据数据动态生成对应的节点与线; 2.节点不能重叠; 3.节点与线可拖拽; 4.因为线存在重…

渗透之sql注入联合查询的注入

sql注入产生的原因: 由于程序过滤不严谨,导致用户有一些异常输入,最终触发数据库的查询。所以会出现sql注入这个问题。有些恶意的人就会利用这些信息导致数据库泄露。 注意:一般我们存在注入点我们会查询管理员的账号和密码&#…

【C 数据结构】深度优先搜索、广度优先搜索

文章目录 【 1. DFS 深度优先搜索 】1.1 基本原理1.2 C 实现 【 2. BFS 广度优先搜索 】2.1 基本原理2.2 C 实现 【 3. 深度优先生成树、广度优先生成树 】【 4. 深度优先生成森林、广度优先生成森林 】4.1 深度优先生成森林4.2 广度优先生成森林 对存储的图中的顶点进行遍历搜…