现代软件工程作业 - 范文中心

现代软件工程作业

06/21

(一)名词解释 1. 软件:

软件是计算机程序、数据以及相关的各种文档的集合。

2. 软件危机

软件危机是在软件发展第二阶段末期的规模较大的项目开发中,出现了与当初的计划推迟交工、费用比预算大幅度上升、不能满足用户要求、可靠性低、维护困难等问题,导致了软件危机。

3. 数据流图

数据流图是以图形的方式描述数据在系统中流动和处理的过程,只反映系统必须完成的逻辑功能,是一种功能模型。

4. 数据字典、

数据字典是用来定义数据流图中的各个成分的具体含义的。它以一种准确的、无二义性的说明方式为系统的分析、设计及维护提供了有关元素的一致的定义和详细的描述。

5. 变换流

变换流指数据流图(简称DFD )具有明显的输入、变换和输出界面。

6. 事务流

事务流指数据流图中输入流被分离成许多数据流,形成许多加工路径,并根据输入值选择其中一条路径来执行。

7. 耦合性

耦合性也称块间关系,指软件系统结构中各模块间相互联系紧密程度的一种度量。

8. 内聚性

内聚性又称块内联系,指模块的功能强度的度量,即一个模块内部各个元素彼此结合的紧密程度的度量。

9. 程序设计语言(PDL )

程序设计语言(简称PDL ),又称伪码,它是一种用于描述模块算法设计和处理细节的语言。

(二)填空题

1. 在信息处理和计算机领域内,一般认为软件是 _程序____、__文档和__数据___ 。 2. 数据流图的基本组成部分有 _数据流__、 _加工_、 _数据存储_、 _数据源点或终点_。 3. 数据流图和数据字典共同构成了系统的 __逻辑_模型,是需求规格说明书的主要组成部分。

4. 数据流图一般可分为 _变换型_和_事务型_两类。

5. 结构化设计方法中,要把数据流图转换成软件结构,若某个加工将它的输入流分离成许多发散的数据流,形成许多加工路径,并根据输入的值选择其中一个路径来执行,这种特征的DFD 称为 _事务型_数据流图。

6. PDL是描述处理过程“_怎么做_ ”的细节,结构化语言是描述加工“_做什么_ ”的。 (三)选择题

1. 软件工程的概念是哪年提出的(B )。 A. 1988 B. 1968 C. 1948 D. 1928

2. 影响输入输出风格的因素不包括(A )。 A. 数据状态 B. 通信环境

C. 用户经验 D. 输入/输出设备 3. 符合数据说明顺序规范的是(D )。

A. 全程量说明、局部量说明、类型说明、常量说明 B. 全程量说明、局部量说明、常量说明、类型说明 C. 类型说明、常量说明、全程量说明、局部量说明 D. 常量说明、类型说明、全程量说明、局部量说明 4. 瀑布模型的关键不足在于(D )。

A. 过于简单 B. 各个阶段需要进行评审 C. 过于灵活 D. 不能适应需求的动态变更 5. 以下哪一项不是软件危机的表现形式(C )。

A. 开发的软件不满足用户需要 B. 开发的软件可维护性差 C. 开发的软件价格便宜 D. 开发的软件可靠性差

6. 软件可行性研究实质上是要进行一次( A)需求分析、设计过程。 A. 简化、压缩的 B. 详细的 C. 彻底的 D. 深入的

7. 结构化设计是一种面向(A )的设计方法。 A. 数据流 B. 模块 C. 数据结构 D. 程序

8. 与确认测试阶段有关的文档是(A )。

A. 需求规格说明书 B. 概要设计说明书 C. 详细设计说明书 D. 源程序

9. 软件开发的需求活动,其主要任务是( D )。 A. 给出软件解决方案 B. 给出系统模块结构

C. 定义模块算法 D. 定义需求并建立系统模型 10. 需求分析阶段的研究对象是( A )。 A. 用户要求 B. 分析员要求 C. 系统要求 D. 软硬件要求 11. 可自动生成程序的详细设计方法是(D )。 A. 流程图 B. IPO图 C. 盒图 D. PAD图

