当前位置:文档之家› 软件开发生命周期的五个阶段

软件开发生命周期的五个阶段

软件开发生命周期的五个阶段
软件开发生命周期的五个阶段

软件开发生命周期的五个阶段

一个软件从定义,开发,运行维护,直到最终要经历一个时期的过程,这个时期称为软件的生命周期系统软件生命周期一般为分析,设计,实现和测试与维护这几个阶段,

分析阶段:

软件开发首先需要进行需求调研和分析完善的需求是软件开发项目成败的重要因素,提炼所收集的用户需求,建立完整的分析模型,把他编写成软件开发过程中需求,规格说明和初步的用户手册。

设计阶段:

软件设计可以分为两个阶段概要设计和详细设计,实际上软件设计的主要任务就是把软件分解成模块是指实现某个功能的数据和程序的说明,概要设计就是结构设计,其主要目标就是给出软件模块结构,用软件结构图表示,详细设计的首要任务是设计模块的程序流程,算法和数据结构,设计人员依据软件需求规格说明文档,确定软件的体系结构,进而确定每个模块实现算法,数据结构和接口等,编写设计说明书,组织设计评审。

实现阶段:

软件编码是指把软件设计转换成计算机可以接受的程序,即写成以某一段程序设计语言表示的“源程序清单”。充分了解软件开发语言,工具的特性和编程风格,有助于开发工具的选择保证开发产品的开发质量。

测试阶段:

在设计测试用例的基础上,测试软件的各个组成模块,然后,在把各个模块集成起来,测试整个产品的功能和性能是否能够满足已有的规格说明。

维护阶段:

维护是指已经完成对软件的研制工作并交付使用后,对软件产品所进行的错误改正,适应环境变化和增强功能等软件工程修订,做好软件维护工作,不仅能排除障碍,使软件能正常工作,而且还可以扩展软件功能,提高性能,为用户带来明显的经济效益,

软件生命周期模型

瀑布模型/改进的瀑布模型 虽然瀑布模型仍然存在很多的问题有待解决,但瀑布模型仍然是最展本的和最效的?种可供选择的软件开发生命周期模型.瀑布模型要求软件开发严格按照需求-〉分析-〉设计?〉编码-> 测试的阶段进行,每-个阶段都可以定义明确的产出物和验证准则.瀑布模型在每?个阶段完成后都可以组织相关的评审和验证,只有在评审通过后才能够进入到下-个阶段. 由于需要对每?个阶段进行验证,瀑布模型要求每?个阶段都有明确的文档产出,对于严格的瀑布模型每?个阶段都不应该重叠,而应该是在评审通过,相关的产出物都己经基线后才能够进入到下?个阶段. 瀑布模型的优点仍然是可以保证整个软件产品较高的质量,保证缺陷能够捉前的被发现和解决. 采用瀑布模型可以保证系统在整体上的充分把握,使系统具备良好的扩展性和可维护性?但对于前期需求不明确,而又很难短时间明确淸楚的项目则很难很好的利用瀑布模型.另外对于中小型的项目,需求设计和开发人员往往在项目开始后就会全部投入到项目中,而不是分阶段投入,因此采用瀑布模型会导致项目人力资源过多的闲置的情况,这也是必须要考虑的问题. 很多人往往会以进度约束而不选择瀑布模型,这往往是?个错误的观点.导致这种情况的?个关键因素往往是概念需求阶段人力不足.冈此在概念需求阶段人力能够得到充分保证的情况下,瀑布模型和迭代模型在开发周期上并不会存在太人的差别.反而是很多项目对于迭代或嫩捷模型用不好,为了赶进度在前期需求不明确,没有经过?个总体的架构设计情况下就开始编码,后期出现大量的返工而严重影响进度. 架构设计是软件开发中?个重要的关注点.因此在RUP中也捉及到软件开发要以架构为核心.因此在架构设计完成后系统会彼分为相关的f?系统和功能模块.每个功能模块间的接口都可以定义淸楚.在这种情况下,当模块B的详细设计做完成后往往就没有必妥等到其它模块的详细设计都妥完全作完才开始编码,冈此在架构设计完成后可以将系统分为多个模块并行开发,每个模块仍然遵循先设计和编码测试的瀑布模型思路.这是瀑布模型的?种最重要的改进思路,也可以说这是?种增量开发的模型.

信息系统的生命周期有哪几个阶段

1、信息系统的生命周期有哪几个阶段? 答:总体规划与可行性分析、系统分析、系统设计、系统实施、运行管理与维护等。 2、在系统规划阶段要拿出哪几个报告? 答: 3、对信息系统来说,其可行性研究包括哪几个方面? 技术可行性、经济可行性、运行可行性、人员可行性、进程可行性、环境可行性、管理可行性 4、可行性分析的结论是什么? (1)可行性分析结果完全不可行。通过可行性分析可以发现目前的系统完全不具备开发的条件,则系统开发工作必须放弃。 (2)系统具备立即开发的可行性。如果系统具备立即开发的可行性,则可进入系统开发的下一个阶段。 (3)某些条件不具备。如果某些条件不成熟,则要创造条件,增加资源或改变新系统的目标后再重新进行可行性论证。 5、系统分析的主要步骤是什么? (1)现行系统的调查(2)业务流程分析(3)进行数据流程分析(4)确定新系统逻辑结构(5)对数据进行分析(6)建立数据字典(7)撰写系统分析总结报告 6、系统分析的工具有哪些? (1)对系统进行概要描述的工具:业务流程图(BFD)和数据流程图(DFD) (2)数据部分详细描述的工具:数据字典(DD) (3)数据库逻辑设计的工具:数据存储结构规范化 (4)功能详细描述的工具:结构式语言、判断树和判断表 7、数据字典的建立方式有哪几种? 3种:人工方式、自动方式和半自动方式 8、结构式语言允许使用的基本控制结构语句是什么? (1)简单祈使句(2)判断语句(3)循环语句(4)上述3种语句的复合语句

