您好,欢迎访问三七文档
当前位置:首页 > 电子/通信 > 数据通信与网络 > 计算机二级考试公共基础知识(软件工程)资料
计算机基础中心全国计算机等级考试二级公共基础知识2008盐城工学院计算机基础中心计算机基础中心软件工程基础计算机基础中心内容•软件工程基本概念,软件生命周期概念,软件工具与软件开发环境。•结构化分析方法,数据流图,数据字典,软件需求规格说明书。•结构化设计方法,总体设计与详细设计。•软件测试的方法,白盒测试与黑盒测试,测试用例设计,软件测试的实施,单元测试、集成测试和系统测试。•程序的调试,静态调试与动态调试。计算机基础中心1基本概念•1.软件工程–软件工程是指应用计算机科学、数学及管理科学等原理,以工程化的原则和方法来解决软件问题的工程。其目的是提高软件生产率、提高软件质量、降低软件成本。•2.软件危机–早期的软件主要指程序,采用个体工作方式,缺少相关文档,质量低,维护困难,这些问题称为“软件危机”,软件工程概念的出现源自于软件危机。软件工程的出现是由于A)程序设计方法学的影响B)软件产业化的需要C)软件危机的出现D)计算机的发展C计算机基础中心•3.软件生命周期–将软件产品从提出、实现、使用维护到停止使用退役的过程称为软件生命周期–分为软件定义、软件开发及软件运行维护3个阶段。维护是持续时间最长,花费代价最大的一个阶段,软件工程学的一个目的就是提高软件的可维护性,降低维护代价–6个活动阶段•可行性研究与计划制定:确定系统的总体目标。参加人员有用户、项目负责人和系统分析员,产生文档有可行性分析报告、项目计划书等•需求分析:确定系统的逻辑模型。参加人员有用户、项目负责人和系统分析员。产生文档为需求规格说明书,其作用:(1)便于用户、开发人员进行理解交流;(2)反映用户问题的结构,可以作为软件开发工作的基础和依据;(3)作为确认测试和验收的依据。软件开发的结构化生命周期方法将软件生命周期划分成A)定义、开发、运行维护B)设计阶段、编程阶段、测试阶段C)总体设计、详细设计、编程调试D)需求分析、功能定义、系统设计A需求分析阶段的任务是确定______。A.软件开发方法B.软件开发工具C.软件开发费D.软件系统功能D计算机基础中心•软件设计:包括软件结构设计、数据设计、接口设计和过程设计。其中结构设计是定义软件系统各部件之间的关系;数据设计是将分析时创建的模型转化为数据结构的定义;接口设计是描述软件内部、软件和操作系统之间及软件与人之间如何通信;过程设计则是把系统结构部件转换成软件的过程性描述。软件设计分概要设计和详细设计。参加人员有系统分析员和高级程序员。产生的文档有设计规格说明书。•编码:编程。高级程序员和程序员产生源程序清单•测试:由另一部门的高级程序员或系统分析员产生软件测试计划和软件测试报告•运行维护1)软件定义阶段:包括制定计划和需求分析。制定计划:确定总目标;可行性研究;探讨解决方案;制定开发计划。需求分析:对待开发软件提出的需求进行分析并给出详细的定义。2)软件开发阶段:软件设计:分为____________________两个部分。软件实现:把软件设计转换成计算机可以接受的程序代码。软件测试:在设计测试用例的基础上检验软件的各个组成部分。3)软件运行维护阶段:软件投入运行,并在使用中不断地维护,进行必要的扩充和删改。*:软件生命周期中所花费最多的阶段是________________。软件运行维护阶段概要设计和详细设计软件需求分析阶段的工作,可以分为四个方面:需求获取、需求分析、编写需求规格说明书以及______。A.阶段性报告B.需求评审C.总结D.都不正确B计算机基础中心•4.软件工程三要素–方法:完成软件工程项目的技术手段–工具:支持软件的开发、管理、文档生成–过程:支持软件开发的各个环节的控制、管理•5.软件工程的理论和技术研究的内容–软件开发技术和软件工程管理•6.软件工程的目标–在给定的成本、进度的前提下,开发出具有有效性、可靠性、可理解性、可维护性、可适应性、可移植性、可追踪性和可互操作性且满足用户需求的产品–软件工程鼓励研制和采用各种先进的软件开发方法、工具和环境软件工程的主要思想是将______原则运用到软件开发过程,它包括3个要素:_____________________。软件工程过程是把输入转化为输出的一组彼此相关的资源和活动。工程化方法、工具和过程计算机基础中心•6软件工程的目标和与原则•(1)软件工程目标:在给定成本、进度的前提下,开发出具有有效性、可靠性、可理解性、•可维护性、可重用性、可适应性、可移植性、可追踪性和可互操作性且满足用户需求的产品。•(2)软件工程需要达到的基本目标应是:付出较低的开发成本;达到要求的软件功能;取得较好的软件性能;开发的软件易于移植;需要较低的维护费用;能按时完成开发,及时交付使用。计算机基础中心•(3)软件工程原则:抽象、信息隐蔽、模块化、局部化、确定性、一致性、完备性和可验证性。•1)抽象:抽象是事物最基本的特性和行为,忽略非本质细节,采用分层次抽象,自顶向下,逐层细化的办法控制软件开发过程的复杂性。•2)信息隐蔽:采用封装技术,将程序模块的实现细节隐蔽起来,使模块接口尽量简单。•3)模块化:模块是程序中相对独立的成分,一个独立的编程单位,应有良好的接口定义。模块的大小要适中,模块过大会使模块内部的复杂性增加,不利于模块的理解和修改,也不利于模块的调试和重用;模块太小会导致整个系统表示过于复杂,不利于控制系统的复杂性。•4)局部化:保证模块间具有松散的耦合关系,模块内部有较强的内聚性。•5)确定性:软件开发过程中所有概念的表达应是确定、无歧义且规范的。•6)一致性:程序内外部接口应保持一致,系统规格说明与系统行为应保持一致。•7)完备性:软件系统不丢失任何重要成分,完全实现系统所需的功能。•8)可验证性:应遵循容易检查、测评、评审的原则,以确保系统的正确性。计算机基础中心•7.软件工具和软件开发环境–软件工具(CASE):用来辅助软件开、运行、维护、管理、支持等过程中的活动的软件–软件开发环境:支持软件产品开发的软件系统,它由软件工具集和环境集成机制构成计算机基础中心2结构化分析方法•基本思想–将系统分析看成工程项目,有计划、有步骤地进行工作。•开发策略–自顶向下,逐层分解•分析结果–一套分层的数据流图(DFD):用来描述数据流从输入到输出的变换流程–一个数据字典(DD):用来描述DFD中的每个数据流、文件以及组成数据流或文件的数据项–一组小说明(加工逻辑说明):用来描述每个基本加工的加工逻辑计算机基础中心结构化分析方法是结构化程序设计理论在软件需求分析阶段的应用。结构化分析方法的实质:着眼于数据流,自顶向下,逐层分解,建立系统的处理流程,以数据流图和数据字典为主要工具,建立系统的逻辑模型。结构化分析的常用工具:1)数据流图(DFD);2)数据字典(DD);3)判定树;4)判定表。数据流图以图形的方式描绘数据在系统中流动和处理的过程,它反映了系统必须完成的逻辑功能,是结构化分析方法中用于表示系统逻辑模型的一种工具。加工数据流存储文件源、潭下列不属于结构化分析的常用工具的是______。A.数据流图B.数据字典C.判定树D.PAD图D数据流图用于抽象描述一个软件的逻辑模型,数据流图由一些特定的图符构成。下列图符名标识的图符不属于数据流图合法图符的是______。A.控制流B.加工C.数据存储D.源和潭A计算机基础中心•加工(转换):输入数据经加工变换产生输出。•数据流:沿箭头方向传送数据的通道,一般在旁边标注数据流名。•存储文件(数据源):表示处理过程中存放各种数据的文件。•源,潭:表示系统和环境的接口,属系统之外的实体。•画数据流图的基本步骤:自外向内,自顶向下,逐层细化,完善求精。在数据流图(DFD)中,带有名字的箭头表示______。A.控制程序的执行顺序B.模块之间的调用关系C.数据的流向D.程序的组成成分C计算机基础中心•数据字典:对所有与系统相关的数据元素的一个有组织的列表,以及精确的、严格的定义,使得用户和系统分析员对于输入、输出、存储成分和中间计算结果有共同的理解。•*:数据字典的作用是对数据流图中出现的被命名的图形元素的确切解释。*:数据字典是结构化分析方法的核心。•软件需求规格说明书(SRS)•软件需求规格说明书是需求分析阶段的最后成果,通过建立完整的信息描述、详细的功能和行为描述、性能需求和设计约束的说明、合适的验收标准,给出对目标软件的各种需求。计算机基础中心3结构化设计方法、总体设计和详细设计•1、软件设计的基础•从技术观点来看,软件设计包括软件结构设计、数据设计、接口设计、过程设计。•从工程角度来看,软件设计分两步完成,即概要设计和详细设计。软件设计包括软件的结构、数据接口和过程设计,其中软件的过程设计是指______。A.模块间的关系B.系统结构部件转换成软件的过程描述C.软件层次结构D.软件开发过程B计算机基础中心软件设计的基本原理包括:抽象、模块化、信息隐蔽和模块独立性。模块的耦合性和内聚性是衡量软件的模块独立性的两个定性指标。一个设计良好的软件系统应具有高内聚、低耦合的特征。在结构化程序设计中,模块划分的原则是:模块内具有高内聚度,模块间具有低耦合度。信息隐蔽的概念与下述哪一种概念直接相关____。A.软件结构定义B.模块独立性C.模块类型划分D.模拟耦合度B计算机基础中心•2总体设计(概要设计)–设计原则•分解—协调原则•自顶向下的原则•信息屏蔽、抽象的原则•一致性原则•明确性原则•模块间的耦合度尽可能小,模块内部组合尽可能紧凑(内聚性高)•模块的扇入和扇出系数合理•模块的规模适当在结构化方法中,软件功能分解属于下列软件开发中的阶段是______。A.详细设计B.需求分析C.总体设计D.编程调试C计算机基础中心•软件概要设计的基本任务是:1)设计软件系统结构;2)数据结构及数据库设计;3)编写概要设计文档;4)概要设计文档评审。•常用的软件结构设计工具是结构图,也称程序结构图。程序结构图的基本图符:模块用一个矩形表示,箭头表示模块间的调用关系。在结构图中还可以用带注释的箭头表示模块调用过程中来回传递的信息。还可用带实心圆的箭头表示传递的是控制信息,空心圆箭心表示传递的是数据信息。一般模块数据信息控制信息计算机基础中心•经常使用的结构图有四种模块类型:传入模块、传出模块、变换模块和协调模块。•传入模块:从下属模块取得数据,经处理再将其传送给上级模块。•传出模块:从上级模块取得数据,经处理再将其传送给下属模块。•变换模块:从上级模块取得数据,进行特定的处理,转换成其他形式,再传送给上级模块。•协调模块:对所有下属模块进行协调和管理的模块。计算机基础中心深度:表示控制的层数。上级模块、从属模块:上、下两层模块a和b,且有a调用b,则a是上级模块,b是从属模块。宽度:整体控制跨度(最大模块数的层)的表示。扇入:调用一个给定模块的模块个数。扇出:一个模块直接调用的其他模块数。原子模块:树中位于叶子结点的模块。计算机基础中心•3详细设计–根本目标•确定应用怎样具体的实现所要求的系统,不是具体的编写程序,而是要设计程序的“蓝图”–此阶段的结果基本上决定了最终的程序代码的质量–包括内容:•代码设计•输入设计•输出设计•处理过程设计•用户界面设计•安全控制设计计算机基础中心•常用的过程设计(即详细设计)工具有以下几种:•图形工具:程序流程图、N-S(方盒图)、PAD(问题分析图)和HIPO(层次图+输入/处理/输出图)。•表格工具:判定表。•语言工具:PDL(伪码)•PDL(伪码):过程设计语言,它是用正文形式表示数据和处理过程的设计工具。计算机基础中心4软件测试•1意义目的–为了发现错误–希望能以最少的人力和时间发现潜在的各种错误和缺陷–保证系统质量和可靠性的关键步骤•2测试方法–人工测试–机器测试计算机基础中心•软件测试定义:使用人工或自动手段来运行或测定某个系统的过程,其目的在于检验它是否满足规定的需求或是弄清预期结果与实际结果之间的差别。•*:软件测试的目的:尽可能地多发现程序中的错误,不能也不可能证明程序
本文标题:计算机二级考试公共基础知识(软件工程)资料
链接地址:https://www.777doc.com/doc-3841837 .html