软件工程问答对应初版Word文档下载推荐.docx

上传人:b****6 文档编号:17626763 上传时间:2022-12-07 格式:DOCX 页数:12 大小:25.68KB
下载 相关 举报
软件工程问答对应初版Word文档下载推荐.docx_第1页
第1页 / 共12页
软件工程问答对应初版Word文档下载推荐.docx_第2页
第2页 / 共12页
软件工程问答对应初版Word文档下载推荐.docx_第3页
第3页 / 共12页
软件工程问答对应初版Word文档下载推荐.docx_第4页
第4页 / 共12页
软件工程问答对应初版Word文档下载推荐.docx_第5页
第5页 / 共12页
点击查看更多>>
下载资源
资源描述

软件工程问答对应初版Word文档下载推荐.docx

《软件工程问答对应初版Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《软件工程问答对应初版Word文档下载推荐.docx(12页珍藏版)》请在冰豆网上搜索。

软件工程问答对应初版Word文档下载推荐.docx

3)过程:

定义了方法使用的顺序、要交付的文档资料、为保证质量和适应变化所需要的管理、软件开发各个阶段完成的里程碑。

6.软件工程的基本目标是什么?

1)付出较低的开发成本2)达到要求的软件功能3)取得较好的软件性能4)开发的软件易于移植5)需要较低的维护费用6)能按时完成开发工作,及时交付使用

7.软件工程的基本原则是什么?

1)抽象2)信息隐蔽3)模块化4)局部化5)确定性6)一致性7)完备性8)可验证性

 

8.软件工程的基本原理是什么?

1)用分阶段的生命周期严格管理;

2)坚持进行阶段评审;

3)实行严格的产品控制;

4)采用现代程序设计技术;

5)结果应能清楚地审查;

6)开发小组人员应少而精;

7)承认不断改进软件工程实践的必要性。

9.瀑布模型有什么特点?

1.里程碑或基线驱动,或者说文档驱动;

2.过程逆转性很差,或者说不可逆转。

10.说明生命周期的划分?

一个软件从定义、开发、使用和维护,直到最终被废弃,所经历的生存过程称为软件生存期或叫生命期。

生命期的划分:

定义阶段:

制定计划需求分析和定义

开发阶段:

软件设计程序编写软件测试

维护阶段:

运行/维护

11.列出软件生存期的几个主要模型?

1)瀑布模型2)原型模型3)螺旋模型4)增量模型5)构件组装模型

6)统一过程模型7)第四代技术

12.论述瀑布模型软件开发方法的基本过程?

13.增量模型有什么特点?

任务或功能模块驱动,可以分阶段提交产品;

有多个任务单,这些多个任务单的集合,构成项目的一个总任务书(总用户需求报告)。

14.几种主要的软件开发方法?

面向过程的方法面向数据的方法面向对象的方法

15.软件工程中的“五个面向”?

1)面向流程分析、

2)面向数据设计

3)面向对象实现

4)面向功能测试

5)面向过程管理

软件策划

1.可行性分析的目的?

用最小的代价在尽可能短的时间内确定问题是否能够解决。

2.可行性分析最为敏感的方面是什么?

1)经济可行性这个系统的经济效益能超过它的开发成本吗?

2)技术可行性现有技术能否实现该系统?

技术冒险的各种因素?

例如有关的技术是否已进步到足以支持该系统?

技术人员的熟练程度?

硬、软件资源是否按期得到?

3)操作可行性系统的操作方式在这个用户组织内行得通吗?

4)法律可行性开发的软件项目是否侵犯他人的利益,是否违反法律,并由此承担法律责任。

3.可行性研究的步骤有哪些?

1)复查系统规模和目标(系统调研)

2)研究目前正在使用的系统(系统分析)

3)导出新系统的高层逻辑模型(系统分析)

4)重新定义问题(模型评审)

5)导出和评价可供选择的解决方案

6)推荐一个方案并说明理由

7)推荐行动方针

8)书写文档提交审查

4.软件计划的步骤有哪些?

1)估计软件的规模及所需的资源

2)制定时间表

3)鉴别和评估风险

4)约定与限制条件

5.软件计划书的内容有哪些?

1)软件范围2)环境资源3)进度安排4)成本/效益分析

6.甘特图有哪些优点和缺点?

优点:

它具有简单、醒目和便于编制等特点。

能够动态反映软件项目开发进展的情况。

缺点:

难以反映多个任务之间存在的复杂的逻辑关系。

7.什么是网络计划法的关键事件与关键路径?

关键事件:

最早完成时间与最迟完成时间相等的事件。

关键路径:

关键事件联结的各个活动所组成的路线。

8.常用的成本估算方法有哪些?

(1)基于代码行的成本估算方法

(2)任务分解成本估算

(3)经验统计估算模型:

①参数方程

②动态多变量参数模型

③COCOMO模型(constructiveCostModel)

④自动估算工具

9.软件成本估算包括哪些内容?

⑴工作产品规模估计⑵工作量及成本估计⑶关键资源的量化估计

10.项目活动和项目约定计划指的是什么?

活动指开发活动和管理活动;