9、系统分析阶段的阶段性成果是什么,主要包括哪些内容? 10、系统的模块结构图从何而来?如何转化的? 11、数据流程图典型结构是什么?如何转化成系统的模块结构图? 12、什么是模块? 模块就是具有输入和输出、逻辑功能、运行程序和内部数据4中属性的一组程序语句。 13、结构图中的模块调用关系有哪几种,如何表示? (1)直接调用关系 (2)选择调用关系 (3)循环调用关系 14、什么是模块的耦合,模块的耦合关系有哪几种? 两个模块之间的相互依赖关系称为耦合。 (1)简单耦合(2)数据耦合(3)控制耦合(4)公共耦合(5)内容耦合 15、什么是模块的内聚,模块的内聚性分为哪几个等级? 模块的内聚性是指在模块内部各组成部分为了执行处理功能而组合在一起的相关程度,即组合强度。 7个等级:功能组合、顺序组合、通信组合、过程组合、时间组合、逻辑组合、偶然组合 16、什么是模块的控制范围,什么是模块的影响范围,两者之间的关系是什么? 模块的控制范围是指由它可以调用的所有下属模块及其本身所组成的集合。 模块的影响范围是指由该模块中包含的判断处理所影响到的所有其他模块的集合。 两者之间的关系:(1)影响范围超出控制范围(2)判断点在层次结构中的位置太高(3)判断点在层次结构中的位置适中(4)理想的设计 17、模块结构图的评价标准是什么? 18、什么是代码?代码的种类有哪些?

信息系统的生命周期

信息系统的生命周期 信息服务系统的生命周期有四个阶段。第一个阶段是"诞生"阶段,即系统的概念化阶段"。 一旦进行开发,系统就进入第二个阶段,即"开发"阶段,在该阶段建立系统。第三个阶段是"生产"阶段,即系统投入运行阶段。当系统不再有价值时,就进入了最后阶段,即"消亡"阶段。这样的生命周期不断重复出现。 有人讥讽说:"计算机/信息处理领域是强制性劳动的领域"。这种说法不一定全错。一旦系统处于工作状态,人们只能按照系统要求去工作。任何用户管理人员都知道,信息服务的要求一般是比较高的,而满足这些要求的资源(时间和空间)往往是有限的,所以有这种说法是很自然的。在鉴别、评价和选择信息服务系统时,要考虑到系统的可移植性(即在一种计算机上实现的技术能转移到另一种计算机上),也称为技术移植性。在用户看来,技术移植一般是指通用应用软件的移植。应该提醒用户管理人员注意的是,对已有的系统软件作 修改,则往往很难达到技术移植的目的。实际上,许多公司已经感到,修改一个别人建立的系统所花的代价往往要比重新开发一个同样系统的代价要高。 有些信息服务部门下设一个质量保证小组。其任务是保证系统质量符合预定的技术指标。质量保证小组是由用户管理人员和信息服务人员组成的。 按照传统习惯,整理资料(包括编写用户手册)也是信息服务的职责。遗憾的是,低质量的资料竟影响数据处理和信息服务达十年之久。用户管理人员应知道目前还存在着许多不能被人们理解甚至使人们曲解的用户使用手册。针对这一情况,在系统验收时,业务部门应对各种资料进行严格的检查。 数据是产生信息的根据,所以保证数据的准确性是公司每个人的职责。信息服务系统负责对数据的存储,更改、操作和检索。 计算机信息服务系统的主要使用者是用户业务部门。用户管理人员的主要职责是管理系统的正常使用。信息服务管理人员的主要职责是使系统正常进行。 用户必须与信息服务专业人员合作来保证系统的安全使用。信息服务专业人员在系统设计时要周密地考虑安全问题。用户在实际使用时要特别注意安全问题。

#信息系统开发与管理——第6章 生命周期法与原型法

一、系统分析 【重点与难点】 系统分析的目标和主要活动、数据流图的绘制和数据字典的编写,结构化语言、决策树和决策表的应用,系统分析各阶段的内容。 【考试要求】 1.了解系统分析的目标和主要活动,理解系统分析工作的主要特点。 2.了解识记结构化系统分析中描述系统逻辑模型的主要工具及其特点。 3.了解结构化分析方法不能覆盖的问题。 4.了解数据结构流图在系统分析中的作用,理解数据流的基本组成及其基本符号。5.熟练掌握数据流图绘制的主要原则、步骤和方法。 6.理解数据字典在系统分析中的作用,编写数据字典的基本要求,熟练掌握数据字典的编写方法。 7.熟练掌握应用数据流图与数据字典描述实际系统的逻辑模型。 【往年试题】 2008年10月 选择题 4.下列关于业务流程图的描述中,错误的是() A.业务流程图反映业务执行的运动过程 B.业务流程图是业务人员与开发人员的一种媒介 C.在软件开发规范中,业务流程图是必须提供的资料之一 D.可从业务流程图中抽象出数据流程图 7.对系统分析中目标分析的正确描述是() A.目标设定的标准是无法度量的 B.目标尽可能高标准 C.目标一旦确定就不要更改 D.目标是由企业环境和功能需求确定的 8.数据字典建立在______阶段进行的。() A.系统规划 B.系统分析 C.系统设计 D.系统实施 9.下列关于数据分析的描述中不正确的是() A.数据分析包括数据字典的编制 B.数据字典中被定义的内容一定会在数据流图中出现 C.数据流图为系统设计提供支持 D.数据流图抽象于组织机构图 11.下列哪一个是输出设备?()

A.鼠标 B.键盘 C.数/模转换器 D.模/数转换器 12.对于下面列出的任务:Ⅰ.将系统或子系统分解为多个模块Ⅱ.确定模块间传送的数据及其调用关系Ⅲ.评价并改进模块结构的质量Ⅳ.将多个模块合并为一个系统总体设计的主要任务有() A.Ⅰ,Ⅱ和Ⅲ B.Ⅰ C.Ⅱ D.全部 13.系统设计是系统开发各阶段的重要组成阶段,下述哪一项内容不是系统设计阶段的固有组成内容?() A.计算机配置设计 B.数据库设计 C.应用软件设计 D.程序设计 填空题 2.数据流图包含4个基本成分:外部实体、__________、__________和数据处理过程。7.结构化方法为了精确性和可理解性,一般采用结构化语言、__________和__________三种半形式化的方式编写基本处理的小说明。 9.从数据流图导出结构图,可根据数据流图的不同结构分别利用__________和__________方法导出标准的结构图。 10.结构化分析与设计方法,一般是通过系统分析来建立信息系统的__________模型,再通过系统设计来建立信息系统的__________模型。 名词解释 简答题 2009年1月 选择题 填空题 4.数据流图用到4个基本符号,即外部实体、_______、_______和数据处理过程。 名词解释 3.原型法 简答题 五、综合题(本大题14分) 请根据以下的描述画出第一层数据流图:车间填写领料单交给仓库要求领料,库长根据用料计划审批领料单,未批准的领料单退回车间,已批准的领料单送到仓库保管员处,由他查阅库存账。若账上有货则通知车间前来领料,否则将缺货通知交给采购人员。 2009年10月 选择题 10.在数据字典中,不属于数据流定义的是( ) A.数据流的来源 B.数据流的去处 C.数据流的存储 D.数据流的组成 15.下列选项中,______不是系统设计阶段的固有组成内容。( )

