《软件工程》单项选择题标准答案

《软件工程》单项选择题标准答案
《软件工程》单项选择题标准答案

《软件工程》单项选择题答案

————————————————————————————————作者:————————————————————————————————日期:

一、单项选择题 ( 在每小题的四个备选答案中,选出一个正确答案,并将正确答案的序号填在题干的括号内。每小题 1 分,共 20 分 )

1. 开发软件所需高成本和产品的低质量之间有着尖锐的矛盾,这种现象称做 ( )

A. 软件工程

B. 软件周期

C. 软件危机

D. 软件产生

2. 研究开发所需要的成本和资源是属于可行性研究中的 ( ) 研究的一方面。

A. 技术可行性

B. 经济可行性

C. 社会可行性

D. 法律可行性

3.IDEF0 图不反映出系统 ( )

A. 系统做什么

B. 系统功能如何实现

C. 系统由谁来做

D. 系统实现的约束条件

4. 模块的内聚性最高的是 ( )

A. 逻辑内聚

B. 时间内聚

C. 偶然内聚

D. 功能内聚

5. 在 SD 方法中全面指导模块划分的最重要的原则是 ( )

A. 程序模块化

B. 模块高内聚

C. 模块低耦合

D. 模块独立性

6. 软件详细设计主要采用的方法是 ( )

A. 模块设计

B. 结构化设计

C.PDL 语言

D. 结构化程序设计

7. 下列关于 JSD 方法不正确的说法是 ( )

A.JSD方法主要用于规模不大的数据处理系统

B.JSD方法不明确的划分软件概要设计和详细设计的两个阶段

C.JSD方法适用于输入数据和输出数据之间有对应关系的问题求解

D.JSD 方法根据输入、输出的数据结构,按一定的规则映射成软件的体系结构。因此它只适用于详细设计阶段

8. 不适合作为科学工程计算的语言是 ( )

A. Pascal

B. C

C. Fortran

D. Prolog

9. 黑盒测试在设计测试用例时,主要需要研究 ( )

A. 需求规格说明与概要设计说明

B. 详细设计说明

C. 项目开发计划

D. 概要设计说明与详细设计说明

10. 若有一个计算类型的程序,它的输入量只有一个 X ,其范围是[ -1.0 , 1.0 ],现从输入的角度考虑一组测试用例: -1.001 , -1.0 , 1.0 , 1.001 。设计这组测试用例的方法是 ( )

A. 条件覆盖法

B. 等价分类法

C. 边界值分析法

D. 错误推测法

11. 下列属于维护阶段的文档是 ( )

A. 软件规格说明

B. 用户操作手册

C. 软件问题报告

D. 软件测试分析报告

12. 快速原型模型的主要特点之一是 ( )

A. 开发完毕才见到产品

B. 及早提供全部完整的软件产品

C. 开发完毕后才见到工作软件

D. 及早提供工作软件

13. 因计算机硬件和软件环境的变化而作出的修改软件的过程称为 ( )

A. 教正性维护

B. 适应性维护

C. 完善性维护

D. 预防性维护

14. 类库这种机制是 ( ) 级别的信息共享。

A. 同一类

B. 不同类

C. 同一应用

D. 不同应用

15. 只有单重继承的类层次结构是 ( ) 层次结构。

A. 网状型

B. 星型

C. 树型

D. 环型

16. 在屏蔽硬件错误的冗错技术中,冗余附加技术有 ( )

A. 三模冗余

B. 信息冗余

C. 冗余备份程序的存储及调用

D. 关键程序和数据的冗余存储和调用

17. 软件按照设计的要求,在规定时间和条件下达到不出故障,持续运行的要求的质量特性

称为 ( )

A. 可用性

B. 可靠性

C. 正确性

D. 完整性

18. 下列文档与维护人员有关的有 ( )

A. 软件需求说明书

B. 项目开发计划

C. 概要设计说明书

D. 操作手册

19. 采用 Gantt 图表示软件项目进度安排,下列说法中正确的是 ( )

A. 能够反映多个任务之间的复杂关系

B. 能够直观表示任务之间相互依赖制约关系

C. 能够表示哪些任务是关键任务

D. 能够表示子任务之间的并行和串行关系

20. 下列模型属于成本估算方法的有 ( )

A.COCOMO 模型

B.McCall 模型

C.McCabe 度量法

D. 时间估算法

一、单项选择题 ( 每小题 1 分,共 20 分 )

1.C

2.B

3.B

4.D

5.D

6.D

7.D

8.D

9.A 10.C

11.C 12.D 13.B 14.D 15.C

16.D 17.B 18.C 19.D 20.A

1. 为了克服软件危机,人们提出了用 ( ) 的原理来设计软件,这就是软件工程诞生的基础。

A. 数学

B. 软件学

C. 运筹学

D. 工程学

2. 可行性研究的目标是 ( ) 。

A. 开发项目

B. 项目值得开发否

C. 规划项目

D. 维护项目

3. 分层 DFD 图是一种比较严格又易于理解的描绘方式,它的顶层图的作用在于 ( ) 。

A. 描绘了系统的实现细节

B. 表明了被开发系统的范围以及它和周围环境的数据交换关系

C. 描绘了系统的抽象

D. 描绘了软件实现的作者和绘制的时间

4. IDEF0 主要用来描述 ( ) 。

A. 系统的信息及其联系

B. 系统做什么

C. 系统模拟的动态模型

D. 系统功能如何实现

5. 软件需求分析应确定的是用户对软件的 ( ) 。

A. 功能需求和非功能需求

B. 性能需求

C. 非功能需求

D. 功能需求

6. 划分模块时,一个模块的 ( ) 。

A. 作用范围应在其控制范围之外

B. 作用范围应在其控制范围之内

C. 作用范围与其控制范围互不包容

D. 作用范围与其控制范围不受限制

7. 结构化程序设计思想的核心是要求程序只由顺序、循环和 ( ) 三种结构组成。

A. 选择

B. 单入口

C. 单出口

D. 有规则 GOTO

8. 详细设计阶段,一种二维树性结构来描述算法的工具称为 ( ) 。

A. IPO 图

B. PAD 图

C. PDL

D. 判定树

9. 为了使软件具有清晰结构和良好的风格,下面关于程序设计风格的叙述不可取的有 ( )

A. 尽量不要进行浮点数的相等比较

B. 应当有适量的注释

C. 尽可能对代码优化

D. 使用有意义的标识符

10. 验收测试是对软件进行 ( ) 测试。

A. 可靠性

B. 有效性

C. 可维护性

D. 可用性

11. 纠错是由 ( ) 来完成的。

A. 测试者

B. 程序员

C. 用户

D. 系统管理人员

12. ( ) 这种维护性活动数量较大,占整个维护活动的 50% 。

A. 校正性维护

B. 适应性维护

C. 预防性维护

D. 完善性维护

13. 对于一个大型系统,若对设计方案没有把握,可通过 ( ) 来证实设计方案的正确性。

A. 增量构造模型

B. 实验型原型

C. 探索型原型

D. 演化型原型

14. 状态是对象 ( ) 的抽象。

A.属性值

B. 方法

C. 功能

D. 行为

15. 对软件复杂性进行度量时,采用代码行度量法,下列说法不正确的是 ( ) 。

A. 每行代码的出错率与源程序行数之间不存在简单的线性关系

B. 对于少于 100 行语句的小程序,源代码行数与出错率是线性相关的

C. 代码行度量法只是一简单的,估计的很粗糙的方法

D. 随着程序的增大,出错率以线性方式增长

16. 软件项目计划范围内容是对软件项目的综合描述,定义其所要做的工作以及性能限制。下列不属于软件项目计划范围内容的有 ( ) 。

A. 硬件资源

B. 成本估算

C. 系统接口

D. 进度安排

17. 在软件工程开发过程中,数据流图、结构图的创建由 ( ) 工作台提供支持。

A. 测试

B. 分析和设计

C. 程序设计

D. 过程设计

18. 动态模型的描述工具是 ( ) 。

A. 对象图

B. 结构图

C. 流程图

D. 状态图

19. 在确定对象的属性中,所有 ( ) 是候选的对象。

A. 名词

B. 动词

C. 词组

D. 修饰性名词词组

20. MTBF 是软件可靠性的定量指标,是指 ( ) 。

A. 平均等待时间

B. 平均失效等待时间

C. 平均间隔时间

D. 平均失效间隔时间

1.D

2.B

3.B

4.B

5.A

6.B

7.A

8.D 9.D 10.D 11.B 12.D 13.C

15.D 16.C 17.B

1.在下列工具与环境中()属于较早期的CASE。

A.基于信息工程CASE

B.人工智能CASE

C.结构的基于图形CASE

D.集成的CASE环境

2.Putnam成本估算模型是一个()模型。

A.静态单变量 B.动态单变量 C.静态多变量 D.动态多变量

3.在McCall软件质量度量模型中,()属于面向软件产品修改。

A.可靠性 B.可重用性 C.适应性 D.可移植性

4.ISO的软件质量评价模型由3层组成,其中用于评价设计质量的准则是()

A.SQIC B.SQMC C.SQRC D.SQDC

5.软件复杂性度量的参数包括()

A.效率 B.规模 C.完整性 D.容错性

6.对象实现了数据和操作的结合,使数据和操作()于对象的统一体中。

A.结合 B.隐藏 C.封装 D.抽象

7.软件调试技术包括()

A.边界值分析 B.演绎法 C.循环覆盖 D.集成测试

8.瀑布模型的存在问题是()

A.用户容易参与开发

B.缺乏灵活性

C.用户与开发者易沟通

D.适用可变需求

9.软件测试方法中的静态测试方法之一为()

A.计算机辅助静态分析

B.黑盒法

C.路径覆盖

D.边界值分析

10.软件生命周期中所花费用最多的阶段是()

A.详细设计 B.软件编码 C.软件测试 D.软件维护

11.第一个体现结构化编程思想的程序设计语言是()

A.FORTRAN语言 B.Pascal语言 C.C语言D.PL/1语言

12.程序的三种基本控制结构是()

A.过程、子程序和分程序

B.顺序、选择和重复

C.递归、堆栈和队列

D.调用、返回和转移

13.在详细设计阶段,经常采用的工具有()

A.PAD B.SA C.SC D.DFD

14.详细设计的结果基本决定了最终程序的()

