软件设计师(上午题6)、软件工程

瀑布模型

瀑布模式适合开求明确的,需求大致固定不会随意变更的系统

V模式的关键字在于质量保证活动和沟通,基本问题逐步细化

系统重构,已经开发过相同的,有清晰的定义,就选者瀑布**】**

增量模型

增量模型拥有瀑布模型的所有优点

它主要的特点是可以快速构造可运行的产品

原型模型

原型模型不适合大规模的系统开发

螺旋模型

螺旋模型的特点是加入了风险分析,适合大规模高风险的,需求变化的系统

喷泉模型

统一过程(UP)模型

计划、分析、设计、构造、集成、测试以及内部和外部发布

敏捷开发

软件测试

目的不是保证软件的正确性

系统测试阶段的测试目标来自于需求分析阶段

黑盒测试(重点)

黑盒:不关注程序内部,只关注输出输入

测试0-100,在这里面就是有效,没在范围就是无效

好的测试条件,包括好的输入条件+不好的输入条件

不好的测试用例,全部都是不合法的输入条件

两个方法

第一个是边-节点+2

第二个闭合区域+1


白盒测试

语句覆盖:代码你都要跑一遍

判定覆盖:每个判定表达式都有一真一假,你都要取到一次**,这里的判定是指判定整体一起;**

**条件覆盖:判定表达式的所有条件都要最少取得一真一假,**AND的左右条件

**判定/条件覆盖:**2,3的组合

**条件组合覆盖:**AND的左右条件,每种情况都要试一遍

路径覆盖:最强的,覆盖被测试程序中所有可能的路径

做题技巧,先看懂它的需求是什么,有时候默认值是数组

在白盒测试中计算环路复杂度就直接是判定条件的数量+1,例如这个题的判定条件有三个+1=4,所以环路复杂度是4

在白盒测试中计算环路复杂度就直接是判定条件的数量+1


系统可维护性评估指标

正确性主要就行修改错误

适应性主要是是变化了所以要适应,题目中有变化或者暗示变化那就是适应性

完善性主要是新增功能和需求这两个点

预防性主要是预防两字

凡是说文档不好的,直接是错的

沟通路径

沟通路径无主程序员的公式【(n-1)*n】/2,就是求和公式

有主程序员n-1,其中n为程序员的个数

项目进度图(重点)

Gantt图(甘特图)
PERT图

如果有多个流指向一个事件,那最早时刻取最大值(从第一个往后加)

如果一个事件有多个分流,那最晚时刻取最小值(从最后一个往前减)

最后一个最早时间=最后时间

松弛时间=单结点最晚时间-单结点最早时间(因为之前是去min\max,所以对于多个分流,要另外分析)

关键路径是松弛时间为0的那条线

风险避免是最好的风险控制策略

两个特性:不确定性和损失

风险评估、排优先级:可能性和后果

应对风险最好的办法就是风险避免

风险暴露=可能性*后果

风险不可能全部避免:有不可控因素,可以干预降低影响

软件质量

容错性 (Fault tolerance)。与在软件错误或违反指定接口的情况下维持指定的性能水平的能力有关的软件属性。

易恢复性 (Recoverability)。与在故障发生后,重新建立其性能水平并恢复直接受影响数据的能力,以及为达到此目的所需的时间和努力有关的软件属性。

模块结构属于程序评审

冗余技术通常分为 4 类, 结构冗余、 静态、动态和混合

带程序的就是屏蔽软件错误的容错系统

软件开发工具就是你开发前后过程中必须要用到的,维护就是辅助用的

相关推荐
paceboy8 小时前
Claude解决不了的问题
程序人生·软件工程
向上的车轮1 天前
AI驱动开发:Gemini 3.0如何重塑软件工程范式
人工智能·软件工程·gemini 3.0
EmmaXLZHONG2 天前
Notes of Software Engineering Ninth Edition(软件工程第九版笔记)
笔记·软件工程
行业探路者2 天前
网站二维码的全解析与使用技巧分享
大数据·人工智能·学习·产品运营·软件工程
雾江流3 天前
Deer.God 0.1.3 | 一款XP模块,可解锁数十款应用会员,弹窗捕捉,附FPA教程
软件工程
charlie1145141913 天前
AVX 指令集系列深度介绍:领域、意义、以及 AVX AVX2 的基本用法与样例
开发语言·c++·人工智能·软件工程·并行计算·avx
charlie1145141913 天前
如何把 Win32 窗口“置顶”(Windows + C++)
开发语言·c++·windows·笔记·学习·软件工程
雾江流3 天前
肉包 1.4.0 | 豆包AI手机平替,开源免费,AI自动化
运维·人工智能·自动化·软件工程
2501_916589453 天前
永久免费的win系统垃圾清理软件 释放磁盘空间
电脑·软件工程·开源软件
数学小牛马4 天前
现代软件工程课程 个人博客第三次作业
软件工程