软件工程导论第2章可行性研究
- 格式:ppt
- 大小:1.40 MB
- 文档页数:83


《软件工程导论》课后习题答案
第一章 软件工程概论
1.什么是软件危机?
软件危机是指在计算机软件的开发和维护过程中所遇到的一系列严重问题。这些问题表现在以下几个方面:
(1)用户对开发出的软件很难满意。
(2)软件产品的质量往往靠不住。
(3)一般软件很难维护。
(4)软件生产效率很低。
(5)软件开发成本越来越大。
(6)软件成本与开发进度难以估计。
(7)软件技术的发展远远满足不了计算机应用的普及与深入的需要。
2.为什么会产生软件危机?
(1) 开发人员方面,对软件产品缺乏正确认识,没有真正理解软件产品是一个完整的配置组成。造成开发中制定计划盲目、编程草率,不考虑维护工作的必要性。
(2) 软件本身方面,对于计算机系统来说,软件是逻辑部件,软件开发过程没有统一的、公认的方法论和规范指导,造成软件维护困难。
(3) 尤其是随着软件规模越来越大,复杂程度越来越高,原有软件开发方式效率不高、质量不能保证、成本过高、研制周期不易估计、维护困难等一系列问题更为突出,技术的发展已经远远不能适应社会需求。
3.怎样克服软件危机?
(1) 充分吸收和借鉴人类长期以来从事各种工程项目中积累的行之有效的有效原理、概念、技术与方法,特别是吸取几十年来人类从事计算机硬件研究和开发的经验教训。在开发软件的过程中努力作到良好的组织,严格的管理,相互友好的协作。
(2) 推广在实践中总结出来的开发软件的成功的技术和方法,并研究更好、更有效的技术和方法,尽快克服在计算机系统早期发展阶段形成的一些错误概念和作法。
(3) 根据不同的应用领域,开发更好的软件工具并使用这些工具。将软件开发各个阶段使用的软件工具集合成一个整体,形成一个很好的软件开发支环环境。 总之为了解决软件危机,既要有技术措施(方法和工具),又要有必要的组织管理措施。
4.构成软件项目的最终产品:
第一章
1.软件危机的概念:
软件危机是指在计算机软件的开发和维护过程中所遇到的一系列严重的问题。
2.产生软件危机的原因:
(1) 开发人员方面,对软件产品缺乏正确认识,没有真正理解软件产品是一个完整的配置组成。造成开发中制定计划盲目、编程草率,不考虑维护工作的必要性。
(2) 软件本身方面,对于计算机系统来说,软件是逻辑部件,软件开发过程没有统一的、公认的方法论和规范指导,造成软件维护困难。
(3) 尤其是随着软件规模越来越大,复杂程度越来越高,原有软件开发方式效率不高、质量不能保证、成本过高、研制周期不易估计、维护困难等一系列问题更为突出,技术的发展已经远远不能适应社会需求。
3.软件配置的主要包括程序、文文件和数据等成分。配置管理工具:commit,分支,合并。
4.软件工程的定义:软件工程是应用计算机科学、数学及管理科学等原理开发软件的工程。它借鉴传统工程的原则、方法,以提高质量,降低成本为目的。 (ppt上定义)、、、、、
//6.通常把在软件生命周期全过程中使用的一整套技术方法的集合称为方法学,也称为范型
//7.软件工程方法学包含三个要素:方法、工具和过程。
//8.目前使用得最广泛的软件工程方法学,分别是传统方法学和面向对象方法学
//9.传统方法学也称为生命周期方法学或结构化范型
//10.面向对象方法学的四个要点:
//1.把对象作为融合了数据及在数据上的操作行为的统一的软件构件
//2.把所有对象都划分成类
//3.按照父类(或称为基类)与子类(或称为派生类)的关系,把若干个相关类组成一个层次结构的系统(也称为类等级)。
//4.对象彼此间仅能通过发送消息互相联系。
11.软件生命周期:软件定义(问题定义,可行性研究,需求分析)、软件开发(总体设计,详细设计,编码,单元测试,总体测试)、运行维护(持久地满足用户的需要)
12.最基本的测试是集成测试和验收测试。
软件⼯程导论复习
第1章软件⼯程概述1.软件危机定义:111软件危机是指在计算机软件的开发和维护过程中所遇到的⼀系列严重问题产⽣原因:软件本⾝特点、软件开发与维护的⽅法不正确2.什么是软件⼯程?111
软件⼯程是:软件⼯程是指导计算机软件开发和维护的⼀门⼯程学科。采⽤⼯程的概念、原理、技术和⽅法来开发与维护软件,把经过时间考验⽽证明正确的管理技术和当前能够得到的最好的技术⽅法结合起来,以经济地、⾼效的开发出⾼质量的软件并有效地维护它,这就是软件⼯程。3.软件⼯程基本原理111:1)⽤分阶段的⽣存周期严格管理。(2)坚持进⾏阶段评审。(3)实⾏严格的产品控制。(4)采⽤现代程序设计技术。(5)结果应能清楚地审查。(6)开发⼩组⼈员应该少⽽精。(7)承认不断改进软件⼯程实践的必要性2、软件⼯程的主要⽬标是什么?基本⽬标是什么?
软件⼯程的⽬标:从管理和技术两个⽅⾯开发和维护计算机软件,⽤低成本,开发出达标、⾼性能、易于移植、可靠性⾼的软件。软件⼯程的基本⽬标是:优质、⾼产。3. 软件⼯程⽅法学111通常把在软件⽣命周期全过程中使⽤的⼀整套技术⽅法的集合称为⽅法学 也称为“范性”。在软件⼯程领域中 这两个术语的含义基本相同。软件⼯程⽅法学包括3个要素 ⽅法、⼯具和过程。⽅法 完成软件开发的各项任务的技术⽅法⼯具 运⽤⽅法提供的⾃动的或半⾃动的软件⼯程⽀撑环境过程 为了获得⾼质量的软件所要完成的⼀系列任务框架 规定
了完成各项任务的⼯作步骤⽬前使⽤得最⼴泛的软件⼯程⽅法学分别是传统⽅法学和⾯向对象⽅法学1 传统⽅法学传统⽅法学⼜称⽣命周期⽅法学或结构化范型。软件⼯程采⽤的⽣命周期⽅法学就是从时间⾓度对软件开发和维护的复杂问题进⾏分解把软件⽣命的很长周期依次划分为若⼲个阶段每个阶段有相对独⽴的任务然后逐步完成每个阶段的任务。对于任何两个相邻的阶段⽽⾔前⼀阶段的结束标准就是后⼀阶段的开始标准。在每⼀个阶段结束之前都必须进⾏正式严格的技术审查和管理复审从技术和管理两⽅⾯对这个阶段的开发成果进⾏检查通过之后这个阶段才算结束如果检查迈不过则必须进⾏必要的返⼯并且返⼯后还要再经过审查。审查的⼀条主要标准就是每个阶段部应该交出“最新式的”(即和所开发的软件完全⼀致的)⾼质量的⽂档资料从⽽保证在软件开发⼯程结束时有⼀个完整准确的软件配置交付使⽤。2 ⾯向对象⽅法学是⼀种以数据为主线 把数据和对数据的操作紧密地结合起来的⽅法。⾯向对象⽅法学具有下述四个要点1把
第1章 软件工程概述
1、什么是软件工程?为什么会出现软件工程?
软件工程是:① 把系统的、规范的、可度量的途径应用于软件开发、运行和维护过程,也就是把工程应用于软件;② 研究①中提到的途径。
软件工作者在20世纪60年代后期开始认真研究消除软件危机的途径,从而逐渐形成了一门新兴的工程学科——计算机软件工程学(通常简称为软件工程)。
2、软件工程的主要目标是什么?基本目标是什么?
软件工程的目标:从管理和技术两个方面开发和维护计算机软件,用低成本,开发出达标、高性能、易于移植、可靠性高的软件。
软件工程的基本目标是:优质、高产。
3、什么是软件工程方法学?软件工程的3要素(软件工程方法学的3要素)是什么?分别包含什么内容?
软件工程方法学:软件生命周期全过程中使用的一整套技术方法的集合
软件工程方法学包含3个要素:方法、工具和过程。
方法是完成软件开发的各项任务的技术方法,回答“怎样做”的问题;
工具是为运用方法而提供的自动的或半自动的软件工程支撑环境;
过程是为了获得高质量的软件所需要完成的一系列任务的框架,它规定了完成各项任务的工作步骤。
目前使用得最广泛的软件工程方法学,分别是传统方法学和面向对象方法学。
4、什么是软件过程?什么是软件周期?常见软件生命周期模型(课件中的前5类)的特点有哪些?
软件过程:它是为了获得高质量软件所需要完成的一系列任务的框架,它规定了完成各项任务的工作步骤。
软件生命周期:由软件定义、软件开发和运行维护(也称之为软件维护)3个时期组成
①瀑布模型
定义:传统软件工程方法学的软件过程,基本上可以用瀑布模型来描述。
瀑布模型的特点:1.阶段间具有顺序性和依赖性;2.推迟实现的观点;3.质量保证的观点。瀑布模型的成功在很大程序上是由于它基本上是一种文档驱动的模型。
瀑布模型的主要优点:a.可强迫开发人员采用规范的技术方法 ;
b.严格地规定了每个阶段必须提交的文档 ;