A.代码的规模 B.运行速度 C.质量 D.可维护性15.需求分析中开发人员要从用户那里了解()

A.软件做什么 B.用户使用界面 C.输入的信息 D.软件的规模16.结构化程序设计主要强调的是()

A.程序的规模 B.程序的效率

C.程序设计语言的先进性 D.程序易读性

17.DFD图反映系统()

A.怎么做 B.对谁做 C.何时做 D.做什么

18.经济可行性研究的范围包括()

A.资源有效性 B.管理制度 C.效益分析 D.开发风险19.可行性分析是在系统开发的早期所做的一项重要的论证工作,它是决定该系统是否开发的决策依据,因必须给出()的回答。

A.确定 B.行或不行 C.正确 D.无二义

20.需求分析阶段的任务是确定()

A.软件开发方法 B.软件开发工具

C.软件开发费 D.软件系统的功能

21 .软件工程管理的具体内容不包括对 _________ 管理。()

A .开发人员

B .组织机构

C .控制

D .设备

22 .在 McCall 软件质量度量模型中, _________ 属于面向软件产品操作。()

A .正确性

B .可维护性

C .适应性

D .互操作性

23 .在快速原型模型的开发过程中,用原型过程来代替全部开发阶段所用模型是 _________

模型。()

A .探索型原型

B .演化型原型

C .实验型原型

D .增量型原型

24 .维护中因删除一个标识符而引起的错识是 _________ 副作用。()

A .文档

B .数据

C .编码

D .设计

25 .软件维护的困难主要原因是()

A .费用低

B .人员少

C .开发方法的缺陷

D .维护难

26 .用白盒法技术设计测试用例的方法包括()

A .错误推测

B .因果图

C .基本路径测试

D .边界值分析

27 .软件测试中根据测试用例设计的方法的不同可分为黑盒测试和白盒测试两种,它们()

A 前者属于静态测试,后者属于动态测试 B.前者属于动态测试,后者属于静态测试

C .都属于静态测试

D .都属于动态测试

28 .程序设计语言的心理特性在语言中表现不应包括()

A .歧义性

B .简洁性

C .保密性

D .传统性

29 .程序的三种基本控制结构的共同特点是()

A .只能用来描述简单程序

B .不能嵌套使用

C .单入口,单出口

D .仅用于自动控制系统

30 . JSD 方法是一种面向 _________ 的设计方法。()

A .控制结构

B .对象

C .数据流

D .数据结构

31 .当一个模块直接使用另一个模块的内部数据,这种模块之间的耦合为()

A .数据耦合

B .公共耦合

C .标记耦合

D .内容耦合

32 .为高质量地开发软件项目,在软件结构设计时,必须遵循 _________ 原则。()

A .信息隐蔽

B .质量控制

C .程序优化

D .数据共享

33 .数据流图( DFD )是_______ 方法中用于表示系统的逻辑模型的一种图形工具。

A . SA

B . SD

C . SP

D . SC

34 .螺旋模型是一种将瀑布模型和 _________ 结合起来的软件开发模型。()

A .增量模型

B .专家系统

C .喷泉模型

D .变换模型

35 .需求规格说明书的作用不包括()

A .软件验收的依据

B .用户与开发人员对软件要做什么的共同理解

C .软件可行性研究的依据

D .软件设计的依据

36 .数据字典是用来定义 _________ 中的各个成份的具体含义的。()

A .流程图

B .功能结构图

C .系统结构图

D .数据流图

37 .设年利率为 i ,现存入 p 元,不计复利, n 年后可得钱数为()

A . p ﹡ (1+i ﹡ n)

B . p ﹡ (i+1) n

C . p ﹡ (1+i) ﹡ n

D . p ﹡ (i+n)

38 .在软件生产的程序系统时代由于软件规模扩大和软件复杂性提高等原因导致了()

A .软件危机

B .软件工程

C .程序设计革命

D .结构化程序设计

1.C

2.D

3.C

4.D

5.B

6.C

7.B

8.D

9.A 10.D

11.B 12.B 13.A 14.C 15.A

16.D 17.D 18.C 19.B 20.D

21. B 22.C 23.B 24.C

25.D 26.C 27.D 28.C

29.C 30.D 31.A 32.A

33.A 34.A 35.C 36.D

37.A 38.A

1、软件生存周期模型不包括:( )

A.瀑布模型B、对象模型C、增量模型D、喷泉模型

2、软件可行性研究实质上是要进行一次( )需求分析、设计过程。

A、简化、压缩的

B、详细的

C、彻底的

D、深入的

3、需求分析阶段最重要的技术文档之一是:( )

A、项目开发计划

B、设计说明书

C、需求规格说明书

D、可行性分析报告

4、在以下模块耦合性类型中,模块之间独立性最差的类型是:( )

A、无直接耦合

B、标记耦合

C、控制耦合

D、内容耦合

5、重用率高的模块在软件结构图中的特征是:( )。

A、扇出数大

B、扇入数大

C、内聚性高

D、扇出数小

6、软件详细设计的主要任务是对( )进行的详细设计。

A、算法和数据结构

B、外部接口

C、软件编码

D、功能

7、Jackson方法是一种面向( )的方法。

A、数据流

B、对象

C、数据结构

D、控制流

8、第一个体现结构化编程思想的程序设计语言是( )。

A、FORTRAN

B、C

C、Pascal

D、Cobol

9、一个成功的测试可以( )。

A、表明程序没有错误

B、发现所有错误

C、提高软件可靠性

D、发现尚未发现的错误

10、黑盒技术设计测试用例的方法之一为( )。

A、因果图

B、逻辑覆盖

C、循环覆盖

D、基本路径测试

11、在软件维护的内容中,占维护活动工作量比例最高的是( )。

A、校正性维护

B、适应性维护

C、完善性维护

D、预防性维护

12、当前时期软件维护的费用在总费用中的比例为( )。

A、35%~40%

B、40%~60%

C、60%~70%

D、70%~80%或更高

13、软件维护的副作用,是指( )。

A、开发时的错误

B、隐含的错误

C、因修改软件而造成的错误

D、运行时误操作

15、在快速原型的开发过程中,用于及早向用户提交原型系统的原形模型是( )。

A、探索型原型

B、实验型原型

C、演化型原型

D、增量构造原型

一、单项选择题:(每小题1分,共20分)

1、B

2、A

3、C

4、D

5、B

6、A

7、C

8、C

9、D 10、A 11、C12、D13、C14、C15、C

1. 下列现象哪些不属于软件危机( )的现象

A.开发成本超过预算成本,风险大

B.软件调试困难

C.软件质量无法保证

D.传统手工作坊方式,效率低

2. 下列哪个不属于软件工程的内涵之一( )

A.应用完善的科学与工程原理

B.经济地开发软件

C.高薪聘请软件高手

D.开发既可靠又能有效运行的软件

3.经济可行性研究的范围包括()

A.资源有效性 B.管理制度 C.效益分析 D.开发风险

4.可行性分析是在系统开发的早期所做的一项重要的论证工作,它是决定该系统是否开发的决策依据,因必须给出()的回答。

A.确定 B.行或不行 C.正确 D.无二义

5.下列模型属于成本估算方法的有( )

A.COCOMO模型

B.McCall模型

C.McCabe度量法

D.时间估算法

6.计算机辅助软件工程,简称()。

A、SA

B、SD

C、SC

D、CASE 7.瀑布模型的存在问题是()

A.不能与同行、用户沟通 B.不能使设计过程易于控制

C.不能将开发过程困难“各个击破” D.不适应可变需求

8.在瀑布模型中,将软件划分为若干个时期,软件项目的可行性研究一般归属于()。

A、维护时期

B、计划时期

C、运行时期

D、开发时期

9. 宿主平台是( )

A.操作系统

B.硬件系统

C.软件工程平台

D. 由操作系统和硬件系统构成的

10.软件计划的具体任务不包括( )

A.确定软件的作用范围

B.解决软件开发的难点

C. 估算开发所需的资源

D.估算软件成本费用和安排进度

11.需求分析最终结果是产生()

A、项目开发计划

B、需求规格说明书

C、设计说明书

D、可行性分析报告

12.DFD图不反映出系统( )

A.系统做什么

B.系统功能如何实现

C.数据流向与数据存储

D.系统实现的约束条件

13.在数据流图中,○(椭圆)代表()。

A、源点

B、终点

C、加工

D、模块14.软件结构图中,模块框之间若有直线连接,表示它们之间存在()

A、调用关系

B、组成关系

C、链接关系

D、顺序执行关系

15.为了提高模块的独立性,模块内部最好是()

A、逻辑内聚

B、时间内聚

C、功能内聚

D、通信内聚

16.软件详细设计的主要任务是确定每个模块的()

A、算法和使用的数据结构

B、外部接口

C、功能

D、编程

17. 编码阶段的目标是( )

A.对诸如“学生编号”,“职工编号”进行编码设计

B.将软件算法过程翻译成源程序

C.统一各种信息编码

D.选择最适合的程序设计语言

18. Powerbuilder属于( )

A. 3GL

B. 4GL

C. 独立于机器的面向算法的语言

D.结构化编程语言

19.若有一个计算类型的程序,它的输入量只有一个X,其范围是[-1.0,1.0],现从输入的角度考虑一组测试用例:-1.001,-1.0,1.0,1.001。设计这组测试用例的方法是( ) A.条件覆盖法 B.等价分类法

C.边界值分析法

D.错误推测法

20.程序的三种基本控制结构是()

A.过程、子程序和分程序 B.顺序、选择和重复

C.递归、堆栈和队列 D.调用、返回和转移

1.B

2.C

3.C

4.B

5.A

6.D

7.D

8.B

9.D 10.B

11.B 12.B 13.C 14.A 15.C

16.A 17.B 18.B 19.C 20.B

1. 下列哪个办法不属于解决软件危机的途径之一( )

A. 研制新一代智能计算机

B. 大力扶持软件企业

C. 采用软件工程的解决途径

D. 采用面向对象的软件设计方法

2. 下列哪个不属于软件工程的内涵之一( )

A. 应用完善的科学与工程原理

B. 经济地开发软件

C. 扶持培养软件高手的学院

D. 开发既可靠又能有效运行的软件

3. 研究开发所需要的成本和资源是属于可行性研究中的( )研究的一方面。

A.技术可行性

B.经济可行性

C.社会可行性

D.法律可行性

4.可行性研究要进行一次()需求分析。