12. 可行性研究采用( B )概括说明软件系统的物理模型。

A. 数据字典 B. 系统流程图 C. 数据流图 D. 成本-效益分析 (四)简答题

1. 简述瀑布模型的阶段划分和各阶段的主要任务以及瀑布模型存在的问题。 1. 瀑布模型的阶段划分和各阶段的任务为: (1) 需求分析和定义

根据系统的使用者(需方)需求进行具体分析,制定系统应完成的功能、目标、各项服务和

限制,确定工作范围和所花费的代价。并且以用户和软件开发人员都能理解的形式加以定义和明确。

(2) 系统和软件设计

先把用户的需求分成硬件需求和软件需求,在此基础上确定整个系统的结构。在软件设计中,进一步把用户的要求和系统的目标在软件系统的各项功能中表现出来,并分别使之达到能够进行程序设计的程度。 (3) 编程和单元测试 在这个阶段中,软件的设计已经以程序集合或单元程序的形式完成,并包含了验证各个单元程序是否满足式样要求的单元测试。 (4) 综合测试和系统测试

把各个单元程序和程序组结合起来,作为一个完整的系统进行测试。在这种测试中,一方面要发现和排除系统或程序中的错误,更重要的是要确认已完成的系统是否满足用户和设计者的要求。测试后,把这个软件提供给用户。 (5) 运行和维护

运行和维护是软件生存期中需要时间较长的一个阶段,在这一阶段,系统被实际装入并实际应用,那些在软件开发初期没有被发现的错误,或者是用户提出新的要求,都需要在这一阶段加以解决。

瀑布模型的问题之一是对软件工程中的反复性质认识不足,另外还有一个缺点是在开发工程的初期,就必须把规格式样确定下来,而在有些情况下,由于用户的需求不明确,某些规格式样开始是不太好确定的。软件工程是复杂的、多变的工程,用单纯的线性模型很难完全表示出来。

2. 简述SA 方法的优缺点。

SA 方法是软件需求分析中公认的、有成效的、技术成熟、使用广泛的一种分析方法。较适用于开发数据处理类型软件的需求分析。利用图形等半形式化工具表达需求,简明、易读,也易于使用。但也存在一些弱点,表现如下:

SA 方法仅是一个静态模型,没有反映处理的顺序,即控制流程,因此,不适合描述实时控制系统。

SA 方法使用DFD 在分析与描述“数据要求”方面是有局限的,只有与数据库技术中的实体联系图(ER图) 结合起来,才能较完整地描述用户对系统的需求。

DFD 不适合描述人机界面系统的要求、如一些人机交互较频繁的软件系统。 SA 方法要与形式化方法结合起来,才能更精确地描述软件需求。 要借助需求分析工具,提高需求分析的质量及效率。

3. 变换分析设计与事务分析设计有什么区别?简述其设计步骤。

变换分析设计是一个顺序结构,由输入、变换和输出三部分组成,其工作过程有3步:取得数据、变换数据和给出数据。事务分析设计是将它的输入流分离成许多发散的数据流,形成许多加工路径,并根据输入的值选择其中一个路径来执行。二者区别:变换分析设计适用于具有明显变换特征的数据流图,事务分析设计适用于具有明显事务特征的数据流图。 变换分析设计步骤:

① 确定DFD 中的变换中心、逻辑输入和逻辑输出:

从物理输入端开始,沿着数据流方向向系统中心寻找,直到有这样的数据流,它不能再被看做是系统的输入,则它的前一个数据流是系统的逻辑输入。

从物理输出端开始,逆数据流方向向中间移动,可以确定系统的逻辑输出。 介于逻辑输入和逻辑输出之间的加工就是变换中心,即主加工。 ② 设计软件结构的顶层和第一层——变换结构: 顶层即主模块,主要完成所有模块的控制。

