软件工程问答题答案

相关主题
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

1、简述软件工程的7条基本原理

1)用分阶段的生命周期计划严格管理;2)坚持进行阶段评审;3)实行严格的产品控制;4)采用现代程度设计技术;5)结果应能清楚地审查;6)开发小组的人员应该少而精;7)承认不断改进软件实践的必要性

2、软件工程的研究内容和软件工程的目标

软件工程研究的主要内容有以下两个方面:

1)软件开发技术。软件开发方法学:基于瀑布模型的结构化生命周期方法,基于动态需求的快速原型法,基于结构的面向对象的软件开发方法;软

件工具:用来开发软件的软件;软件工程环境:支持软件开发的环境,

软件工具及其相互间关系的总和。

2)软件工程管理。软件管理:人力管理,进度安排,质量保证,资源管理;

软件工程经济学:以经济学的观点研究开发过程中的经济效益,即进行

成本估算,效益分析的方法和技术。

3、什么是软件的生存周期各阶段的任务是什么

软件生存周期又称软件生命周期,是指一个软件系统从目标提出到最后丢弃的整个过程。大致分为如下四个阶段:

1)软件分析时期,包含问题定义,可行性研究和需求分析三个部分。问题定义阶段必须要回答的关键问题是“要解决的问题是什么”;可行性研

究阶段的任务是研究问题的范围,探索这个问题是否值得去解决,是否

有可行的解决方法;需求分析阶段的任务是确定目标系统必须具备哪些

功能。

2)软件设计时期,包含概要设计和详细设计。概要设计阶段必须要解决的问题是“应该如何解决这个问题”;详细设计阶段的任务是把解法具体

化,设计出程序的详细规格说明,包括必要的细节,程序员可以根据它

们写出实际的程序代码。

3)编码和单元测试时期。编码和单元测试:这个阶段的任务是程序员根据目标系统的性质和实际环境,选取一种适当的高级程序设计语言(必要

时包括汇编语言),把详细设计的结果翻译成用选定的语言书写的程序,并且仔细测试编写出的每一个模块;综合测试:此阶段的任务是通过各

种类型的测试使软件达到预定的要求。

4)运行和维护时期。维护阶段的任务是通过各种必要的维护活动使系统持久地满足用户的需要。

4、什么是瀑布模型它有哪些优缺点

瀑布模型(Waterfall Model),它将软件生存期划分为计划、开发和运行三个时期,每个时期又划分为若干阶段。

瀑布模型的优点:

1)可强迫开发人员采用规范的方法

2)严格地规定每个阶段必须提交的文档

3)要求每个阶段的所有产品都必须经过质量保证小组的仔细检查

瀑布模型的缺点:

1)各个阶段的划分完全固定,阶段之间产生大量的文档,增加工作量

2)由于开发模型是线性的,用户只有等到整个过程的末期才能见到开发陈果,从而增加了开发的风险

3)早期的错误可能要等到开发后期的测试阶段才能发现,进而造成严重的后果

5、什么是软件的生存周期模型常用的模型有哪些

软件生存周期模型是从软件项目需求定义直至软件经使用后废弃为止,跨越整个生存周期的系统开发,运行维护所实施的全部过程,活动和任务的结构框架。常用的模型有:瀑布模型,原型模型,增量模型,螺旋模型,喷泉模型,变换模型和基于知识的模型。

6、什么是螺旋模型简述按照螺旋模型进行软件开发的步骤

螺旋模型是一种风险驱动的模型。这种模型的每一个周期都包括需求定义、风险分析、工程实现和评审4个阶段,由这4个阶段进行迭代。软件开发过程每迭代一次,软件开发又前进一个层次。

螺旋模型进行软件开发的步骤:

(1)制定计划:确定软件目标,选定实施方案,弄清项目开发的限制条件;

(2)风险分析:分析评估所选方案,考虑如何识别和消除风险;

(3)实施工程:实施软件开发和验证;

(4)客户评估:评价开发工作,提出修正建议,制定下一步计划。

7、可行性研究的任务有哪些可行性研究包括那些步骤

可行性研究的任务:通过对被开发系统的可行性研究,能够实现用最小的代价在尽可能短的时间内确定问题是否可以解决。也就是说,可行性研究的目的不是解决问题,而是确定问题是否能获得解决,研究在当前的具体条件下,开发新系统是否具备必要的资源和其他条件。可行性研究是进行一次压缩简化了的系统分析和设计的过程,也就是在较高的层次上以较抽象的方式进行设计的过程。

可行性研究的步骤:

1)确定系统的规模和目标;2)分析现有系统;3)建立新系统的高层次逻辑模型;4)设计和评价新系统的实现方案;5)制定行动方案;6)书写

计划任务书;7)提交审查。

8、简述软件模块设计的一般准则

1)降低模块的耦合性,提高模块的内聚性;2)保持适中的模块规模;3)模块应具有高扇入和适当的扇出;4)软件结构中的深度和宽度不宜过大;5)尽量降低模块的接口复杂度;6)设计单入口单出口的模块。

9、软件设计中变换分析设计的一般步骤

1)确定输入,输出,变换的加工集合;2)确定顶层模块和第一层模块(建立映射);3)执行二级分解;4)设计的优化:输入部分的求精,输出部分的求精,变换部分的求精

10、软件结构优化的一般准则

1)模块独立性准则;2)改造程序结构使任一模块的作用域在其控制域之内;3)软件结构的形态特征准则;4)改造程序结构,降低界面的复杂性和冗余程度,提高协调性;5)模块功能应可预言,避免对模块施加过多限制;6)改造程序结构,追求单入口单出口的模块;7)为满足设计或可移植性的要求,把某些软件用包的形式封装起来。

11、简述面向对象设计的五个层次和四个设计部分

OOA模型可以划分为五个层次:类及对象层次、属性层、服务层、结构层、主题层,分别对应着五个活动:设立类和对象、定义属性、定义服务、确立结构、

相关文档
最新文档