A、深入的

B、详尽的

C、彻底的

D、简化的、压缩了的

5、下面哪一项不属于快速原型模型的优点。

A.可及早为用户提供有用的产品。

B.可保证在开发后期,全面发现错误给以纠正。

C.减少技术应用风险,缩短开发时间,减少费用、提高生产率。

D.促使用户主动参与开发活动,促进各类人员的协调,适应需求变化。

6.OOA是( )

A. 结构化分析

B.面向对象程序设计

C. 面向对象程序分析

D. 面向对象分析

7.下列哪个不属于瀑布模型与传统的程序设计的不同之处()。

A.传统的程序设计开发人员只开发程序,不写文档.

B.传统的程序设计重点在问题求解和算法,并只有自己才能读懂.

C.瀑布模型的各阶段要第三方介入审察

D.传统的程序设计规定各阶段必须写文档.

8.软件生命周期中软件需求分析阶段主要解决()

A.软件系统”如何做”问题 B.将模块结构和算法过程进行”转换”为程序

C.软件系统”做什么”问题 D.开发此软件系统”行不行”问题

9.下面哪个模式不属于软件工程的开发模式

A.基于瀑布模型的开发模式

B.基于原型模型的开发模式

C.基于人机对话的开发模式

D.基于关系数据库的开发模式

10.软件计划的具体任务不包括( )

B.确定软件的作用范围 B.设计完善的软件结构

C. 估算开发所需的资源

D.估算软件成本费用和安排进度

11.DFD图反映系统()

A.怎么做 B.能行吗 C.何时做 D.做什么

12.概要设计最终结果是产生()

A、项目开发计划

B、需求规格说明书

C、软件结构设计说明书

D、可行性分析报告

13.SA方法使用的描述手段不包括( )

A. 数据流图

B.程序流程图

C. 数据字典

D.加工说明

14..快速原型模型的主要特点之一是( )

A.开发完毕才见到产品

B.及早提供有用的的软件产品

C.开发完毕后才见到工作软件

D.及早提供工作软件

15.在七种偶合中,最低偶合是()。

A、内容偶合

B、公共偶合

C、数据偶合

D、非直接偶合16.结构化程序设计主要强调的是()

A.程序的规模 B.程序的效率

C.程序设计语言的先进性 D.程序易读性

17. 面向对象的特征不包括( )

A.继承性。

B.多态性。

C.互换性

D. .封装性

18. PASCAL语言属于( )

A.专用语言

B.人工智能语言

C.结构化语言

D.基础语言

19. 若有一个计算类型的程序,它的输入量只有一个X,其范围是[-3.0,2.0],现从输入的角度考虑一组测试用例:-3.001,-30,2.0,2.001。设计这组测试用例的方法是( )

A.条件覆盖法

B.等价分类法

C.边界值分析法

D.错误推测法

20、软件测试方法中,黑盒、白盒测试法是常用的方法,其中白盒测试主要用于测试()。

A.结构合理性

B.软件外部功能

C.程序正确性

D.程序内部逻辑

1.B

2.C

3.B

4.D

5.B

6.D

7.D 8.C 9.C 10.B 11.D 12.C

13.B 14.B 15.D 16.D 17.C 18.C 19.C 20.D

1 .开发软件所需高成本和产品的低质量之间有着尖锐的矛盾,这种现象称做( )

A.软件工程

B. 软件危机

C.软件周期

D.软件产生

2.下列不属于面向对象开发方法的有( )√

A. Coad

B.OMT

C. Booch

D. UML

3. 因计算机硬件和软件环境的变化而作出的修改软件的过程称为( )

A.改正性维护

B.适应性维护

C.完善性维护

D.预防性维护

4. 可行性研究的目标是 ( ) 。

A. 开发项目

B. 维护项目

C. 项目值得开发否

D. 规划项目

5. 分层数据流图必须遵守()原则

①数据守恒与数据封闭原则②加工分解原则③子图父图平衡④合理使用文件⑤数据可靠性原则⑥功能性原则⑦合理性原则⑧结构性原则√

A. ①②④⑦

B.①④⑥⑦⑧

C. ①②③④

D.③④⑤⑧

6.软件生命周期中所花费用最多的阶段是()

A.软件测试 B.软件维护 C.详细设计 D.软件编码

7.面向对象的类层次结构中,继承关系是一种()

A.“一般——特殊”关系B.“整体——部分”关系

C.“相互依赖”关系D.“一般——具体”关系

8.下列各种图,不用于动态建模的是()

A.状态图 B.序列图 C.类图 D.活动图

9.学生成绩一般分为优秀、良好、中等、及格和不及格五个个等级,为学生成绩管理系统设计测试用例时,()是用得最多的一种黑盒测试方法。

A.因果图法 B. 边界值分析 C.等价分类法 D.错误推断法

10.用户界面设计的最重要的原则是:( )

A、界面的可使用性

B、以人为本、以用户体验为准

C、根据用户的需求定制

D、界面美观友好

11.软件测试的目的是尽可能发现软件中的错误,通常()是代码编写阶段可进行的测试,它是整个测试工作的基础。

A、系统测试

B、安装测试

C、验收测试

D、单元测试12.以下不属于软件特点的是()。

A.软件产品存在磨损问题B.软件费用不断增加

C.软件的生产主要是研制D.软件是一种逻辑产品

13.软件工程三要素是( )。

A.方法、对象和类

B.过程、模型、方法

C.高技术人员、方法和工具

D.方法、工具和过程

14.SA法的主要描述手段有( )。

A.软件结构图、加工说明

B.功能结构图、加工说明

C.系统流程图和模块图

D. DFD图、数据词典、加工说明

15.对象实现了数据和操作的结合,使数据和操作( )于对象的统一体中。

A. 结合

B. 封装

C. 隐藏

D. 抽象

16.数据字典是用来定义 _________ 中的各个成份的具体含义的。()

A .系统结构图 B.数据流图 C.流程图 D.功能结构图

17.程序的三种基本控制结构的共同特点是()

A .只能用来描述简单程序

B .单入口,单出口

C .仅用于自动控制系统

D .不能嵌套使用

18.需求分析中开发人员要从用户那里了解()

A.软件做什么 B.输入的信息

C.用户使用界面 D.软件设计技巧

19.下面不属于用例驱动的需求方法的优点的是( )。

A.对目标系统的层次结构进行描述

B.作为分析和设计的工具

C.作为需求分析阶段用户与开发者之间交流信息的工具

D.对系统的数据结构进行描述

20. 模块的内聚性最高的是( )。

A. 逻辑内聚

B. 时间内聚

C. 偶然内聚

D. 功能内聚

1 B 2.D 3.B 4.C 5.C 6.B 7.A 8.C 9.C 10.B 11.D 12.A 13.D 14. D 15.B 16.B 17.B 18.A 19.D 20.D

1.以下哪一项不是软件危机的表现形式( )。

A. 成本高

B.生产率低

C.技术发展快

D.质量得不到保证

2.瀑布模型的存在问题是()。

A.用户容易参与开发 B.缺乏灵活性

C.用户与开发者易沟通 D.适用可变需求

3. 为了克服软件危机,人们提出了用 ( ) 的原理来设计软件,这就是软件工程诞生的基础。

A.管理学

B. 软件学

C. 工程学

D. 运筹学

4.软件的主要特性是( )。

A.高性能

B.可独立构成计算机系统

C.高成本

D.包括程序和文档

5. 下列不属于对象属性的可见性的是( )。

A.公有的

B.私有的

C.私有保护的

D. 保护的

6. 具有相同或相似性质对象的抽象的是( )。

A.对象

B.类

C.关联 B. 实例

7.建立继承关系时所采用的方式有( )。

A.自底向上

B. 自顶向下

C.从复杂到简单

D. 从内到外

8.包含风险分析的软件工程模型是( )。

A 增量模型

B 喷泉模型 C螺旋模型 D瀑布模型

9.快速原型模型的主要特点之一是( )。

A.开发完毕才见到产品

B. 及早提供可工作软件的雏形

C.开发完毕后才见到工作软件

D. 及早提供全部完整的软件产品

10.软件详细设计主要采用的方法是( )。

A.模块设计

B.结构化设计

C.PDL语言

D.结构化流程图

11.一个成功的测试可以( )。

A、提高软件可靠性

B、发现尚未发现的错误

C.表明程序没有错误 D、发现所有错误

12. 在详细设计阶段,经常采用的工具有()。

A.PAD B.SA C.SC D.DFD

13 .数据流图(DFD)是_______ 方法中用于表示系统的逻辑模型的一种图形工具。

A.SA B.SD C.SP D.SC

14.需求分析的主要方法有不包括()。

A.结构化分析方法 B.功能分析法

C.面向对象的分析方法 D.快速原型法

15.数据字典是用来定义 _________ 中的各个成份的具体含义的。()A.系统结构图 B.流程图

C.数据流图 D.功能结构图

16.数据字典是数据流图中所有元素的定义的集合,一般由以下四类条目组成( )。√

A.数据源条目、数据流条目、数据处理条目、数据文件条目

B.数据说明条目、控制流条目、加工条目、数据存储条目

C.数据流条目、数据项条目、数据存储条目、加工条目

D.数据流条目、文件条目、数据项条目、加工条目

17 .软件测试中的等价分类法属于()。

A. 白盒测试

B. 黑盒测试

C. 穷尽测试

D. 系统测试

18. 在UML中,()把活动图中的活动划分为若干组,并将划分的组指定给对象,这些对象必须履行该组所包括的活动,它能够明确地表示哪些活动是由哪些对象完成的。A.组合活动 B.包C.活动D.泳道

19.结构化程序设计主要强调的是()。

A.程序设计语言的先进性 B.程序易读性

C.程序的规模 D.程序的效率

20. 下列选项中,不属于面向对象开发方法的是( ) 。√

A. Booch

B. CASE

C. OMT

D.OOSE

1 C 2.B D 3. C 4.C 5.C 6.A B 7.B 8.C 9.B 10.D 11.B 12.A 13.A 14.D 15.C 16.D C 17.B 18.D 19.B 20.B

软件工程作业及参考答案(版)

