没有合适的资源?快使用搜索试试~ 我知道了~
第 4 5 章 系统开发和运行维护1
需积分: 0 0 下载量 68 浏览量
2022-08-03
15:06:35
上传
评论
收藏 1.28MB PDF 举报
温馨提示
试读
45页
本书简介下一节第 8 章:系统开发和运行维护作者:希赛教育软考学院 来源:希赛网 2014年05月21日开发生命周期模型版权方授权希赛网发布,侵权必究8.2 系
资源详情
资源评论
资源推荐
您现在的位置:希赛网>云阅读>软件设计师考试考前串讲>
考点分析
第8章:系统开发和运行维护 作者:希赛教育软考学院来源:希赛网2014年05月21日
考点分析
第8章系统开发和运行维护
系统开发和运行维护是软件设计师考试的一个重要考点,同时也是软件设计师考试的核心。上
午考试中,有分数为10分左右的系统开发和运行维护方面的知识,下午考试中有1道试题(数据流图
设计)属于系统开发和运行维护知识,占15分。
8.1考点分析
本节把历次考试中系统开发和运行维护的试题进行汇总,得出本章的考点,如表8-1所示。
表8-1系统开发和运行维护试题知识点分布
根据表8-1,我们可以得出系统开发和运行维护的考点主要有:
(1)系统开发模型:包括瀑布模型、RUP、原型法。
(2)需求分析:包括数据字典、数据流图、系统转换。
(3)软件设计:包括耦合和内聚的概念、软件设计的过程、结构化设计的思想等。
(4)程序编写:包括程序编写的风格、工具等。
(5)软件测试:包括测试阶段、测试类型和测试用例设计。
(6)软件维护:主要考查维护的类型。
(7)项目管理:包括项目管理工具、质量管理、风险管理、CMM、软件文档等。
对这些知识点进行归类,然后按照重要程度进行分类,如表8-2所示。其中的五角星号(*)代
表知识点的重要程度,星号越多,表示越重要。
表8-2系统开发和运行维护各知识点重要程度
在本章的后续内容中,我们将对这些知识点进行逐个讲解。
上一节 本书简介 下一节
第8章:系统开发和运行维护 作者:希赛教育软考学院来源:希赛网2014年05月21日
系统开发模型
上一节 本书简介 下一节
第8章:系统开发和运行维护 作者:希赛教育软考学院来源:希赛网2014年05月21日
开发生命周期模型
版权方授权希赛网发布,侵权必究
8.2系统开发模型
在开发模型知识点中,我们要掌握软件生命周期的概念、各种开发模型的特点和应用场合。主
要的开发模型有瀑布模型、增量模型、螺旋模型、喷泉模型、智能模型、V模型、RAD模型、CBSD
模型、原型方法、XP方法、RUP方法等。
版权方授权希赛网发布,侵权必究
8.2.1开发生命周期模型
系统开发的生命周期是指一个系统历经计划、分析、设计、编程、测试、维护直至淘汰的整个
过程。生命周期阶段的划分通常可以采用以下三种方法:
(1)Boehm划分法:计划(问题定义、可行性研究)、开发(需求分析、总体设计、详细设
计、编码、测试)、运行(维护)三大阶段。
(2)国标(GB8566-1988)划分法:可行性研究与计划、需求分析、概念设计、详细设计、实
现、组装测试、确认测试、使用和维护。并在《GB/T8566-1995信息技术--软件生存期过程》中定
义了获取过程、供应过程、开发过程、运行过程、维护过程、管理过程、支持过程7个部分。
(3)RUP划分法:分为初始、细化、构造、移交4个主要阶段。
下面,我们对一些主要的开发模型和方法进行简单的介绍。
1.瀑布模型
瀑布模型也称为生命周期法,是生命周期法中最常用的开发模型,它把软件开发的过程分为软
件计划、需求分析、软件设计、程序编码、软件测试和运行维护6个阶段,规定了它们自上而下、相
互衔接的固定次序,如同瀑布流水,逐级下落。采用瀑布模型的软件过程如图8-1所示。
图8-1软件生命周期的瀑布模型
(1)软件计划(问题的定义及规划):主要确定软件的开发目标及其可行性。
(2)需求分析:在确定软件开发可行的情况下,对软件需要实现的各个功能进行详细分析。需
求分析阶段是一个很重要的阶段,这一阶段做得好,将为整个软件开发项目的成功打下良好的基
础。
(3)软件设计:主要根据需求分析的结果,对整个软件系统进行设计,如系统框架设计、数据
库设计等。软件设计一般分为总体设计(概要设计)和详细设计。
(4)程序编码:将软件设计的结果转换成计算机可运行的程序代码。在程序编写中必须制定统
一、符合标准的编写规范,以保证程序的可读性,易维护性,提高程序的运行效率。
(5)软件测试:在软件设计完成后要经过严密的测试,以发现软件在整个设计过程中存在的问
题并加以纠正。在测试过程中需要建立详细的测试计划并严格按照测试计划进行测试,以减少测试
的随意性。
(6)软件维护:软件维护是软件生命周期中持续时间最长的阶段。在软件开发完成并投入使用
后,由于多方面的原因,软件不能继续适应用户的要求,要延续软件的使用寿命,就必须对软件进
行维护。
瀑布模型是最早出现的软件开发模型,在软件工程中占有重要的地位,它提供了软件开发的基
本框架。瀑布模型的本质是"一次通过",即每个活动只做一次,最后得到软件产品,也称做"线性顺序
模型"或者"传统生命周期".其过程是从上一项活动接收该项活动的工作对象作为输入,利用这一输入
实施该项活动应完成的内容,给出该项活动的工作成果,作为输出传给下一项活动;对该项活动实
施的工作进行评审,若其工作得到确认,则继续下一项活动,否则返回前项,甚至更前项的活动进
行返工。
瀑布模型有利于大型软件开发过程中人员的组织与管理,有利于软件开发方法和工具的研究与
使用,从而提高了大型软件项目开发的质量和效率。然而软件开发的实践表明,上述各项活动之间
并非完全是自上而下的,而是呈线性图示,因此,瀑布模型存在严重的缺陷。
(1)由于开发模型呈线性,所以当开发成果尚未经过测试时,用户无法看到软件的效果。这
样,软件与用户见面的时间间隔较长,也增加了一定的风险。
(2)在软件开发前期未发现的错误传到后面的开发活动中时,可能会扩散,进而可能导致整个
软件项目开发失败。
(3)在软件需求分析阶段,完全确定用户的所有需求是比较困难的,甚至可以说是不太可能
的。
2.变换模型
变换模型(演化模型)是在快速开发一个原型的基础上,根据用户在调用原型的过程中提出的
反馈意见和建议,对原型进行改进,获得原型的新版本,重复这一过程,直到演化成最终的软件产
品。
3.螺旋模型
螺旋模型将瀑布模型和变换模型相结合,它综合了两者的优点,并增加了风险分析。它以原型
为基础,沿着螺线自内向外旋转,每旋转一圈都要经过制订计划、风险分析、实施工程、客户评价
等活动,并开发原型的一个新版本。经过若干次螺旋上升的过程,得到最终的系统,如图8-2所示。
图8-2螺旋模型
4.喷泉模型
喷泉模型对软件复用和生命周期中多项开发活动的集成提供了支持,主要支持面向对象的开发
方法。"喷泉"一词本身体现了迭代和无间隙特性。系统某个部分常常重复工作多次,相关功能在每次
迭代中随之加入演进的系统。所谓无间隙是指在开发活动中,分析、设计和编码之间不存在明显的
边界,如图8-3所示。
图8-3喷泉模型
5、智能模型
智能模型是基于知识的软件开发模型,它综合了上述若干模型,并把专家系统结合在一起。该
模型应用基于规则的系统,采用归约和推理机制,帮助软件人员完成开发工作,并使维护在系统规
格说明一级进行。
6.V模型
在开发模型中,测试常常作为亡羊补牢的事后行为,但也有以测试为中心的开发模型,那就是V
模型。V模型只得到软件业内比较模糊的认可。V模型宣称测试并不是一个事后弥补行为,而是一个
同开发过程同样重要的过程,如图8-4所示。
图8-4V模型示意图
V模型描述了一些不同的测试级别,并说明了这些级别所对应的生命周期中不同的阶段。在图8-
4中,左边下降的是开发过程各阶段,与此相对应的是右边上升的部分,即测试过程的各个阶段。请
注意在不同的组织中,对测试阶段的命名可能有所不同。
V模型的价值在于它非常明确地表明了测试过程中存在的不同级别,并且清楚地描述了这些测试
阶段和开发过程期间各阶段的对应关系:
(1)单元测试的主要目的是针对编码过程中可能存在的各种错误。例如:用户输入验证过程中
的边界值的错误。
(2)集成测试的主要目的是针对详细设计中可能存在的问题,尤其是检查各单元与其他程序部
分之间的接口上可能存在的错误。
(3)系统测试主要针对概要设计,检查系统作为一个整体是否有效地得到运行。例如:在产品
设置中是否达到了预期的高性能。
(4)验收测试通常由业务专家或用户进行,以确认产品能真正符合用户业务上的需要。
7.增量模型
增量模型融合了瀑布模型的基本成分(重复的应用)和原型实现的迭代特征。增量模型采用随
着时间的进展而交错的线性序列,每一个线性序列产生软件的一个可发布的"增量".当使用增量模型
时,第一个增量往往是核心的产品,也就是说第一个增量实现了基本的需求,但很多补充的特征还
没有发布。客户对每一个增量的使用和评估,都作为下一个增量发布的新特征和功能。这个过程在
每一个增量发布后不断重复,直到产生最终的完善产品。增量模型强调每一个增量均发布一个可操
作的产品。
增量模型像原型实现模型和其他演化方法一样,本质上是迭代的。但与原型实现不同的是增量
模型强调每一个增量均发布一个可操作产品。早期的增量是最终产品的"可拆卸"版本,但它们确实提
供了为用户服务的功能,并且提供了给用户评估的平台。增量模型的特点是引进了增量包的概念,
无须等到所有需求都出来,只要某个需求的增量包出来即可进行开发。虽然某个增量包可能还需要
进一步适应客户的需求,还需要更改,但只要这个增量包足够小,其影响对整个项目来说是可以承
受的。
采用增量模型的优点是人员分配灵活,刚开始不用投入大量人力资源,如果核心产品很受欢
迎,则可以增加人力实现下一个增量;当配备的人员不能在设定的期限内完成产品时,它提供了一
种先推出核心产品的途径,这样就可以先发布部分功能给客户,对客户起到镇静剂的作用。此外,
增量能够有计划地管理技术风险。增量模型的缺点是如果增量包之间存在相交的情况且不能很好地
处理,就必须做全盘的系统分析。增量模型将功能细化、分别开发的方法适用于需求经常改变的软
件开发过程。
8.RAD模型
快速应用开发(RapidApplicationDevelopment,RAD)模型是一个增量型的软件开发过程模
剩余44页未读,继续阅读
艾斯·歪
- 粉丝: 34
- 资源: 343
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- anaconda安装Web-ma笔记
- 酷狗top500数据分析完整
- 天气数据爬虫以及可视化分析
- unity shadergraph 特效案例del-for-network-ids-mas开发笔记
- 用户空间操作I2C适配器从而与I2C设备通信
- 2_base.apk.1.1
- 32位alu设计实验logisim-ma开发笔记
- Tangram-ES 0.17.1 64位 Debug/Release版 基于OpenGL地图渲染引擎
- 2018 各系统CNC 数据采集方法-5718b19bb868a98271fe910ef12d2af90342a827.pdf
- 【知识付费小程序源码】可开激励广告流量主+虚拟资源变现+搭建教程.rar
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
评论0