您好,欢迎访问三七文档
当前位置:首页 > 建筑/环境 > 工程监理 > 9软件工程ppt-PowerPointPresenta
软件工程公共基础第三部分公共基础第三部分——软件工程本章考核内容约占8%,主要包括一下几个方面:软件工程的一些基本概念以及它们之间的关系结构化分析方法中的数据流图、数据树、数据表以及软件规格说明书的特点结构化设计方法中的概要设计和详细设计静态测试和动态测试公共基础第三部分——软件工程02468101205.405.906.406.907.407.908.408.909.3时间软件工程选择填空2005年4月622005年9月822006年4月422006年9月442007年4月462007年9月442008年4月622008年9月442009年3月62公共基础第三部分——软件工程考点1软件的定义与特点☆1.软件定义计算机软件(Software)是计算机系统中与硬件相依存的另一部分,是包括程序、数据及相关文档的完整集合。程序:软件开发人员根据用户需求开发的、用程序设计语言描述的、适合计算机执行的指令(语句)序列。数据:使程序能正常操纵信息的数据结构。文档:与程序开发、维护和使用有关的图文资料。国标(GB)中对软件的定义为:与计算机系统的操作有关的计算机程序、规程、规则,以及可能有的文件、文档及数据。公共基础第三部分——软件工程考点1软件的定义与特点☆1.软件定义【2007年9月】:软件是指()A)程序B)程序和文档C)算法加数据结构D)程序、数据与相关文档的完整集合答案D公共基础第三部分——软件工程考点1软件的定义与特点☆2.软件组成软件由两部分组成:1)机器可执行的程序和数据;2)机器不可执行的,与软件开发、运行、维护、使用等有关的文档。公共基础第三部分——软件工程考点1软件的定义与特点☆3.软件特点与计算机硬件相比,软件在开发、生产、维护和使用方面都存在明显的差异,主要体现在:1)软件是一种逻辑实体,而不是物理实体,具有抽象性;2)软件的生产与硬件不同,它没有明显的制作过程;3)软件在运行、使用期间不存在磨损、老化问题;4)软件的开发、运行对计算机系统具有依赖性,受计算机系统的限制,这导致了软件移植的问题;5)软件复杂性高、成本昂贵;6)软件开发涉及诸多的社会因素。公共基础第三部分——软件工程考点1软件的定义与特点☆3.软件特点【2005年4月】下列描述中正确的是()A)程序就是软件B)软件开发不受计算机系统的限制C)软件既是逻辑实体,又是物理实体D)软件是程序、数据与相关文档的集合答案D公共基础第三部分——软件工程考点1软件的定义与特点☆4.软件分类软件根据应用目标的不同,是多种多样的。软件按功能可以分为:应用软件、系统软件、支撑软件(或工具软件)。1)应用软件是为解决特定领域应用而开发的软件。2)系统软件是计算机管理自身资源,提高计算机使用效率并为计算机用户提供各种服务的软件。3)支撑软件是介于系统软件和应用软件之间,协助用户开发软件的工具性软件。公共基础第三部分——软件工程考点1软件的定义与特点☆4.软件分类【2009年3月】:软件按功能可以分为:应用软件、系统软件、支撑软件(或工具软件),下面属于应用软件的是()A)编译软件B)操作系统C)教务管理系统D)汇编程序答案C公共基础第三部分——软件工程考点2软件工程的定义☆1.软件危机软件工程概念的出现源自于软件危机。20世纪60年代末以后,“软件危机”这个词频繁出现。软件危机是泛指在计算机软件的开发和维护过程中所遇到的一系列严重问题。在软件开发和维护过程中,可以将软件危机归结为成本、质量、生产率等问题。造成这些问题的原因:一是与软件本身的特点有关;另一方面与软件的开发和维护方法不正确有关,这是主因。公共基础第三部分——软件工程考点2软件工程的定义☆1.软件危机例:美国IBM公司在1963年至1966开发的IBM360机的操作系统。这一项目花了5000人一年的工作量,最多时有1000人投入开发工作,写出了近100万行源程序。......据统计,这个操作系统每次发行的新版本都是从前一版本中找出1000个程序错误而修正的结果。......这个项目的负责人F.D.Brooks事后总结了他在组织开发过程中的沉痛教训时说:“......正像一只逃亡的野兽落到泥潭中做垂死的挣扎,越是挣扎,陷得越深,最后无法逃脱灭顶的灾难。......,程序设计工作正像这样一个泥潭,......一批批程序员被迫在泥潭中拼命挣扎,......谁也没有料到问题竟会陷入这样的困境......”。IBM360操作系统的历史教训成为软件开发项目的典型事例为人们所记取。公共基础第三部分——软件工程考点2软件工程的定义☆2.软件工程软件工程是应用于计算机软件的定义、开发和维护的一整套方法、工具、文档、实践标准和工序。软件工程三要素:方法、工具和过程。方法是完成软件工程项目的技术手段;工具支持软件的开发、管理、文档生成;过程支持软件开发的各个环节的控制、管理。软件工程的核心思想是把软件当作一个工程产品来处理,以期达到工程项目的三个基本要素:进度、经费和质量的目标。公共基础第三部分——软件工程考点2软件工程的定义☆2.软件工程【2005年9月】:下列描述中正确的是()A)软件工程只是解决软件项目的管理问题B)软件工程主要解决软件产品的生产率问题C)软件工程的主要思想是强调在软件开发过程中需要应用工程化原则D)软件工程只是解决软件开发中的技术问题答案C公共基础第三部分——软件工程考点2软件工程的定义☆2.软件工程【2008年9月】:软件工程三要素包括方法、工具和过程,其中,支持软件开发的各个环节的控制和管理。答案过程公共基础第三部分——软件工程考点3软件工程过程和软件生命周期☆1.软件工程过程软件工程过程是把输入转化为输出的一组彼此相关的资源和活动。软件工程过程通常包含4种基本活动:P(Plan)-软件规格说明;D(Do)-软件开发;C(Check)-软件确认;A(Action)-软件演进;软件工程的过程是将软件工程的方法和工具综合起来,以达到合理、及时地进行计算机软件开发的目的。软件工程过程应确定方法使用的顺序;要求交付的文档资料;为保证质量和适应变化所需要的管理;软件开发各个阶段完成的任务。公共基础第三部分——软件工程考点3软件工程过程和软件生命周期☆2.软件生命周期生命周期:将软件产品从提出、实现、使用、维护到停止使用退役的全过程成为生命周期。软件生命周期包括三个阶段:软件定义:可行性研究与计划指定、需求分析软件开发:软件设计(概要设计和详细设计阶段)、实现和测试软件维护:运行和维护阶段公共基础第三部分——软件工程考点3软件工程过程和软件生命周期☆2.软件生命周期1)可行性研究与计划制定:确定待开发软件系统的开发目标和总的要求,给出它的功能、性能、可靠性以及接口等方面的可能方案,制定完成开发任务的实施计划。2)需求分析:对准备开发的软件提出的需求进行分析并给出详细定义,编写软件规格说明书及初步用户手册,提交评审。3)概要设计。这一阶段也称为总体设计,其任务是划分出构成系统的各种物理元素(如程序、文件、数据库、人工过程与文档等)以及设计出软件的结构(如确定模块以及模块间的关系)。这一阶段的重点是解决“概要地描述如何解决问题”。公共基础第三部分——软件工程考点3软件工程过程和软件生命周期☆2.软件生命周期4)详细设计:总体设计是对软件抽象和概括的设计,而详细设计是在总体设计的基础之上,把解决问题的方法具体化,重点解决的是“怎样具体实现这个系统”的问题。工作成果:设计出程序的详细规格说明(主要利用HIPO图、PDL语言等工具)。5)软件编码:编码是将概要设计与详细设计阶段中的结果翻译成用某种程序设计语言书写的程序。虽然程序的质量基本上是由设计的质量决定,但选择恰当的编码语言,对写出容易理解和维护的程序模块有重大的影响。公共基础第三部分——软件工程考点3软件工程过程和软件生命周期☆2.软件生命周期6)软件测试:在设计测试用例的基础上,检验软件的各个组成部分,编写测试分析报告。7)运行和维护:软件维护虽然是软件生命周期的最后一个阶段,但也是持续时间最长、付出代价最大的阶段。注意:在软件生命周期的各个阶段都必须充分考虑维护的问题,并且为维护做好准备。软件维护不仅包括程序代码的维护,还包括文档的维护。公共基础第三部分——软件工程公共基础第三部分——软件工程考点3软件工程过程和软件生命周期☆2.软件生命周期【2005年9月】下列叙述中正确的是()A)软件交付使用后还需要进行维护B)软件一旦交付使用就不需要再进行维护C)软件交付使用后其生命周期就结束D)软件维护是指修复程序中被破坏的指令答案A公共基础第三部分——软件工程考点3软件工程过程和软件生命周期☆2.软件生命周期【2006年9月】:下列选项中不属于软件生命周期开发阶段任务的是()A)软件测试B)概要设计C)软件维护D)详细设计【2007年4月】:软件生命周期可分为多个阶段,一般分为定义阶段、开发阶段和维护阶段。编码和测试属于阶段。答案开发阶段C公共基础第三部分——软件工程考点4软件工程的目标与原则1.软件工程的目标软件工程的目标是:在给定成本、进度的前提下,开发出具有时效性,可理解性、可维护性、可重用性、可适应性、可移植性、可追踪性和可互操作性全满足用户需求的产品。软件工程需要达到的基本目标应是:付出较低的开发成本;达到要求的软件功能;取得较好的软件性能;开发的软件易于移植;需要较低的维护费用;能按时完成开发,及时交付使用。公共基础第三部分——软件工程考点4软件工程的目标与原则1.软件工程的目标基于软件工程的目标,软件工程的理论和技术性研究的内容主要包括:软件开发技术和软件工程管理。软件工程软件开发技术软件工程管理软件开发方法学软件开发过程软件开发工具软件工程环境软件管理学软件工程经济学软件心理学公共基础第三部分——软件工程考点4软件工程的目标与原则2.软件工程原则软件工程原则包括:抽象、信息隐蔽、模块化、局部化(保证模块间具有松散的耦合关系,模块内部有较强的内聚性)、确定性、一致性、完备性和可验证性。公共基础第三部分——软件工程考点5软件开发工具与开发环境1.软件开发工具软件开发工具的开发是从单项工具的开发逐步向集成工具发展的,软件工具为软件工程的方法提供了自动的或半自动的软件支撑环境。2.软件开发环境软件开发环境或称软件工程环境是全面支持软件开发全过程的软件工具集合。公共基础第三部分——软件工程考点6需求分析概述☆软件开发方法是软件开发过程所遵循的方法和步骤,其目的在于有效地得到一些工作产品,即程序和文档,并且满足质量要求。软件开发方法包括分析方法、设计方法和程序设计方法。公共基础第三部分——软件工程考点6需求分析概述☆1.需求分析定义:软件需求分析是指用户对目标软件系统在功能、行为、性能、设计约束等方面的期望。需求分析的任务是发现需求、求精、建模和定义需求的过程。需求分析将创建所需的数据模型、功能模型和控制模型。公共基础第三部分——软件工程考点6需求分析概述☆1.需求分析需求分析阶段的工作1)需求获取。需求获取的目的是确定对目标系统的各方面需求。涉及的主要任务是建立获取用户需求的方法框架,并支持和监控需求获取的过程。2)需求分析。对获取的需求进行分析和综合,最终给出系统的解决方案和目标系统的逻辑模型。3)编写需求规格说明书。作为需求分析的阶段成果的需求规格说明书,可以为用户、分析人员和设计人员之间的交流提供方便,可以直接支持目标软件系统的确认,又可以作为控制软件开发进程的依据。4)需求评审。在需求分析的最后一步,对需求分析阶段的工作进行复审,验证需求文档的一致性、可行性、完整性和有效性。公共基础第三部分——软件工程考点6需求分析概述☆2.常用需求分析方法1)结构化的分析方法主要包括面向数据流的结构化分析方法(SA)、面向数据结构的Jackson方法(JSD)和面向数据结构的结构化数据系统开发方法(DSSD)。2)面向对象的分析方法(OOA)从需求分析建立的模型的特性来分,需求分析方法又分为静态分析方法和动态分析方法。公共基础第三部分——软件工
本文标题:9软件工程ppt-PowerPointPresenta
链接地址:https://www.777doc.com/doc-162930 .html