9软件工程ppt-PowerPointPresenta.ppt
《9软件工程ppt-PowerPointPresenta.ppt》由会员分享,可在线阅读,更多相关《9软件工程ppt-PowerPointPresenta.ppt(97页珍藏版)》请在三一办公上搜索。
1、软件工程,公共基础第三部分,本章考核内容约占8%,主要包括一下几个方面:软件工程的一些基本概念以及它们之间的关系结构化分析方法中的数据流图、数据树、数据表以及软件规格说明书的特点结构化设计方法中的概要设计和详细设计静态测试和动态测试,考点1 软件的定义与特点1.软件定义 计算机软件(Software)是计算机系统中与硬件相依存的另一部分,是包括程序、数据及相关文档的完整集合。程序:软件开发人员根据用户需求开发的、用程序设计语言描述的、适合计算机执行的指令(语句)序列。数据:使程序能正常操纵信息的数据结构。文档:与程序开发、维护和使用有关的图文资料。国标(GB)中对软件的定义为:与计算机系统的操
2、作有关的计算机程序、规程、规则,以及可能有的文件、文档及数据。,考点1 软件的定义与特点1.软件定义【2007年9月】:软件是指()A)程序 B)程序和文档 C)算法加数据结构 D)程序、数据与相关文档的完整集合,答案,D,考点1 软件的定义与特点2.软件组成 软件由两部分组成:1)机器可执行的程序和数据;2)机器不可执行的,与软件开发、运行、维护、使用等有关的文档。,考点1 软件的定义与特点3.软件特点 与计算机硬件相比,软件在开发、生产、维护和使用方面都存在明显的差异,主要体现在:1)软件是一种逻辑实体,而不是物理实体,具有抽象性;2)软件的生产与硬件不同,它没有明显的制作过程;3)软件在
3、运行、使用期间不存在磨损、老化问题;4)软件的开发、运行对计算机系统具有依赖性,受计算机系统的限制,这导致了软件移植的问题;5)软件复杂性高、成本昂贵;6)软件开发涉及诸多的社会因素。,考点1 软件的定义与特点3.软件特点【2005年4月】下列描述中正确的是()A)程序就是软件 B)软件开发不受计算机系统的限制 C)软件既是逻辑实体,又是物理实体 D)软件是程序、数据与相关文档的集合,答案,D,考点1 软件的定义与特点4.软件分类 软件根据应用目标的不同,是多种多样的。软件按功能可以分为:应用软件、系统软件、支撑软件(或工具软件)。1)应用软件是为解决特定领域应用而开发的软件。2)系统软件是计
4、算机管理自身资源,提高计算机使用效率并为计算机用户提供各种服务的软件。3)支撑软件是介于系统软件和应用软件之间,协助用户开发软件的工具性软件。,考点1 软件的定义与特点4.软件分类【2009年3月】:软件按功能可以分为:应用软件、系统软件、支撑软件(或工具软件),下面属于应用软件的是()A)编译软件 B)操作系统 C)教务管理系统 D)汇编程序,答案,C,考点2 软件工程的定义1.软件危机 软件工程概念的出现源自于软件危机。20世纪60年代末以后,“软件危机”这个词频繁出现。软件危机是泛指在计算机软件的开发和维护过程中所遇到的一系列严重问题。在软件开发和维护过程中,可以将软件危机归结为成本、质
5、量、生产率等问题。造成这些问题的原因:一是与软件本身的特点有关;另一方面与软件的开发和维护方法不正确有关,这是主因。,考点2 软件工程的定义1.软件危机 例:美国IBM公司在1963年至1966开发的IBM360机的操作系统。这一项目花了5000人一年的工作量,最多时有1000人投入开发工作,写出了近100万行源程序。.据统计,这个操作系统每次发行的新版本都是从前一版本中找出1000个程序错误而修正的结果。.这个项目的负责人F.D.Brooks事后总结了他在组织开发过程中的沉痛教训时说:“.正像一只逃亡的野兽落到泥潭中做垂死的挣扎,越是挣扎,陷得越深,最后无法逃脱灭顶的灾难。.,程序设计工作正
6、像这样一个泥潭,.一批批程序员被迫在泥潭中拼命挣扎,.谁也没有料到问题竟会陷入这样的困境.”。IBM360操作系统的历史教训成为软件开发项目的典型事例为人们所记取。,考点2 软件工程的定义2.软件工程 软件工程是应用于计算机软件的定义、开发和维护的一整套方法、工具、文档、实践标准和工序。软件工程三要素:方法、工具和过程。方法是完成软件工程项目的技术手段;工具支持软件的开发、管理、文档生成;过程支持软件开发的各个环节的控制、管理。软件工程的核心思想是把软件当作一个工程产品来处理,以期达到工程项目的三个基本要素:进度、经费和质量的目标。,考点2 软件工程的定义2.软件工程【2005年9月】:下列描
7、述中正确的是()A)软件工程只是解决软件项目的管理问题 B)软件工程主要解决软件产品的生产率问题 C)软件工程的主要思想是强调在软件开发过程中需要应用工程化原则 D)软件工程只是解决软件开发中的技术问题,答案,C,考点2 软件工程的定义2.软件工程【2008年9月】:软件工程三要素包括方法、工具和过程,其中,支持软件开发的各个环节的控制和管理。,答案,过程,考点3 软件工程过程和软件生命周期1.软件工程过程 软件工程过程是把输入转化为输出的一组彼此相关的资源和活动。软件工程过程通常包含4种基本活动:P(Plan)-软件规格说明;D(Do)-软件开发;C(Check)-软件确认;A(Action
8、)-软件演进;软件工程的过程是将软件工程的方法和工具综合起来,以达到合理、及时地进行计算机软件开发的目的。软件工程过程应确定方法使用的顺序;要求交付的文档资料;为保证质量和适应变化所需要的管理;软件开发各个阶段完成的任务。,考点3 软件工程过程和软件生命周期2.软件生命周期 生命周期:将软件产品从提出、实现、使用、维护到停止使用退役的全过程成为生命周期。软件生命周期包括三个阶段:软件定义:可行性研究与计划指定、需求分析 软件开发:软件设计(概要设计和详细设计阶段)、实现和测试 软件维护:运行和维护阶段,考点3 软件工程过程和软件生命周期2.软件生命周期 1)可行性研究与计划制定:确定待开发软件
9、系统的开发目标和总的要求,给出它的功能、性能、可靠性以及接口等方面的可能方案,制定完成开发任务的实施计划。2)需求分析:对准备开发的软件提出的需求进行分析并给出详细定义,编写软件规格说明书及初步用户手册,提交评审。3)概要设计。这一阶段也称为总体设计,其任务是划分出构成系统的各种物理元素(如程序、文件、数据库、人工过程与文档等)以及设计出软件的结构(如确定模块以及模块间的关系)。这一阶段的重点是解决“概要地描述如何解决问题”。,考点3 软件工程过程和软件生命周期2.软件生命周期 4)详细设计:总体设计是对软件抽象和概括的设计,而详细设计是在总体设计的基础之上,把解决问题的方法具体化,重点解决的
10、是“怎样具体实现这个系统”的问题。工作成果:设计出程序的详细规格说明(主要利用HIPO图、PDL语言等工具)。5)软件编码:编码是将概要设计与详细设计阶段中的结果翻译成用某种程序设计语言书写的程序。虽然程序的质量基本上是由设计的质量决定,但选择恰当的编码语言,对写出容易理解和维护的程序模块有重大的影响。,考点3 软件工程过程和软件生命周期2.软件生命周期 6)软件测试:在设计测试用例的基础上,检验软件的各个组成部分,编写测试分析报告。7)运行和维护:软件维护虽然是软件生命周期的最后一个阶段,但也是持续时间最长、付出代价最大的阶段。注意:在软件生命周期的各个阶段都必须充分考虑维护的问题,并且为维
11、护做好准备。软件维护不仅包括程序代码的维护,还包括文档的维护。,考点3 软件工程过程和软件生命周期2.软件生命周期【2005年9月】下列叙述中正确的是()A)软件交付使用后还需要进行维护 B)软件一旦交付使用就不需要再进行维护 C)软件交付使用后其生命周期就结束 D)软件维护是指修复程序中被破坏的指令,答案,A,考点3 软件工程过程和软件生命周期2.软件生命周期【2006年9月】:下列选项中不属于软件生命周期开发阶段任务的是()A)软件测试 B)概要设计 C)软件维护 D)详细设计【2007年4月】:软件生命周期可分为多个阶段,一般分为定义阶段、开发阶段和维护阶段。编码和测试属于 阶段。,答案
12、,开发阶段,C,考点4 软件工程的目标与原则1.软件工程的目标 软件工程的目标是:在给定成本、进度的前提下,开发出具有时效性,可理解性、可维护性、可重用性、可适应性、可移植性、可追踪性和可互操作性全满足用户需求的产品。软件工程需要达到的基本目标应是:付出较低的开发成本;达到要求的软件功能;取得较好的软件性能;开发的软件易于移植;需要较低的维护费用;能按时完成开发,及时交付使用。,考点4 软件工程的目标与原则1.软件工程的目标 基于软件工程的目标,软件工程的理论和技术性研究的内容主要包括:软件开发技术和软件工程管理。,考点4 软件工程的目标与原则2.软件工程原则 软件工程原则包括:抽象、信息隐蔽
13、、模块化、局部化(保证模块间具有松散的耦合关系,模块内部有较强的内聚性)、确定性、一致性、完备性和可验证性。,考点5 软件开发工具与开发环境1.软件开发工具 软件开发工具的开发是从单项工具的开发逐步向集成工具发展的,软件工具为软件工程的方法提供了自动的或半自动的软件支撑环境。2.软件开发环境 软件开发环境或称软件工程环境是全面支持软件开发全过程的软件工具集合。,考点6 需求分析概述 软件开发方法是软件开发过程所遵循的方法和步骤,其目的在于有效地得到一些工作产品,即程序和文档,并且满足质量要求。软件开发方法包括分析方法、设计方法和程序设计方法。,考点6 需求分析概述1.需求分析定义:软件需求分析
14、是指用户对目标软件系统在功能、行为、性能、设计约束等方面的期望。需求分析的任务是发现需求、求精、建模和定义需求的过程。需求分析将创建所需的数据模型、功能模型和控制模型。,考点6 需求分析概述 1.需求分析需求分析阶段的工作 1)需求获取。需求获取的目的是确定对目标系统的各方面需求。涉及的主要任务是建立获取用户需求的方法框架,并支持和监控需求获取的过程。2)需求分析。对获取的需求进行分析和综合,最终给出系统的解决方案和目标系统的逻辑模型。3)编写需求规格说明书。作为需求分析的阶段成果的需求规格说明书,可以为用户、分析人员和设计人员之间的交流提供方便,可以直接支持目标软件系统的确认,又可以作为控制
15、软件开发进程的依据。4)需求评审。在需求分析的最后一步,对需求分析阶段的工作进行复审,验证需求文档的一致性、可行性、完整性和有效性。,考点6 需求分析概述2.常用需求分析方法1)结构化的分析方法 主要包括面向数据流的结构化分析方法(SA)、面向数据结构的Jackson方法(JSD)和面向数据结构的结构化数据系统开发方法(DSSD)。2)面向对象的分析方法(OOA)从需求分析建立的模型的特性来分,需求分析方法又分为静态分析方法和动态分析方法。,考点7 结构化分析方法 结构化方法经过30多年的发展,已经成为系统、成熟的软件开发方法之一。结构化方法包括已经形成了配套的结构化分析方法、结构化设计方法和
16、结构化编程方法,其核心和基础是结构化程序理论。结构化分析方法是结构化程序设计理论在软件需求阶段的运用。它是20世纪70年代中期倡导的基于功能分解的分析方法,其目的是弄清用户对软件的需求。,考点7 结构化分析方法1.结构化分析方法中的步骤 1)通过对用户的调查,以软件的需求为线索,获得当前系统的具体模型;2)去掉具体模型中的非本质因素,抽象出当前系统的逻辑模型;3)根据计算机的特点分析当前系统与目标系统的差别,建立目标系统的逻辑模型;4)完善目标系统并补充细节,写出目标系统的软件需求规格说明书;5)评审知道确认完全符合用户对软件的需求。,考点7 结构化分析方法2.结构化分析的常用工具1)数据流图
17、(DFDdata flow diagram)定义:数据流图(Data Flow Diagram,DFD)是描述数据处理过程的工具,是需求理解的逻辑模型的图形表示,它直接支持系统的功能建模。数据流图从数据传递和加工的角度,来刻画数据流从输出的移动变换过程。,考点7 结构化分析方法2.结构化分析的常用工具1)数据流图(DFDdata flow diagram)图形元素:,考点7 结构化分析方法2.结构化分析的常用工具1)数据流图(DFDdata flow diagram)步骤:一般通过对实际系统了解和分析后,使用数据流图为系统建立逻辑模型。建立数据流图的步骤如下:步骤1:由外向里,先画系统输入输出
18、,再画系统内部。步骤2:自顶向下,完成顶层、中间层、底层数据流图。步骤3:逐层分解。,考点7 结构化分析方法2.结构化分析的常用工具1)数据流图(DFDdata flow diagram)数据流图的构造要遵循如下一些规则对加工处理建立唯一、层次性的编号,且每个加工处理通常要求既有输入又有输出;数据存储之间不应该有数据流;数据流的一致性:数据流图中的数据要守恒,数据存储文件的使用要有写入也要有读出;父图、子图关系与平衡规则:子图个数不大于父图中的处理个数。所有子图输入、输出和父图中相应的输入、输出数据流必须一致;,考点7 结构化分析方法2.结构化分析的常用工具1)数据流图(DFDdata flo
19、w diagram)【2004年9月】:在结构化方法中,用数据流图(DFD)作为描述工具的软件开发阶段是()。A)可行性分析 B)需求分析 C)详细设计 D)程序编码【2008年9月】:在软件开发中,需求分析阶段可以使用的工具是()A)N-S图 B)DFD图 C)PAD图 D)程序流程图,答案,B,B,考点7 结构化分析方法2.结构化分析的常用工具2)数据字典(DDdata dictionary)数据字典是结构化分析方法的核心。数据字典的作用是对DFD中出现的被命名的图形元素的确切解释。数据字典和DFD经常配合使用。通常数据字典包含的信息有:名称、别名、何处使用/如何使用、内容描述及补充信息等
20、。,考点7 结构化分析方法2.结构化分析的常用工具3)判定树 使用判定树进行描述时,应先从问题定义的文字描述中分清哪些是判定的条件,哪些是判定的结论,根据描述材料中的连接词找出判定条件之间的从属关系、并列关系、选择关系,根据它们构造判定树。4)判定表 判定表与判定树相似。当数据流图中的加工要依赖于多个逻辑条件的取值时,即完成该加工的一组动作是由于一组条件取值的组合引发的,使用判定表比较适宜。注意:判定表和判定树是以图形的形式描述数据图的加工逻辑。,考点7 结构化分析方法3.软件需求规格说明书1)定义 软件需求规则说明书(SRS,Software Requirement Specificatio
21、n)是需求分析阶段的最后成果,是软件开发中重要文档之一。2)作用便于用户、开发人员进行理解和交流。反映出用户问题的结构,可以作为软件开发工作的基础和依据。作为确认测试和验收的依据。,考点7 结构化分析方法3.软件需求规格说明书3)内容概述:从系统角度描述软件的目标和任务;数据描述:对软件系统所必须解决的问题做出详细说明,主要包括数据流图、数据字典、系统接口说明、内部接口;功能描述:描述为解决用户问题所需要的每一项功能的过程细节,主要包括功能、处理说明、设计的限制等;性能描述:说明系统应达到的性能和应该满足的限制条件,检测的方法和标准,预期的软件响应和可能需要考虑的特殊问题;参考文献:包括与该软
22、件有关的全部参考文献;附录:包括一些补充资料;如列表数据、算法的详细说明、框图、图表和其他材料。,考点7 结构化分析方法3.软件需求规格说明书4)特点衡量一个软件需求规则说明书质量的标准:正确性、无歧义性、完整性、可验证性、一致性、可理解性、可修改性和可追踪性。软件需求规格说明书在开发早期就为尚未诞生的软件系统建立了一个可见的逻辑模型。作为设计的基础和验收的依据,软件需求规格说明书应该是精确而无二义性的。,考点7 结构化分析方法3.软件需求规格说明书【2007年9月】:软件需求规格说明书应具有完整性,无岐义性、正确性、可验证性、可修改性等特征,其中最重要的是。【2008年4月】:在软件开发中,
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 软件工程 ppt PowerPointPresenta
链接地址:https://www.31ppt.com/p-6280707.html