软件危机与软件工程 3. 软件工程方法学的研究内容包含软件开发技术和软件工程管理两部分, 其期望达到的最终目标是 ()。 A ?消除软件危机 B ?软件开发工程化 C ?程序设计自动化 D ?实现软件重用 4?软件工程学中除重视软件开发技术的研究外,另一重要组成内容是软件的( )。 A .工程管理 B .成本核算 C .人员培训 D .工具开发 5?软件计划是软件开发的早期和重要阶段,此阶段要求交互和配合的是( )。 A ?设计人员和用户 B ?分析人员和用户 C .分析人员和设计人员 D .编码人员和用户 6 .软件工程的结构化生命周期方法是将软件开发的全过程划分为相互独立而又相互依存的阶段,软件的 逻辑模型形成 于( )。 A .开发阶段 B .计划阶段 C .分析阶段 D .设计阶段 7 .在软件工程中,软件生存期可分为计划、开发以及维护三个阶段,每个时期又分为若干更小的阶段。 通常,计划时期包括问题定义、可行性研究和 ①,开发时期包括 ②、详细设计、编码以及 ③。 ① A . 需求分析 B . 可行性研究 C . 经费预算 D . 质量保证 ② A . 需求分析 B . 可行性研究 C 总体设计 D 模块化设计 ③ A . 文档编制 B . 运行维护 C . 测试 D . 验收 &软件开发中常采用的生命周期方法,由于其特征而一般称其为() A .层次模型 B .瀑布模型 C .螺旋模型 D .对象模型 9.描述软件生存周期的瀑布模型包括计划、 (A ) 、设计、编码、测试、维护等阶段。其中,设计阶段又可 以分成(B )和(C )两个步骤。 A :①需求分析 ②可行性研究 ③需求调查 ④问题定义 B, C :①方案设计 ②代码设计 ③概要(总体)设计 ④数据设计 ⑤详细设计 10.什么是软件危机?软件危机产生的原因? ".生命周期阶段的划分?每个阶段的任务? 可行性研究 软件工程 1软件危机是指在开发和( A .运行 B .设计 2 ?造成软件危机的原因是: A. 用户使用不当 C .硬件不可靠 )过程中所遇到的一系列严重问题。 B .对软件的错误认识 D ?缺乏好的开发方法和手段

CADCAM软件应用技术基础课程标准

《CAD/CAM软件应用技术基础》课程标准 一、课程性质和任务 《CAD/CAM软件应用技术基础》是数控技术应用专业设置的一门专业必修课,是学生具备了《机械制图》、《AutoCAD》平面绘图、《数控编程技术》(含工艺)等基础知识后开设的课程。该课程是学生掌握三维数字建模和计算机辅助编程的重要理实一体化教学环节,教学时数为144学时。《CAD/CAM软件应用技术基础》的主要任务是学习二维曲线的绘制与编辑、实体建模、曲面建模、工程制图、装配、二维线框铣加工、平面铣加工、三维定铀铣加工、点位加工、多轴加工及UG软件的机床后置处理技术和程序仿真验证的方法与技巧,使学生掌握CAD/CAM的基础知识,具有CAD/CAM软件应用的基本技能,能够利用UG软件进行一般复杂程度零件的设计与制造,为适应机械产品三维设计及加工等岗位作准备。 二、课程教学目标 通过以工作任务导向以及典型零件数控加工的实际工作项目活动,使高等职业学院的数控技术专业的学生了解数控技术专业的学习领域和工作领域等专业知识与技能,能够熟练地使用计算机辅助设计软件与专业技术等,培养学生具备产品数控技术的实际工作技能,为学生未来从事专业方面实际工作的能力奠定基础。 (一)知识目标 1)掌握UG软件三维数字建模的相关知识;2)掌握UG软件装配设计的相关知识;3)掌握UG软件工程图的相关知识;4)掌握UG软件自动编程的相关知识。(二)能力目标 1)能熟练使用UG软件完成典型机械零件的三维建模工作;2)能熟练使用UG软件完成中等复杂装配体的三维装配设计工作; 3)能熟练使用UG软件完成由三维模型生成符合国标的工程图纸的工作; 4)能够熟练使用UG软件完成较复杂机电产品的自动编程,并能生成后处理程序上机操作。 5)能熟悉多轴自动编程6)能了解多轴加工7)能了解在线加工 (三)素质目标 1)良好的表达能力和人际沟通能力;2)爱岗敬业与团队合作的基本素质;3)良好的工程意识。 三、教学课时:120 学时 四、课程目标 通过本课程的学习,使学生熟悉并掌握一种软件的操作,能独立运用软件完成轴类零件的平面造型及中等复杂程度零件的三维造型。在具备金属切削基本理论,机械制造工艺基本理论的基础上,能根据工件材料、加工要求等各种具体情况,合理选择刀具,确定切削用量等各种工艺参数,会后置处理、生成数控加工程序,并在数控机床上完成零件的加工。 职业能力目标:

大工《软件工程》大作业参考题目及要求【内容仅供参考】787

网络教育学院 《软件工程》课程大作业 题目:企业货物管理系统 第一大题:谈谈你对本课程学习过程中的心得体会。 在学习软件工程过程中,或许有诸多不解,我们要从整体概念上较好地理解和把握、学好软件工程,学习时要注意多看多练要注意结合实际,更要多思考,面对错误不要一范就问,要尝试自己去解决。但是还要注意什么都学,肯定是什么都学不透的,要集中精力打攻坚战,学习软件工程首先要明白自己的学习目标究竟是什么,根据自己的实际工作出发,有针对性的在相应的学习方向上进行提高,制定出详细的学习规划。还要注意与其他科目的相辅相成,就像我们在学习面向对象分析的时候要结合大一学习的面向对象及其方法学这一在写软件的时候,我们首先要有整体的结构和思路,这样才能照着一定的思想一定思路去写下去,有人说其实写软件并不难,只要给你一个思路你就可以不断地往下写。我觉得确是如此,其实我们平时写软件我觉得并不是很难的事,平时即使遇到处理不了的技术问题,哪里编译出现错误等等其实都可以在网上提问。技术问题一般我们都可以在网上得到答案,但软件的思想不是我们看了一下就能真正理解的。 第二大题:完成下面一项课程设计。

2020秋《软件工程》课程大作业 注意:从以下4个题目中任选其一作答。 题目二:企业货物管理系统 总则:不限制编程语言,可以选用VB/C#等,不限数据库,可选用SQL/MYSQL/ACCESS等设计一个企业货物管理系统。(具 体工具平台及语言可以自己根据自己的习惯选用,不必完 全按照上述技术要求) 要求:(1)撰写一份word文档,里面包括(需求分析规格书、详细设计说明书、测试报告书)章节。 (2)需求分析规格书,包含功能需求分析、数据需求分析。 功能需求分析介绍该系统具体包含何种功能。 (3)详细设计说明书包含数据表,核心程序,模块相关截 图。数据表为数据库所建立的数据表,至少包含管理人员 信息表、货物信息表、调价记录表等。核心程序需列出系 统的核心程序。 (4)测试报告书要求简单介绍测试的方法与测试的示例, 举出一组示例即可。 (5)整个word文件名为 [作业提交: 大作业上交时文件名写法为:[以附件形式上交离线作业(附件的大小限制在

软件工程作业(答案参考)

软件工程第一次作业 1)软件工程适用范围? 答:软件工程是一门研究用工程化方法构建和维护有效的、实用的和高质量的软件的学科。它涉及到程序设计语言、数据库、软件开发工具、系统平台、标准、设计模式等方面。在现代社会中,软件应用于多个方面。典型的软件比如有电子邮件、嵌入式系统、人机界面、办公套件、操作系统、编译器、数据库、游戏等。同时,各个行业几乎都有计算机软件的应用,比如工业、农业、银行、航空、政府部门等。这些应用促进了经济和社会的发展,使得人们的工作更加高效,同时提高了生活质量。 2)软件工程如何控制系统开发的复杂性的? 答:可理解性(understandability)。系统具有清晰的结构,能直接反映问题的需求。可理解性有助于控制软件系统的复杂性,并支持软件的维护、移植或重用。 3)以你的经验,举例说明一个成熟的软件通常采用什么方法来适应现实世界的变化的?答:以猎豹游览器为例,开始软件投入市场公测,软件自带收集错误报告的程式,当遇到问题软件错误,会将相关信息反馈到接受错误信息的服务器,已方便程序员及时发现问题加以修复,修复完成后提供程序更新,循环此法提供软件运行稳定性,另外还有用户反馈的相关功能,对软件的建议也会收集到服务器,按实用性需求程序员可在原有程序上开发调整更适合用户使用的程序。 4)假设某软件公司,能为同一个用户开发两个不同层次的软件:一个层次的软件功能非常强大,在满足用户所有需求的基础上,还能提供大大超过用户需求的其他更多更强的功能;另一个层次的软件仅仅能满足用户需求,但没有提供其他额外的功能。请问如果你是项目负责人,你会选择为客户开发那个层次的软件? 答:我会选择仅仅满足用户需求的软件。因为太多的功能,相对于非专业的人员,在用户体验上可能会造成困扰,太多的功能会导致难以操作。而且功能强大的软件还会给用户费用上带来不必要的投入,软件是以人为本,方便用户工作,达到提高工作效率的目的。若然日后此用户需要更多功能的时候,我们还是可以向其软件公司提供升级功能解决用户需求。

《软件工程》大题作业

根据下面程序代码,画出程序流程图,然后设计满足条件组合覆盖的测试用例。 BEGIN T:=0 IF ( X>=80 AND Y>=80 )THEN T:=1 ELSE IF ( X>=90 AND Y>=75 ) THEN T:=2 ENDIF END. 答案: 经化简后的测试用例:x=95 y=95;x=95,y=70;x=70,y=95;x=70,y=70; 一、应用题2 一个城市的公共事业部决定开发一个“计算机化的”坑洼跟踪和修理系统。市民通过本系统报告有坑洼时,要说明街道地址、大小、影响程度,还要记录报告者的姓名和电话,存储在坑洼报告信息中,被送到公共事业部,工作人员根据坑洼的地点和大小,修理队标识号,修理队的人数,被分配的装备,制定一份工单,送到维修队。维修队修理后,将坑洼修理信息上报公共事业部的工作人员,包括:修理坑洼状况,使用填料的数量和修理的开销(时间、人数、使用的材料、装备)。请画出数据流程图,并写出工单的数据字典。 工单数据字典 数据项类型长度初始值备注 工单号字符8 自动生成主键 坑洼编号字符8 DS01的主键 维修单位编号字符8 DS02的主键 制单日期日期8 当前日期 制单人字符8 工单描述字符500 工单级别数字 1 0 计划工时数字 2 0 计划用填料量数字 5 0 单位(吨) 附加题: 1、对下列子程序进行调试: procedure example(y,z: real; var x: real) begin if (y>1) and (z=0) then x:=x/y; if (y=2) or (x=l) then x:=x+l; end. 该子程序接受x, y, z的值,并将计算结果x的值返回给调用程序。答题要求: (1)画出流程图。 (2)用白盒法设计测试用例,并写出它所满足的是何种覆盖标准、预期结果以及路径。

