文章目录
第一章 软件与软件工程的概念
-
什么是软件?
软件=程序+数据+文档
-
软件的固有特性?
不可见性、复杂性、可变性、一致性
-
软件危机的定义?
-
软件危机的表现形式?
-
产生软件危机的原因?
开发方法不当、软件的固有特性
-
什么是软件工程?
软件工程是指导软件开发和维护的一门学科
-
软件工程的目标?
低成本、高效率、开发高质量的软件
-
什么是软件生存期?
软件定义:
开发:
维护:
- 软件定义阶段解决的问题?
- 软件工程的三要素?
方法、工具、过程
- 什么是方法?
传统方法:结构化的方法
面向对象的方法:面向对象的方法
- 什么是工具?
- 什么是过程?
- 传统方法的特点?
优缺点
要么面向行为要么面向?
-
面向对象的方法?
从面向对象的程序设计发展起来的 ; 出发点:尽量模拟人类的思维方
习题1.6、1.7、1.8、1.10、1.11
第二章 软件生存期模型
- 传统的模型?
螺旋模型、增量模型、喷泉模型、瀑布模型、快速原型模型
- 敏捷过程
第三章 软件需求获取和结构化分析方法
- 结构化分析?
SA、SD、SP
- 软件需求获取和结构化分析?
任务
-
结构化分析方法
- 什么是结构化分析方法?
- ER、数据流图、状态迁移图
- 什么是结构化分析方法?
-
数据流图的基本要素?基本图形符号?数据流图的画法?
-
先画顶层图,顶层图确定边界、输入输出流
-
系统的内部
-
加工的内部
大 题 不 考 数 据 流 图 \color{red}{大题不考数据流图} 大题不考数据流图
-
-
什么是ER图?基本元素?
- 椭圆表示属性、矩形表示实体、菱形表示关系
大 题 七 分 \color{red}{大题七分} 大题七分
第四章 结构化设计方法
-
软件设计的原则是什么?
- 模块化:复杂问题分解成简单问题。
- 模块化越多越好是错的。因为接口会变多
- 抽象。
- 独立性。
- 衡量的指标:耦合和内聚。
- 一般是高内聚低耦合。
- 七种耦合。一般用数据耦合,… , 杜绝内容耦合。高中低
- 模块化:复杂问题分解成简单问题。
-
体系结构设计主要是做什么?
1. 概要设计 2. 详细设计,就是过程设计
- 模块设计
- 接口设计
- 数据设计
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-olTwaW2A-1652341925991)(file:///D:\SAVE\qq\1551975669\Image\C2C\C426B2DE8202AAB0455B9702D7B54974.jpg)]
-
数据库的设计步骤?
- 概念结构设计
1. - 逻辑结构设计
- 得到什么?关系模型
- 物理结构设计
1.
- 概念结构设计
-
体系结构设计过程?(P78)
- 复查并精华数据流图
- 确定数据流图中的数据流的类型
- 导出软件
- ?
- ?
- ?
-
**模块作用域?什么是控制欲?**P
-
接口设计?
-
界面设计的原则?(P97)
- 一致性
- 操作步骤少
- 不要
- 提供Undo功能
- 减少人脑的记忆负担
- 提高学习效率
-
过程设计? 10 分 大 题 \color{red}{10分大题} 10分大题(P100)
- 程序流程图、NS图、PAD图
- 冒泡排序、选择排序、二分查找法
习 题 4.9 、 4.12 \color{red}{习题4.9、4.12} 习题4.9、4.12
第五章 面向对方法与UML
-
什么是面向对象?
- 对象+类+消息
-
什么是对象?
现实世界物理对象的抽象实体
-
什么是类?
-
具有相同属性和操作的集合
-
对象和对象之间是通过消息传递的
-
-
什么是封装?多态?(P118, 119)
-
统一建模语言包含几个部分?(P121)
-
**顺序图?**P136
- 强调在时间上的交互
-
协作图?
- 与顺序图是同构的
-
什么是状态图?
- 描述一个特定对象的所有可能的状态以及引起状态转换的事件
-
什么是活动图?(P137)
- 在用例模型中,
-
什么是构件图?用来做什么?
- 描述构件与构件之间的依赖关系
第六章 面向对象分析
-
面向对象分析主要用来做什么?
-
**面向对象分析建立三种模型?**P143
- 用例模型
- 对象模型
- 交互模型
-
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-aCkdRleC-1652341925997)(C:\Users\yxf\AppData\Roaming\Typora\typora-user-images\image-20220512150503282.png)]
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-OisCOICB-1652341925998)(C:\Users\yxf\AppData\Roaming\Typora\typora-user-images\image-20220512150715287.png)]
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-VIZTArMJ-1652341925999)(C:\Users\yxf\AppData\Roaming\Typora\typora-user-images\image-20220512150739810.png)]
1.识别与者 3 \color{red}{3} 3
2.识别用例 3 \color{red}{3} 3
3.画用例图 7 \color{red}{7} 7
-
类与对象模型?
-
怎么画?P155
-
识别类。把所有名词写出来,去掉有关的无关的
-
识别关联。动词定义属性行为,然后再进行主题的划
-
-
-
用例建模的主要步骤
第七章 体系结构
-
什么是体系结构?
- 模式风格和框架
- 设计模式
- 惯用法
- 了解有哪些风格,特定领域的体系结构
-
体系结构框架?
- MVC,
- J2E
第八章 面向对象设计
- 面向对象设计的主要任务?
- 面向对象设计的主要过程?
- 面向对象设计准则?
- 系统分解?
问题域部分、人机交互
- 任务管理
问 题 8.4 \color{red}{问题8.4} 问题8.4
第九章 软件实现
第十章 软件测试
- 什么是软件测试?
- **软件测试的目的是什么?**P234
- 软件测试的对象有哪些?
- 测试的方法?
- 人工测试
- 机器测试
- 白盒测试:把程序看成一个透明的盒子,一般也叫结构测试
- 黑盒测试:等价类划分、边界值分析
- 路径覆盖?
- 转化成程序流图
- **什么是等价类?**P248
- 什么是边界值分析?
- 单元测试的五个部分?
- 组装测试
- 调试和测试的区别?
- 测试是为了发现错误
- 调式是为了定位错误并改正错误
第十一章 软件维护
-
**什么是软件维护?**P271
-
什么是改正性维护?
-
什么是适应性维护?
-
什么完善性维护?
-
什么是维护性维护?
-
软件维护的活动P275
-
程序修改的步骤P270
-
修改程序的辅佐哟个有哪些P277
-
软件的维护性
习 题 1 , 3 , 4 \color{red}{习题1,3,4} 习题1,3,4
第十二章 软件
- 什么是CM
第十三章
- 4个p
- 项目估算
- 代码行和估算点
是为了定位错误并改正错误
- 代码行和估算点
第十一章 软件维护
-
**什么是软件维护?**P271
-
什么是改正性维护?
-
什么是适应性维护?
-
什么完善性维护?
-
什么是维护性维护?
-
软件维护的活动P275
-
程序修改的步骤P270
-
修改程序的辅佐哟个有哪些P277
-
软件的维护性
习 题 1 , 3 , 4 \color{red}{习题1,3,4} 习题1,3,4
第十二章 软件
- 什么是CM
第十三章
- 4个p
- 项目估算
- 代码行和估算点
- 甘特图