全国计算机等级考试二级公共基础知识课件3软件工程.ppt
《全国计算机等级考试二级公共基础知识课件3软件工程.ppt》由会员分享,可在线阅读,更多相关《全国计算机等级考试二级公共基础知识课件3软件工程.ppt(90页珍藏版)》请在三一办公上搜索。
1、2003.11.,全国计算机等级考试二级公共基础知识,软件工程基础,详细重点学习知识点:1软件的概念、软件生命周期的概念及各阶段所包含的活动2概要设计与详细设计的概念、模块独立性及其度量的标准、详细设计常用的工具3软件测试的目的、软件测试的4个步骤、4软件调试的任务,3.1 软件工程基本概念,软件工程基本概念,软件生命周期概念,软件工具与软件开发环境。结构化分析方法,数据流图,数据字典,软件需求规格说明书。结构化设计方法,总体设计与详细设计。软件测试的方法,白盒测试与黑盒测试,测试用例设计,软件测试的实施,单元测试、集成测试和系统测试。程序的调试,静态调试与动态调试。,3.1.1 软件工程的相
2、关概念,在笔试考试中,是一个经常考查的内容,考核的几率为70%,主要是以选择题的形式出现,分值为2分,此考点为识记内容,读者应该识记软件的定义,特点及其分类。,3.1 基本概念,1.软件的定义与组成软件指的是计算机系统中与硬件相互依存的另一部分,包括程序、数据和相关文档的完整集合。程序是软件开发人员根据用户需求开发的、用程序设计语言描述的、适合计算机执行的指令序列。数据是使程序能正常操纵信息的数据结构。文档是与程序的开发、维护和使用有关的图文资料。,3.1 基本概念,2.软件的特点它包括:1)软件是一种逻辑实体,而不是物理实体,具有抽象性;2)软件的生产与硬件不同,它没有明显的制作过程;3)软
3、件在运行、使用期间不存在磨损、老化问题;4)软件的开发、运行对计算机系统具有依赖性,受计算机系统的限制,这导致了软件移植的问题;5)软件复杂性高,成本昂贵;6)软件开发涉及诸多的社会因,3.1 基本概念,3.软件的分类根据应用目标的不同,软件可分应用软件、系统软件和支撑软件(或工具软件)。(1)应用软件。它是在特定领域内开发,为特定目的服务的一类软件。(2)系统软件。它能与计算机硬件紧密配合在一起,使计算机系统各个部分、相关的软件和数据协调、高效的工作的软件。例如:操作系统、数据库管理系统。(3)支撑软件。它是协调用户开发软件的工具性软件,其中包括开发软件。,历年真题,1.下列描述中正确的是(
4、)【2005年4月】A 程序就是软件 B 软件开发不受计算机系统的限制C软件既是逻辑实体,又是物理实体 D 软件是程序、数据与相关文档的集合答案:D2.软件是指()【2007年9月 选择题第1题】A)程序 B)程序和文档C)算法加数据结构 D)程序、数据和相关文档的集合答案:D3.软件按功能可以分为:应用软件、系统软件和支撑软件(或工具软件)。下面属于应用软件的是()【2009年3月 选择题第5题】A)编译软件 B)操作系统 C)教务管理系统 D)汇编程序答案:C,4.软件按功能可以分为:应用软件、系统软件和支撑软件(或工具软件)。下面属于系统软件的是()【2010年3月 选择题第3题】)编辑
5、软件)操作系统)教务管理系统)浏览器答案:B5.软件是【】数据和文档的集合。【2010年3月 填空题第4题】答案:程序,练习题,1软件按功能可以分为:应用软件、系统软件和答案:支撑软件(或工具软件)2软件是程序、【】和【】的集合答案:数据、文档,3.1 基本概念,1.软件工程软件工程是指应用计算机科学、数学及管理科学等原理,以工程化的原则和方法来解决软件问题的工程。其目的是提高软件生产率、提高软件质量、降低软件成本。2.软件危机早期的软件主要指程序,采用个体工作方式,缺少相关文档,质量低,维护困难,这些问题称为“软件危机”,软件工程概念的出现源自于软件危机。,(1)软件开发技术,主要有软件开发
6、方法学、开发过程、软件工具、软件工程环境,其主体内容是软件开发方法学。(2)软件工程管理,主要有软件管理、软件工程经济学、软件心理学。软件工程的主要思想是将工程化原则运用到软件开发过程,它包括3个要素:方法、工具和过程。方法是完成软件工程项目的技术手段;工具是支持软件的开发、管理、文档生成;过程支持软件开发的各个环节的控制、管理。,3.软件生命周期将软件产品从提出、实现、使用维护到停止使用退役的过程称为软件生命周期分为软件定义、软件开发及软件运行维护3个阶段。维护是持续时间最长,花费代价最大的一个阶段,软件工程学的一个目的就是提高软件的可维护性,降低维护代价6个活动阶段可行性研究与计划制定:确
7、定系统的总体目标。参加人员有用户、项目负责人和系统分析员,产生文档有可行性分析报告、项目计划书等需求分析:确定系统的逻辑模型。参加人员有用户、项目负责人和系统分析员。产生文档为需求规格说明书,其作用:(1)便于用户、开发人员进行理解交流;(2)反映用户问题的结构,可以作为软件开发工作的基础和依据;(3)作为确认测试和验收的依据。,软件设计:包括软件结构设计、数据设计、接口设计和过程设计。其中结构设计是定义软件系统各部件之间的关系;数据设计是将分析时创建的模型转化为数据结构的定义;接口设计是描述软件内部、软件和操作系统之间及软件与人之间如何通信;过程设计则是把系统结构部件转换成软件的过程性描述。
8、软件设计分概要设计和详细设计。参加人员有系统分析员和高级程序员。产生的文档有设计规格说明书。编码:编程。高级程序员和程序员产生源程序清单测试:由另一部门的高级程序员或系统分析员产生软件测试计划和软件测试报告运行维护,软件定义、软件开发及软件运行维护三个阶段:,(1)软件定义阶段:包括制定计划和需求分析。制定计划:确定总目标;可行性研究;探讨解决方案;制定开发计划。需求分析:对待开发软件提出的需求进行分析并给出详细的定义。,(2)软件开发阶段:软件设计:分为概要设计和详细设计两个部分。软件实现:把软件设计转换成计算机可以接受的程序代码。软件测试:在设计测试用例的基础上检验软件的各个组成部分。,(
9、3)软件运行维护阶段:软件投入运行,并在使用中不断地维护,进行必要的扩充和删改。软件生命周期中所花费最多的阶段是软件运行维护阶段。,4.软件工程三要素方法:完成软件工程项目的技术手段工具:支持软件的开发、管理、文档生成过程:支持软件开发的各个环节的控制、管理5.软件工程的理论和技术研究的内容软件开发技术和软件工程管理,历年真题,1.软件生命周期可分为定义阶段,开发阶段和维护阶段。详细设计属于()【2010年3月 填空题第6题】)定义阶段)开发阶段)维护阶段)上述三个阶段答案:B2.下列选项中不属于软件生命周期开发阶段任务的是_。【2006年9月】A)软件测试B)概要设计C)软件维护D)详细设计
10、答案:C,练习题,1.软件设计分为概要设计和【】两个部分。答案:详细设计2.软件生命周期可分定义阶段,【】和维护阶段。答案:开发,3.1.4软件工程的目标和与原则,软件工程的目标软件工程目标:在给定成本、进度的前提下,开发出具有有效性、可靠性、可理解性、可维护性、可重用性、可适应性、可移植性、可追踪性和可互操作性且满足用户需求的产品。软件工程需要达到的基本目标应是:付出较低的开发成本;达到要求的软件功能;取得较好的软件性能;开发的软件易于移植;需要较低的维护费用;能按时完成开发,及时交付使用。,2.软件工程原则软件工程原则:抽象、信息隐蔽、模块化、局部化、确定性、一致性、完备性和可验证性。抽象
11、:抽象是事物最基本的特性和行为,忽略非本质细节,采用分层次抽象,自顶向下,逐层细化的办法控制软件开发过程的复杂性。信息隐蔽:采用封装技术,将程序模块的实现细节隐蔽起来,使模块接口尽量简单。模块化:模块是程序中相对独立的成分,一个独立的编程单位,应有良好的接口定义。模块的大小要适中,模块过大会使模块内部的复杂性增加,不利于模块的理解和修改,也不利于模块的调试和重用;模块太小会导致整个系统表示过于复杂,不利于控制系统的复杂性。局部化:保证模块间具有松散的耦合关系,模块内部有较强的内聚性。确定性:软件开发过程中所有概念的表达应是确定、无歧义且规范的。一致性:程序内外部接口应保持一致,系统规格说明与系
12、统行为应保持一致。完备性:软件系统不丢失任何重要成分,完全实现系统所需的功能。,6.软件工程的目标在给定的成本、进度的前提下,开发出具有有效性、可靠性、可理解性、可维护性、可适应性、可移植性、可追踪性和可互操作性且满足用户需求的产品软件工程鼓励研制和采用各种先进的软件开发方法、工具和环境7.软件工具和软件开发环境软件工具(CASE):用来辅助软件开、运行、维护、管理、支持等过程中的活动的软件软件开发环境:支持软件产品开发的软件系统,它由软件工具集和环境集成机制构成,历年真题,1.下列描述中正确的是()【2005年9月】A 软件工程只是解决软件项目的管理问题B 软件工程主要解决软件产品的生产率问
13、题C 软件工程的主要思想是强调在软件开发过程中需要应用工程化原则D 软件工程只是解决软件开发中的技术问题答案:C2.软件工程三要素包括方法、工具和过程,其中,【3】支持软件开发的各个环节的控制和管理。【2008年9月 填空题第3题】答案:过程,练习题,1.软件工程研究的内容包括:【】技术和软件工程管理答案:软件开发2.下面不属于软件工程的3个要素是()A)工具B)过程 C)方法 D)环境答案:D3.软件工程学一般包括软件开发技术和软件工程管理两方面的内容。软件工程经济学是软件工程管理的技术内容之一,它专门研究_。A)软件开发的方法学B)软件开发技术和工具C)软件成本效益分析D)计划、进度和预算
14、答案:C,3.2结构化分析方法,在笔试考试中,在笔试考试中出现的几率为低,此考点为识记内容,3.2.1需求分析与需求分析方法,结构化方法的核心和基础是结构化程序设计理论。1、需求分析需求分析的任务就是导出目标系统的逻辑模型,解决“做什么”的问题。需求分析一般分为需求获取、需求分析、编写需求规格说明书和需求评审四个步骤进行。,3.2.1需求分析与需求分析方法,2.需求分析方法(1)结构化需求分析方法;主要包括:面向数据流的SA-structured analysis方法,面向数据结构的jackson方法(JSD-jackson system development method),面向数据结构的
15、结构化数据系统开发方法(DDSD-Data structured system development method)(2)面向对象的分析方法。(抽取和整理用户需求并建立问题域精确模型的过程),需求分析方法又分为静态和动态分析方法。,练习题,1.jackson方法是一种面向【】的结构化方法。答案:数据结构2.需求分析阶段的任务是确定_。A)软件开发方法B)软件开发工具C)软件开发费用D)软件系统功能答案:A,3.2 结构化分析方法,基本思想将系统分析看成工程项目,有计划、有步骤地进行工作。开发策略自顶向下,逐层分解分析结果一套分层的数据流图(DFD):用来描述数据流从输入到输出的变换流程一个数
16、据字典(DD):用来描述DFD中的每个数据流、文件以及组成数据流或文件的数据项一组小说明(加工逻辑说明):用来描述每个基本加工的加工逻辑,3.2 结构化分析方法,1、结构化分析方法结构化分析方法是结构化程序设计理论在软件需求分析阶段的应用。结构化分析方法的实质:着眼于数据流,自顶向下,逐层分解,建立系统的处理流程,以数据流图和数据字典为主要工具,建立系统的逻辑模型。结构化分析的常用工具:(1)数据流图(DFD);(2)数据字典(DD);(3)判定树;(4)判定表。,数据流图数据流图以图形的方式描绘数据在系统中流动和处理的过程,它反映了系统必须完成的逻辑功能,是结构化分析方法中用于表示系统逻辑模
17、型的一种工具。上图是数据流图的基本图形元素:加工(转换):输入数据经加工变换产生输出。数据流:沿箭头方向传送数据的通道,一般在旁边标注数据流名。存储文件(数据源):表示处理过程中存放各种数据的文件。源,潭:表示系统和环境的接口,属系统之外的实体。画数据流图的基本步骤:自外向内,自顶向下,逐层细化,完善求精,下图是一个数据流图的示例:,数据字典:对所有与系统相关的数据元素的一个有组织的列表,以及精确的、严格的定义,使得用户和系统分析员对于输入、输出、存储成分和中间计算结果有共同的理解。*:数据字典的作用是对数据流图中出现的被命名的图形元素的确切解释。*:数据字典是结构化分析方法的核心。判定树从问
18、题定义的文字描述中分清哪些是判定的条件、哪些是判定的结论,根据描述材料中的链接词找出判定条件之间的从属关系、并列关系、选择关系,根据它们构造判定树。判定表。与判定树类似,当数据流图中的加工要依赖于多个逻辑条件的取值,即完成该加工的一组动作时由于某一组条件取值的组合而引发的,使用判定表描述比较适宜。,历年真题,1数据流程图(图)是()【2010年3月 选择题第5题】)软件概要设计的工具)软件详细设计的工具)结构化方法的需求分析工具)面向对象方法的需求分析工具答案:C2.在软件开发中,需求分析阶段可以使用的工具是()。【2008年9月 选择题第6题】A)N-S 图 B)DFD 图 C)PAD 图
19、D)程序流程图答案:B3.数据流图中带有箭头的线段表示的是()。【2008年9月 选择题第5题】A)控制流 B)事件驱动 C)模块调用 D)数据流答案:D,练习题,1.数据流图用于抽象描述一个软件的逻辑模型,数据流图由一些特定的图符构成。下面图符名标识的图符不属于数据流合法图符的是()A)控制流 B)加工 C)数据存储 D)源和潭答案:A2.结构化分析方法是面向_的自顶向下逐步求精进行需求分析的方法。A)对象 B)数据结构 C)数据流 D)目标答案:C,3.2.3 软件需求规格说明书,软件需求规格说明书是需求分析阶段的最后成果,通过建立完整的信息描述、详细的功能和行为描述、性能需求和设计约束的
20、说明、合适的验收标准,给出对目标软件的各种需求。特点软件需求规格说明书是确保软件质量的措施,它的内涵是:正确性;无歧义性;完整性;可验证性;一致性;可理解性;可修改性;可追踪性。软件需求规格说明书应该是精确而歧义的。,历年真题,1.在软件开发中,需求分析阶段产生的主要文档是()【2008年9月 选择题第4题】A)可行性分析报告 B)软件需求规格说明书 C)概要设计说明书 D)集成测试计划答案:B2.软件需求规格说明书应具有完整性、无歧义性、正确性、可验证性、可修改性等特性,其中最重要的_1_.【2007年9月 填空题第1题】答案:无歧义性,练习题,1.下列叙述中,不属于软件需求规格说明书的作用
21、的是_。A)便于用户、开发人员进行理解和交流B)反映出用户问题的结构,可以作为软件开发工作的基础和依据C)作为确认测试和验收的依据D)便于开发人员进行需求分析答案:D,3.3 结构化设计方法,笔试考试中,是一个经常考查的内容,考核中几率为70%,主要是以选择题的形式出现,分值为2分,此考点为重点掌握内容,读者应该识记模块独立性中的耦合性和内聚性。,3.3 结构化设计方法,1软件设计的基础从技术观点上看,软件设计包括软件结构设计、数据设计、接口设计、过程设计。从工程管理角度来看,软件设计分两步完成:概要设计和详细设计。,2软件设计的基本原理(1)抽象:软件设计中考虑模块化解决方案时,可以定出多个
22、抽象级别。抽象的层次从概要设计到详细设计逐步降低。(2)模块化:模块是指把一个待开发的软件分解成若干小的简单的部分。模块化是指解决一个复杂问题时自顶向下逐层把软件系统划分成若干模块的过程。(3)信息隐蔽:信息隐蔽是指在一个模块内包含的信息(过程或数据),对于不需要这些信息的其他模块来说是不能访问的。(4)模块独立性:模块独立性是指每个模块只完成系统要求的独立的子功能,并且与其他模块的联系最少且接口简单。模块的独立程度是评价设计好坏的重要度量标准。衡量软件的模块独立性使用耦合性和内聚性两个定性的度量标准。,内聚性模块内部各个元素之间彼此结合的紧密程度的度量 一个模块只做一件事7种类型,耦合性模块
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 全国 计算机等级考试 二级 公共 基础知识 课件 软件工程
链接地址:https://www.31ppt.com/p-5302937.html