软件工程课程标准

《软件工程》课程标准 煤炭管理干部学院 计算机系 计算机应用技术专业 2012.06

一、课程基本信息 二、课程定位 《软件工程》是计算机应用专业教学计划中一门综合性和实践性很强的核心课程,主要容包括软件工程概述、可行性分析、需求分析、概要设计、详细设计、面向对象分析与设计、编码、软件质量与质量保证、项目计划与管理。本课程教学是既要侧重软件开发的法、原理的讲解,又要重点培养学生动手设计和开发软件的能力,两者并重、相互结合。 根据培养计算机高级理论与应用型人才的需要,本课程的目的与任务是使学生通过本课程的学习,了解软件项目开发和维护的一般过程,掌握软件开发的传统法和最新法,为更深入地学习和今后从事软件工程实践打下良好的基础。 三、课程设计思路 根据软件技术专业的人才培养目标,通过企业调研,与企业专家座谈,了解企业需求,梳理岗位任务,构建适应岗位需求的课程体系。 根据典型工作任务确定学习容。通过企业调研,深入了解软件开发企业的需求,分析各岗位的典型工作任务,根据典型工作任务确定学习容,设计学习情境,摒弃传统的从结构设计角度学习本课程的法,从软件项目设计、开发、测试、维护的角度将整个工作过程中的典型工作任务转化为若干学习情境,以完成岗位任

务所需知识和能力选取教学容,使其符合企业真实的工作程序、技术标准。 以行动导向组织实施教学。课程教学遵循“计划、调研、设计、实施、测试、发布与维护”这一“行动”过程序列;在基于职业情境的学习情境中,学生根据该情境设置的各项工作任务,制定设计案,实践操作,最终总结汇报形成成果,整个过程以学生动手“工作”为主要学习过程。学生在以完成任务为目的的这一“工作”过程中,开展主动“学习”,主动建构真正属于自己的经验和知识体系,将知识用于完成项目任务的“工作”,最后通过相互的成果展示和阶段评审达到知识的更新、职业能力的巩固和升华。 建立多元能力考核评价体系。突出过程与成果结合评价,强调理论与实践一体化评价,建立以学生为中心的综合评价模式,包括课堂讲评、实践操作、阶段评审、成果展示等多种手段相结合,综合评定学生成绩。将课程考核与企业的岗位需求融合在一起,形成多元能力考核评价体系。 四、课程目标 (一)能力目标 1. 能够按照规的软件项目开发流程来设计、开发软件; 2.能够规地编写软件项目开发各阶段的文档; 3.能够使用Project工具软件进行软件项目管理; 4.能够使用Rose或Viso等工具软件进行项目辅助设计; 5.能够准确地设计测试用例,进行软件项目测试; 6.能够规地发布项目并制定合理的后期维护计划。 (二)知识目标

软件工程大作业.

《软件工程》大作业 学期:2015秋季学期 班号: 学号: 姓名: 成绩: 子与信息工程学院 2015年10月

目录 第1章系统概述 (2) 1.1系统介绍 (2) 1.2开发的目的与意义 (2) 第2章可行性分析 (3) 2.1经济可行性 (3) 2.2 技术可行性 (3) 2.3 系统业务分析 (3) 第3章需求分析 (5) 3.1 结构化需求分析 (5) 3.2 系统需求说明 (5) 3.3 系统数据流图和数据字典 (6) 第4章系统设计 (9) 4.1 系统ER图 (9) 4.2 系统功能结构图 (11) 第5章系统实现 (12) 5.1用户模块 (12) 5.2用户注册功能 (13) 第6章系统测试 (14)

第1章系统概述 随着计算机网络技术和信息技术的不断发展,人类信息资源实现高度共享,从根本上改变了人类生活的方式,网上购物作为一种新型的购物方式,以其快捷方便的特点成为了人们购物的主要选择。网上支付的不断完善,加上物流业的配套建设,使得用户能够足不出户就能挑选商品,节省了时间和金钱,这种网上购物方式越来越受到人们的青睐。 1.1系统介绍 网上商城系统是一个可以方便各类人群所需,省时省力全方位的大型购物网上商城,可以让所需人群足不出户不分地域时间的购买所需用品。网上商城系统共分为两个部分:前台用户部分和后台管理部分。在前台系统中有用户注册登陆,浏览商品,选购商品,订购商品。后台系统中有系统管理,会员管理,订单管理,商品管理。在用户注册模块中,分别加强了用户注册信息验证的严格性;在商品或商家信息浏览和查询模块中,用户可以对商品进行浏览检索,查看商品的详细信息;非注册会员可以选定商品加入购物车,但只有注册成会员的用户才能对商品进行购买。在后台系统中,系统管理员可以对已注册的用户进行审查,可以对现有的商品进行管理;并对提交的订单进行处理与邮寄。 1.2开发的目的与意义 在线购物系统,从结构上讲,可以划分为前台和后台两个部分,主要涉及到前、后台的网页设计,以及与数据库相关的操作。在网络应用中,数据库的应用是一个很关键的环节。特别地,随着Internet的普及和人们对于互联网的依赖性,许多基于互联网的应用也不断的涌现出来。基于B/S(浏览器、服务器)构架开发网站和系统已成为一种主流趋势,人们对其的需求也越来越大。 现在已经进入网络时代,很多电子产品的生产企业也开始意识到了网络的重要性,开始在电子产品中加入对网络服务的支持。比如在智能手机中增加了对移动互联网应用的支持,这在提升了电子产品的竞争力的同时,也扩展了电子商务的应用范围。 总体上看,电子商务的发展,具有十分良好的发展前景。

软件工程作业3

软件工程第六章作业 9、某公司为本科以上学历的人重新分配工作,分配原则如下:如果年龄不满18岁,学历是本科,男性要求报考研究生,女性则担任行政工作;如果年龄满18岁不满50岁,学历本科,不分男女,任中层领导职务,学历是硕士,不分男女,任课题组组长;如果年龄满50岁,学历本科,男性任科研人员,女性则担任资料员,学历是硕士,不分男女,任课题组组长。要求:画出分析过程,得出判定表,并进行化简。 条件分析表: 条件名称取值符号取值数性别男M M1=2 女 F 年龄不满18岁T M2=3 满18岁小于50岁Y 超过50岁O 文化程度硕士S M3=2 本科 B 判定表: 1 2 3 4 5 6 7 8 9 10 11 12 性别M M M M M M F F F F F F 文化程度S S S B B B S S S B B B 年龄O Y T O Y T O Y T O Y T 组长√√√√√√ 领导√√ 科研√ 行政√资料员√ 考研√ 简化表: 1,2,3,7,8,9 4 5,11 6 10 12 性别------ M ----- M F F 文化程度S B B B B B 年龄------ O Y T O T 组长√ 领导√ 科研√ 行政√ 资料员√ 考研√

10、研究下面的伪码程序,画出对应的程序流程图。 开始 Input X,N Dim A(N),F(N) I=1 Input F(i) I>N I++ K=0 否是 A(K)=0;J=1 A(K)=A(K)+F(J)*F(J+K)/(N-K+1) J++ K>N-K 否 Print K*X,A(K) K++ K

《软件工程》课程标准

《软件工程》课程标准 表1 课程基本信息 (一)课程性质与任务 课程性质:《软件工程》是软件工程专业的一门工程性基础课程,在软件工程学科人才培养体系中占有重要的地位。软件开发是建立计算机应用系统的重要环节,人们通过软件工程学把软件开发纳入工程化的轨道,而软件工程学是用以指导软件人员进行软件的开发、维护和管理的科学。《软件工程》已成为高校计算机软件教学体系中的一门核心课程课程任务:通过本课程的学习,要求学生能掌握软件工程的基本概念、基本原理、开发软件项目的工程化的方法和技术及在开发过程中应遵循的流程、准则、标准和规范等;学生应能掌握开发高质量软件的方法,以及有效地策划和管理软件开发活动,为学生参加大型软件开发项目打下坚实的理论基础。 (二)课程教学目标 本课程的开设旨在使学生通过学习,掌握软件项目开发和维护的一般过程,掌握软件开发的传统方法和最新方法,能用软件工程的方法参与软件项目的分析、设计、实现和维护,为更深入地学习和今后从事软件工程的实践打下良好的基础。 1. 知识目标 (1)教授以软件工程的发展、主要方法、常用工具的使用为主线。包括:软件工程的基本概念、基本原理、常用的软件管理方法、常用的建模工具等。 (2)关键的知识讲授阶段有:软件需求获取方法、需求规格说明撰写与评审方法、软件设计的基本概念、结构化设计方法、体系结构设计、面向对象UML的软件分析方法、UML 建模方法、软件测试基本理论等。 (3)通过该课程的教授,学生应具备软件工程基本理论知识。 2. 能力目标

(1)运用软件工程的概念、原理、技术和方法开发与维护软件的能力 (2)编写相关技术文档的能力 (3)分析问题和解决问题的能力和团队工作交流能力。 3. 素质目标 (1)职业素养的培养:对软件开发领域常见的职业要求、团队合作精神进行培养与灌输。 (2)专业素养的培养:对软件管理过程中常见的问题能够予以准确判断,明确解决思路。 (三)参考学时 64(理论:32\实验:32 )学时。 (四)课程学分 3学分 (五)课程内容和要求(理论64学时) 课程旨在使学生掌握软件工程的基本概念、原理和方法,从软件开发技术、软件工程管理和软件工程环境等几个方面了解如何将系统的、规范化的和可以度量的工程方法运用于软件开发和维护中。要求学生通过本门课的学习,基本掌握结构化方法、面向对象方法等软件开发技术,初步了解软件复用的概念及基于构件的开发方法,同时对软件工程管理和环境等内容有一个总体的了解。 表2 课程内容与学时安排表

