2011年春季学期软件工程第一次作业(精)

2011年春季学期软件工程第一次作业(精)
2011年春季学期软件工程第一次作业(精)

2011年春季学期软件工程第一次作业

一、单项选择题(本大题共 60分,共 60 小题,每小题 1 分

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. 数据流图是 ( 方法中用于表示系统的逻辑模型的一种图形工具

A. SA

B. SD

C. SP

D. SC

8. 下列关于软件的特征不正确的是 (

A. 软件容易受到磨损

B. 软件是一种逻辑实体 , 具有抽象性

C. 软件是开发出来的 , 不是制造出来的

D. 软件的开发和运行受到计算机系统的限制

9. 软件开发方法的主要工作模型有(。

A. 螺旋模型

B. 循环模型

C. 瀑布模型

D. 专家模型

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

A. 螺旋模型

B. 瀑布模型

C. 增量模型

D. 喷泉模型

11. 进行需求分析可使用多种工具 , 但 ( 是不适用的

A. 数据流图

B. 判定表

C. PAD图

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. 可行性研究的工作成果是(。

A. 初步的项目开发计划

B. 设计规格说明书

C. 测试说明书

D. 需求规格说明书

20. 软件工程三要素是(。

A. 技术、方法和工具

B. 方法、工具和过程

C. 方法、对象和类

D. 过程、模型、方法

21. 软件质量是贯穿软件(的一个极为重要的问题

A. 开发

B. 生存期

C. 设计

D. 维护

22. 软件危机的原因之一是 (

A. 使用了程序设计方法

B. 采用了计算机辅助设计

C. 软件规模较小

D. 生产方式落后

23. 软件是“逐渐”开发出来的 , 开发出一部分 , 向用户展示一部分 , 可让用户及早看到部分软件 , 及早发现问题 . 该模型是(

A. 瀑布模型

B. 螺旋模型

C. 喷泉模型

D. 快速应用开发模型

24. Putnam成本估算经验模型是 (

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. 自顶向下估算方法的主要优点是对 ( 工作的重视 , 所以估算中不会遗漏系统级的成本估算 , 估算工作量小、速度快

A. 成本估算

B. 系统级

C. 底层

D. 工程管理

31. 在将需求规格说明书提交给设计阶段之前 , 必须进行(。

A. 修改

B. 追踪

C. 调试

D. 评审

32. 软件危机的主要表现是(

A. 软件成本太高

B. 软件产品的质量低劣

C. 软件开发人员明显不足

D. 软件生产率低下

33. IDEF图反映系统(。

A. 怎么做

B. 对谁做

C. 何时做

D. 做什么

34. 技术可行性要研究的问题之一是 (

A. 存在侵权否

B. 成本效益问题

C. 运行方式可行否

D. 技术风险问题

35. 划分软件生存周期的阶段时候所应遵循的基本原则是(。

A. 各阶段的任务尽可能相关

B. 各阶段的任务尽可能相对独立

C. 各阶段的任务在时间上连续

D. 各阶段的任务在时间上相对独立

36. 快速原型是利用原型辅助软件开发的一种新思想 , 它是应用于软件生命周期的 (

A. 需求阶段

B. 设计阶段

C. 测试阶段

D. 软件开发的各个阶段

37. COCOMO是 ( 的缩写

A. 模块性成本模型

B. 结构性成本模型

C. 动态单变量模型

D. 动态多变量模型

38. 在数据流图中的数据存储是指 (。

A. 手工台帐

B. 数据存储的地方

C. 数据库文件

D. 磁盘文件

39. 在变更控制中, (可用来确保不同用户所执行的并发变更。

A. 异步控制

B. 同步控制

C. 存取控制

D. 基线控制

40. 质量保证 , 它是为保证产品和服务充分满足 ( 需求而进行的有计划、有组织的活动

A. 开发者

B. 生产者

C. 测试者

D. 消费者

41. 开发软件所需高成本和陈平的地址栏之间有着尖锐的矛盾,这种现象称作(。

A. 软件投机

B. 软件危机

C. 软件工程

D. 软件生产

42. 在结构化分析模型中 , 其核心是(

A. DD

B. DFD

C. ER图

D. STD图

43. 软件工程管理的具体内容不包括对 ( 管理

A. 开发人员

B. 配置

C. 经费

D. 设备

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

A. 软件做什么

B. 用户使用界面

C. 输入的信息

D. 软件的规模

45. SA方法的基本思想是 (

A. 自底向上逐步抽象

B. 自顶向上逐步分解

C. 自顶向下逐步分解

D. 自顶向下逐步抽象

46. 软件可行性研究一般不考虑 (

A. 是否有足够的人员和相关的技术来支持系统开发

B. 是否有足够的工具和相关的技术来支持系统开发

C. 待开发软件是否有市场、经济上是否合算

D. 待开发的软件是否会有质量问题

47. 原型开发步骤主要包括 :快速分析、构造原型、运行原型、 ( 、修改原型

A. 评价原型

B. 测试原型

C. 抛弃原型

D. 开发原型

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

A. 软件危机

B. 软件工程

C. 程序设计革命

D. 结构化程序设计

49. 在软件成本估计模型中 , 给出了开发工作量 E 与开发时间 T 的 4次方成反比的模型是(

A. Putnam模型

B. COCOMO模型

C. ER模型

D. 静态单变量模型

50. 快速原型是利用原型辅助软件开发的一种新思想 , 由于使用的语言效率不高 , 因而它大多数应用于软件生命周期的 (

A. 需求阶段

B. 设计阶段

C. 测试阶段

D. 软件开发的各个阶段

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

A. 源点

B. 终点

C. 加工

D. 模块

52. CASE系统所涉及到的技术有两类 :一类是支持软件开发过程本身的技术 ; 另一类是支持软件 ( 的技术

A. 开发过程本身

B. 开发方法管理

C. 开发方法本身

D. 开发过程管理

53. 需求提炼的主要任务是 (

A. 建立分析模型

B. 编写 SRS

C. 编写可行性研究报告

D. 建立物理模型

54. 需求规格说明书在软件开发中起着重要的作用 , 但其作用不应当包括(

A. 软件设计的依据

B. 用户和开发入员对软件要“做什么”的共同理解

C. 软件验收的依据

D. 软件可行性分析的依据

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

A. 维护时期

B. 计划时期

C. 运行时期

D. 开发时期

56. 软件项目管理过程中常用 PERT 图 . 它可以确定(

A. 项目成本

B. 关键路径

C. 项目负责人

D. 系统流程

57. 需求分析阶段不适用于描述加工逻辑的工具是 (

A. 结构化语言

B. 判定表

C. 判定树

D. 程序流程图

58. 为了确保每个开发过程的质量 , 防止把软件差错传递到下一个过程 , 必须进行(

A. 软件维护

B. 软件容错

C. 质量检验

D. 软件重用

59. 问题分析阶段的参加人员主要有(。

A. 用户

B. 设计人员

C. 分析员

D. 分析员和用户

60. 软件工程有(三部分组成。

A. 目标,方法,过程

B. 方法,工具,过程

C. 目标,方法,工具

D. 目标,工具,过程

二、多项选择题(本大题共 20分,共 10 小题,每小题 2 分 1. 问题定义阶段的目标是 (

A. 弄清要计算机解决的根本问题是什么

B. 确定新系统的作用域

C. 确定项目所需的资源和经费

D. 确定怎样解决问题

2. 快速原型模型的特点是 (

A. 仅包括未来系统的主要功能 , 以及系统的重要接口

B. 尽量使用能够缩短开发周期的语言和工具

C. 对开发环境的要求较低 , 能够得到迅速的推广

D. 在原型系统的基础上 , 通过补充与修改获得最终的实际系统 . 3. 在数据流图中 , 变换型结构由 ( 组成

A. 传入路径

B. 变换中心

C. 传出路径

D. 事务中心

E. 动作路径

4. 软件风险分析包括 (

A. 风险识别

B. 风险预测

C. 风险驾驭

D. 风险管理

5. 在 ER 模型中实体之间的关系包括 (

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. 编写 SRS

D. 建立物理模型

三、判断题(本大题共 20分,共 20 小题,每小题 1 分

1. 可行性研究的结果有可能将软件开发项目否定 .(

2. 螺旋模型是在瀑布模型和增量模型的基础上增加了风险分析活动。

3. 数据流图和数据字典共同构成系统的逻辑模型 .(

4. 需求分析的结果应该以一种清晰的、简洁的、一致的且无二义性的方式加以表达 .(

5. 加工说明 /处理描述(PSPEC 是对 DFD 中每个加工所作的说明 .(

6. 软件开发配备人员的基本原则是:重质量、重数量、重培训。

7. RCP法与 RSP 法的主要区别是前者采用循环渐进的开发方式,原型将成为最终的产品,而后者将被废弃。

8. HIPO图是以功能、功能完备性准则逐层分解的。

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

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

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

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

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

软件工程导论期末考试试题和答案

1.软件生存周期一般可分为__问题定义__、可行性研究、_需求分析_____、设计编码、__ 测试________、运行与维护阶段。 2.按软件的功能进行划分,软件可以划分为系统软件、支撑软件 和应用软件。 3.可行性研究主要集中在以下四个方面经济可行性、技术可行 性、法律可行性和抉择。 4.用户界面的可使用性是用户界面设计最重要的也是最基本的目标。 5.常见的软件概要设计方法有3大类:以数据流图为基础构造模块结构的___结构化设计 方法_________,以数据结构为基础构造模块的__jackson方法__________,以对象、类、继承和通信为基础的__面向对象设计方法__________。 6.__数据流图________和__数据字典___共同构成系统的逻辑模型。 7.软件测试的方法有__分析方法________和___非分析方法_______(即黑盒法)。 8.单元测试一般以___白盒_____________测试为主,___黑盒______测试为辅。 9.成本估计方法主要有__自底向上估计________、_自顶向下估计_________和算法模型估 计三种类型。 1.下列哪个阶段不属于软件生存周期的三大阶段( C )。 A、计划阶段 B、开发阶段 C、编码阶段 D、维护阶段 2.需求分析是(A )。 3.A、软件开发工作的基础B、软件生存周期的开始 4.C、由系统分析员单独完成的D、由用户自己单独完成的 5.原型化方法是软件开发中一类常用的方法,它与结构化方法相比较,更需要(B )。 6.A、明确的需求定义B、完整的生命周期 7.C、较长的开发时间D、熟练的开发人员 8.软件维护时,对测试阶段未发现的错误进行测试、诊断、定位、纠错,直至修改的回归 测试过程称为( A )。 9.A、改正性维护B、适应性维护 10.C、完善性维护D、预防性维护 11.一般说来,投入运行的软件系统中有错误(A )。

软件工程导论课后习题答案95829882

《软件工程导论》课后习题答案 第一章软件工程概论 1.什么是软件危机?它们有哪些典型表现?为什么会出现软件危机? “软件危机”是指计算机软件的“开发”和“维护”过程中所遇到的一系列“严重问题”。这些问题决不仅仅是不能正常运行的软件才具有的,实际上,几乎“所有软件”都不同程度地存在这些问题。 “软件危机”包含两方面的问题: (1)如何开发软件,以满足对软件日益增长的需求; (2)如何维护数量不断膨胀的已有软件。 它们有以下表现: (1)对软件开发成本和进度的估计常常很不准确; (2)用户对“已完成的”软件系统不满意的现象经常发生; (3)软件产品的质量往往靠不住; (4)软件常常是不可维护的; (5)软件通常没有适当的文档资料; (6)软件成本在计算机系统总成本中所占的比例逐年上升; (7)软件开发生产率提高的速度,远远跟不上计算机应用普及深入的趋势。 出现软件危机的原因 (1)开发人员与客户认识之间的矛盾 (2)开发人员能力与开发目标之间的矛盾 (3)预估与实际工作量之间的矛盾 (4)客户认识的提高与软件维护之间的矛盾 (5)遗产系统与实施软件之间的矛盾 2.假设自己是一家软件公司的总工程师,当把图1.1给手下的软件工程师们观看,告诉他们及时发现并改正错误的重要性时,有人不同意这个观点,认为要求在错误进入软件之前就清楚它们是不现实的,并举例说:“如果一个故障是编码错误造成的,那么,一个人怎么能在设计阶段清除它呢?”应该怎么反驳他? 答:在软件开发的不同阶段进行修改付出的代价是很不相同的,在早期引入变动,涉及的面较少,因而代价也比较低;在开发的中期,软件配置的许多成分已经完成,引入一个变动要对所有已完成的配置成分都做相应的修改, 不仅工作量大,而且逻辑上也更复杂,因此付出的代价剧增;在软件“已经完成” 是在引入变动,当然付出的代价更高。一个故障是代码错误造成的,有时这种错误是不可避免的,但要修改的成本是很小的,因为这不是 整体构架的错误。 3.什么是软件工程?它有哪些本质特征?怎么用软件工程消除软件危机? 软件工程是知道计算机软件开发和维护的一门工程学科。采用工程的概念、原理、技术和方法来开发与维护软件,把经过时间考验而证明正确的管理技术和当前能够

软件工程大作业.

《软件工程》大作业 学期: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(浏览器、服务器)构架开发网站和系统已成为一种主流趋势,人们对其的需求也越来越大。 现在已经进入网络时代,很多电子产品的生产企业也开始意识到了网络的重要性,开始在电子产品中加入对网络服务的支持。比如在智能手机中增加了对移动互联网应用的支持,这在提升了电子产品的竞争力的同时,也扩展了电子商务的应用范围。 总体上看,电子商务的发展,具有十分良好的发展前景。

2019最新软件工程导论期末考试题库及答案

2019最新软件工程导论期末考试题库及答案 1.填空题 1.一般来说,可以从__一致性__、_完整性___、_现实性____和_有效性___四个方面验证软件需求的正确性。 2.IPO图是_输入、处理和输出图_的简称,它是美国IBM 公司发展完善起来的一种图形工具。 3.系统流程图是描述__物理模型__的传统工具,用图形符 号表达了系统中各种元素之间的_____信息流动_____情况。4.数据流图中的箭头表示数据流,椭圆或圆形表示数据处理,矩形表示数据的源点/终点。5.软件测试的步骤按顺序分别是:___单元测试_____、子系统测试、系统测试(子系统和系统测试通常称为集 成测试)、__确认测试__和_____系统测试(集成测试)____ 6.软件生命周期一般可分为_问题定义_、可行性研究、_需求分析_、设计编码、_测试_、运行与维护阶段。 7.可行性研究主要集中在以下四个方面_经济可行性_、__技术可行性____、__法律可行性___和抉择。 8.在结构化设计中,HIPO图应用在总体设计阶段,由IPO图和_层次图_两部分组成。 9.复杂问题的对象模型通常由下述五个层次组成:主题层、___类与对象_层、__结构___层、_属性_层和__服务_层。 10.实施精化设计的目标是基于模块的“高内聚低耦合” 的原则,提高模块的_独立性。 11.软件生命周期一般可分为___问题定义_、可行性研究、__需求分析__、概要设计__、详细设计、编码、__软件测试_、运行与维护阶段。 12.面向对象的数据存储管理模式分为__文件__、_关系数据库__和__面向对象数据库___三种。 13.单元测试一般以_白盒_测试为主,__黑盒__测试为辅。

软件工程导论部分课后习题答案

第一章 1-1 什么是软件危机? 是指在计算机软件的开发和维护过程中所遇到的一系列严重问题。 1-3 什么是软件工程? 是指导计算机软件开发和维护的一门工程学科。 1-4 简述结构化范型和面向对象范型的要点,并分析它们的优缺点。 目前使用得最广泛的软件工程方法学(2 种): 1. 传统方法学:也称为生命周期方法学或结构化范型。优点:把软件生命周期划分成基干个阶段,每个阶段的任务相对独立,而且比较简单,便于不同人员分工协作,从而降低了整个软件开发过程的困难程度。缺点:当软件规模庞大时,或者对软件的需求是模糊的或会承受时间而变化的时候,开发出的软件往往不成功;而且维护起来仍然很困难。 2. 面向对象方法学:优点:降低了软件产品的复杂性;提高了软件的可理解性;简化了软件的开发和维护工作;促进了软件重用。 1-6 什么是软件过程?它与软件工程方法学有何关系? z 软件过程:是为了获得高质量软件所需要完成的一系列任务的框架,它规定了完成各项任务的工作步骤z 软件工程方法学:通常把在软件生命周期全过程中使用的一整套技术方法的集合称为方法学,也称范型 1-7 什么是软件生命周期模型,试比较瀑布模型,快速原型模型,增量模型,和螺旋模型的优缺点,说明每种模型的适用范围。 软件生命周期由软件定义、软件开发和运行维护3个时期组成,每个时期又进一步划分成若干个阶段。生命周期模型规定了把生命周期划分成哪些阶段及各个阶段的执行顺序,因此,也称为过程模型。 瀑布模型的优点:1.可强迫开发人员采用规范的方法;2.严格规定了每个阶段必须提交的文档;3.要求每个阶段交出的所有产品都必须经过质量保证小组的仔细验证。 瀑布模型的缺点:1.在软件开发初期,指明用户全部需求是困难的;2.需求确定后,经过一段时间才得到软件最初版本;3.完全依赖规格说明,导致不能满足用户需求。适用中小型项目。 快速原型模型的优点:1满足用户需求程度高;2用户的参与面广;3返工现象少快速原型模型的优点:不适用大型软件的开发适用于小型项目。 增量模型的优点:1短期内可以交付满足部分用户需求的功能产品;2逐步增加功能可以让用户去适应新产品;3开放式的软件可维护性比较好;4开始第一构件前,已经完成需求说明。 增量模型的缺点:1对现有产品功能造成破坏;2意义上的矛盾适用于中型软件的开发 螺旋模型的优点:1集成了瀑布模型、快速原型模型、增量模型的优点;2支持用户需求动态变化;3需求分析与软件实现紧密联系相互依赖;4原型作为刑式的可执行的需求规格说明,即利用用户和开发人员共同理解,又可作为后续开发的基础;5为用户参与决策提供方便;6提高目标软件的适应能力;7降低风险;8在大型软件开发过程中充分发挥优势。螺旋模型的缺点:1迭代次数影响开发成本,延迟提价时间;2找不到关键改进点,人才、物力、财力时间引起无谓消耗;3成于风险分析,败于风险分析。适用于内部开发的大规模软件项目。 1-8:为什么说喷泉模型叫好的体现了面向对象软件开发过程无缝和迭代的特性?

软件工程大作业

《软件工程》大作业 学期: 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.适合于面向对象方法学的软件生存周期模型是( B ) A.瀑布模型 B.喷泉模型 C.螺旋模型 D.增量模型 2.从实用角度看,数据规范化程度在大多数场合选用第( C )范式。 A. 1 B.2 C.3 D.5 3. 可行性分析研究的目的是( A )。 A.项目值得开发否 B.争取项目 C.开发项目 D.规划项目 4. 模块的内聚性最高的是 ( D ) A.逻辑内聚 B.时间内聚 C.偶然内聚 D.功能内聚 5.开发软件所需高成本和产品的低质量之间有着尖锐的矛盾,这种现象称做 ( B ) A. 软件工程 B. 软件危机 C. 软件周期 D. 软件产生 6. 需求分析阶段的任务是确定( D ) A.软件开发方法 B.软件开发工具 C.软件开发费 D.软件系统的功能 7. 完整的软件结构通常用( B )图来表示。 A. IPO 图 B. HIPO 图 C.PAD 图 D.DFD 图 8. 在白盒法技术测试用例的设计中( A )是最弱的覆盖标准。 A.语句 B.路径 C.条件组合 D.判定 9?对象实现了数据和操作的结合,使数据和操作( C )于对象的统一体中。 A.结合 B.隐藏 C.封装 D.抽象 10. 在数据流图中,圆代表( C )。 A.源点 B.终点 C.加工 D.模块 11. 模块内聚度越高,说明模块内各成分彼此结合的程度越( B )。 A.松散 B.紧密 C.无法判断 D.相等 12. 软件测试方法中,黑盒、白盒测试法是常用的方法,其中黑盒测试主要用于测试( B )。 A.结构合理性 B.软件外部功能 C.程序正确性 D.程序内部逻辑 13. 面向对象开发方法中, ( C )是占主导地位的标准建模语言。 A.Booch 方法 B.Coad 方法 C.UML 语言 D.OMT 方法 14. 软件需求分析的主要任务是准确地定义出要开发的软件系统是( C ) A.如何做 B.怎么做 C.做什么 D.对谁做 15. 结构化程序设计的一种基本方法是( C ) A.筛选法 B.迭代法 C.逐步求精法 D.递归法 二、填空题 1. 目前使用最广泛的软件工 程学方法分别是传统方法学和(面向对象方法学 ) )和事务流。 文档 ) 。 ( 重复 )三种结构。 自顶向下 的集成测试方法,对软件结构中下层使 6. 软件维护包括 ( 改正性维护 )、适应性维护、完善性维护、预防性维护。 7. 面向对象方法学建模得到的三个基本子模型是 (对象建模 ) .动态模型、功能模型。 8. 复杂大型问题的对象模型通常由主题 2. 数据流图中信息流的类型有(变换流 3. 软件的定义是:软件 =程序+数据+ 4. 经典结构程序设计包括顺序、选择和 5. 集成测试时对软件结构中上层使用 用 ( 自底向上 ) 的集成测试方法。

软件工程导论第五章课后答案

软件工程导论第五章课后 答案 -标准化文件发布号:(9456-EUATWK-MWUB-WUNN-INNUL-DDQTY-KII

第五章习题答案 1、为每种类型的模块耦合举一个具体例子。 答:耦合是对一个软件结构内不同模块之间互连程度的度量。耦合强弱取决于模块间接口的复杂程度,进入或访问某一模块的点,以及通过接口的数据,一般模块之间可能的连接方式有7种,构成耦合的7种类型,它们之间的关系为: 下面举例说明以上各种耦合: a.非直接耦合(Nondirect Coupling)在这种情况下,两个模块之间没有直接关系,它们之间的联系完全是通过主模块的控制和调用来实现的,这就是非直接耦合。例如在实数的运算中,有两个模块分别完成几个实数的求和,求乘积功能,这两个模块之间没有直接联系,只有在主模块调用中有执行的前后顺序而已,这个例子即属于非直接耦合。 b.数据耦合(Data Coupling)即一个模块访问另一个模块时,彼此之间是通过数据参数来交换输入,输出信息的,这种耦合为数据输入,输出信息的这种耦合为数据耦合。如有两个模块,其中A完成两个烽的比较,求出其中最大的并返回该值,模块B是完成了个数的比较,求出其中最大的并返回该最大值,为完成四个数的比较,模块B调用模块A即可完成,在这种调用关系中,模块A的运算结

果作为一个参烽参加B的运算,这两个模块之间即发生数据耦合。数据耦合是松散的耦合,模块间的独立性比较强。 c.标记耦合(Stamp Coupling),即一组模块通过参数传递记录信息,这就是标记耦合。事实上,这组模块共享了这个记录,它是某一数据结构的子结构,而不是简单变量。 d.控制耦合(Control Coupling)即一个模块通过开关标志,名字等控制住处明显的控制,选择另一模块的功能,这就是控制耦合,如下图所示,这一种耦合实质是在单一接口上实现选择多功能模块中的某项功能,如程序设计中用到多路选择结构即是最好的例子。e.外部耦合(External Coupling)即一组模块都访问同一全局简单变量而不是同一全局数据结构,而且不是通过参数表传递全局数据结构,而且不是通过参数表传递全局变量的信息。如C语言中都访问被说明为extern类型的外部变量的各个模块之间即发生外部耦合。外部耦合引起的问题类似于下面要介绍的公共耦合,区别在于外部耦合中不存在依赖于一个数据结构内部各项的物理安排。f.公共耦合(Common Coupling)若一组模块都访问同一个公共数据环境,则它们之间的耦合就是公共耦合。公共的数据环境可以是全局的数据结构,共享的通信区,内存的公共覆盖区等。如几个模块对同一个数据库的查询就属于这种耦合。公共耦合可以分为松散的公共耦合和紧密的公共耦合,其中松散的公共耦合是单向操作,如两个或多个模块对同一个文件的读操作;而紧密的公共耦合是双

软件工程导论》期末考试试题与答案

《软件工程导论》期末考试-试题与答案 一、填空题 1.软件工程中的结构化分析 SA 是一种面向________的分析方法。 2.软件模块独立性的两个定性度量标准是_________________。 3.软件开发是一个自顶向下逐步细化和求精的过程,而软件测试是一个________的过程。 4. ________和数据字典共同构成了系统的逻辑模型 5. ___________是一种黑盒测试技术,这种技术把程序的输入域划分为若干个数据类,据此导出测试用例。二、单选 题 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. Jackson 方法是在软件开发过程中常用的方法,使用 Jackson 方法时可以实现______。A.从数据结构导出程序结构B.从数据流图导出初始结构图C.从模块结构导出数据结构D.从模块结构导出程序结构 7.软件测试时为了________而执行程序的过程。A.纠正 错误B.发现错误 C.避免错误 D.证明错误 8.在软件系统中,一个模块应具有什么样的功能,这是由_____决定的。A.总体 设计B.需求分析C.详细设计D.程序设计 9.面向对象分析是对系统进行_________的一种方法。A.需求 分析B.程序设计C.设计评审D.测试验收 10.软件文档是软件工程实施中的重要部分,它不仅是软件开发各阶段的重要依据,而 且影响软件的_______。A.可理解 性B.可维护性C.可扩展性D.可 移植

中国石油大学 软件工程 第一次在线作业

中国石油大学软件工程第一次在线作业 (2.5分)结构化分析建立功能模型的工具是() ? A、DFD ? B、判定树/判定表 ? C、SC ? D、结构化语言 我的答案:A 此题得分:2.5分 2.(2.5分)检查软件产品是否符合需求定义的过程称为() ? A、确认测试 ? B、集成测试 ? C、系统测试 ? D、单元测试 我的答案:A 此题得分:2.5分 3.(2.5分)软件测试方法中,黑盒测试方法和白盒测试方法是常用的方法,其中黑盒测试方法主要用于测试() ? A、结构合理性 ? B、软件外部功能 ? C、程序正确性 ? D、程序内部逻辑

我的答案:B 此题得分:2.5分 4.(2.5分)软件开发中常采用的结构化生命周期方法,由于其特征而一般称其为() ? A、瀑布模型 ? B、对象模型 ? C、螺旋模型 ? D、层次模型 我的答案:A 此题得分:2.5分 5.(2.5分)建立原型的目的不同,实现原型的途径也有所不同,下列不正确的类型是() ? A、用于验证软件需求的原型 ? B、垂直原型 ? C、用于验证设计方案的原型 ? D、用于演化出目标系统的原型 我的答案:B 此题得分:2.5分 6.(2.5分)面向对象的开发方法中,()将是面向对象技术领域内占主导地位的标准建模语言。 ? A、Booch方法 ? B、Coad方法 ? C、UML语言

? D、OMT方法 我的答案:C 此题得分:2.5分 7.(2.5分)黑盒技术设计测试用例的方法之一为() ? A、因果图 ? B、逻辑覆盖 ? C、循环覆盖 ? D、基本路径测试 我的答案:A 此题得分:2.5分 8.(2.5分)软件测试方法中的静态测试方法之一为() ? A、计算机辅助静态分析 ? B、黑盒法 ? C、路径覆盖 ? D、边界值分析 我的答案:A 此题得分:2.5分 9.(2.5分)技术可行性是可行性研究的关键,其主要内容一般不包括() ? A、风险分析 ? B、资源分析 ? C、人员分析 ? D、技术分析

软件工程导论作业答案

学号_31009210** 姓名_朱某某班级_软件10* 作业一 1.什么是软件危机?它有哪些典型表现?为什么会出现软件危机? “软件危机”是指计算机软件的“开发”和“维护”过程中所遇到的一系列“严重问题”。这些问题不仅仅是不能正常运行的软件才具有的,实际上,几乎“所有软件”都不同程度地存在这些问题。 “软件危机”包含两方面的问题: (1)如何开发软件,以满足对软件日益增长的需求; (2)如何维护数量不断膨胀的已有软件。 它们有以下表现: (1)对软件开发成本和进度的估计常常很不准确; (2)用户对“已完成的”软件系统不满意的现象经常发生; (3)软件产品的质量往往靠不住; (4)软件常常是不可维护的; (5)软件通常没有适当的文档资料; (6)软件成本在计算机系统总成本中所占的比例逐年上升; (7)软件开发生产速率提高的速度,远远跟不上计算机应用普及深入的趋势。 出现软件危机的原因 (1)开发人员与客户认识之间的矛盾 (2)开发人员能力与开发目标之间的矛盾 (3)预估与实际工作量之间的矛盾 (4)客户认识的提高与软件维护之间的矛盾 (5)遗产系统与实施软件之间的矛盾 2.假设自己是一家软件公司的总工程师,当把图1.1给手下的软件工程师们观看,告诉他们及早发现并改正错误的重要性时,有人不同意这个观点,认为要求在错误进入软件之前就清除它们是不现实的,并举例说:“如果一个故障是编码错误造成的,那么,一个人怎么能在设计阶段清除它呢?”应该怎么反驳他? 在软件开发的不同阶段进行修改付出的代价是很不相同的,在早期引入变动,涉及的面比较少,因而代价也比较低;在开发的中期,软件配置的许多成分已经完成,引入一个变动要对所有已完成的配置成分都做相应的修改,不仅工作量大,而且逻辑上也更复杂,因此付出的代价俱增。在软件“已经完成”时再引入变动,当然付出的代价更高。一个故障时代码错误造成的,有时这种错误时不可避免的,但要修改的成本是很小的,因为这不是整体构架的错误。 3.什么是软件工程?他有哪些本质特征?怎样用软件工程消除软件危机? 软件工程是指导计算机软件开发和维护的一门工程学科。采用工程的概念、原理、技术和方法来开发与维护软件,把经过时间考验而证明正确的管理技术和当前能够得到的最好技术方法结合起来,以经济地开发出高质量的软件并有效的维护它,这就是软件工程。 本质特征: 软件工程关注于大型软件的构造 软件工程的中心课题是控制复杂性 软件经常变化 开发软件的效率非常重要 和谐地合作是开发软件的关键 软件必须有效支持它用户

软件工程大作业.

软件工程大作业 题目:学生档案管理系统 小组成员:戚盈洁( 王大伟( 王磊( 霍成海( 目录 第一章. 系统调查 (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 系统调结构图

春季学期软件工程第一次作业精

2011年春季学期软件工程第一次作业 一、单项选择题(本大题共 60分,共 60 小题,每小题 1 分 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. 数据流图是 ( 方法中用于表示系统的逻辑模型的一种图形工具 A. SA B. SD

C. SP D. SC 8. 下列关于软件的特征不正确的是 ( A. 软件容易受到磨损 B. 软件是一种逻辑实体 , 具有抽象性 C. 软件是开发出来的 , 不是制造出来的 D. 软件的开发和运行受到计算机系统的限制 9. 软件开发方法的主要工作模型有(。 A. 螺旋模型 B. 循环模型 C. 瀑布模型 D. 专家模型 10. 包含风险分析的软件工程模型是(。 A. 螺旋模型 B. 瀑布模型 C. 增量模型 D. 喷泉模型 11. 进行需求分析可使用多种工具 , 但 ( 是不适用的 A. 数据流图

【信息化-精编】软件工程导论课后习题详细答案

软件工程导论课后习题详细答案

《软件工程导论》课后习题答案 第一章软件工程概论 1.什么是软件危机? 软件危机是指在计算机软件的开发和维护过程中所遇到的一系列严重问题。这些问题表现在以下几个方面:(1)用户对开发出的软件很难满意。(2)软件产品的质量往往靠不住。(3)一般软件很难维护。(4)软件生产效率很低。(5)软件开发成本越来越大。(6)软件成本与开发进度难以估计。(7)软件技术的发展远远满足不了计算机应用的普及与深入的需要。 2.为什么会产生软件危机? (1)开发人员方面,对软件产品缺乏正确认识,没有真正理解软件产品是一个完整的配置组成。造成开发中制定计划盲目、编程草率,不考虑维护工作的必要性。(2)软件本身方面,对于计算机系统来说,软件是逻辑部件,软件开发过程没有统一的、公认的方法论和规范指导,造成软件维护困难。(3)尤其是随着软件规模越来越大,复杂程度越来越高,原有软件开发方式效率不高、质量不能保证、成本过高、研制周期不易估计、维护困难等一系列问题更为突出,技术的发展已经远远不能适应社会需求。 3.怎样克服软件危机? (1)充分吸收和借鉴人类长期以来从事各种工程项目中积累的行之有效的有效原理、概念、技术与方法,特别是吸取几十年来人类从事计算机硬件研究和开发的经验教训。在开发软件的过程中努力作到良好的组织,严格的管理,相互友好的协作。(2)推广在实践中总结出来的开发软件的成功的技术和方法,并研究更好、更有效的技术和方法,尽快克服在计算机系统早期发展阶段形成的一些错误概念和作法。(3)根据不同的应用领域,开发更好的软件工具并使用这些工具。将软件开发各个阶段使用的软件工具集合成一个整体,形成一个很好的软件开发支环环境。总之为了解决软件危机,既要有技术措施(方法和工具),又要有必要的组织管理措施。 4.构成软件项目的最终产品:应用程序、系统程序、面向用户的文档资料和面向开发者的文档资料。 5.什么是软件生存周期?软件生存周期是指从软件定义、开发、使用、维护到淘汰的全过程。 5-1。(1)在1985年对计算机存储容量的需求,估计是 如果字长为16位,则这个存储器的价格是 ● ●(2)如果一条指令的长度为一个字,则使存储器装满程序共需4474263条指令。 ●在1985年一名程序员每天可开发出10条指令,如果每月有20个工作日,则每人每月可开发出10×20条指令。 ●为了开发出4474263条指令以装满存储器,需要的工作量是: ●程序员的月平均工资是4000美元,开发出4474263条指令的成本是 ●(3)在1995年对存储容量的需求估计为: ● 7 4080e =4472.0048.01974 1985??=-P )19601995(28.04080-=e M

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

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

软件工程导论期末试题

软件工程导论期末考试试题 一.选择(20分) 1、瀑布模型把软件生命周期划分为八个阶段:问题的定义、可行性研究、软件需求分析、系统总体设计、详细设计、编码、测试和运行、维护。八个阶段又可归纳为三个大的阶段:计划阶段、开发阶段和( C)。 A、详细计划 B、可行性分析 C、运行阶段 D、测试与排错 2、从结构化的瀑布模型看,在它的生命周期中的八个阶段中,下面的几个选项中哪个环节出错,对软件的影响最大(C )。 A、详细设计阶段 B、概要设计阶段 C、需求分析阶段 D、测试和运行阶段 3、在结构化的瀑布模型中,哪一个阶段定义的标准将成为软件测试中的系统测试阶段的目标(A )。 A、需求分析阶段 B、详细设计阶段 C、概要设计阶段 D、可行性研究阶段 4、软件工程的出现主要是由于(C )。 A.程序设计方法学的影响 B.其它工程科学的影响 C. 软件危机的出现 D.计算机的发展 5、软件工程方法学的目的是:使软件生产规范化和工程化,而软件工程方法得以实施的主要保证是(C ) A、硬件环境 B、软件开发的环境 C、软件开发工具和软件开发的环境 D、开发人员的素质 6、软件开发常使用的两种基本方法是结构化和原型化方法,在实际的应用中,它们之间的关系表现为 ( B) A、相互排斥 B、相互补充 C、独立使用 D、交替使用 7、UML是软件开发中的一个重要工具,它主要应用于哪种软件开发方法(C ) A、基于瀑布模型的结构化方法 B、基于需求动态定义的原型化方法 C、基于对象的面向对象的方法 D、基于数据的数据流开发方法

8、在下面的软件开发方法中,哪一个对软件设计和开发人员的开发要求最高(B ) A、结构化方法 B、原型化方法 C、面向对象的方法 D、控制流方法 9、结构化分析方法是一种预先严格定义需求的方法,它在实施时强调的是分析对象的(B ) A、控制流 B、数据流 C、程序流 D、指令流 10、软件开发的结构化生命周期方法将软件生命周期划分成(A ) A、计划阶段、开发阶段、运行阶段 B、计划阶段、编程阶段、测试阶段 C、总体设计、详细设计、编程调试 D、需求分析、功能定义、系统设计 二.填空(20分) 21.系统流程图是描述物理模型的传统工具,用图形符号表示系统中各个元素 表达了系统中各种元素之间的(信息流动)情况。 22.成本效益分析的目的是从(经济)角度评价开发一个项目是否可行。 23.自顶向下结合的渐增式测试法,在组合模块时有两种组合策略:深度优先 策略和(宽度优先策略) 。 24.独立路径是指包括一组以前没有处理的语句或条件的一条路径。从程序图 来看,一条独立路径是至少包含有一条(在其他独立路径中未有过)的边的路径。 25.汇编语言是面向(机器) 的,可以完成高级语言无法完成的特殊功能,如与外部设备之间的一些接口工作。 26.在JSP方法中解决结构冲突的具体办法是(中间数据结构或中间文件)。 27.详细设计的任务是确定每个模块的内部特性,即模块的算法、(使用的数据)。 28.所有软件维护申请报告要按规定方式提出,该报告也称( 软件问题)报告。 29.有两类维护技术:在开发阶段使用来减少错误、提高软件可维护性的面向 维护的技术;在维护阶段用来提高维护的效率和质量的(维护支援)技术。 30.科学工程计算需要大量的标准库函数,以便处理复杂的数值计算,可供选 择的语言有:(FORTRAN语言)、PASCAL语言、C语言和PL/1语言。三.判断(10分)

相关文档
最新文档