软件生命周期之需求分析和设计说明

软件生命周期之需求分析和设计 什么是软件生命周期? 软件生命周期又称为软件生存周期或系统开发生命周期,是指从软件的产生直到报废的整个过程,它包括问题定义,可行性分析,总体描述,系统设计,编码,调试和测试,验收与运行,维护升级到废弃等阶段。每一个阶段都有确定的任务,并产生一定规格的文档,提交给下一个周期作为继续工作的依据。 常用开发模型? 需求分析: 需求分析过程 如何做需求分析? 设计: 设计过程 如何做设计? 1.软件生命周期 1.1什么事软件生命周期 软件生命周期又称为软件生存周期或系统开发生命周期,是指从软件的产生直到报废的整个过程 软件生命周期过程包括: 问题定义: 用户需要计算机解决的问题是什么? 电商系统:要计算机实现一个平台,商家通过平台销售自己的商品,一般用户通过平台购买商品。 可行性分析 用户需要计算机解决的问题是否可行?需要进行可行性分析。 市场可行性分析,是否有市场价值。 技术可行性分析,使用什么技术解决用户提出的问题。 需求分析

将用户提出的问题进行细化。 先确定大模块:比如电商系统包括:前台的用户购买平台,后台商家维护平台。 再对每一个大模块进行细化。。。。 设计 确定细化问题的实现方法 编码 解决问题,依据需求和设计,文档进行开发。 测试 验证是否已经解决用户提出的问题。 单元测试 集成测试(测试业务整体流程) 功能用例测试(对功能点进行测试) 性能测试(使用专业工具进行压力和稳定性测试) 维护 修改性维护:前期没有测试出的问题,正式上线运行后bug显现出来,对这些bug进行修改。 完善性维护:在现有功能的基础上增加或完善功能。 预防性维护:后期根据正式运行的情况对系统进行优化。

软件开发生命周期及文档完整版

软件开发生命周期及文 档 HEN system office room 【HEN16H-HENS2AHENS8Q8-HENH1688】

软件开发,同任何事物一样要经历孕育、诞生、成长、成熟、结束等阶段,称之为软件开发生命周期。 通常,软件开发生命周期包括可行性分析与项目开发计划、需求分析、设计、编码、测试、发布维护等。 1)可行性分析与项目开发计划 这个阶段主要确定软件开发的目标及其可行性,明确要解决的问题及解决办法,以及解决问题需要的费用、资源、时间。要进行问题定义、可行性分析,制定项目开发计划。 该阶段产生的文档主要有可行性分析报告(一般很少需要)和项目开发计划。 2)需求分析 需求分析是明确软件系统要做什么,确定软件系统的功能、性能、数据、和界面等要求。 该阶段产生的文档有软件需求说明书。 3)设计 设计分为概要设计和详细设计。 概要设计就是设计软件的结构,明确软件系统由那些模块组成,这些模块的层次结构、调用关系以及模块的功能,同时确定数据结构和数据库结构。 详细设计是对每个模块完成的功能进行具体的描述,把功能描述转变为精确地、结构化的过程描述,既该模块的控制结构或者说逻辑结构。 该阶段产生的文档有概要设计说明书、数据库设计说明书、接口设计、详细设计说明书等。4)编码 编码就是把模块的控制结构转化为程序代码,该阶段需要编码规范。 5)测试 测试是为了保证软件质量,该阶段产生的文档主要有软件测试计划、测试用例、软件测试报告。 6)发布与维护 发布就是完成软件开关并已开发的软件系统安装到客户的服务器上,维护是为客户提供培训、故障排除以及所需的软件升级。 该阶段产生的文档主要有项目开发总结报告、用户手册、应用软件清单、源代码清单、维护文档

软件开发模型介绍与对比分析

常用的软件开发模型 软件开发模型(Software Development Model)是指软件开发全部过程、活动和任务的结构框架。软件开发包括需求、设计、编码和测试等阶段,有时也包括维护阶段。 软件开发模型能清晰、直观地表达软件开发全过程,明确规定了要完成的主要活动和任务,用来作为软件项目工作的基础。对于不同的软件系统,可以采用不同的开发方法、使用不同的程序设计语言以及各种不同技能的人员参与工作、运用不同的管理方法和手段等,以及允许采用不同的软件工具和不同的软件工程环境。 1. 瀑布模型-最早出现的软件开发模型 1970年温斯顿?罗伊斯(Winston Royce)提出了著名的“瀑布模型”,直到80年代早期,它一直是唯一被广泛采用的软件开发模型。 瀑布模型核心思想是按工序将问题化简,将功能的实现与设计分开,便于分工协作,即采用结构化的分析与设计方法将逻辑实现与物理实现分开。将软件生命周期划分为制定计划、需求分析、软件设计、程序编写、软件测试和运行维护等六个基本活动,并且规定了它们自上而下、相互衔接的固定次序,如同瀑布流水,逐级下落。从本质来讲,它是一个软件开发架构,开发过程是通过一系列阶段顺序展开的,从系统需求分析开始直到产品发布和维护,每个阶段都会产生循环反馈,因此,如果有信息未被覆盖或者发现了问题,那么最好“返回”上一个阶段并进行适当的修改,开发进程从一个阶段“流动”到下一个阶段,这也是瀑布开发名称的由来。 瀑布模型是最早出现的软件开发模型,在软件工程中占有重要的地位,它提供了软件开发的基本框架。其过程是从上一项活动接收该项活动的工作对象作为输入,利用这一输入实施该项活动应完成的内容给出该项活动的工作成果,并作为输出传给下一项活动。同时评审该项活动的实施,若确认,则继续下一项活动;否则返回前面,甚至更前面的活动。对于经常变化的项目而言,瀑布模型毫无价值。(采用瀑布模型的软件过程如图所示)