软件工程大作业

《软件工程》大作业 学期: 2015秋季学期 班号: 学号: 姓名: 成绩: 子与信息工程学院 2015年10月

电子与信息工程学院大作业 目录 第1章系统概述 (2) 1.1系统介绍 (2) 1.2开发的目的与意义 (2) 第2章可行性分析 (3) 2.1经济可行性 (3) 2.2 技术可行性 (3) 2.3 系统业务分析 (3) 第3章需求分析 (5) 3.1 结构化需求分析 (5) 3.2 系统需求说明 (5) 3.3 系统数据流图和数据字典 (6) 第4章系统设计 (9) 4.1 系统ER图 (9) 4.2 系统功能结构图 (11) 第5章系统实现 (11) 5.1用户模块 (11) 5.2用户注册功能 (12) 第6章系统测试 (13) 1

第1章系统概述 随着计算机网络技术和信息技术的不断发展,人类信息资源实现高度共享,从根本上改变了人类生活的方式,网上购物作为一种新型的购物方式,以其快捷方便的特点成为了人们购物的主要选择。网上支付的不断完善,加上物流业的配套建设,使得用户能够足不出户就能挑选商品,节省了时间和金钱,这种网上购物方式越来越受到人们的青睐。 1.1系统介绍 网上商城系统是一个可以方便各类人群所需,省时省力全方位的大型购物网上商城,可以让所需人群足不出户不分地域时间的购买所需用品。网上商城系统共分为两个部分:前台用户部分和后台管理部分。在前台系统中有用户注册登陆,浏览商品,选购商品,订购商品。后台系统中有系统管理,会员管理,订单管理,商品管理。在用户注册模块中,分别加强了用户注册信息验证的严格性;在商品或商家信息浏览和查询模块中,用户可以对商品进行浏览检索,查看商品的详细信息;非注册会员可以选定商品加入购物车,但只有注册成会员的用户才能对商品进行购买。在后台系统中,系统管理员可以对已注册的用户进行审查,可以对现有的商品进行管理;并对提交的订单进行处理与邮寄。 1.2开发的目的与意义 在线购物系统,从结构上讲,可以划分为前台和后台两个部分,主要涉及到前、后台的网页设计,以及与数据库相关的操作。在网络应用中,数据库的应用是一个很关键的环节。特别地,随着Internet的普及和人们对于互联网的依赖性,许多基于互联网的应用也不断的涌现出来。基于B/S(浏览器、服务器)构架开发网站和系统已成为一种主流趋势,人们对其的需求也越来越大。 现在已经进入网络时代,很多电子产品的生产企业也开始意识到了网络的重要性,开始在电子产品中加入对网络服务的支持。比如在智能手机中增加了对移动互联网应用的支持,这在提升了电子产品的竞争力的同时,也扩展了电子商务的应用范围。 总体上看,电子商务的发展,具有十分良好的发展前景。

软件工程作业第一章

1-1什么是软件危机?它有哪些典型表现?为什么会出现软件危机? 软件危机:在计算机软件的开发和维护过程中所遇到的一系列严重问题。 典型表现:软件总是超出预算、落后于进度表,而且产品质量不可靠、维护困难等。 危机原因: 1、软件受其自身特点的影响,生产过程不象硬件那样规范,受人的因素和外界影响很大,在软件生产的各阶段都会引入不同程度的错误,造成不能预期完成任务,致使成本上升,甚至导致软件失败。 2、主客观不相适应。 ●客观上:软件规模增大、功能要求越来越复杂,需求不断变化等; ●主观上:传统的个体化开发观念和方法的影响,无开发过程指导,无开发过程管理;由于主客观矛盾,必然产生软件质量差、开发超期、超预算、维护困难等现象。 1-3 什么是软件工程?它有哪些本质特性?怎样用软件工程消除软件危机? ?基本思想:是强调在软件开发过程中应用工程化原则,解决软件的整体质量较低、最后期限和费用没有保证等问题。 ?软件工程定义:是指导计算机软件开发和维护的一门工程学科。采用工程的概念、原理、技术和方法来开发与维护软件,把经过时间考验而证明正确的管理技术和当前能够得到的最好的技术方法结合起来,以经济地开发出高质量的软件并有效地维护它. ?软件工程的根本在于提高软件的质量与生产率,最终实现软件的工业化生产。 本质特性:P6 消除软件危机:软件工程基本原理7条。 1-6 什么是软件过程?它与软件工程方法学有何关系? ?软件过程:是为了获得高质量软件所需要完成的一系列任务的框架,它规定了完成各项任务的工作步骤。 ?过程定义了运用方法的顺序、应该交付的文档资料、为保证软件质量和协调变化所需要采取的管理措施,以及标志软件开发各个阶段任务完成的里程碑。 关系:是软件工程方法学包含3个要素(方法、工具和过程)之一。 1-7 什么是软件生命周期模型?试比较瀑布模型、(快速)原型模型、增量模型和螺旋模型、喷泉模型的优缺点,说明每种模型的适用范围。 生命周期模型规定了把生命周期划分成哪些阶段及各个阶段的执行顺序,因此,也称为过程模型。 瀑布模型:它将软件生命周期划分为需求分析、软件设计、程序编写、软件测试和运行维护等基本活动,并且规定了它们自上而下、相互衔接的固定次序,如同瀑布流水,逐级下落。优点:文档驱动。 强迫开发人员采用规范的方法;严格地规定了每个阶段必须提交的文档;要求每个阶段交出的所有产品都必须经过质量保证小组的仔细验证。遵守瀑布模型的文档约束,将使软件维护变得比较容易一些。 缺点:系统可能不满足需求,用户仅仅通过写在纸上的静态的规格说明,很难全面正确地认识动态的软件产品 适用范围:软件需求明确。 原型模型:在初步调查了解的基础上,提供快速的软件建造工具,开发出一个功能并不十分完善的可实际运行的系统,即原型。需求分析入手快速、表达直观、容易交流。重点解决瀑

《软件工程》大题作业

附加题: 1、对下列子程序进行调试: procedure example(y,z:real;var x:real) begin if(y>1)and(z=0)then x:=x/y; if(y=2)or(x=l)then x:=x+l; end. 该子程序接受x,y,z的值,并将计算结果x的值返回给调用程序。答题要求: (1)画出流程图。 (2)用白盒法设计测试用例,并写出它所满足的是何种覆盖标准、预期结果以及路径。 答:(1)流程图 (2)用白盒法中条件组合覆盖设计测试用例: ①y=2,z=0,x=4; ②y=2,z=1,x=1; ③y=1,z=0,x=2; ④y=1,z=1,x=1. 2、某报表处理系统要求用户输入处理报表的日期,日期限制在2003年1月至2008年12月,即系统只能对该段期间内的报表进行处理,如日期不在此范围内,则显示输入错误信息。系统日期规定由年、月的6位数字字符组成,前四位代表年,后两位代表月。现要求

