说在前面:
本复习专题使用教材为SoftwareEngineering-APractitioner’sApproach.8thEdition.RogerPressman原版,涉及第一、二两部分,即并不包括软件设计之后的内容。除此之外,第七章各种原则以及用户界面部分不考没整理,适合TJU软件专业的同学参考复习。
300页浓缩成48页,基本覆盖考试范围,博主已拿优。
选择题部分考查基础知识,像软件的定义这种分几点的,多选题。
解答题部分考查结合例子描述一些过程,比如Scrum,描述一些概念,比如Web App/Mobile App的几个输出模型。
综合题考查情景设计,画状态图、类图,设计构件等。
整体笔记可点击查看石墨文档SE笔记。
下面开始正式笔记。
定义软件??
- 指令的集合(计算机程序),通过执行这些指令可以满足预期的特性、功能和性能需求
- 数据结构,使得程序可以合理利用信息
- 软件描述信息,它以硬拷贝和虚拟形式存在,用来描述程序的操作和使用,例如文档。
软件退化(deteriorate)
硬件失效曲线图??
Idealized curve表明:未知的缺陷将在程序生命周期的前期造成高失效率。然而随着错误的纠正,曲线将如图中所示趋于平缓。“理想曲线”只是软件实际失效模型的粗略简化。曲线的含义很明显——软件不会磨损,但是软件退化的确存在。
Acrual curve表明:在完整的生命周期里,软件将会面临****变更,每次变更都可能引入新的错误,使得失效率像Actual curve那样陡然上升。在曲线回到最初的稳定失效率状态前,新的变更会引起曲线又一次上升。就这样,最小的失效率点沿类似于斜线的形状逐渐上升。
不断的变更是软件退化的根本原因
软件分类
- 系统软件
- 应用软件
- 工程/科学软件
- 嵌入式软件
- 产品线软件
- Web/移动App
- 人工智能软件
遗留软件
- 特点
- 生命周期长
- 业务关键性
- 质量差
- 演化原因
- 软件需要进行适应性调整,从而可以满足新的计算环境或者技术的需求。
- 软件必须升级以实现新的商业需求。
- 软件必须扩展以使之具有与更多新的系统和数据库的互操作能力。
- 软件架构必须进行改建以使之能适应不断演化的计算环境。
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!