第五章管理信息系统的开发方法

第五章管理信息系统的开发方法 通过本章学习,了解管理信息系统开发的任务和特点;懂得系统开发的原则、系统开发的方式、开发的策略、开发的组织工作与项目管理的内容;掌握结构化系统开发生命周期法和原型法的基本思想、开发过程和各自的优缺点;理解面向对象法和计算机辅助开发方法。 基本内容 一、管理信息系统开发 1.系统开发的任务:系统开发的任务是根据企业管理的战略目标、规模、性质等具体情况,从系统论的观点出发,运用系统工程的方法,按照系统发展的规律,为企业建立起计算机化的信息系统。其中核心是设计出一套适合于现代企业管理要求的应用软件系统。 2.系统开发的特点:复杂性、基于原系统、高于原系统、一把手工程、产品是无形的。 3.系统开发的基本原则:面向用户原则、系统性原则、符合软件工程规范的原则、逐步规范发展的原则。 4.系统开发的主要风险:投入超计划、系统性能比预期差、没获得预期收益,有的甚至导致完全失败。 二、系统开发方法 1.结构化系统开发方法 结构化系统开发方法:用系统工程的思想和工程化的方法,遵照用户至上的原则,从系统的角度分析问题和解决问题,将提出建立一个管理信息系统到系统完全建成的生命周期划分为5个阶段,这5个阶段是:系统规划、系统分析、系统设计、系统实施和系统维护与评价。按照规定的步骤和任务要求,使用图表工具完成规定的文档,采用自顶向下整体分析和设计,自底向上逐步实施的系统开发过程。 优点:建立面向用户的观点、严格区分工作区间、设计方法结构化、文件标准化和文献化。 缺点:开发周期长、繁琐,使用工具落后、不能充分预料可能发生的情况及变化、不直观,用户最后才能看到真实模型。 2.原型法 原型法:是指系统开发人员在初步了解用户的基础上,借助功能强大的辅助系统开发工具,快速开发一个原型,并将其演示给用户,开发人员根据用户的意见和评价对这个原型进行修改,如此反复,逐步完善,直到用户完全满意为止。 原型法的类型:丢弃式原型法、演化式原型法、递增式原型法。 优点:减少开发时间,提高系统开发效率、改进用户与系统开发人员的信息交流方式、用户满意程度高、应变能力强。 缺点:开发工具要求高、对大型系统或复杂性高的系统不适用、管理水平要求高。 3.面向对象法 面向对象法:面向对象方法的技术把对象的属性(数据)和处理(方法)封装在一起,通过子类对父类的继承,使得软件便于维护和扩充,提高了软件的可复用性。 面向对象法的术语:对象、类、消息、继承、封装。 优点:以对象为基础,利用特定的软件工具直接完成对象客体的描述与软件结构之间的转换,解决了传统结构化开发方法中客观世界描述工具与软件结构不一致的问题,缩短了开发周期,解决了从分析和设计到软件模块多次转换的繁杂过程。 缺点:需要有一定的软件基础支持才可以应用,对大型的系统可能会造成系统结构不合

软件生命周期

软件生命周期 软件生命周期(Software Life Cycle,SLC)是软件的产生直到报废或停止使用的生命周期。 周期内有问题定义、可行性分析、总体描述、系统设计、编码、调试和测试、验收与运行、维护升级到废弃等阶段。 软件生命周期又称为软件生存周期或系统开发生命周期,是软件的产生直到报废的生命周期,周期内有问题定义、可行性分析、总体描述、系统设计、编码、调试和测试、验收与运行、维护升级到废弃等阶段,这种按时间分程的思想方法是软件工程中的一种思想原则,即按部就班、逐步推进,每个阶段都要有定义、工作、审查、形成文档以供交流或备查,以提高软件的质量。但随着新的面向对象的设计方法和技术的成熟,软件生命周期设计方法的指导意义正在逐步减少。生命周期的每一个周期都有确定的任务,并产生一定规格的文档(资料),提交给下一个周期作为继续工作的依据。按照软件的生命周期,软件的开发不再只单单强调“编码”,而是概括了软件开发的全过程。软件工程要求每一周期工作的开始只能必须是建立在前一个周期结果“正确”前提上的延续;因此,每一周期都是按“活动──结果──审核──再活动──直至结果正确”循环往复进展的。 同任何事物一样,一个软件产品或软件系统也要经历孕育、诞生、成长、成熟、衰亡等阶段,一般称为软件生存周期(软件生命周期)。把整个软件生存周期划分为若干阶段,使得每个阶段有明确的任务,

使规模大,结构复杂和管理复杂的软件开发变的容易控制和管理。通常,软件生存周期包括: 一,问题定义。要求系统分析员与用户进行交流,弄清“用户需要计算机解决什么问题”然后提出关于“系统目标与范围的说明”,提交用户审查和确认。 二,可行性研究。一方面在于把待开发的系统的目标以明确的语言描述出来,另一方面从经济、技术、法律等多方面进行可行性分析。 三,需求分析。弄清用户对软件系统的全部需求,编写需求规格说明书和初步的用户手册,提交评审。 四,开发阶段。开发阶段由三个阶段组成: 1,设计 2,实现:根据选定的程序设计语言完成源程序的编码。 3,测试 五,维护:维护包括四个方面 1,改正性维护:在软件交付使用后,由于开发测试时的不彻底、不完全、必然会有一部分隐藏的错误被带到运行阶段,这些隐藏的错误在某些特定的使用环境下就会暴露。 2,适应性维护:是为适应环境的变化而修改软件的活动。

管理信息系统期末考试题

