第五章、系统开发基础(11分以上)

第五章、系统开发基础(11分以上)

考点

image-20240305150215076

1、软件开发模型

1、瀑布模型

1、目前无法现阶段开发的需求了

2、需求分析要钉死

3、如图

image-20240305150912250

2、V模型

1、特别重视测试,但也是把测试放到编码之后

2、如图

image-20240305151111842

3、验收测试,是用户进行测试

3、喷泉模型

1、是面向对象的开发模型【唯一一个】

2、没有明确的界限,重迭代,大部分是并行开发,有一定节约成本

3、如图

image-20240305151259207

4、原型化模型

1、通过与用户的沟通,产生原型。

2、因为绝大多数用户不懂技术

3、用UI工具把页面大体设计出来。

4、还演化出探索模型、演化模型

  • 大体意思见名知意

5、演化模型

1、是原型化模型演变而来的,从而继续开发

6、螺旋模型

1、原型化模型+瀑布模型演化而来。

2、吸取了瀑布模型,原型化模型的优点,还增加了风险分析

3、风险分析会增加成本

4、如图

image-20240305151933376

7、统一过程

1、PUP模型

2、以用例驱动,以架构为中心迭代和增量

3、 如图

image-20240305152136832

8、敏捷方法

1、如图

image-20240305152258025

2、XP(极限编程)

  • 对费用控制严格的公司中的使用

3、Cockburn水晶系列方法

  • 用最少纪律约束而仍能成功的方法

4、开放式源码

  • 程序开发人员在地域上分布很广

5、SCRUM(并列争球法)

  • 明确定义了的可重复的方法过程

6、Coad的功用驱动开发方法

  • 首席程序员
  • 类程序员

7、ASD方法

  • 核心:三个非线性、重叠的开发阶段:猜测、合作与学习。

2、软件开发方法

1、结构化方法

1、是面向数据流的开发方法

2、缺点:不适用开发大型、复杂的项目

3、自顶向下,逐步分解(求精)

2、原型法

3、面向对象方法

1、喷泉模型

2、更好的复用性

3、分析、设计、实现三个阶段,界限不明确

4、Jackon方法

1、是面向数据结构的方法

5、面向服务的方法1

1、SOA

3、需求分析

1、就是确定项目要做什么

2、判断表

  • 基本条件项
  • 条件项
  • 基本动作项
  • 动作项

3、判断树,也叫决策树

4、数据流图需要数据字典来提供

4、软件设计

1、怎么做这个系统

2、软件设计的任务

  • 概述计划
  • 详细计划

3、模块化设计的原则

  • 独立性
  • 也就是高内聚低耦合

4、应用的工具

  • IPO:输入处理输出图
  • PDL:程序描述语言,用来描述IPO图
  • PAD:问题分析图
  • 程序流程图
  • N/S盒图

5、如图

image-20240305154543046

6、内聚和耦合类型分别

image-20240305154901782

5、软件测试

1、内容

image-20240305161715058

2、等价类划分法

  • 一个集合抽一个,如果合格,这个集合就合格。否则就不合格
  • 确定无效与有效的等价类
  • 设计用例尽可能多的覆盖有效类
  • 设计用例值覆盖一个无效类

3、边界值分析法

  • 处理便捷情况最容易出错
  • 选取的测试数据应该恰好等于、稍小于或大于边界值

4、例子

image-20240305162438233

5、V模型

  • 单元测试:局部数据结构
  • 集成测试:模块间的接口和通信
  • 系统测试:系统的硬件和模拟真实环境
  • 验收测试:用户为主导的测试的β测试
  • 如图
  • image-20240305162815017

6、回归测试

  • 发现bug,解决bug后,测试人员就用之前的用例重新测试

7、负载测试

  • 属于性能测试
  • 看系统在一定要求下能承受的最大负荷量
  • 例如并发人数xxx人的条件下的负载

8、压力测试

  • 高负载下的负载测试,或者说压力测试采用负载测试技术

9、McCabe复杂度

1、就是环路复杂度

2、公式:m-n+2

  • m:是节点

  • m:是边数

3、说明至少需要x个测试用例才能进行

4、补充说明【做题技巧】

  • 应对单一路径:就是边-结点+2;
  • 是个复杂的图:就找图中的封闭区间(不考虑重叠)+1

5、例子

image-20240305164514552

6、软件维护

1、课维护性因素决定

1、可理解性

2、可测试性

3、可修改性

2、软件维护类型

1、改正性维护

  • 就是系统之前存在的bug

2、适应性维护

  • 适应市场环境

3、预防性维护

  • 关键字:将来、装备工作

4、完善性维护

  • 扩充功能
  • 改善性而进行修改

7、软件工程

1、国家标准—软件文档管理指南—按阅读对象分类

2、开发文档

image-20240305170201268

3、产品文档

1、和用户有关

image-20240305170158677

4、管理文档

image-20240305170154430

5、软件质量保证

image-20240305170315502

6、软件过程改进—CMMI

1、软件成熟度模型

2、衡量企业水平资质

3、如图

image-20240305170553077

4、初始级

  • 混乱

5、可管理级

  • 纪律

6、定义级别

  • 标准一致
  • 文档化

7、定量管理级

  • 软件的指令和过程都能定量

8、优化管理级

  • 不断优化改进

8、项目管理

1、十大知识领域

1、第10个就是项目干系人管理

2、横道图
image-20240305170923430

  • 这里的粗线条是需求
  • 细线条是完成

3、关键路径法

image-20240305171141921

1、求关键路径,就是求最长的工期路径的长度。

9、前导图法(单代号网络图,PDM)

1、如图

image-20240305171444421

2、这里有这么多条路

  • ABDFH
  • ABDGH
  • ACDFH
  • ACDGH
  • ACDGH(关键路径)

3、关键路径就是没有时差,没有偷懒时间

4、总时差

  • 方法1:最迟完成时间-最迟开始时间
  • 方法2:最早完成时间-最早开始时间

10、活动排序—箭头图法(双代号网络图,ADM)

1、虚箭头:就是虚工作,不占时间,不占资源

2、如图

image-20240305171910228

11、项目管理

1、风险曝光度

2、 如图

image-20240305172217380

暂无评论

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇
下一篇