软件工程常用的系统流程图符号
- 格式:doc
- 大小:78.50 KB
- 文档页数:3
流程图-n s图-p a d图-p d l-h i p o(总9页)--本页仅作为文档封面,使用时请直接删除即可----内页可以根据需求调整合适字体及大小--流程图、N-S图、PAD图、判定表、PDL、HIPO图程序流程图程序流程图独立于任何一种程序设计语言,比较直观、清晰,易于学习掌握。
但流程图也存在一些严重的缺点。
例如流程图所使用的符号不够规范,常常使用一些习惯性用法。
特别是表示程序控制流程的箭头可以不受任何约束,随意转移控制。
这些现象显然是与软件工程化的要求相背离的。
为了消除这些缺点,应对流程图所使用的符号做出严格的定义,不允许人们随心所欲地画出各种不规范的流程图。
例如,为使用流程图描述结构化程序,必须限制流程图只能使用图所给出的五种基本控制结构。
图流程图的基本控制结构任何复杂的程序流程图都应由这五种基本控制结构组合或嵌套而成。
作为上述五种控制结构相互组合和嵌套的实例,图示给出一个程序的流程图。
图中增加了一些虚线构成的框,目的是便于理解控制结构的嵌套关系。
显然,这个流程图所描述的程序是结构化的。
图流程图的基本控制结构N-S图Nassi和Shneiderman 提出了一种符合结构化程序设计原则的图形描述工具,叫做盒图,也叫做N-S图。
为表示五种基本控制结构,在N-S图中规定了五种图形构件。
参看图。
为说明N-S图的使用,仍用图给出的实例,将它用如图所示的N-S图表示。
如前所述,任何一个N-S图,都是前面介绍的五种基本控制结构相互组合与嵌套的结果。
当问题很复杂时,N-S图可能很大。
图 N-S图的五种基本控制结构图 N-S图的实例PADPAD是Problem Analysis Diagram的缩写,它是日本日立公司提出,由程序流程图演化来的,用结构化程序设计思想表现程序逻辑结构的图形工具。
现在已为ISO认可。
PAD也设置了五种基本控制结构的图式,并允许递归使用。
图 PAD的基本控制结构做为PAD应用的实例,图给出了图程序的PAD表示。
1某公司为了给员工分配住房,开发了员工住房分配系统,功能如下:➢计算原始分:根据员工信息(员工号、姓名、年龄、性别、学历、工龄、婚否、职务、职称、住房情况)计算原始分,并将员工信息存入员工信息文件中。
➢计算标准分:根据员工的原始分计算标准分,并将其存入员工分数文件(员工号、标准分)。
➢计算分房分:根据标准分、分房计划文件(员工号、住房请求)中的分房人数,计算分房分,并存入分房分数文件(员工号、分房分)中。
➢分房分查询:员工可以根据自己的员工号查询相应的分房分,若输入错误则返回出错信息。
试根据上面的系统功能描述:(1)画出该系统的分层数据流图。
(8分)(2)写出相应的数据字典(要求至少写出三项)。
(4分)(3)将数据流图转换为软件的结构图。
(8分)(1):1)2)第一层数据流图员工信息文件员工分数文件夹分房分数文件2.名称:员工信息别名:描述:员工的各种信息定义:员工号+姓名+年龄+性别+学历+工龄+婚否+职务+职称+住房情况位置:员工信息文件名称:分房计划文件别名:描述:准备分房的计划定义:员工号+住房请求位置:公司系统名称:分房分数文件别名:描述:计算出的每个员工分房分数的文件定义:员工号+分房分位置:公司系统2阅读以下说明和图,回答问题1至问题5,将解答填入答题纸的对应栏内。
(20分)【说明】某高校欲开发一个成绩管理系统,记录并管理所有选修课程的学生的平时成绩和考试成绩,其主要功能描述如下:1)每门课程都有3到6个单元构成,每个单元结束后会进行一次测试,其成绩作为这门课程的平时成绩。
课程结束后进行期末考试,其成绩作为这门课程的考试成绩。
2)学生的平时成绩和考试成绩均由每门课程的主讲教师上传给成绩管理系统。
3)在记录学生成绩之前,系统需要验证这些成绩是否有效。
首先,根据学生信息文件来确认该学生是否选修这门课程,若没有,那么这些成绩是无效的;如果他的确选修了这门课程,再根据课程信息文件和课程单元信息文件来验证平时成绩是否与这门课程所包含的单元相对应,如果是,那么这些成绩是有效的,否则无效。
第一章一、名称解释1.软件工程是指导计算机软件开发和维护的工程科学。
采用工程的概念、原理、技术和方法来开发与维护软件,把经过时间考验而证明正确的管理技术和当前能够得到的最好的技术方法结合起来,以经济地开发出高质量的软件并有效地维护它。
2.软件生命周期一个软件从定义、开发、使用和维护,直到最终被废弃,所经历的整个时期被称为是软件生命周期二、填空题1.构成一个完整计算机系统的两部分是硬件与(软件)。
2.程序设计时代的生产方式是(个体手工劳动)。
3.软件工程涉及到若干个学科,它是一门(综合性交叉)学科。
4.软件开发划分的各阶段任务尽可能独立,同一阶段任务性质尽可能(相同)。
5.将软件生存周期各个活动规定为依线性顺序联接的若干阶段的模型是(瀑布)模型。
6.喷泉模型是一种以用户需求为动力,以(对象)为驱动的模型。
7.结构化方法是一种面向数据流的开发方法。
由结构化分析、(结构化设计)、结构化程序设计构成。
8.软件工程研究的主要内容是软件开发管理和(软件开发技术)两个方面。
9.软件工具是支持软件开发人员的开发和维护活动而使用的(软件)。
10.一个软件项目的开发中,要采用一种生存周期模型,要按照某种(开发方法),使用相应的工具来进行。
11 .瀑布模型本质上是一种(线性顺序)模型。
12.瀑布模型不适应需求可变的软件开发,只有到开发结束时才能见到(整个软件系统)。
13.增量模型在开发过程中以一系列增量方式开发系统,忽略某阶段的细节,从而尽早产生(工作软件)。
14.增量构造模型在分析和设计阶段按整体方式开发,按增量方式开发的是(编码和测试)阶段。
15.演化提交模型中,项目开发各阶段都是按(增量方式)开发的。
16.软件原型是软件的早期可运行版本,反映最终系统的(重要特性)。
17.用原型过程来代替需求分析,使需求说明完整、一致、准确,该原型是(探索型)原型。
18.用原型过程来代替全部开发阶段,这种快速原型是(演化型)原型。
软件工程中的图软件工程导论中一般把软件的开发分为八个阶段:1.问题定义2.可行性研究3.需求分析4.总体设计(概要设计)5.详细设计6.编码和单元测试7.综合测试8.软件维护下面我们就说说各个阶段中与图的难解难分。
1. 问题定义问题定义阶段主要是根据用户的需求来定义用户需要解决的问题,用户要实现哪些功能。
2. 可行性研究可行性研究阶段就是看是否有一种使其在最小的代价,尽可能短的时间内,利益最大化的情况下解决问题的方案。
这个阶段的分析主要涉及以下几个图形工具。
2.1 系统流程图系统流程图是描述系统物理模型的一种传统工具。
它是表达数据在系统各部件之间流动的情况,而不是对数据加工处理的控制过程,它是物理数据流图而不是程序流程图。
系统流程图形象的呈现了软件的功能,即使不懂软件的人也可以轻松的看懂,可以说它是软件设计师与用户之间沟通、交流的有效工具。
2.2 数据流图数据流图是从数据传递和加工角度,以图形方式来表达系统的逻辑功能、数据在系统内部的逻辑流向和逻辑变换过程,是结构化系统分析方法的主要表达工具及用于表示软件模型的一种图示方法。
如果说系统流程图能让用户更好的明白系统的功能,那么数据流图则让用户更加明白系统的工作原理。
数据流图的基本符号:数据流图的使用例子:2.3 数据字典数据字典就是数据的信息的集合,也可以说就是对上面提到的数据流图中的所有元素的定义的集合。
数据字典的主要作用就是在软件的分析与设计阶段方便我们查阅不甚了解的数据的描述信息。
3. 需求分析需求分析阶段主要确定系统必须做什么。
比如用户对系统的要求,确定目标系统所有的功能,确定系统运行的硬件和软件环境,系统性能要求,出错处理要求,接口需求,验证软件需求等等。
3.1 E-R图E-r图的主要作用就是把用户的数据要求用可视化的图形呈现出来。
3.2 状态转换图状态转换图说白了就是系统的行为建模,就是通过描述系统的状态以及引起状态变化的事件来表示系统的行为,将系统运行时详细的状态变化呈现给用户。
其他系统西安交通大学——软件工程概论所有答案原型特征分为几种类型?答案是:"原型特征有下列类别(1)、系统的界面形式,用原型来解决系统的人机交互界面的结构。
(2)、系统的总体结构,用原型来确定系统的体系结构。
(3)、数据库模式,用原型来确定系统的数据库结构。
"什么是探索型原型模型?答案是:这是一种把原型思想用于需求分析阶段的快速原型模型。
通过对原型的开发来明确用户的需求。
适用于一个开发目标模糊、用户与开发者均缺乏这种项目开发经验的软件项目。
一旦通过原型的开发运行,明确了用户的需求,可按瀑布模型的设计、编码、测试进行开发。
这种原型模型是在研究需求分析阶段的方法设计中产生的。
什么是实验型原型模型?答案是:这是一种把原型思想用于设计阶段的快速原型模型。
若对于一个大型软件系统的设计方案没有把握时,要考核设计方案是否正确、能否实现,可通过原型模型的开发运行来证实。
一旦通过原型模型的开发运行,证实设计方案是正确的、能实现的,可废弃这个原型,按照开发过程来开发。
什么是软件危机?软件危机表现在哪些方面?答案是:"在计算机软件的开发和维护过程中所遇到的一系列严重问题,长期找不到解决这些问题的办法,使问题逐渐积累起来,形成了尖锐的矛盾,从而导致了软件危机。
软件危机的表现有以下几个方面:(1)、对于软件开发的成本和进度的估计很不准确。
由于缺乏软件开发的经验和软件开发数据的积累,使得很难制定出合理有效的开发工作计划。
(2)、开发的软件产品不能完全满足用户要求,用户对已完成开发的软件系统不满意的现象常常发生。
(3)、开发的软件可靠性差。
(4)、软件的可维护性差。
(5)、软件通常没有适当的文档。
(6)、软件开发生产率提高的速度,远远跟不上计算机应用普及深入的趋势。
"什么是软件生存周期?它有哪些活动?答案是:"软件生存周期是指一个软件从提出开发要求开始直到该软件报废为止的整个时期。
1、典型的详细设计工具有流程图、盒图、、类程序设计语言。
问题反馈【教师释疑】正确答案:【PAD图】2、UML是一种语言。
问题反馈【教师释疑】正确答案:【可视化】3、类是一组具有属性、操作、关系和语义的对象的描述。
问题反馈【教师释疑】正确答案:【相同】4、对象是类的一个。
问题反馈【教师释疑】正确答案:【实例】5、用况图是一种表达系统模型的图形化工具。
问题反馈【教师释疑】正确答案:【功能】6、UML中的顺序图是一种交互图,即由一组对象以及按组织的对象之间的关系组成。
问题反馈【教师释疑】正确答案:【时序】7、模块的作用域是指受该模块内一个所影响的所有模块的集合。
问题反馈【教师释疑】正确答案:【判定】8、模块的控制域是指这个模块本身以及所有直接或间接它的模块的集合。
问题反馈【教师释疑】正确答案:【从属于】9、在数据流图中引入数据源和数据潭这两个术语的目的是为了表示系统的,可以使用它们和相关数据流来定义系统的。
问题反馈【教师释疑】正确答案:【环境|边界】10、模块结构图是系统的一个高层蓝图,允许设计人员在较高的层次上进行抽象思维。
模块结构图可用和两种形式来表示。
问题反馈【教师释疑】正确答案:【层次图|HIPO图】11、在设计模块结构图时要基于原则来设计模块。
问题反馈【教师释疑】正确答案:【高内聚低耦合】12、在进行总体结构设计时,人们通过长期的软件开发实践,总结出一些实现模块“高内聚低耦合”的启发式规则,对初始的模块结构图进行精化,其中一条规则是“尽力使模块的在其控制域之内”。
问题反馈【教师释疑】正确答案:【作用域】13、在进行总体结构设计时,人们通过长期的软件开发实践,总结出一些实现模块“高内聚低耦合”的启发式规则,对初始的模块结构图进行精化,其中一条规则是“力求深度、宽度、扇出和扇入”。
问题反馈【教师释疑】正确答案:【适中】14、在进行总体结构设计时,人们通过长期的软件开发实践,总结出一些实现模块“高内聚低耦合”的启发式规则,对初始的模块结构图进行精化,其中一条规则是“改进软件结构,提高模块的”。
第一章一、名称解释1.软件2.文档3.软件工程4.软件生存周期5.软件工程过程6.软件生存周期模型7.软件开发方法8.软件工具二、填空题1.构成一个完整计算机系统的两部分是硬件与________。
2.程序设计时代的生产方式是________。
3.软件工程涉及到几个学科,它是一门_____学科。
4.软件开发划分的各阶段任务尽可能独立,同一阶段任务性质尽可能________。
5.将软件生存周期各个活动规定为依线性顺序联接的若干阶段的模型是________模型。
6.喷泉模型是一种以用户需求为动力,以_______为驱动的模型。
7.结构化方法是一种面向数据流的开发方法。
由结构化分析、_______、结构化程序设计构成。
8.软件工程研究的主要内容是软件开发管理和_______两个方面。
9.软件工具是支持软件开发人员的开发和维护活动而使用的________。
10.一个软件项目的开发中,要采用一种生存周期模型,要按照某种________,使用相应的工具来进行。
三、选择题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.1/2B.1/3C.1/4D.2/37.软件开发中大约要付出( )%的工作量进行测试和排错。
A.20B.30C.40D.508.准确地解决“软件系统必须做什么”是( )阶段的任务。
A.可行性研究B.需求分析C.详细设计D.编码9.软件生存周期中最长的是( )阶段。
A.需求分析B.概要设计C.测试D.维护四、简答题1.软件产品的特性是什么?2.软件生产有几个阶段?各有何特征?3.什么是软件危机?产生的原因是什么?4.软件工程的性质、目标和内容是什么?5.软件工程面临的问题是什么?6.软件工程过程有哪些过程?7.软件生存周期有哪几个阶段?8.软件生存周期模型有哪些主要模型?9.有哪些主要软件开发方法?参考答案二填空题1.软件 2.个体手工劳动3.综合性交叉 4.相同5.瀑布 6.对象7.结构化设计8.软件开发技术9.软件10.开发方法三、选择题1.B 2.D 3.A 4.C5.A 6.B 7.C 8.B 9.D第二章一、名称解释1.可行性研究2.技术可行性3.经济可行性4.社会可行性5.货币时间价值6.投资回收期7.纯收入8.系统流程图二、填空题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、开发时的错误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、软件维护是软件得以正常运行的重要环节,按照软件工程方法的理解,一般软件维护应该开始于()A、修改源代码B、阅读设计文档C、阅读源代码D、修改设计文档15、以实体、联系和属性等基本概念为基础的实体联系图是基本实体联系图。
A卷1、瀑布模型把软件生命周期划分为8个阶段:问题的定义、可行性研究、软件需求分析、系统总体设计、详细设计、编码、测试和运行、维护。
八个阶段又可归纳为三个大的阶段:计划阶段、开发阶段和(运行阶段)。
2、从结构化的瀑布模型看,在它的生命周期中的八个阶段中,(需求分析阶段)出错,对软件的影响最大。
3、在结构化的瀑布模型中,(需求分析阶段)定义的标准将成为软件测试中的系统测试阶段的目标。
4、软件工程的出现主要是由于(软件危机的出现)。
5软件工程方法学的目的:使软件生产规范化和工程化,而软件工程方法得以实施的主要保证是软件开发工具和软件开发的环境。
6、软件开发常使用的两种基本方法是结构化和原型化方法,在实际的应用中,它们之间的关系表现为相互补充。
7、UML是软件开发中的一个重要工具,它主要应用于基于对象的(面向对象)的方法.8、在下面的软件开发方法中,哪一个对软件设计和开发人员的开发要求最高(原型化方法).9、结构化分析方法是一种预先严格定义需求的方法,它在实施时强调的是分析对象的(数据流)。
10、软件开发的瀑布模型,一般都将开发过程划分为:分析、设计、编码和测试等阶段,一般认为可能占用人员最多的阶段是(编码阶段)。
11、软件开发模型是指软件开发的全部过程、活动和任务的结构框架。
主要的开发模型有瀑布模型、演化模型、螺旋模型、喷泉模型和智能模型。
螺旋模型将瀑布模型和演化模型相结合,并增加了(风险分析),它建立在()的基础上,沿着螺线自内向外每旋转一圈,就得到(原型)的一个新版本.喷泉模型描述了(面向对象)的开发模型,它体现了这种开发方法创建软件的过程所固有的(递归)和(开发各阶段之间无“间隙”)的特征。
12、以下不属于白盒测试技术的是(等价类划分)。
13、为改正软件系统中潜藏的错误而进行的维护活动称为(纠错性维护).14、保证软件质量的手段有复审、复查、管理复审和测试等。
其中复审发生在软件生命周期的(每个阶段结束之前)。
软件工程——软件开发过程中用到的各种图本文档涉及附件:本文所涉及的法律名词及注释:1·版权:指知识产权法律框架下对创作作品的独立权利,包括复制、分发、演绎和展示等权利。
2·商标:指公司、品牌或产品的标识,用于区分同类或相似产品或服务的来源。
3·专利:指对发明的一种技术解决方案的独占权,包括发明专利、实用新型专利和外观设计专利等。
4·法律责任:指违反法律法规或合同规定所引起的法律后果,例如赔偿、罚款等。
5·保密协议:指当事人之间为保护双方的商业机密而达成的协议,规定了保密信息的范围、保密义务以及违约责任等。
1·引言本文档旨在介绍软件工程中常用的图形表示方法,包括用例图、类图、流程图、数据流图、状态转换图、部署图、时序图和甘特图等。
这些图形可以帮助开发团队更好地理解和描述系统的功能和结构。
2·用例图用例图是描述系统功能和用户之间交互的图形表示方法。
它主要包含了参与者、用例和关联关系等元素。
用例图帮助开发团队更好地了解系统需要实现哪些功能,并作为需求分析的重要工具。
3·类图类图是描述系统中类、接口、实例和它们之间关系的图形表示方法。
它主要包含了类、属性、方法和关联关系等元素。
类图帮助开发团队更好地了解系统的结构和模块之间的关系,并作为设计和编码的参考依据。
4·流程图流程图是描述系统中过程和步骤的图形表示方法。
它主要包含了开始和结束节点、操作步骤、条件判断和循环等元素。
流程图帮助开发团队更好地了解系统的执行流程和操作过程,并作为编码和测试的重要工具。
5·数据流图数据流图是描述系统中信息流动和处理的图形表示方法。
它主要包含了数据流、处理节点和数据存储等元素。
数据流图帮助开发团队更好地了解信息的流动和处理过程,并作为系统设计和优化的参考依据。
6·状态转换图状态转换图是描述系统中状态和状态转换的图形表示方法。
题型1、名词说明2、问答题3、应用题(看图题,分析题,计算题)学问点:1、什么是软件及软件特点,软件的分类软件是计算机系统中和硬件相互依存的另一部分,它是包括程序、数据及其相关文档的完整集合软件的特点(1)软件是一种逻辑实体。
(2)软件的开发,是人的智力的高度发挥,而不是传统意义上的硬件制造。
(3)软件维护和硬件的修理有着本质的差别。
(4)软件的开发和运行常常受到计算机系统的限制,对计算机系统有着不同程度的依靠性。
(5)软件的开发至今尚未完全摆脱手工艺的开发方式,使软件的开发效率受到很大限制。
(6)软件的开发是一个困难的过程。
(7)软件的成本特殊昂扬软件的分类1.基于软件功能的划分系统软应用软件支撑软件2.基于软件工作方式的划分实时处理软件分时软件交互式软件批处理软件2、什么是软件危机,起因一方面软件特殊困难,价格昂贵,供需差日益增大,另一方面软件开发时又常常受挫,质量差,指定的进度表和完成日期很少能按时实现,研制过程很难管理,即软件的研制往往失去限制。
我们称软件开发和维护过程中所中遇到的这一系列严峻问题为软件危机。
软件危机包含下述两方面的问题:如何开发软件,以满足对软件日益增长的需求;如何维护数量不断膨胀的已有软件。
3、什么是软件工程,它的基本目标,要素,原则(1)软件工程是指探讨软件生产的一门学科,也就是将完善的工程原理应用于经济地生产既牢靠又能在实际机器上有效运行的软件。
(2)软件工程学探讨的基本目标是:定义良好的方法学,面对支配,开发维护整个软件生存周期的方法学;确定的软件成分,记录软件生存周期每一步的软件文件资料,按步显示轨迹;可预料的结果,在生存周期中,每隔确定时间可以进行复审(3)软件工程的原则:分解;抽象和信息隐藏;一样性;确定性4、什么是软件生命周期,每个阶段的意义理解如同任何其他事物一样,软件也有一个孕育、诞生、成长、成熟、衰亡的生存过程,一般称之为计算机软件的生命周期。
1.软件定义时期(1)问题定义:这是软件生存期的第一个阶段,主要任务是弄清用户要计算机解决的问题是什么。
一、单项选择题在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。
错选、多选或未选均无分。
1.在软件生存周期中,时间最长的阶段是( D )A.需求分析C.编码B.详细设计D.维护2.以下最适合于面向对象的软件开发的软件生存周期模型是( D )A.瀑布模型C.螺旋模型3.以下不.适用于需求分析的工具是( C )A.数据流图C.PAD 图B.增量模型D.喷泉模型B.判定表D.数据字典4.以下几种模块内聚类型中,内聚性最低的是( B )A.时间内聚C.顺序内聚5.系统流程图中符号的名称是( A )A.联机存储C.磁盘6.数据流图中的每个加工至少有( D )A.一个输入流或一个输出流C.一个输入流B.逻辑内聚D.功能内聚B.处理D.文档B.一个输出流D.一个输入流和一个输出流7.HIPO 图是软件工程中的一种描述工具,采用HIPO图进行描述的阶段是( C )A.可行性分析C.概要设计B.需求分析D.详细设计8.Jackson 方法是软件开发过程中常用的方法,使用Jackson 方法可以实现( A )A.从数据结构导出程序结构C.从模块结构导出数据结构9.过程设计语言(PDL) ,又称为( A )A.伪码C.中级程序语言10.单元测试阶段主要涉及的文档为( B )B.从数据流图导出初始结构图D.从模块结构导出程序结构B.高级程序设计语言D.低级程序设计语言A.需求设计 B.编码和详细设计C.详细设计D.概要设计1.软件维护会产生副作用,下面选项中不.属.于.维护副作用的是( B )A.编码副作用 B.测试副作用C.文档副作用 D.数据副作用l2.以下不.适合作为科学工程计算的语言是( B )A.Pascal C.Fortran B.C D.Prologl3.PAD 图为下列哪个方面提供了有力的工具( A )A.系统分析C.自动分析数据14.结构化软件设计是(C )A.面向数据结构的C.面向数据流的B.软件的自动化生成D.测试软件B.面向数据库的D.面向对象设计的15.在McCall 软件质量度量模型中,面向软件产品修改的质量因素为( B )A.可用性C.适应性B.完整性D.互操作性A.一般具体 B.has aC.整体部分l7.WestinghouseD.组成公司于1992 年公布了l3 类软件工具分类标准和该类的范例工具以及例子,下面说法错.误.的是(A)A.代码生成程序属于编码和单元测试工具(设计工具)B.桌面出版系统属于文档工具C.数据库管理系统属于需求追踪工具D.计划和进度属于项目管理工具18.对McCabe 度量法,叙述错.误.的是( C )A.McCabe 度量法是一种基于程序控制流的复杂性度量法B.McCabe 度量法以图论为工具,用图的环路作为程序复杂性的度量值C.McCabe 度量法将简单IF 语句和赋值语句的复杂性同等看待D.McCabe 复杂性度量也称为环路度量19.瀑布模型本质是一种( B )A.顺序迭代模型 B.线性顺序模型C.线性迭代模型 D.非线性模型20.对于使用原型的建议,下面说法错.误.的是( C )A.开发周期很长的项目,可通过原型开发来缩短开发周期B.系统的使用可能变化较大,不能相对稳定,而原型模型具有适应变化的机制C.缺乏开发工具,或对原型的可用工具不了解的时候宜使用原型D.用户对系统的需求较为模糊,对某种要求缺乏信心时宜使用原型21.以下哪一项不.是.软件危机的表现( B )A.开发的软件可维护性差B.软件极易被盗版C.经费预算经常被突破D.开发的软件不能满足用户需求22.以下哪个软件生存周期模型是一种风险驱动的模型( C )A.瀑布模型B.增量模型C.螺旋模型D.喷泉模型23.各种需求分析方法都有共同适用的( D )A.分析方法B.说明方法C.表示方法D.基本原则24.结构化分析建立功能模型的工具是( A )A.DFD B.判定树/判定表C.DD D.结构化语言25.模块中所有成分结合起来完成一项任务,该模块的内聚性是( A )A.功能内聚B.顺序内聚C.通信内聚D.逻辑内聚26.系统定义明确之后,应对系统的可行性进行研究,可行性研究应包括( A )A.技术可行性、经济可行性、社会可行性B.经济可行性、安全可行性、操作可行性C.经济可行性、社会可行性、系统可行性D.经济可行性、实用性、社会可行性27.以下哪一项对模块耦合性没.有.影响( D )A.模块间接口的复杂程度B.调用模块的方式C.通过接口的信息D.模块内部各个元素彼此之间的紧密结合程度28.检查软件产品是否符合需求定义的过程称为( A )A.确认测试B.集成测试C.系统测试D.单元测试29.下面关于详细设计的叙述中,错.误.的是( B )A.程序流程图可以描述结构化程序C.NS 图描述的程序一定是结构化的B.程序流程图不能描述结构化程序D.PAD 图描述的程序一定是结构化的30.在整个软件维护阶段所花费的全部工作中,所占比例最大的是( C )A.校正性维护B.适应性维护C.完善性维护D.预防性维护31.以下不.属.于.序言性注释的有( C )A.模块设计者B.修改日期C.程序的整体说明D.语句功能32.集成测试是为了发现( A )A.接口错误B.编码错误C.性能、质量不合要求D.功能错误33.一个只有顺序结构的程序,其环形复杂度是( B )A.0 B.1C.3 D.534.结构化程序设计,主要强调的是( C )A.程序的执行效率B.模块的内聚C.程序的可理解性D.模块的耦合35.下面关于文档的叙述,错.误.的是( A )A.文档是仅用于说明使用软件的操作命令,不包括软件设计和实现细节B.文档是软件产品的一部分,没有文档的软件就不成为软件C.高质量文档对于转让、变更、修改、扩充和使用有重要的意义D.软件文档的编制在软件开发工作中占有突出的地位和相当大的工作量36.在McCall 软件质量度量模型中,面向软件产品操作的质量因素是( A )A.正确性B.可维护性C.适应性D.互操作性37.对度量法,叙述错.误.的是( C )A.度量法是一种基于程序控制流的复杂性度量法B.度量法以图论为工具,用图的环路数作为程序复杂性的度量值C.度量法不能区分简单IF 语句和循环语句的复杂性D.度量法对模块间的接口和简单IF 语句区分对待38.在快速原型模型的开发过程中,仅用于代替设计阶段的原型是( C )A.探索型模型B.演化型模型C.实验型模型D.提交型模型39.对于构造原型的建议,下面说法错.误.的是( D )A.暂不考虑错误恢复和处理,但应考虑速度、空间等性能效率方面的要求B.可降低可靠性和软件质量标准C.原型界面部分的设计,最好能与最终系统的界面相容D.根据不同的软件类型和应用领域,可使用不同风格的高级语言来构造原型40.面向对象开发方法中,将在面向对象技术领域内占主导地位的标准建模语言是( C )A.Booch 方法B.Coad 方法C.UML 语言D.OMT 方法4l.以下哪一项不.是软件产品所具有的特性( C )A.软件是逻辑产品B.软件产品不会用坏,不存在磨损、消耗问题C.随着技术的提高,软件开发的费用不断降低D.软件产品的成本主要体现在软件的开发与研制上42.“确定软件系统必须做什么”是哪个阶段的任务(B )A.可行性分析和项目开发计划B.需求分析C.概要设计D.详细设计43.以下哪一项不.是软件测试时需要的信息( B )A.软件配置B.软件结构C.测试工具D.测试配置44.结构化分析方法的分析策略是( B )A.自底向上的抽象B.自顶向下的分解C.用DFD 建模D.用DD 描述数据需求45..一组语句在程序中多处出现,为了节省存储,将这些语句组成一个新的模块,该模块的内聚性为( C )A.功能内聚B.顺序内聚C.偶然内聚D.逻辑内聚46.系统流程图是描绘以下哪一项的工具( C )A.软件结构B.逻辑系统C.物理系统D.软件功能47.数据库的设计一般要进行三个方面的设计:概念设计、逻辑设计和物理设计,其中逻辑设计对应于系统开发的什么部分( C )A.可行性分析B.需求分析C.概要设计D.详细设计48.以下哪种语言可用于描述模块算法设计和处理细节( B )A.UML 语言B.过程设计语言C.FORTRAN 语言D.Pascal 语言49.软件维护是软件生命周期中的固有阶段,一般认为,以下哪种软件维护在整个维护活动中所占的比例最小( C )A.校正性维护B.适应性维护C.预防性维护D.完善性维护50.软件测试方法中,黑盒、白盒测试法是常用的方法,其中白盒测试主要用于测试( D )A.结构合理性B.软件外部功能C.程序正确性D.程序内部逻辑51.使用Jackson 方法可以得到( D )A.程序流程图B.具体的语言程序C.模块结构图及模块的功能说明书D.分层数据流图52..以下哪种测试的任务是检查软件的功能与性能是否与需求规格说明书中确定的指标相符合( B )A.集成测试B.确认测试D.系统测试C.单元测试53.与编程风格有关的因素不.包括(B)A.源程序文档化B.语句构造C.输入输出D.模块间耦合性54..对于构造原型的建议,下面说法错.误.的是( D )A. 暂不考虑速度、空间等性能效率方面的要求。
一.基本图形说明数据此符号表示数据,但未规定媒体。
处理此符号表示各种处理功能。
例如,执行一个或一组确定操作,从而使信息的值、形式或位置发生变化,或者确定几个流向中的某一个流向。
既定处理此符号表示一个已命名的处理,它由在别处已详细说明的一个或多个操作或程序步骤所组成。
例如子例行程序、模块。
准备此符号表示对影响随后活动的一条或一组指令的修改。
例如设置开关、修改变址寄存器和将一个例行程序初始化。
判断此符号表示判断或开关类型功能。
该符号只有一个人口,但可以有若干个可选择的出口,在对符号中定义的条件进行求值后,有一个且仅有一个出口被激活。
求值结果可在表示路径的流线附近写出并行方式此符号表示同步进行两个或两个以上的并行操作例如:注:在处理 A完成后才能进行处理C、 D、 E;同样处理 F要等到处理 B、 C、D完成以后进行;但是,处理 C可以在处理D开始和(或)结束前开始和(或)结束。
循环界限此符号分为两个部分,分别表示循环的开始和结束。
在该符号的两个部分中要使用同一标识符。
初始、增量和终止量条件按其测试操作位置分别出现在开始符号或结束符号内。
例如:流线此符号表示数据流或控制流。
为了增强可读性,可以在流线上加上箭头;但在必要时,必须加上箭头指示流向虚线此符号表示两个或更多符号间的选择关系;也可用来标出被注释区。
连接符此符号表示转向流程图它处,或自流程图它处转入。
它用来作为一条流线的断点,使该流线在别处继续下去。
对应的连接符应有同一标记。
端点符此符号表示转向外部环境或从外部环境转人。
例如,程序流程的起始或结束、数据的外部使用以及起源(或终点)注解符此符号用来标识注解内容。
注解符的虚线要连接在相关的符号上或框住一组符号。
注解的正文应该靠近边线。
省略符在图中若不需要定义符号类型和数目,就用省略符(…)表示对一个符号或一组符合的省略。
省略符仅用在流线符号中或流线符号之间/此符号尤其适用于表示重复次数不确定的一般解法的图。
软件工程自考题模拟10(总分:100.00,做题时间:90分钟)一、单项选择题(总题数:20,分数:40.00)1.在详细设计阶段,经常采用的工具有______(分数:2.00)A.PAD √B.SAC.SCD.DFD解析:[考点] 本题主要考查的知识点为详细设计的工具。
详细设计的工具有:程序流程图、N-S图、PAD图和伪码等。
2.总体设计目的是确定整个系统的______(分数:2.00)A.规模B.测试方案C.费用D.模块结构√解析:[考点] 本题主要考查的知识点为总体设计。
总体设计的目标是建立系统的模块结构,即系统实现所需要的软件模块——系统中可标识的软件成分,以及这些模块之间的调用关系。
3.下列说法不是软件工程在20世纪60年代到80年代的研究成果的是______(分数:2.00)A.提出了瀑布模型,试图为开发人员提供有关活动组织方面的指导B.开发了过程式语言,如Pascal语言、C语言、ADa语言等C.开发了一些方法,如Jackson方法、结构化方法等D.提出了面向对象方法√解析:[考点] 本题主要考查的知识点为软件工程的研究成果。
选项D中的面向对象方法是20世纪80年代以来的研究成果。
4.以下软件生存周期的活动中,要进行软件结构设计的是______(分数:2.00)A.测试用例设计B.概要设计√C.程序设计D.详细设计解析:5.以文档作为驱动,适合于软件需求很明确的软件项目的生存周期模型是______(分数:2.00)A.喷泉模型B.增量模型C.瀑布模型√D.螺旋模型解析:[考点] 本题主要考查的知识点为瀑布模型。
瀑布模型的一个特点就是每个阶段必须完成规定的文档;每个阶段结束前完成文档审查,及早改正错误。
6.结构化程序设计的一种基本方法是______(分数:2.00)A.筛选法B.迭代法C.逐步求精法√D.递归法解析:[考点] 本题主要考查的知识点为结构化程序设计。
结构化程序设计采用自顶向下,逐步求精,使得编写的程序只含顺序、判定、重复3种结构。