第一层至少有3个功能模块:输入、输出和变换模块,即为逻辑输入设计一个输入模块,其功能是为顶层模块提供相应数据,为逻辑输出设计一个输出模块,其功能是输出顶层模块的信息,为变换中心设计一个变换模块,其功能是将逻辑输入进行变换加工,然后逻辑输出。 ③ 设计中、下层模块。对第一层的输入、变换、输出模块自顶向下逐层分解。 输入模块下属模块的设计:可设计两个下属模块,一个接收,一个转换。 输出模块下属模块的设计:可设计两个下属模块,一个转换,一个发送。 变换模块下属模块的设计:按照模块独立性原则来组织其结构,一般对每个基本加工建立一个功能模块。 ④ 设计的优化:

输入部分求精:为每个物理输入设置专门模块,其他输入模块与转换数据模块可适当合并。 输出部分求精:为每个物理输出设置专门模块,其他输出模块与转换数据模块可适当合并。 变换部分求精:根据设计准则,对模块进行合并或调整。 事务分析设计步骤:

① 确定DFD 的事务中心和加工路径:当数据流图中每个加工将一个输入数据分解成多个发散的输出数据流时,该加工就是事务中心,从事务中心辐射出去的数据流为各个加工路径。 ② 设计软件结构的顶层和第一层——事务结构。

顶层是一个全控模块,有两个部分:接收分支(与变换型DFD 的输入部分设计方法相同)和发送分支(即调度模块,它控制管理所有下层的事务处理模块)。 ③ 设计中、下层模块、优化等工作,与变换分析设计相同。

(五)应用题

某单位住房分配方案如下:所有住户50平方米以内每平方米1000元,超过50平方米后:在本人住房标准面积以内每平方米1500元,其中住房标准为:教授105平方米,副教授90平方米,讲师75平方米;标准面积以外每平方米4000元。请用判定表和判定树表示各条件组合与费用之间的关系。

S 表示住房面积,M 表示住房费用。

条件取值表

判定表

判定树

参考答案:

(一)名词解释

1. 软件是计算机程序、数据以及相关的各种文档的集合。

2. 软件危机是在软件发展第二阶段末期的规模较大的项目开发中,出现了与当初的计划推迟交工、费用比预算大幅度上升、不能满足用户要求、可靠性低、维护困难等问题,导致了软件危机。

3. 数据流图是以图形的方式描述数据在系统中流动和处理的过程,只反映系统必须完成的逻辑功能,是一种功能模型。

4. 数据字典是用来定义数据流图中的各个成分的具体含义的。它以一种准确的、无二义性的说明方式为系统的分析、设计及维护提供了有关元素的一致的定义和详细的描述。 5. 变换流指数据流图(简称DFD )具有明显的输入、变换和输出界面。

6. 事务流指数据流图中输入流被分离成许多数据流,形成许多加工路径,并根据输入值选择其中一条路径来执行。

7. 耦合性也称块间关系,指软件系统结构中各模块间相互联系紧密程度的一种度量。

8. 内聚性又称块内联系,指模块的功能强度的度量,即一个模块内部各个元素彼此结合的紧密程度的度量。

9. 程序设计语言(简称PDL ),又称伪码,它是一种用于描述模块算法设计和处理细节的语言。

(二)填空题

1. 程序 文档 数据

2. 数据流 加工 数据存储 数据源点或终点 3. 逻辑

4. 变换型 事务型 5. 事务型

6. 怎么做 做什么 (三)选择题

1.B 2.A 3.D 4.D 5.C 6.A 7.A 8.A 9. D 10. A 11.D 12. B (四)简答题

1. 瀑布模型的阶段划分和各阶段的任务为: (1) 需求分析和定义

根据系统的使用者(需方)需求进行具体分析,制定系统应完成的功能、目标、各项服务和限制,确定工作范围和所花费的代价。并且以用户和软件开发人员都能理解的形式加以定义和明确。

(2) 系统和软件设计

先把用户的需求分成硬件需求和软件需求,在此基础上确定整个系统的结构。在软件设计中,进一步把用户的要求和系统的目标在软件系统的各项功能中表现出来,并分别使之达到能够进行程序设计的程度。 (3) 编程和单元测试 在这个阶段中,软件的设计已经以程序集合或单元程序的形式完成,并包含了验证各个单元程序是否满足式样要求的单元测试。 (4) 综合测试和系统测试