1. 请叙述信息系统开发的一般过程及各个阶段的主要工作。 这里主要介绍结构化生命周期法的开发阶段,因为这种方法是所有信息系统开发方法的核心。结构化生命周期法的基本思想是将信息系统开发看作是可以有计划、有步骤进行的工程项目,虽然各种信息系统处理的具体业务信息不同,但是所有系统的开发过程可以划分成5个主要阶段:调查研究阶段、系统分析阶段、系统设计阶段、系统实施阶段和维护评价阶段(1)调查研究阶段包括两方面的主要内容:对现行系统的调查研究和新系统开发的可行性研究。调查研究工作的主要内容包括确定调查的内容、使用的调查方法以及调查中使用的图表工具等。可行性研究是在项目投资之前对项目建设的各种方案、新产品方案、技术方案和生产经营方案的实施可能性、技术先进性和经济合理性进行调查研究并分析、计算和评价的一种科学方法。第一,分析信息系统的必要性,包括直接明显的必要性和可预见的必要性。第二,分析建立信息系统的可能性,包括技术方面的可能性、经济方面的可能性、运行和维护方面的可能性。 (2)系统分析阶段也称为系统的逻辑设计阶段,它是新系统开发工作中的一个重要阶段,这个阶段的主要内容是:运用系统的观点和方法,进行新系统的目标分析、需求分析和功能分析,在系统分析的基础上,可以设计出新系统的逻辑模型。最后,完成系统分析说明书。目标分析包括两方面的内容,即待开发的系统的组织目标分析和未来的新系统目标分析。需求分析:在调查研究阶段,已经通过各种方法了解了各级领导和业务人员对新系统的事务处理能力和决策能力的需求,在这部分主要对这些需求进行进一步的分析。功能分析包括功能的层次结构分析和信息关联的分析。 (3)系统设计又称物理设计,这一阶段的工作是根据新系统的逻辑模型来建立新系统的物理模型。主要内容包括系统的总体结构设计、计算机系统设计、数据

系统开发生命周期(1)

软件生命周期又称为软件生存周期或系统开发生命周期,是软件的产生直到报废的生命周期,周期内有问题定义、可行性分析、总体描述、系统设计、编码、调试和测试、验收与运行、维护升级到废弃等阶段,这种按时间分程的思想方法是软件工程中的一种思想原则,即按部就班、逐步推进,每个阶段都要有定义、工作、审查、形成文档以供交流或备查,以提高软件的质量。但随着新的面向对象的设计方法和技术的成熟,软件生命周期设计方法的指导意义正在逐步减少。 生命周期的每一个周期都有确定的任务,并产生一定规格的文档(资料),提交给下一个周期作为继续工作的依据。按照软件的生命周期,软件的开发不再只单单强调“编码”,而是概括了软件开发的全过程。软件工程要求每一周期工作的开始只能必须是建立在前一个周期结果“正确”前提上的延续;因此,每一周期都是按“活动──结果──审核──再活动──直至结果正确”循环往复进展的。 软件生命周期的六个阶段 1、问题的定义及规划 此阶段是软件开发方与需求方共同讨论,主要确定软件的开发目标及其可行性。 2、需求分析 在确定软件开发可行的情况下,对软件需要实现的各个功能进行详细分析。需求分析阶段是一个很重要的阶段,这一阶段做得好,将为整个软件开发项目的成功打下良好的基础。"唯一不变的是变化本身。",同样需求也是在整个软件开发过程中不断变化和深入的,因此我们必须制定需求变更计划来应付这种变化,以保护整个项目的顺利进行。

3、软件设计 此阶段主要根据需求分析的结果,对整个软件系统进行设计,如系统框架设计,数据库设计等等。软件设计一般分为总体设计和详细设计。好的软件设计将为软件程序编写打下良好的基础。 4、程序编码 此阶段是将软件设计的结果转换成计算机可运行的程序代码。在程序编码中必须要制定统一,符合标准的编写规范。以保证程序的可读性,易维护性,提高程序的运行效率。 5、软件测试 在软件设计完成后要经过严密的测试,以发现软件在整个设计过程中存在的问题并加以纠正。整个测试过程分单元测试、组装测试以及系统测试三个阶段进行。测试的方法主要有白盒测试和黑盒测试两种。在测试过程中需要建立详细的测试计划并严格按照测试计划进行测试,以减少测试的随意性。

常用软件开发模型比较分析

常用软件开发模型比较分析 2007-09-26 20:21 正如任何事物一样,软件也有其孕育、诞生、成长、成熟和衰亡的生存过程,一般称其为“软件生命周期”。软件生命周期一般分为6个阶段,即制定计划、需求分析、设计、编码、测试、运行和维护。软件开发的各个阶段之间的关系不可能是顺序且线性的,而应该是带有反馈的迭代过程。在软件工程中,这个复杂的过程用软件开发模型来描述和表示。 软件开发模型是跨越整个软件生存周期的系统开发、运行和维护所实施的全部工作和任务的结构框架,它给出了软件开发活动各阶段之间的关系。目前,常见的软件开发模型大致可分为如下3种类型。 ① 以软件需求完全确定为前提的瀑布模型(Waterfall Model)。 ② 在软件开发初始阶段只能提供基本需求时采用的渐进式开发模型,如螺旋模型(Spiral Model)。 ③ 以形式化开发方法为基础的变换模型(T ransformational Model)。 本节将简单地比较并分析瀑布模型、螺旋模型和变换模型等软件开发模型。 1.2.1 瀑布模型瀑布模型即生存周期模型,其核心思想是按工序将问题化简,将功能的实现与设计分开,便于分工协作,即采用结构化的分析与设计方法将逻辑实现与物理实现分开。瀑布模型将软件生命周期划分为软件计划、需求分析和定义、软件设计、软件实现、软件测试、软件运行和维护这6个阶段,规定了它们自上而下、相互衔接的固定次序,如同瀑布流水逐级下落。采用瀑布模型的软件过程如图1-3所示。

