《软件过程与管理》复习

ops/2024/9/23 7:22:17/

《软件过程与管理》复习

1 高质量编程及测试在这里插入图片描述

1.1 如何选择正确的评审方法

选择评审方法最有效的标准是:
“对于最可能产生风险的工作成果,要采用最正式的评审方法.”

例如:核心代码的失效也会带来很严重的后果,所以也应该采用审查或小组评审的方法进行评审,而一般的代码,则可以采用临时评审、同桌评审等比较随意的评审方法。
1.1.1 代码审查

代码审查的目的是检查源程序编码是否符合详细设计的编码规定,确保编码与设计的一致性和可追踪性。

1.1.2 静态分析

静态分析的目的是通过对源程序分析、目测,但不执行程序,找出源代码中可能的错误和缺陷,对程序设计的结构属性如:分支、路径、转移等进行审查,尽可能的掌握源程序的结构,为单元测试设计测试用例和进行单元测试提供信息。

1.1.3 代码走查

走查(walkthrough)是一种使用静态分析方法的非正式评审过程;走查过程是让与会成员充当计算机,由被指定作为测试员的小组成员提出一批测试实例,在会议上对每个测试实例用头脑来执行程序,在纸上或黑板上监视程序的状态(即变量的值);
在这里插入图片描述

1.2 软件测试目标

由于软件开发人员思维上的主观局限性,且目前开发的软件系统都具有相当的复杂性, 决定了在开发过程中出现软件错误是不可避免的,软件过多的或严重的错误会导致程序或系统的失效。

1.2.1 软件错误产生的主要原因
  1. 需求规格说明书(requirement specification or functional specification)包含错误的需求、或漏掉一些需求,或没有准确表达客户所需要的内容;
  2. 需求规格说明书中有些功能不可能或无法实现的;
    系统设计(system design)中的不合理性 ;
  3. 程序设计中的错误、程序代码中的问题,包括错误的算法、复杂的逻辑等。
1.2.2 软件测试的目的
  1. 软件测试是为了发现错误而执行程序的过程;
  2. 一个好的测试能够在第一时间发现程序中存在的错误;
  3. 一个好的测试是发现了至今尚未发现的错误的测试。

2 高质量需求与设计

在这里插入图片描述

2.1 需求变更控制

变更控制

访问控制和汇入控制

需求变更处理流程
在这里插入图片描述

3 软件配置管理

在这里插入图片描述

3.1 基线

3.1.1 基线定义

IEEE对基线的定义:
已经正式通过复审核批准的某规约或产品,它因此可作为进一步开发的基础,并且只能通过正式的变更控制过程进行改变。
基线是软件生存期各开发阶段末尾的特定点,也称里程碑。

常用软件基线

在这里插入图片描述

3.1.2 软件过程中配置基线

在这里插入图片描述

3.2 软件配置管理10个核心活动

  1. 建立配置管理组织
  2. 确定配置策略
  3. 制定配置管理计划
  4. 配置项标识
  5. 版本控制
  6. 配置项和基线管理
  7. 变更控制
  8. 配置状态报告
  9. 配置审核
  10. 发布及交付管理
    在这里插入图片描述

4 软件评审

在这里插入图片描述

5 软件质量保证

在这里插入图片描述

6 软件质量度量

在这里插入图片描述

7 软件质量管理与软件质量工程体系

在这里插入图片描述

8 软件质量计划

在这里插入图片描述

9 软件质量控制

在这里插入图片描述

10 质量与软件质量

在这里插入图片描述


http://www.ppmy.cn/ops/22734.html

相关文章

数据库MySQL的初级基础操作

文章目录 1. 介绍2. 数据库相关概念3. 启动4. 数据模型5. SQL6. DDL数据库DDL-表操作DDL-表操作-数据类型DDL-表操作-修改DDL-表操作-删除 7. 图形化界面工具DataGrip8. DML(数据操作语言)DML-添加数据DML-修改数据 9. DQL(数据查询语言)基本查询条件查询…

React 之 组件模块依赖

导入(Import)和导出(exporing)组件 在一个文件中声明多个组件,但是文件变得太大的话就不方便查看了。要解决此问题,你可以将一个组件放到一个单独的文件中并(导出) export 组件&…

2024最新docker部署gitlab

docker部署gitlab 快速命令 1 拉取镜像 docker pull gitlab/gitlab-ce2 启动容器 docker run -itd \-p 9980:80 \-p 9922:22 \-v /opt/soft/docker/gitlab/etc:/etc/gitlab \-v /opt/soft/docker/gitlab/log:/var/log/gitlab \-v /opt/soft/docker/gitlab/opt:/var/opt/g…

RK3588 - RKNN(Rockchip 神经处理单元)的逆向工程

本文翻译自https://jas-hacks.blogspot.com/2024/02/rk3588-reverse-engineering-rknn.html RK3588 NPU 的内部操作和功能主要隐藏在名为RKNPU2的闭源 SDK 中。由于对大型语言模型 (LLM) 的兴趣以及对transform模型最佳矩阵乘法的追求,想了解 RKNPU SDK 新引入的矩阵…

设计模式学习笔记 - 开源实战五(下):总结Mybatis中用到的10种设计模式

概述 本章再对 Mybatis 用到的设计模式做一个总结。它用到的设计模式也不少。有些前面章节已经经过了,有些则比较简单。 SqlSessionFactoryBuilder:为什么要用建造者模式来创建 SqlSessionFactory? 在《Mybatis如何权衡易用性、性能和灵活性…

正点原子[第二期]Linux之ARM(MX6U)裸机篇学习笔记-6.3

前言: 本文是根据哔哩哔哩网站上“正点原子[第二期]Linux之ARM(MX6U)裸机篇”视频的学习笔记,在这里会记录下正点原子 I.MX6ULL 开发板的配套视频教程所作的实验和学习笔记内容。本文大量引用了正点原子教学视频和链接中的内容。…

40+ Node.js 常见面试问题 [2024]

今天就开始你的Node.js生涯。在这里,我们探讨了最佳Node.js面试问题和答案,以帮助应届生和经验丰富的候选人获得理想的工作。 Node.js 是许多大公司技术堆栈的重要组成部分,例如 PayPal、Trello、沃尔玛和 NASA。 根据 ZipRecruiter 的数据&…

BTCOIN的革命之路:通过SocialFi重塑全球金融生态系统

BTCOIN的革命之路:通过SocialFi重塑全球金融生态系统 今日,BTCOIN宣布发布WEB3.0论坛引发业内现象级关注:作为一个倡导WEB3.0理念的数字金融平台,在数字货币的波澜壮阔中,BTCOIN以其独特的生态定位和战略愿景&#xff…