用黑盒测试法中的边界值法写出测试用例。 答: 输入条件测试用例说明测试数据 1个数字字符报表日期的5 20035个数字字符类型及长度520030057个数字字符 2003.5有1个非数字字符MAY---全部是非数字字符200305个数字字符6 200301在有效范围日期范围 200812边界上选取 200300数据 200813 月份范围月份为1月200301 200312月份为12月200300月份<1 >12200313月份 3、对以下程序进行测试:;REALARV)X:PROCEDURE(EXA,B:REAL;BEGIN BX:=AB>IF(A=3)OR(1)THEN×-3ANDIF(A>2)(B=0)THEN=AX:END再按不同逻辑覆盖法设计一种(写出名称)测试数据。先画出程序流程图。答: B=0语句覆盖A=3

《软件开发基础》课程标准

《软件开发基础》课程标准 表1 课程基本信息 (一)课程性质与任务 课程性质::《软件开发技术》是计算机专业的一门技术基础课,在软件工程学科人才培养体系中占有重要的地位。软件开发是建立计算机应用系统的重要环节,通过学习和训练,加深对大学计算机基础课程的理解和认识,加强程序设计能力的训练,培养学生运用软件开发方法和技术分析问题和解决问题的能力。《软件开发基础》已成为高校计算机软件教学体系中的一门重要课程 课程任务:通过本课程的学习掌握在操作系统、数据库、多媒体、网络等应用环境中软件的基本开发方法及技术,以及在软件开发过程中要解决的数据结构与常用算法的实现。通过该课程的学习,使学生掌握在上述环境中开发软件所必需的基础知识、基本开发方法和常用开发技术,为今后结合实际应用开发软件打下必要的基础。 (二)课程教学目标 本课程的开设旨在通过该课程的学习,使学生能够全面系统地掌握计算机软件开发技术的基本知识,熟悉软件工程概念与流程、数据结构概念与算法,并且结合数据库知识具有一定的软件系统设计能力。 1. 知识目标 (1)教授以软件开发的发展、主要方法、常用工具的使用为主线。包括:软件开发的基本概念、基本原理、常用的软件管理方法、常用的建模工具等。 (2)关键的知识讲授阶段有:软件需求获取方法、需求规格说明撰写与评审方法、软件设计的基本概念、结构化设计方法、体系结构设计、面向对象UML的软件分析方法、UML 建模方法、软件测试基本理论等。 (3)通过该课程的教授,学生应具备软件开发基本理论知识。

2. 能力目标 (1)运用软件开发的概念、原理、技术和方法开发与维护软件的能力 (2)编写相关技术文档的能力 (3)分析问题和解决问题的能力和团队工作交流能力。 3. 素质目标 (1)职业素养的培养:对软件开发领域常见的职业要求、团队合作精神进行培养与灌输。 (2)专业素养的培养:对软件管理过程中常见的问题能够予以准确判断,明确解决思路。 (三)参考学时 64(理论:32\实验:32 )学时。 (四)课程学分 3学分 (五)课程内容和要求(理论64学时) 课程旨在使学生掌握软件开发的基本概念、原理和方法,从软件开发技术、软件工程管理和软件工程环境等几个方面了解如何将系统的、规范化的和可以度量的工程方法运用于软件开发和维护中。要求学生通过本门课的学习,基本掌握结构化方法、面向对象方法等软件开发技术,初步了解软件复用的概念及基于构件的开发方法,同时对软件工程管理和环境等内容有一个总体的了解。 表2 课程内容与学时安排表

软件工程在线作业及答案

1.第1题 在软件可行性研究中,可以从不同的角度对软件进行研究,其中是从软件的成本/效益分析的是()。 A.经济可性性 B.技术可行性 C.操作可行性 D.法律可行性 您的答案:A 题目分数:2.5 此题得分:2.5 2.第2题 为了提高模块的独立性,模块内部最好是()。 A.逻辑内聚 B.时间内聚 C.功能内聚 D.通信内聚 您的答案:C 题目分数:2.5 此题得分:2.5 3.第3题 Jackson方法是一种面向()的方法。 A.对象 B.数据结构 C.数据流 D.控制流 您的答案:B 题目分数:2.5 此题得分:2.5 4.第4题 需求分析阶段研究的对象是软件项目的()。 A.用户需求 B.合理要求 C.模糊要求 D.工程要求 您的答案:A 题目分数:2.5 此题得分:2.5

5.第5题 面向数据结构的设计方法(Jackson方法)是进行()的形式化的方法。 A.系统设计 B.详细设计 C.软件设计 D.编码 您的答案:B 题目分数:2.5 此题得分:2.5 6.第6题 程序控制的三种基本结构中,()结构可提供多条路径选择。 A.反序 B.顺序 C.循环 D.分支 您的答案:D 题目分数:2.5 此题得分:2.5 7.第7题 下列属于黑盒测试的是()。 A.基本路径测试 B.条件测试 C.循环测试 D.等价划分 您的答案:D 题目分数:2.5 此题得分:2.5 8.第8题 软件设计一般分为总体设计和详细设计,它们之间的关系是()。 A.全局和局部 B.抽象和具体 C.总体和层次 D.功能和结构 您的答案:A 题目分数:2.5 此题得分:2.5

9.第9题 好的软件结构应该是()。 A.高耦合,高内聚 B.低耦合,高内聚 C.高耦合,低内聚 D.低耦合,低内聚 您的答案:B 题目分数:2.5 此题得分:2.5 10.第15题 面向对象软件技术的许多强有力的功能和突出的优点,都来源于把类组织成一个层次结构的系统,一个类的上层可以有父类,下层可以有子类,这种层次结构系统的一个重要性质是(),一个类获得其父类的全部描述(数据和操作)。 A.传递性 B.继承性 C.复用性 D.并行性 您的答案:B 题目分数:2.5 此题得分:2.5 11.第16题 软件项目管理是()一切活动的管理。 A.需求分析 B.软件设计过程 C.模块控制 D.软件生命周期 您的答案:D 题目分数:2.5 此题得分:2.5 12.第17题 一个模块把开关量作为参数传递给另一模型,这两个模块之间的耦合是()。 A.外部耦合 B.数据耦合 C.控制耦合 D.内容耦合 您的答案:C

大工19秋《软件工程》大作业

网络教育学院 《软件工程》课程大作业如需答案请联系3225776615 题目: 姓名: 报名编号: 学习中心: 层次: 专业: 第一大题:谈谈你对本课程学习过程中的心得体会。 第二大题:完成下面一项课程设计。 2019秋《软件工程》课程大作业 注意:从以下4个题目中任选其一作答。 题目一:超市员工管理系统 总则:不限制编程语言,可以选用VB/C#等,不限数据库,可选用SQL/MYSQL/ACCESS 等设计一个超市员工管理系统。(具体工具平台及语言可以自己根据自己的习惯选用,不必完全按照上述技术要求) 要求:(1)撰写一份word文档,里面包括(需求分析规格书、详细设计说明书、测试报告书)章节。

(2)需求分析规格书,包含功能需求分析、数据需求分析。功能需求分析介绍该系统具体 包含何种功能。 (3)详细设计说明书包含数据表,核心程序,模块相关截图。数据表为数据库所建立的数 据表,至少包含超市管理人员表和员工信息表。核心程序需列出系统的核心程序。模块相关 截图需列出各个界面的截图。 (4)测试报告书要求简单介绍测试的方法与测试的示例,举出一组示例即可。 (5)整个word文件名为 [姓名奥鹏卡号学习中心](如戴卫东101410013979浙江台州奥鹏学习中心[1]VIP ) 作业提交: 大作业上交时文件名写法为:[姓名奥鹏卡号学习中心](如:戴卫东101410013979浙江台 州奥鹏学习中心[1]VIP) 以附件形式上交离线作业(附件的大小限制在10M以内),选择已完成的作业(注意命名),点提交即可。如下图所示。 。 注意事项: 独立完成作业,不准抄袭其他人或者请人代做,如有雷同作业,成绩以零分计! 题目二:企业货物管理系统 总则:不限制编程语言,可以选用VB/C#等,不限数据库,可选用SQL/MYSQL/ACCESS 等设计一个企业货物管理系统。(具体工具平台及语言可以自己根据自己的习惯选用,不必 完全按照上述技术要求) 要求:(1)撰写一份word文档,里面包括(需求分析规格书、详细设计说明书、测试报 告书)章节。 (2)需求分析规格书,包含功能需求分析、数据需求分析。功能需求分析介绍该系统具体 包含何种功能。 (3)详细设计说明书包含数据表,核心程序,模块相关截图。数据表为数据库所建立的数 据表,至少包含管理人员信息表、货物信息表、调价记录表等。核心程序需列出系统的核心 程序。 (4)测试报告书要求简单介绍测试的方法与测试的示例,举出一组示例即可。 (5)整个word文件名为 [姓名奥鹏卡号学习中心](如戴卫东101410013979浙江台州奥鹏学习中心[1]VIP ) 作业提交: 大作业上交时文件名写法为:[姓名奥鹏卡号学习中心](如:戴卫东101410013979浙江台 州奥鹏学习中心[1]VIP) 以附件形式上交离线作业(附件的大小限制在10M以内),选择已完成的作业(注意命名),点提交即可。如下图所示。

软件工程大作业.

软件工程大作业 题目:学生档案管理系统 小组成员:戚盈洁( 王大伟( 王磊( 霍成海( 目录 第一章. 系统调查 (3 1.1系统调查内容 (3 1.2系统调查方法 (3 第二章. 系统分析 (3 2.1 系统分析 (3 2.2 系统调结构图 (4 2.3 子系统功能描述 (4 第三章. 系统设计 (6 3.1 界面设计原则 (6 3.2 数据库设计 (6 3.3 代码设计 (10 第四章. 学生照片管理模块设计 (14

4.1 ImageFunc模块 (14 4.2 设计照片管理窗体 (16 4.3 在学生信息管理窗体中添加照片管理代码 (17 第五章. 系统测试 (18 5.1 系统测试项目 (18 5.2 系统评估 (20 第一章. 系统调查 1.1系统调查内容 学校各院系基本概况:院系名称,专业设置,课程设置,课时安排,学生人数,学生班级数等。 学校资源条件调查,包括计算机配备,网络支持条件等。 各院系专业设置概况:现有开设专业及规划中开设专业设置,专业开设课程,各课程授课教师与成绩处理。 学校各部门(学生处、教务处、档案管理室、各院系对学生基本情况的需求与掌握,对学生基本信息的处理方式与业务流程。 学校各部门、单位、教师、学生对系统的其他要求和希望。 1.2系统调查方法 通过对部分高校学生档案管理人员的访问,了解到目前大部分高校的档案管理工作存在工作效率低,成本高,保密性差,查询困难等问题。大部分工作人员都提出需要一个具有检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本

低等优点的现代化信息管理系统。为解决此问题我们决定开发一个既方便又操作简单,功能较为齐全的学生档案管理系统。 第二章. 系统分析 2.1 系统分析 1 系统开发的总体任务是学生档案管理的系统化和规范化。 2 系统开发的目标是使档案管理工作科学化和规范化,提高安全系数。 3 系统功能树本系统主要功能是实现学生基本情况的管理。 图3.1学生档案管理系统功能模块 2.2 系统调结构图

软件工程第1章作业

软件工程第1章作业 一、填空题(每小题1分,共15分) 1、软件与物质产品有很大的区别,软件是一种_____逻辑_______产品。 2、软件工程是一门综合性交叉学科,计算机科学着重于理论和原理,软件工程着重于建造一个软件系统____________________。 3、最基本、应用广泛、以文档为驱动、适用于开发功能明确的软件项目生存期模型是_瀑布模型。 4、一个软件从定义、开发、使用和维护,直到最终被废弃,要经历一个漫长的时期,通常把这个漫长的时期称为_生存周期。 5、软件工程是指导计算机软件开发和维护的一门工程学科。 6、软件工程包括___软件开发技术_________和____管理________两方面的内容,是技术与管理紧密结合所形成的工程学科。 7、通常把在软件生命周期全过程中使用的一整套技术方法的集合称为方法学,也称为_范型____________。 8、螺旋模型将瀑布模型和快速原型模型结合起来,加入了两种模型均忽略了的__风险分析_________,弥补了这两种模型的不足。 9、____瀑布_____模型不能适应需求可变的软件开发,只有到开发结束时才能见到整个软件系统。 10、将软件生存周期各个活动规定为依线性顺序联接的若干阶段的模型是__瀑布________模型。 11、喷泉模型是一种以用户需求为动力,以__对象________为驱动的模型。 12、一个软件项目的开发中,要采用一种生存周期模型,要按照某种_开发方法__________,使用相应的工具来进行。 13、软件工程的出现主要是由于_ ____软件危机__________的出现而产生的。 14、软件工程知识体系指南SWEBOK将软件工程知识体系划分为___10____个知识域。 15、Rational统一过程RUP是_用例_______驱动的、以体系结构为核心的、迭代的增量的过程,其迭代过程分为初始、细化、___构建________、移交4个阶段。 二、选择题(每小题2分,共30分) 1、作坊式小团体合作生产方式的时代属于( C )时代。 A.程序设计 B.软件生产自动化 C.程序系统 D.软件工程 2、软件工程与计算机科学性质不同,软件工程着重于( C )。 A.理论研究 B.原理探讨 C.建造软件系统 D.原理的理论 3、个体手工劳动生产方式的时代是( A )时代。 A.程序设计 B.软件生产自动化 C.程序系统 D.软件工程 4、软件是一种( B )产品。 A、有形B、逻辑C、物质D、消耗 5、与计算机科学的理论研究不同,软件工程是一门( C )学科。 A、理论性B、工程性C、原理性D、心理性 6、软件工程学科出现的主要原因是( C )。 A、计算机的发展B、其他工程学科的影响

《软件工程导论》课程大作业-题目及要求

《软件工程专业导论与职业生涯规划》具体要求 一、大作业题目(注:每个小组完成一个题目) 1、计算机系统软件是什么?具体的系统软件有哪些?它们的特点、作用、地位是什么?就其中的2~3个具体的系统软件进行较为详细的阐述。 2、计算机应用软件是什么?具体的应用软件有哪些?它们的特点、作用、地位是什么?就其中的2~3个具体的应用软件进行较为详细的阐述。 3、阐述计算机软件的发展历程,对比分析各阶段的特征、理论体系、优势与不足。 4、软件危机是什么?列举2~3个具体的软件危机案例。导致软件危机爆发的原因有哪些?简单阐述现阶段软件危机的具体表现。 5、陈述“软件工程”概念提出的历史背景,包括发生的时间、地点、人物、事件等。“软件工程”的定义自提出以来,有多种说法。请尽可能罗列各种说法,并对其中的2~3个说法进行评述。软件工程的七条基本原理是哪些?分别对每条原理进行较为详细的阐述。 6、软件工程的目标是什么?十个性能是哪些?分别对每个性能进行较为详细的阐述。 7、软件工程研究的主要内容包括哪两个方面?分别对每个方面进行较为详细的阐述。 8、软件开发过程必须遵循的软件工程原则有哪些?分别对每个原则进行较为详细的阐述。 9、软件工程的过程包括哪些?分别对每个过程进行较为详细的阐述。 10、软件生命周期的概念是什么?软件生命周期的划分有哪些阶段?分别对每个阶段进行较为详细的阐述。 11、软件生命周期模型的概念是什么?有哪些比较流行的模型?对其中的瀑布模型和原型模型进行较为详细的阐述及对比分析,并各举例说明。 12、软件生命周期模型的概念是什么?有哪些比较流行的模型?对其中的演化模型和喷泉进行较为详细的阐述及对比分析,并各举例说明。 13、软件生命周期模型的概念是什么?有哪些比较流行的模型?对其中的基于知识的模型和基于构件的模型进行较为详细的阐述及对比分析,并各举例说明。 14、软件生命周期模型的概念是什么?有哪些比较流行的模型?对其中的变换模型和双赢螺旋模型进行较为详细的阐述及对比分析,并各举例说明。 15、软件工程的四要素是哪些?分别对每个要素进行较为详细的阐述。中国制定

(完整版)《软件工程》作业及答案

t h e i 《软件工程》作业及答案 1-1 什么是软件危机?它有哪些典型表现?为什么会出现软件危机?答: 软件危机是指在计算机软件的开发和维护过程中所遇到的一系列严重问题。概括地说,软件危机包含下述两方面的问题:如何开发软件,以满足对软件日益增长的需求;如何维护数量不断膨胀的已有软件。软件危机典型表现:对软件开发成本和进度的估计常常很不准确。用户对“已完成的”软件系统不满意的现象经常发生。软件产品的质量往往靠不住。软件常常是不可维护的。软件通常没有适当的文档资料。软件成本在计算机系统总成本中所占的比例逐年上升。软件开发生产 率提高的速度,远远跟不上计算机应用迅速普及深入的趋势。 产生软件危机的原因:一方面与软件本身的特点有关,另一方面也和软件开发与维护的方法不正确有关。软件不同于硬件,它是计算机系 统中的逻辑部件而不是物理部件。管理和控制软件开发过程相当困难。 软件是规模庞大,而且程序复杂性将随着程序规模的增加而呈指数上 升。目前相当多的软件专业人员对软件开发和维护还有不省糊涂观念, 在实践过程中或多或少地采用了错误的方法和技术,这是使软件问题发展成软件危机的主要原因。1-2 假设你是一家软件公司的总工程师,当你把图1.1给手下的软件 工程师们观看,告诉他们及早发现并改正错误的重要性时,有人不同意你的观点,认为要求在错误进入软件之前就清除它们是不现实的,并举例说:“如果一个故障是编码错误造成的,那么,一个人怎么能 在设计阶段清除它呢?”你怎么反驳他? 1-3 什么是软件工程?它有哪些本质特性?怎样用软件工程消除软件危机? 答: 软件工程是指导计算机软件开发和维护的一门工程学科。采用工程的概念、原理、技术和方法来开发与维护软件,把经过时间考验而证明正确的管理技术和当前能够得到的最好的技术方法结合起来,以经济地开发出高质量的软件并有效地维护它。 软件工程本质特性:1、软件工程关注于大型程序的构造;2、软件工程的中心课题是控制复杂性;3、软件经常变化;4、开发软件的效率非常重要;5、和谐地合作是开发软件的关键;6、软件必须有效地支持它的用户;7、在软件工程领域中是由具有一种文化背景的人替具 有另一种文化背景的人创造产品。 消除软件危机的途径:为了消除软件危机,首先应该对计算机软件有一个正确的认识。必须充分认识到软件开发不是某种个体劳动的神秘技巧,而应该是一种组织良好、管理严密、各类人员协同配合、共同完成的工程项目。应该推广使用在实践中总结出来的开发软件的成功 的技术和方法,并且研究探索更好更有效的技术和方法,尽快消除在 计算机系统早期发展阶段形成的一些错误概念和做法。应该开发和使用更好的软件工具。为了解决软件危机,既要有技术措施(方法和工具),又要有必要的组织管理措施。1-6 什么是软件过程?它与软件工程方法学有何关系? 答: 软件过程是为了获得高质量软件所需要完成的一系列任务的框架, 它规定了完成各项任务的工作步骤。软件工程方法学包含软件过程。1-7 什么是软件生命周期模型?试比较瀑布模型、快速原型模型、增 量模型和螺旋模型的优缺点,说明每种模型的适用范围。 答: 生命周期模型简洁地描述软件过程,规定了把生命周期划分成哪些阶段及各个阶段执行顺序。 瀑布模型历史悠久、广为人知,它的优势在于它是规范的、文档驱动的方法;这种模型的问题是,最终开发出的软件产品可能并不是用户 真正需要的。 快速原型模型正是为了克服瀑布模型的缺点而提出来的。它通过快速构建起一个可在计算机上运行的原型系统,让用户试用原型并收集用 户反馈意见的办法,获取用户的真实需求。 增量模型具有可在软件开发的早期阶段使投资获得明显回报和较易维护的优点,但是,要求软件具有开放的结构是使用这种模型时固有的困难。 风险驱动的螺旋模型适用于内部开发的大型软件项目,但是,只有在开发人员具有风 险分析和排除风险的经验及专门知识时,使用这种模型才会获得成功。 快速原型模型:适合小型软件; 螺旋模型:适合内部开发的大规模软件项目。2-1 在软件开发的早期阶段为什么要进行可行性研究?应该从哪些方面 研究目标系统的可行性? 答: 可行性研究的目的,就是用最小的代价在尽可能短的时间内确定 问题是否能够解决。至少应该从下述三方面研究每种解法的可行性:(1)技术可行性;(2)经济可行性;(3)操作可行性。 2-5 北京某高校可用的电话号码有以下几类:校内电话号码由4位数字组成,第1位数字不是0;校外电话又分为本市电话和外地电话两类,拨校外电话需先拨0,若是本市电话则再接着拨8位数字(第1位不是0),若是外地电话则拨3位区码再拨8位电话号码(第1位不是0)。请用2.5.2小节讲述的定义数据的方法,定义上述的电话号码。答: 电话号码=[校内电话|本市电话|外地电话] 非零数字字符=[1|2|3|4|5|6|7|8|9] 校内电话=非零数字字符+3{数字}3本市电话=0+非零数字字符+7{数字}7外地电话=0+区码+非零数字字符+7{数字}73-1 为什么要进行需求分析?通常对软件系统有哪些需求?答: 为了开发出真正满足用户需求的软件产品,首先必须知道用户的需求。对软件需求的深入理解是软件开发工作获得成功的前提条件,不论我们把设计和编码工作做得如何出色,不能真正满足用户需求的程序只会令用户失望,给开发者带来烦恼。确定对系统的综合要求:1、功能需求;2、性能需求;3、可靠性和可用性需求;4、出错处理需求;5、接口需求;6、约束;7、逆向需求;8、将来可以提出的要求,分析系统的数据要求。3-2 怎样与用户有效地沟通以获取用户的真实需求? 答: 与用户沟通获取需求的方法:访谈;面向数据流自顶向下求精;简易的应用规格说明技术;快速建立软件原型 4-2 在什么情况下应该使用形式化说明技术?使用形式化说明技术时应 遵守哪些准则? 答: 在开发大型软件系统的过程中应该使用形式化说明技术。应用形式化方法的准则:(1)应该选用适当的表示方法。(2)应该形 式化,但不要过分形式化。 (3)应该估算成本。(4)应该有形式化方法顾问随时提供咨询。 (5)不应该放弃传统的开发方法。(6)应该建立详尽的文档。(7)不应该放弃质量标准。(8)不应该盲目依赖形式化方法。(9)应该测试、测试再测试。(10)应该重用 7-8 对一个包含10000条机器指令的程序进行一个月集成测试后,总 共改正了15个错误,此时MTTF=10h;经过两个月测试后,总共改正了 25个错误(第二个月改正了10个错误),MTTF=15h 。要求:(1) 根据上述数据确定MTTF 与测试时间之间的函数关系,画出 MTTF 与测试时间τ的关系曲线。在画这条曲线时做了什么假设?(2) 为做到MTTF=100h ,必须进行多长时间的集成测试?当集成测试结束时总共改正了多少个错误,还有多少个错误潜伏在程序中? 答: (1)所做假设:1)单位长度里的错误数近似为常数;2)失效率正比于软件中剩余的错误数,而平均无故障时间与剩余的错误数成反比. 3)发现的每一个错误都立即正确地改正了.(2)由Shooman 公式:MTTF=I T /(K*(E T -E C (T))) 其中,I T =104,MTTF 1=10,n 1=15,MTTF 2=15,n 2=25。得:MTTF 1=I T /(K*(E T -E C (T 1)))10=10000/(K*(E T -15))MTTF 2=I T /(K*(E T -E C (T 2)))15=10000/(K*(E T -25)) (1)解得程序中固有的错误总数E T =45,此外K=100/3。(2)设MTTF=100,有 100=10000/((100/3)*(45-x))

相关文档
最新文档