图1-3 采用瀑布模型的软件过程 瀑布模型是最早出现的软件开发模型,在软件工程中占有重要的地位,它提供了软件开发的基本框架。瀑布模型的本质是一次通过,即每个活动只执行一次,最后得到软件产品,也称为“线性顺序模型”或者“传统生命周期”。其过程是从上一项活动接收该项活动的工作对象作为输入,利用这一输入实施该项活动应完成的内容给出该项活动的工作成果,并作为输出传给下一项活动。同时评审该项活动的实施,若确认,则继续下一项活动;否则返回前面,甚至更前面的活动。瀑布模型有利于大型软件开发过程中人员的组织及管理,有利于软件开发方法和工具的研究与使用,从而提高了大型软件项目开发的质量和效率。然而软件开发的实践表明,上述各项活动之间并非完全是自上而下且呈线性图式的,因此瀑布模型存在严重的缺陷。 ① 由于开发模型呈线性,所以当开发成果尚未经过测试时,用户无法看到软件的效果。这样软件与用户见面的时间间隔较长,也增加了一定的风险。 ② 在软件开发前期末发现的错误传到后面的开发活动中时,可能会扩散,进而可能会造成整个软件项目开发失败。 ③ 在软件需求分析阶段,完全确定用户的所有需求是比较困难的,甚至可以说是不太可能的。 1.2.2 螺旋模型螺旋模型将瀑布和演化模型(Evolution Model)结合起来,它不仅体现了两个模型的优点,而且还强调了其他模型均忽略了的风险分析。这

常用软件开发模型

常用软件开发模型比较分析 正如任何事物一样,软件也有其孕育、诞生、成长、成熟和衰亡的生存过程,一般称其为“软件生命周期”。软件生命周期一般分为6个阶段,即制定计划、需求分析、设计、编码、测试、运行和维护。软件开发的各个阶段之间的关系不可能是顺序且线性的,而应该是带有反馈的迭代过程。在软件工程中,这个复杂的过程用软件开发模型来描述和表示。 软件开发模型是跨越整个软件生存周期的系统开发、运行和维护所实施的全部工作和任务的结构框架,它给出了软件开发活动各阶段之间的关系。目前,常见的软件开发模型大致可分为如下3种类型。 ①以软件需求完全确定为前提的瀑布模型(Waterfall Model)。 ②在软件开发初始阶段只能提供基本需求时采用的渐进式开发模型,如螺旋模型(Spiral Model)。 ③以形式化开发方法为基础的变换模型(Transformational Model)。 本节将简单地比较并分析瀑布模型、螺旋模型和变换模型等软件开发模型。 1.2.1 瀑布模型 瀑布模型即生存周期模型,其核心思想是按工序将问题化简,将功能的实现与设计分开,便于分工协作,即采用结构化的分析与设计方法将逻辑实现与物理实现分开。瀑布模型将软件生命周期划分为软件计划、需求分析和定义、软件设计、软件实现、软件测试、软件运行和维护这6个阶段,规定了它们自上而下、相互衔接的固定次序,如同瀑布流水逐级下落。采用瀑布模型的软件过程如图1-3所示。 图1-3 采用瀑布模型的软件过程 瀑布模型是最早出现的软件开发模型,在软件工程中占有重要的地位,它提供了软件开发的基本框架。瀑布模型的本质是一次通过,即每个活动只执行一次,最后得到软件产品,

管理信息系统练习答案

二 一、单选题 1,结构化生命周期法的主要缺点是难以准确定义用户需求,及(D)。 A、阶段不明确 B、无法对项目进行管理和控制 C、系统各部分不独立 D、开发周期长,难以适应环境变化 2,(A)的主要缺点是难以准确定义用户需求,及开发周期长,难以适应环境变化。 A、结构化生命周期法 B、原型法 C、面向对象开发方法 D、信息工程方法 3,采用原型法开发系统的主要优点是(C)。 A、成本低 B、效率高 C、易满足用户需求 D、系统重用性好 4,采用( B )开发系统的主要优点是易于满足用户需求。 A、结构化生命周期法 B、原型法 C、面向对象开发方法 D、信息工程方法 5,以下( A )是原型法的主要优点。 A、能在开发过程中及时地获取来自用户的反馈信息 B、能提高系统的可维护性 C、能提高系统的可重用性 D、有利于整个系统的管理控制 6,开发系统时,(B)方式能充分发挥系统开发商经验丰富和用户方熟悉企业状况的优势,在系统开发中为企业培养了系统运行维护人员,其优点显而易见,因而被普遍采用。 A、自行开发 B、合作开发 C、咨询开发 D、外购软件 7,开发系统时,(D)方式可以较好地节省时间、节约费用、技术水平高,但系统难以满足企业个性需求,需要按用户要求进行二次开发。 A、自行开发 B、合作开发 C、咨询开发 D、外购软件 8,某企业的现行系统为A,目前正在开发的系统为B,若将来需要开发并取代B的系统为C,则以下关于B系统生命周期的说法错误的是(B)。 A、B系统的生命周期为从B系统的系统规划开始到C系统投入运行维护结束 B、B系统的生命周期为从B系统的系统规划开始到B系统投入运行维护结束 C、B系统的系统规划到系统实施期间为A、B两套系统生命周期的重合期 D、B系统在系统规划阶段系统的抽象化程度最高 9,下面说法中正确的是:(D) A、采用自行开发的方式,系统开发周期短,成功率高 B、我校图书馆管理信息系统是采用咨询开发的方式 C、系统实施过程中,采用自上而下,先整体后局部的实施方法 D、原型法只适用于中、小型系统的开发 10,关于面向对象方法,下面说法中错误的是:(B) A、它把描述对象的数据和对象的操作放在一起 B、它包括面向对象分析和面向对象设计两个步骤 C、它的多态机制增强了软件的重用性、灵活性 D、它的继承性可以减少程序代码的编写 11,以下属于编制管理信息系统开发项目工作计划常用方法的有(B)。 A、战略集合转移法 B、关键路径法 C、关键成功因素法 D、企业系统规划法 12,编制管理信息系统开发项目工作计划的常用方法有(A)。 A、甘特图与关键路径法 B、甘特图与关键成功因素法 C、甘特图与E-R图 D、关键路径法与关键成功因素法 13,下面系统规划的方法中,(D)方法属于定性分析方法。 A、企业系统规划法 B、关键成功因素法 C、投资回收法 D、战略集合转移法 14,在U/C矩阵中,我们发现数据类“客户”一栏在“产品预测”和“销售区域管理”两项功能中都填了“C”,这在正确性检验中需要做( B)检验。 A、完备性 B、一致性 C、无冗余性 D、都不是

系统开发的结构化生命周期法

第十章 信息系统建设 10.12 系统开发的结构化生命周期法