把各个单元程序和程序组结合起来,作为一个完整的系统进行测试。在这种测试中,一方面

要发现和排除系统或程序中的错误,更重要的是要确认已完成的系统是否满足用户和设计者的要求。测试后,把这个软件提供给用户。 (5) 运行和维护

运行和维护是软件生存期中需要时间较长的一个阶段,在这一阶段,系统被实际装入并实际应用,那些在软件开发初期没有被发现的错误,或者是用户提出新的要求,都需要在这一阶段加以解决。

瀑布模型的问题之一是对软件工程中的反复性质认识不足,另外还有一个缺点是在开发工程的初期,就必须把规格式样确定下来,而在有些情况下,由于用户的需求不明确,某些规格式样开始是不太好确定的。软件工程是复杂的、多变的工程,用单纯的线性模型很难完全表示出来。

2. SA方法是软件需求分析中公认的、有成效的、技术成熟、使用广泛的一种分析方法。较适用于开发数据处理类型软件的需求分析。利用图形等半形式化工具表达需求,简明、易读,也易于使用。但也存在一些弱点,表现如下:

SA 方法仅是一个静态模型,没有反映处理的顺序,即控制流程,因此,不适合描述实时控制系统。

SA 方法使用DFD 在分析与描述“数据要求”方面是有局限的,只有与数据库技术中的实体联系图(ER图) 结合起来,才能较完整地描述用户对系统的需求。

DFD 不适合描述人机界面系统的要求、如一些人机交互较频繁的软件系统。 SA 方法要与形式化方法结合起来,才能更精确地描述软件需求。 要借助需求分析工具,提高需求分析的质量及效率。

3. 变换分析设计是一个顺序结构,由输入、变换和输出三部分组成,其工作过程有3步:取得数据、变换数据和给出数据。事务分析设计是将它的输入流分离成许多发散的数据流,形成许多加工路径,并根据输入的值选择其中一个路径来执行。二者区别:变换分析设计适用于具有明显变换特征的数据流图,事务分析设计适用于具有明显事务特征的数据流图。 变换分析设计步骤:

① 确定DFD 中的变换中心、逻辑输入和逻辑输出:

从物理输入端开始,沿着数据流方向向系统中心寻找,直到有这样的数据流,它不能再被看做是系统的输入,则它的前一个数据流是系统的逻辑输入。

从物理输出端开始,逆数据流方向向中间移动,可以确定系统的逻辑输出。 介于逻辑输入和逻辑输出之间的加工就是变换中心,即主加工。 ② 设计软件结构的顶层和第一层——变换结构: 顶层即主模块,主要完成所有模块的控制。

第一层至少有3个功能模块:输入、输出和变换模块,即为逻辑输入设计一个输入模块,其功能是为顶层模块提供相应数据,为逻辑输出设计一个输出模块,其功能是输出顶层模块的信息,为变换中心设计一个变换模块,其功能是将逻辑输入进行变换加工,然后逻辑输出。 ③ 设计中、下层模块。对第一层的输入、变换、输出模块自顶向下逐层分解。 输入模块下属模块的设计:可设计两个下属模块,一个接收,一个转换。 输出模块下属模块的设计:可设计两个下属模块,一个转换,一个发送。 变换模块下属模块的设计:按照模块独立性原则来组织其结构,一般对每个基本加工建立一个功能模块。 ④ 设计的优化:

输入部分求精:为每个物理输入设置专门模块,其他输入模块与转换数据模块可适当合并。 输出部分求精:为每个物理输出设置专门模块,其他输出模块与转换数据模块可适当合并。 变换部分求精:根据设计准则,对模块进行合并或调整。

事务分析设计步骤:

① 确定DFD 的事务中心和加工路径:当数据流图中每个加工将一个输入数据分解成多个发散的输出数据流时,该加工就是事务中心,从事务中心辐射出去的数据流为各个加工路径。 ② 设计软件结构的顶层和第一层——事务结构。

