软件工程导论(第五版) 第五章PPT课件
- 格式:ppt
- 大小:1.28 MB
- 文档页数:58


Ainy晴
Ainy晴
《软件工程导论》第五版 张海藩 编著 总结
分类: Computer System2011-01-04 10:14 6417人阅读 评论(10) 收藏 举报
测试数据结构工具任务文档软件测试
总结重点:
Unit1
软件危机包含两方面の问题:一是如何开发软件,怎样满足人们对软件日益增长の需求?二是如何维护软件,使它们持久地满足人们の要求。
软件工程学定义:把软件当作一种工业产品,采用工程学の原理来管理和组织软件の开发和维护,称为软件工程。
软件是指程序、数据和文档三者共同构成の配置。
包含与数据处理系统操作有关の程序、规程、规则以及相关文档の智力创作称为软件。文档是描述程序开发过程の,是智力创作の真实记录,是创作活动の历史档案和结晶。
软件の描述性定义:软件由计算机程序,数据结构和文档组成。
软件质量定义为“与软件产品满足规定の和隐含の需求能力有关の特征和特性の全体”
具体来说: 1)软件产品中能满足给定需求の性质和特性の总体;
2)软件具有所期望の各种属性の组合程度。
将软件质量属性划分为六个特性(功能性、可靠性、易用性、效率、维护性和可移植性),这六个属性是面向用户の观点——面向管理の观点,且是定性描述の。
软件质量度量体系:内部度量可用于开发阶段の非执行软件产品,外部度量只能在生存周期过程中の测试阶段和任何运行阶段使用。
软件工程项目の基本目标:(1)低成本;(2)满足功能要求;(3)高性能;(4)易移植;(5)易维护。
软件工程方法学就是要从技术和管理上提供如何去设计和维护软件。
软件开发方法:面向数据流(约旦)方法、面向数据结构方法、面向对象方法。
结构程序设计是进行以模块功能和处理过程设计为主の详细设计の基本原则。它の主要观点是采用自顶向下、逐步求精の程序设计方法;使用三种基本控制结构构造程序,任何程序都可由顺序、选择、循环三种基本控制结构构造。
得 分 评卷人
一、填空题(每空1分,共20分)
1. 软件生存周期一般可分为__问题定义__、可行性研究、_需求分析_____、设计编码、__测试________、运行与维护阶段。
2. 按软件的功能进行划分,软件可以划分为 系统软件 、 支撑软件
和应用软件。
3. 可行性研究主要集中在以下四个方面 经济可行性
、 技术可行性 、法律可行性 和抉择。
4. 用户界面的 可使用性 是用户界面设计最重要的也是最基本的目标。
5. 常见的软件概要设计方法有3大类:以数据流图为基础构造模块结构的___结构化设计方法_________,以数据结构为基础构造模块的__jackson方法__________,以对象、类、继承和通信为基础的__面向对象设计方法__________。
6. __数据流图________和__数据字典___共同构成系统的逻辑模型。
7. 软件测试的方法有__分析方法________和___非分析方法_______(即黑盒法)。
8. 单元测试一般以___白盒_____________测试为主,___黑盒______测试为辅。
9. 成本估计方法主要有__自底向上估计________、_自顶向下估计_________和算法模型估计三种类型。
得 分 评卷人
二、单项选择题(每小题2分,共10分)
1. 下列哪个阶段不属于软件生存周期的三大阶段( C )。
A、计划阶段 B、开发阶段
C、编码阶段 D、维护阶段
2. 需求分析是( A )。
A、 软件开发工作的基础 B、 软件生存周期的开始
C、 由系统分析员单独完成的 D、 由用户自己单独完成的
《软件工程导论》课后习题答案
第一章 软件工程概论
1-1
1.什么是软件危机?
软件危机是指在计算机软件的开发和维护过程中所遇到的一系列严重问题。这些问题表现在以下几个方面:
(1)用户对开发出的软件很难满意。
(2)软件产品的质量往往靠不住。
(3)一般软件很难维护。
(4)软件生产效率很低。
(5)软件开发成本越来越大。
(6)软件成本与开发进度难以估计。
(7)软件技术的发展远远满足不了计算机应用的普及与深入的需要。
2.软件危机有那些典型表现?
(1) 对软件开发成本和进度的估计常常很不准确。
(2) 用户对“已完成的”软件系统不满意的现象经常发生。
(3) 软件产品的质量往往靠不住。
(4) 软件常常是不可维护的。
(5) 软件通常没有适当的文档资料。
(6) 软件成本在计算机系统总成本中所占的比例逐年上升。
(7) 软件开发生产率提高的速度,远远跟不上计算机应用迅速普及深入的趋势。
3.为什么会产生软件危机?
(1) 开发人员方面,对软件产品缺乏正确认识,没有真正理解软件产品是一个完整的配置组成。造成开发中制定计划盲目、编程草率,不考虑维护工作的必要性。
(2) 软件本身方面,对于计算机系统来说,软件是逻辑部件,软件开发过程没有统一的、公认的方法论和规范指导,造成软件维护困难。
(3) 尤其是随着软件规模越来越大,复杂程度越来越高,原有软件开发方式效率不高、质量不能保证、成本过高、研制周期不易估计、维护困难等一系列问题更为突出,技术的发展已经远远不能适应社会需求。
4.怎样克服软件危机?
(1) 充分吸收和借鉴人类长期以来从事各种工程项目中积累的行之有效的有效原理、概念、技术与方法,特别是吸取几十年来人类从事计算机硬件研究和开发的经验教训。在开发软件的过程中努力作到良好的组织,严格的管理,相互友好的协作。
(2) 推广在实践中总结出来的开发软件的成功的技术和方法,并研究更好、更有效的技术和方法,尽快克服在计算机系统早期发展阶段形成的一些错误概念和作法。
《软件工程导论》第五版总结
Unit1
软件危机包含两方面的问题:一是如何开发软件,怎样满足人们对软件日益增长的需求?二是如何维护软件,使它们持久地满足人们的要求。
软件工程学定义:把软件当作一种工业产品,采用工程学的原理来管理和组织软件的开发和维护,称为软件工程。
软件是指程序、数据和文档三者共同构成的配置。
包含与数据处理系统操作有关的程序、规程、规则以及相关文档的智力创作称为软件。文档是描述程序开发过程的,是智力创作的真实记录,是创作活动的历史档案和结晶。
软件的描述性定义:软件由计算机程序,数据结构和文档组成。
软件质量定义为“与软件产品满足规定的和隐含的需求能力有关的特征和特性的全体”
具体来说: 1)软件产品中能满足给定需求的性质和特性的总体;
2)软件具有所期望的各种属性的组合程度。
将软件质量属性划分为六个特性(功能性、可靠性、易用性、效率、维护性和可移植性),这六个属性是面向用户的观点——面向管理的观点,且是定性描述的。 软件质量度量体系:内部度量可用于开发阶段的非执行软件产品,外部度量只能在生存周期过程中的测试阶段和任何运行阶段使用。
软件工程项目的基本目标:(1)低成本;(2)满足功能要求;(3)高性能;(4)易移植;(5)易维护。
软件工程方法学就是要从技术和管理上提供如何去设计和维护软件。
软件开发方法:面向数据流(约旦)方法、面向数据结构方法、面向对象方法。
结构程序设计是进行以模块功能和处理过程设计为主的详细设计的基本原则。它的主要观点是采用自顶向下、逐步求精的程序设计方法;使用三种基本控制结构构造程序,任何程序都可由顺序、选择、循环三种基本控制结构构造。
用来辅助软件开发、运行、维护、管理、支持等过程中活动的软件称为软件工具(CASE)。
软件生存周期定义:软件产品从形成概念开始,经过开发、使用和维护,直到最后不再使用的整个过程。各阶段的任务彼此间尽可能的相对独立,同一阶段内各项任务的性质尽可能的相同。软件的开发就是“按软件顺时间发展的过程分阶段进行”的。