2 系统开发的结构化生命周期法 结构化生命周期法(Structured Life Cycle)是最早的、成熟的一种信息系统开发方法。该方法基于结构化方法的思想,按照信息系统的生命周期进行信息系统的开发。 基本思想:用系统的思想和系统工程的方法,遵循用户至上原则,结构化、模块化、自顶向下地对系统进行开发。

31. 系统开发过程 按照信息系统的生命周期将信息系统开发过程划分为若干阶段; 规定每个阶段的工作任务、目标及其应达到的阶段性成果; 按照一定的准则按部就班地完成各个阶段的工作,完成上一阶段的工作之后才可以进入下一阶段; 每个阶段都要形成完整、规范的文档,作为下一阶段开发的依据;文档更改严格管理。系统规划系统分析系统实现系统设计系统运维

2. 生命周期法的优点 强调整体性和全局性; 开发过程有计划,便于管理与控制; 模块化便于分工合作完成大型项目; 工作文档标准化、规范化——完成了艺术向技术的转变,排斥个性化与自由发挥; 详尽的系统分析便于组织理清业务流程,发现缺陷,找到改进措施,使组织从中受益。 4

53. 生命周期法的适用性 组织相对稳定、业务处理过程规范、需求明确且在一定时期内不会发生大的变化的大型系统; 软件的社会化大生产; 特别适用于开发大型TPS和MIS系统。

64. 生命周期法的不足 耗费资源大,开发周期长。详细业务调查与正规文档整理工作消耗巨大的人力物力,也花费较长的时间,导致最终开发出的系统可能过时; 缺乏灵活性。修改不灵活,手续繁琐且需要修改大量的文档。有时用户在见到实际系统前,难以提出明确的修改意见,见到后再想提出时已经为时已晚。

软件生命周期管理

软件生命周期(SDLC,Systems Development Life Cycle,SDLC)是软件的产生直到报废的生命周期,周期内有问题定义、可行性分析、总体描述、系统设计、编码、调试和测试、验收与运行、维护升级到废弃等阶段,这种按时间分程的思想方法是软件工程中的一种思想原则,即按部就班、逐步推进,每个阶段都要有定义、工作、审查、形成文档以供交流或备查,以提高软件的质量。但随着新的面向对象的设计方法和技术的成熟,软件生命周期设计方法的指导意义正在逐步减少。 七个阶段 同任何事物一样,一个软件产品或软件系统也要经历孕育、诞生、成长、成熟、衰亡等阶段,一般称为软件生存周期(软件生命周期)。 软件生命周期 把整个软件生存周期划分为若干阶段,使得每个阶段有明确的任务,使规模大,结构复杂和管理复杂的软件开发变的容易控制和管理。通常,软件生存周期包括可行性分析、项目启动、需求分析、设计(概要设计和详细设计)、编码、测试、维护等活动,可以将这些活动以适当的方式分配到不同的阶段去完成。 可行性分析

此阶段是软件开发方与需求方共同讨论,主要确定软件的开发目标及其可行性。 主要交付物有《项目规划书》、《立项报告》、《可行性研究报告》。项目启动 项目启动会、人员到位,初步分工、搭建开发环境、准备项目管理工具。 项目管理工具:可采用Project和JIRA结合管理。 Microsoft Project (或MSP)是一个国际上享有盛誉的通用的项目管理工具软件,凝集了许多成熟的项目管理现代理论和方法,可以帮助项目管理者实现时间、资源、成本的计划、控制。 JIRA是集项目计划、任务分配、需求管理、错误跟踪于一体的商业软件。

软件开发过程生命周期模型

软件开发过程生命周期模型 一、序言 生命周期指软件开发全部过程、活动和任务的结构框架。软件开发包括需求、设计、编码和测试等阶段,有时也包括维护阶段。目前软件开发实践中使用的各种生命周期模型,都是下面这些基本组成部分的不同的排列与组合。 ?市场分析,可行性研究,与项目定义 ?需求分析 ?设计(概要设计和详细设计) ?编码实现 ?测试 ?使用与维护 主要有以下几种模型: ? 1.瀑布模型(waterfall model) ? 2.演化模型(evolutionary model) ? 3.螺旋模型(spiral model) 二、瀑布模型 瀑布模型将软件生命周期的各项活动规定为依固定顺序联接的若干阶段工作,形如瀑布流水,最终得到软件产品。如图所示:

优点: a.强调开发的阶段性; b.强调早期计划及需求调查; c.强调产品测试。 缺点: a.依赖于早期进行的唯一一次需求调查,不能适应需求的变化; b.由于是单一流程,开发中的经验教训不能反馈应用于本产品的过程; c.风险往往迟至后期的开发阶段才显露,因而失去及早纠正的机会 下表是瀑布模型中各个阶段的主要工作,及相应的质量控制手段。

三、演化模型 该模型主要针对事先不能完整定义需求的软件开发。用户可以给出待开发系统的核心需求,并且当看到核心需求实现后,能够有效地提出反馈,以支持系统的最终设计和实现。软件开发人员根据用户的需求,首先开发核心系统。当该核心系统投入运行后,用户试用之,完成他们的工作,并提出精化系统、增强系统能力的需求。软件开发人员根据用户的反馈,实施开发的迭代过程。第一迭代过程均由需求、设计、编码、测试、集成等阶段组成,为整个系统增加一个可定义的、可管理的子集。如图所示。

软件生命周期