顶层是一个全控模块,有两个部分:接收分支(与变换型DFD 的输入部分设计方法相同)和发送分支(即调度模块,它控制管理所有下层的事务处理模块)。 ③ 设计中、下层模块、优化等工作,与变换分析设计相同。 (五)应用题

S 表示住房面积,M 表示住房费用。

条件取值表

判定表

判定树


相关内容

  • 07届工科学生毕业论文文献综述(范文)
    毕业设计(论文)文献综述 课题名称:集装箱自动化堆场物流系统仿真与分析 学 院: 专 业: 电气工程及其自动化 年 级: 指导教师: 学生姓名: 学 号: 起迄日期:____ 2009.11.15_--2009.12.15__ 2009年 ...
  • (最新版)现代农业生态园可研报告
    第一章 总 论 第一节 项目概述 一.项目名称:现代农业生态园花卉苗木基地 二.项目性质:新建 三.项目实施单位: 四.项目地点: ****** 五.项目建设规模与内容 基地投资规模为10000亩,其中精品标准化乔木培育基地3000亩(75 ...
  • 关于现代项目管理的灵魂
    关于现代项目管理的灵魂 从工程本身转向了实施工程的组织,这就是现代项目管理的灵魂所在.项目管理不再仅仅是工具,而是关于组织.组织的成熟程度.组织能力.组织智商的学科和技术.10多年前留洋MBA学成归国的毕业生,曾有无就业机会之叹:10多年后 ...
  • 浅谈工程项目的采购管理
    程项目的采购管理 ■陈宏义于学勇丁友峰 摘要:项目采购管理是工程项目建设从项目组织外部获取产品(包括货物和服化全流程成本意识:三是要选好供应商.的物质基础,是项目执行中关键的一步.务)的整个过程.一.擅清采购的基本流程 抓住了采购管理,就等 ...
  • 测绘工程技术在土木工程中的应用
    测绘工程技术在土木工程中的应用 一切土木工程,从勘测.设计.施工.竣工,到质量管理.安全监护,都离不开测绘.测绘技术先进与否,能否合理地应用测绘技术,直接影响土木工程的进展速度.以3S"为代表的现代测绘技术在土木工程各阶段中广泛地 ...
  • 现代制造技术论文
    现代制造技术 [期末论文] 系别:机械工程系 专业: 姓名: 学号: 完成日期:2012年5月14日 内容摘要 随着科学技术的飞速发展和市场竞争日益激烈,越来越多的制造企业开始将大量的人力.物力和财力投入到先进的制造技术和先进的制造模式的研 ...
  • 成本会计的发展方向
    成本会计的发展方向 成本会计是会计学科中一个十分重要的领域.其重要性之缘由,除了自身与微观经济中企业实体的财务报告目的相联系,关系企业的存亡延续之外,更在于其突出的宏观意义.在人类历史的发展进程中,成本问题始终备受关注,根本原因在于成本的资 ...
  • 工业工程(IE)和质量工程(QE)
    工业工程(IE )和质量工程(QE ) 清华大学工业工程系培训信息网-工业工程(IE)和质量工程(QE) [摘要]通过对IE 和QE 的定义.专业学科地位及其领域与内涵等的分析,研究和探讨了在高等院校开设工业工程(IE)和质量工程(QE)专 ...
  • 液压起重机设计
    编号: 题目: 本科毕业设计(论文) 液压起重机设计 the design of hydraulic truck crane 分 院 专 业 班 级 学 号 姓 名 指导教师 完成日期 (中文)(英文) 摘要 随着我国国民经济的不断发展,各 ...
  • 重庆大学成本控制与管理专硕考题
    专硕考题 1. 通过课程学习你对建设项目成本管理的特点.难点.面临的挑战有哪些认识,请说明理由. 工程建设项目成本管理是指为保障建设项目实际发生的成本不超过项目预算而开展的项目成本估算.项目成本预算编制和项目预算控制等方面的管理活动 [特点 ...