约定指各种规范、标准、规则;

1)规范是对过程和行为的约束;

2)标准是对产品的约束;

3)规则或规程是对操作的约束。

需求分析

1.需求获取为什么难?

1)用户需求具有动态性(不稳定性)。

2)用户需求具有模糊性(不准确性)。

3)对需求达成一致的艰难性。

4)管理体制、机构设置处在变革中。

5)软件书籍没有将需求分析讲清楚。

6)分析方法和分析工具问题。

2.需求分析的重点

业务模型、.功能模型、性能模型、接口模型

3.需求分析的9项任务

1)画出目标系统的组织机构模型。

2)画出目标系统业务操作流程图。

3)画出目标系统的数据流图。

4)列出目标系统的功能点列表,即功能模型。

5)列出系统的性能点列表,即性能模型。

6)列出目标系统的接口列表,即接口模型。

7)确定目标系统的运行环境,即环境模型。

8)目标系统的界面约定,即界面模型。

9)分析与评估开发工期、费用、进度、风险等。

4.需求分析的过程

1.问题识别、2.分析与综合、3.编制需求文档、4.需求分析评审。

5.获取需求的常用方法

1)访谈:

正式的和非正式的访谈

2)问卷调查:

问卷调查即把需要调查的内容制成表格交给用户填写。

该方法对需要调查大量人员的意见时,十分有效。

3)情景分析:

情景分析就是对目标系统解决某个具体问题的方法和结果,给出可能的情景描述,以获知用户的具体需求。

4)实地考察/收集资料:

开调查会参加业务实践

5)构造原型

6.需求分析的原则

1)解决逻辑问题:

需求分析是对问题的识别和说明,要回答“做什么”,而不是“怎么做”。

(2)以运行环境为基础:

需求分析工作应以具体的运行环境为基础,实事求是。

(3)用户参与的原则:

需求分析工作是系统分析人员同用户不断交互的过程。

(4)构造高质量的需求规格说明:

需求规格说明是需求分析工作重要的完成标志。

7.需求分析的基本要求

1)理解问题的数据域和功能域

2)自顶向下、逐层分解

3)给出系统的逻辑视图和物理视图

8.常见的需求分析方法有哪些?

1)面向数据流的分析方法

2)面向功能的分析方法

3)面向数据的Jackson方法

4)面向对象的分析方法

软件设计

1.软件设计的具体任务包括哪些内容?

1)制定规范2)结构设计3)处理方式结构设计4)数据结构及数据库设计

5)可靠性设计(质量设计)6)编写软件设计文档7)设计审查和复审8)详细设计

2.什么是数据的保护性设计?

1)防卫性设计:

在软件设计中就插入自动检错,报错和纠错的功能

2)一致性设计:

在并发处理过程中使用封锁和解除封锁机制保持数据不被破坏

3)冗余性设计

3.软件设计的目标是什么?

软件设计的最终目标是要取得最佳方案。

即:

节省开发费用、降低资源消耗、缩短开发时间、能够赢得较高的生产效率、较高的可靠性和可维护性的方案。

并且使开发软件满足以下特点:

(1)功能、性能都符合指定的要求;

(2)软件是可维护的,可方便地进行修改;

(3)除了代码,还有一套配置齐全的文档。

4.模块具有哪些基本属性?

“模块”,又称“组件”。

一般有四个基本属性l

1)功能:

描述该模块做什么?

2)逻辑:

描述模块内部怎么做?

3)状态:

模块使用时的环境和条件。

4)接口:

指模块的输入与输出。

5.什么是耦合?

什么是内聚?

如何增强模块的独立性?

1)耦合:

各模块之间的互相连接的紧密程度。

模块之间的连接越紧密,联系越多,耦合性就越高,而其独立性就越弱。

2)内聚:

模块内各功能元素彼此结合的紧密程度。

一个模块内部各个元素之间的联系越紧密,则它的内聚性就越高,相对地,它与其它模块之间的耦合性就会减低,而模块独立性就越强。

3)增强模块独立性的方法是:

高内聚、低耦合

6.模块化的特征有哪些?

1)抽象:

用层次的方式构造和分析复杂系统。

2)逐步求精:

帮助开发人员把精力集中在与当前开发阶段最相关的那些问题上。

3)信息隐蔽:

如果一个模块内包含的信息(过程和数据)不允许外部的模块访问的话,其它模块不能对其访问。

4)局部化:

把一些关系密切的软件元素物理地放得彼此靠近。

7.影响耦合度的因素有哪些?

1)连接方式的类型。

2)接口的复杂性。

3)传送的信息流的类型。

4)耦合的时间。

8.降低耦合度的方法有哪些?

1)对于需要了解的内容,若是隐含的,应改为明显的,以便更容易理解;

2)连接的方式尽量标准化,不要直接引用;

3)减少公共区,将公共区划分为若干个逻辑子区;

4)输入输出应局限在少量模块,不要分散在全系统;

5)延迟耦合时间。

9.软件结构设计优化的准则是什么?

1)划分模块时,尽量做到高内聚、低耦合,保持模块相对独立性。

模块划分的准则:

“将相关的各部分放在一起,无关的东西不要放在一起。

2)模块的大小要适中。

3)模块的接口要简单、清晰、含义明确,便于理解,易于实现、易于测试和维护。

4)一个模块的作用范围应在其控制范围之内,且判定所在的模块,应与受其影响的模块在层次上尽量靠近。

5)软件结构的深度、宽度、扇入、扇出应适当。

6)力求设计单入口和单出口的模块,避免“病态连接”,以防止内容耦合。

7)设计功能可预测模块的划分,应防止功能过分局限。

10.结构化设计的优点是什么?

(问题PPT上无此问,自己选择)

1)减少设计复杂性。

将大化小,使复杂问题简单化。

2)结构独立。

将程序划分成多个相对独立的模块。

3)模块功能单一化,可使软件设计获得最大的益处。

4)易于进行软件修改。

5)易于开发和维护。

6)加强了代码的可重用性。

代码设计

1.代码设计的主要原则是什么?

1)使用语言中的顺序、选择、重复等有限的基本控制结构表示程序逻辑;

2)选用的控制结构只准许有一个入口和一个出口;

3)程序语句组成容易识别的块,每块只有一个入口和一个出口;

4)复杂结构应该用基本控制结构进行组合嵌套来实现

2.编程规范包括哪些内容?

1)命题规范

2)界面规范

3)提示及帮助信息规范

4)热键定义等

3.良好的代码设计风格包括哪些内容?

1)规范化的程序内部文档

2)数据结构的详细说明

3)清晰的语句结构

4)遵守编程规范

4.代码语句设计应遵从哪些原则?

1)在一行内只写一条语句

2)程序编写清晰性第一

3)程序要能直截了当地说明程序员的用意

4)清晰第一,效率第二

5)先保证程序正确,再要求提高速度

6)避免使用临时变量而使可读性下降

7)让编译程序做简单的优化

8)尽可能使用库函数和构件

9)避免不必要的转移:

尽量不用GOTO语句

10)尽量采用三种基本的控制结构编写程序

5.I/O代码设计的原则是什么?

1)输入数据要检验

2)检查输入项的各种重要组合的合理性

3)输入的步骤和操作尽可能简单

4)应允许使用自由格式输入数据

5)应允许缺省值

6)批数据输入时,使用输入结束标志

7)交互式输入时,屏幕上使用提示符明确提示输入的请求

8)保持输入格式与输入语句要求的一致性

9)输出加注释

软件测试

1.软件测试的原则?

1)软件测试应当尽早和不断地进行。

2)程序员应避免检查自己的程序。

3)设计测试即应包括合理的、还应包括不合理的输入条件。

4)经验表明,测试后程序中残存的错误数目与该程序中已发现的错误数目成正比。

5)妥善保存测试计划,测试用例,出错统计和最终分析报告,为维护提供方便。

(a-j是软件工程课件第八章P6的)

a)所有的测试都应追溯到用户需求。

b)软件测试必须基于“质量第一”的思想去开展各项工作

c)测试计划应该在测试工作真正开始前的较长时间内就进行。

d)将Pareto原则应用于软件测试。

e)测试应从“小规模”开始,逐步转向“大规模”。

f)测试用例是设计出来的,不是写出来的。

g)穷举测试是不可能的

h)为了达到最佳效果,应该由独立的第三方来构造测试。

i)不充分的测试是不负责任的;

过分的测试也是一种不负责任的表现

j)重视文档。

2.软件测试的最初定义?

最初定义:

软件测试是为了发现错误而执行程序的过程。

3.软件测试的经典定义?

经典定义:

测试是程序的执行过程,目的在于发现错误;

一个好的测试在于能发现至今未发现的错误;

一个成功的测试是发现了至今未发现的错误的测试。

4.测试的目的?

1)以最少的时间和人力,系统地找出软件中潜在的各种错误和缺陷。

2)能够证明软件的功能和性能与需求说明相符合。

3)测试结果数据为可靠性分析提供了依据。

4)测试不能表明软件中不存在错误,它只能说明软件中存在错误。

5.黑盒测试的优点?

1)对于较大的代码单元来说,黑盒测试比白盒测试效率要高;

2)测试人员不需要了解实现的细节,包括特定的编程语言;

3)从用户的角度进行测试,容易被理解和接受;

4)有助于暴露任何规格不一致或有歧义的问题;

6.黑盒测试的缺点?

1)要测试每个可能的输入流几乎是不可能的;

2)会有很多程序路径没有被测试到;

3)不能直接针对特定程序段测试,因此可能隐藏更多的问题。

7.白盒测试的优点?

1)迫使测试人员去仔细思考软件的实现;

2)可以检测代码中的每条分支和路径;

3)揭示隐藏在代码中的错误;

4)对代码的测试比较彻底。

8.白盒测试的缺点?

成本高;

忽略了从用户角度考虑的测试问题;

9.测试报告包括哪些内容?

1)测试任务描述

2)测试环境说明

3)功能测试描述

4)性能测试描述

5)确认性测试描述

6)测试总结

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高中教育 > 理化生

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1