软件生命周期 软件的生命周期是一个孕育、诞生、成长、成熟和衰亡的生存过程,也就是所谓的软件定义、软件开发和运行维护3个时期组成。而每个时期又有所要完成的不同的基本任务。 软件定义时期的主要任务是解决“做什么”的问题,通俗的讲就是做此项目的主要功能及可行性报告等。比如说网上选课系统,在软件定义阶段,要确定以下几个功能模块:管理员管理课程、教师、学生的增删改查和对教师、学生的权限授予等功能,教师对自己信息的修改和对自己课程的上传、修改、删除、查询等功能,学生对课程的选择、退选及查询等功能。针对此项目,从技术、经济、法律、成本、可获得的效益、开发的进度做出一系列的估算,制定出具体的实施计划。 软件开发时期的主要任务是解决“如何做”的问题,也就是如何完成此项目的过程,要解决每个构建所要完成的工作以及完成此工作的顺序。选择编写源程序的开发工具,把软件设计转换成计算机可以接受的程序代码。比如说网上选课系统,在软件开发阶段,我们确定先要进行管理员的模块编写,再进行教师模块的编写,进而进行学生模块的编写,另外也要确定是运用某种软件开发工具,如java、C语言等进行模块的开发等。 运行维护时期的主要任务是使软件持久地满足用户的需要,通常包括:改正性维护、适应性维护、完善性维护和预防性维护。在此阶段主要是把前期的各个模块组装起来进行测试,保证按需求分析的要求完成软件功能的测试并对此进行确认,交与开发方运行测试。比如网上选课系统,在运行维护阶段,要对前期的管理员、教师、学生这三个模块进行组合,并按照需求分析的功能进行核对,有不符合需求规格说明书之处进行修改,直到完全符合并测试成功,交与开发方测试及运用。 软件的生命周期是一个耗时长的工程。在软件工程生命周期的3个时期中,各个阶段又有着其不同的基本任务: 一、问题定义和可行性研究 此阶段是软件开发方与需求方共同讨论,主要确定软件的开发目标及其可行性。在这个阶段中我们需要从开发的技术、成本、效益等各个方面

系统开发生命周期

系统开发生命周期各阶段主要工作简介 系统开发生命周期是系统分析员、软件工程师程序员以及最终用户建立计算机系统的一个过程,IBM亦称之为计算机应用开发周期。它包括问题的定义及规划、需求分析、系统设计、程序编码、系统测试、运行维护六个阶段。下面对各个阶段的所要做的主要工作进行简要介绍。 1.问题的定义及规划: 系统规划主要是由系统分析员和用户讨论、了解情况,确定是否真的有必要建立一个新的计算机系统来取代原有的系统。 这部分包含的主要工作有:企业目标的确定,解决目标的方式的确定,信息系统目标的确定,信息系统主要结构的确定,工程项目的确定,可行性研究等。该阶段要求分析员忠实的分析企业中发生的事情,然后,分析员与他组织成员一道,指出问题所在。是项目其余阶段取得成功的关键。此阶段完成后要形成可行性分析报告和项目计划书。 在项目的可行性分析中要进行技术可行性分析,经济可行性分析,执行可行性分析。一旦完成对每项可选实施方案的经济、技术和执行可行性评估,就应该从中选择一种实施方案。可行性研究的目标是,比较和对比各项可选实施方案,并提出一个最佳的实施方案。 此外还要定义潜在的风险,特别是那些与项目的技术和执行可行性相关的潜在风险。关键的一点是应该将它们加入风险评估文件,以便在项目实施过程中能够妥善处理它们。 2.需求分析 在确定软件开发可行的情况下,对软件需要实现的各个功能进行详细分析。需求分析阶段是一个很重要的阶段,这一阶段做得好,将为整个软件开发项目的成功打下良好的基础。"唯一不变的是变化本身。",同样需求也是在整个软件开发过程中不断变化和深入的,因此我们必须制定需求变更计划来应付这种变化,以保护整个项目的顺利进行。

02376-信息系统开发

《信息系统开发》复习题 一、名词解析 1.信息:消息或知识只有对接收的行为或思维活动产生影响是,才能称为信息。 2.数据:在信息处理中信息载体上反映信息内容,接收者(人或机器)可以识别的符合。 3.信息化:是指人们的信息活动的规模不断增长以致在国民经济中占主导地位的过程。 4.系统:为实现规定功能以达到某一目标而构成的相互关联的一个集合体或装置(部件) 5.管理信息系统:就是为实现企业的整体目标对管理信息进行系统的综合的处理,辅助各 级管理决策的计算机硬件软件通讯设备及有关人员的统一体。 6.信息循环:信息从客体传输到主体,经过接收处理行动各环节反馈到客体,形成一个信 息运动的循环。 7.信息系统的生命周期:任何系统均有其产生发展成熟消亡或更新换代的过程,这个过程 称为系统的生命周期。 8.管理信息系统规划:是管理信息系统生命周期的第一个阶段,是管理信息系统的概念形 成时期这一阶段的主要目标就是制定出管理信息系统的长期发展方案,决定管理信息系统在整个生命周期内的发展方向规模和发展进程。 9.结构化方法:是把整个系统开发过程分为若干阶段,每个阶段进行若干活动每项活动应 用一系列标准规范方法和技术完成一个或多个任务形成符合给定规范的产品。 10.原型:是用户与系统分析、设计人员合作,根据用户提出的最基本的问题和想法,先很 快建立一个应用的软件的骨架,作为应用开发的实验模型,通常把这个实验模型叫做系统的原型。 11.代码:就是用来表征客观事物的实体类别以及属性的一个或一组易于计算机识别和处理 的特定符合或记号,它可以是字符数字某些特殊符合或他们的组合。 12.业务流程图:描述一个组织内部业务处理活动的内容及工作流程是进行系统调查使用的 工具之一。 13.系统开发的目标评价:就是按系统规划所定的某个开发项目范围内明确系统开发的目标 和用户的信息需求,提出系统的逻辑方案。 14.企业过程:是在企业资源管理中所需要的逻辑上相关的一组决策和活动,他们的分析和 识别无需顾及与组织机构的联系。 15.数据类:是指支持企业所必须的逻辑上相关的数据,信息系统规划的目的是辅助数据资 源的管理。 16.软件模块:是指这样一组程序语句,它包括输入输出和逻辑处理功能、内部信息及其运 行环境。 17.用户界面:指软件开发系统与用户交互的接口,通常包括输出输入,人-机对话的界面与 方式。 18.黑盒测试:也称功能测试,将软件看作黑盒子,在完全不考虑程序的内部结构和特性的 情况下测试软件的外部特性。 19.系统可靠性:在系统分析设计和实施的开发过程中通过采取一定的措施维持系统的正常 运行。 20.完善性维护:为了扩充原有系统的功能提高其性能而进行的系统维护工作。 21.信息系统的安全性:是指为了防范意外或人为的破坏信息系统的运行或非法使用信息资 源而对信息系统采取的安全保护措施。 22.信息系统监理:在信息化建设中为了减弱信息不对称而引入的第三方独立组织或者 机构”。 23.项目管理:就是项目的管理者,在有限的资源约束下,运用系统的观点、方法和理

相关主题
文本预览
相关文档 最新文档