《第2章 软件的定义及可行性研究bbtu.pptx》由会员分享,可在线阅读,更多相关《第2章 软件的定义及可行性研究bbtu.pptx(35页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、 第2章 软件的定义及可行性研究内容提要内容提要2.1 问题定义2.2 可行性研究2.3 可行性研究报告的主要内容以及在软件开发中的作用2.4 实例分析2.5 本章小结软件的定义及可行性研究软件的定义及可行性研究一般说来,把软件的生命周期划分为软件定义、软件开发、一般说来,把软件的生命周期划分为软件定义、软件开发、软件运行三个时期。软件运行三个时期。软件定义时期是生命周期的第一个时期,也是软件开发的软件定义时期是生命周期的第一个时期,也是软件开发的基础。根据软件开发的基本过程,这个时期可分为两个阶段基础。根据软件开发的基本过程,这个时期可分为两个阶段:问题定义和可行性研究。这两个阶段的主要任务
2、就是分析问题定义和可行性研究。这两个阶段的主要任务就是分析用户要求,在对用户要求充分了解的前提下,分析未来新系用户要求,在对用户要求充分了解的前提下,分析未来新系统(即目标系统)的主要目标,分析开发系统的可行性。参统(即目标系统)的主要目标,分析开发系统的可行性。参加这个时期工作的人员有用户和系统分析员。加这个时期工作的人员有用户和系统分析员。软件的定义及可行性研究软件的定义及可行性研究图2.1 软件定义时期工作流程 2.1 问题定义问题问题定定义义 问题定义是软件定义时期的第一个阶段,作为软件的开问题定义是软件定义时期的第一个阶段,作为软件的开发者,在这个阶段必须弄清用户发者,在这个阶段必须
3、弄清用户“需要计算机解决什么问需要计算机解决什么问题题”。2.1.1 问题定义的内容问题定义的内容(1)问题的背景,弄清楚待开发系统现在处于什么状态,为)问题的背景,弄清楚待开发系统现在处于什么状态,为 什么要开发它,是否具备开发条件等问题。什么要开发它,是否具备开发条件等问题。(2)提出开发系统的问题要求以及总体要求。)提出开发系统的问题要求以及总体要求。(3)明确问题的性质、类型和范围。)明确问题的性质、类型和范围。(4)明确待开发系统要实现的目标、功能和规模。)明确待开发系统要实现的目标、功能和规模。(5)提出开发的条件要求和环境要求。)提出开发的条件要求和环境要求。问题问题定定义义2.
4、1.2 问题定定义的方法的方法 在问题定义阶段,需要用户和系统分析员共同协作、紧在问题定义阶段,需要用户和系统分析员共同协作、紧密配合,方能圆满地完成问题定义报告。密配合,方能圆满地完成问题定义报告。具体步骤如下具体步骤如下:首先,系统分析员要针对用户的要求做详细的调查研究,首先,系统分析员要针对用户的要求做详细的调查研究,认真听取用户对问题的介绍;阅读与问题有关的资料,必要认真听取用户对问题的介绍;阅读与问题有关的资料,必要时还要深入现场,亲自操作;调查开发系统的背景时还要深入现场,亲自操作;调查开发系统的背景;了解用了解用户对开发的要求。户对开发的要求。其次是与用户反复讨论,以使问题进一步
5、确定化。经过其次是与用户反复讨论,以使问题进一步确定化。经过用户和系统分析员双方充分协商,确定问题定义的内容。用户和系统分析员双方充分协商,确定问题定义的内容。最后写出双方均认可的问题定义报告。最后写出双方均认可的问题定义报告。2.2 可行性研究可行性研究可行性研究可行性研究是在问题定义之后进行的,它是软件定义时可行性研究是在问题定义之后进行的,它是软件定义时期的第二个阶段。可行性研究的目的是明确期的第二个阶段。可行性研究的目的是明确“问题是否能够问题是否能够解决解决”和和“是否值得去解决是否值得去解决”。也就是判断为开发系统所定。也就是判断为开发系统所定的目标和规模是否能够实现,新系统是否能
6、够带来经济效益。的目标和规模是否能够实现,新系统是否能够带来经济效益。可行性研究的实质是在高层次上做一次大大简化了的需可行性研究的实质是在高层次上做一次大大简化了的需求分析和设计。求分析和设计。作为可行性研究的成果,最后要写出作为可行性研究的成果,最后要写出可行性论证报可行性论证报告告。可行性研究可行性研究 2.2.1 可行性研究的任可行性研究的任务1.技技术可行性可行性 从技从技术的角度去研究系的角度去研究系统实现的可行性。主要包括的可行性。主要包括:在在给出的限制范出的限制范围内,能否内,能否设计出系出系统,并,并实现必要的功能和必要的功能和性能性能;开开发人人员、硬件和、硬件和软件是否存
7、在件是否存在问题;系系统所用到的相所用到的相关技关技术是否支持。是否支持。2.经济可行性可行性 是是对软件开件开发项目目进行成本行成本.效益估算,分析效益估算,分析实现这个个系系统有没有有没有经济效益。效益。3.运行可行性运行可行性 指指为新系新系统规定的运行方式是否可行。如果新系定的运行方式是否可行。如果新系统建建立在原来已担立在原来已担负其他任其他任务的原系的原系统上,就不能要求它在上,就不能要求它在实时在在线状状态下运行,以免与原有的任下运行,以免与原有的任务相矛盾。相矛盾。可行性研究可行性研究4.法律可行性法律可行性 研究新系研究新系统的开的开发在社会上和政治上会不会引起侵在社会上和政
8、治上会不会引起侵权、破坏以及会不会与法律相抵触等破坏以及会不会与法律相抵触等问题。可行性研究最根本的任可行性研究最根本的任务是是对以后的行以后的行动方向提出建方向提出建议。如果可行性研究的。如果可行性研究的结果是果是问题没有可行的解,那么系没有可行的解,那么系统分析分析员应该建建议停止停止这项工程的开工程的开发;如果可行性研究的如果可行性研究的结果是果是问题值得去解决,那么系得去解决,那么系统分析分析员应该推荐一个推荐一个较好的好的解决方案,并且解决方案,并且为工程制定一个初步的开工程制定一个初步的开发计划。划。可行性研究可行性研究2.2.2 可行性研究的方法和步可行性研究的方法和步骤 可行性
9、研究的整个可行性研究的整个过程是从分析程是从分析新系新系统目目标与范与范围的的说明明书开始到新系开始到新系统的推荐方案通的推荐方案通过审查为止。在整个止。在整个过程中,要程中,要经过以下步以下步骤:1.审核系核系统的的规模和目模和目标2.研究当前正在使用的系研究当前正在使用的系统3.导出新系出新系统的高的高层逻辑模型模型(1)由当前物理系统提出当前系统物理模型)由当前物理系统提出当前系统物理模型;(2)由当前系统物理模型,导出当前系统逻辑模型)由当前系统物理模型,导出当前系统逻辑模型;(3)参考当前系统逻辑模型,设想出新系统逻辑模型)参考当前系统逻辑模型,设想出新系统逻辑模型;(4)根据新系统
10、逻辑模型建造新系统物理模型,导出新物)根据新系统逻辑模型建造新系统物理模型,导出新物理系统。理系统。可行性研究可行性研究 4.重新定重新定义问题图2.3 建立系统逻辑模型的过程可行性研究可行性研究5.提出和提出和评价供价供选择的方案的方案6.推荐一个方案和行推荐一个方案和行动方方针(1)项目的开发价值)项目的开发价值;(2)推荐这个方案的理由。)推荐这个方案的理由。7.草草拟项目开目开发计划划(1)工程)工程进度表度表(2)开)开发人人员(3)各种)各种资源源(4)成本估)成本估计8.书写文档,提交写文档,提交审查可行性研究可行性研究2.2.3 系系统流程流程图 在在进行可行性研究的行可行性研
11、究的过程中,需要用物理模型程中,需要用物理模型对当前当前物理系物理系统和新物理系和新物理系统进行描述,系行描述,系统流程流程图是用来描述系是用来描述系统物理模型的一种物理模型的一种传统工具。工具。系系统流程流程图的基本内容是的基本内容是:(1)用)用图形符号以黑盒子形式描述系形符号以黑盒子形式描述系统内的每一个成分内的每一个成分(例如(例如:程序、文件、数据程序、文件、数据库、硬件、硬件设备、人工、人工过程等)。程等)。(2)用)用“”表示信息在系表示信息在系统各个成分之各个成分之间的流的流动情况情况(不要(不要误认为“”表示信息的加工和控制表示信息的加工和控制过程)。程)。可行性研究可行性研
12、究图2.4 教师图书采购系统流程图可行性研究可行性研究2.2.4 数据流数据流图 数据流数据流图(DFD)是描述数据)是描述数据处理理过程的工具。它从程的工具。它从数据数据传递和加工的角度,以和加工的角度,以图形的方式描述数据流从形的方式描述数据流从输入到入到输出的出的传输变换过程。它表示了系程。它表示了系统内部信息的流向以及系内部信息的流向以及系统的的逻辑处理功能。理功能。数据流数据流图中的基本中的基本图形符号有四种形符号有四种:(1)“”表示数据和数据流。箭头表示数据的流动方表示数据和数据流。箭头表示数据的流动方向。数据流图中应在线旁标注数据流名。向。数据流图中应在线旁标注数据流名。(2)
13、“”表示对数据的加工,即对数据的某种操作或表示对数据的加工,即对数据的某种操作或变换。数据流图中应在圆圈内写上加工名。变换。数据流图中应在圆圈内写上加工名。(3)“”表示按照某种规则生成,且长度不限的数据文表示按照某种规则生成,且长度不限的数据文件(也称数据存储)。数据流图中应在双线旁标注文件名。件(也称数据存储)。数据流图中应在双线旁标注文件名。(4)“”表示数据流的源头和终端。表示数据流的源头和终端。可行性研究可行性研究图2.5 教师图书采购系统数据流图 可行性研究可行性研究数据流图中各种成分及命名方法数据流图中各种成分及命名方法(1)数据流)数据流 数据流表明数据和数据流向,它通常由一组
14、数据项组成。数据流表明数据和数据流向,它通常由一组数据项组成。两个加工之间可以有多个数据流,这些数据流之间没有两个加工之间可以有多个数据流,这些数据流之间没有任何联系。数据流图中也不表明它们的先后次序。指向文件任何联系。数据流图中也不表明它们的先后次序。指向文件的数据流可以是写入文件或查询文件,从文件引出的数据流的数据流可以是写入文件或查询文件,从文件引出的数据流可以是从文件读出的数据或得到的查询结果。可以是从文件读出的数据或得到的查询结果。在加工之间传输的数据流必须有一个合适的名词,而在加工之间传输的数据流必须有一个合适的名词,而在文件和加工之间传输的数据流可以不命名,因为可以从在文件和加工
15、之间传输的数据流可以不命名,因为可以从“加工加工”和和“文件文件”的名字,弄清数据流的含义。的名字,弄清数据流的含义。可行性研究可行性研究(2)加工)加工 加工是对数据的某种操作或变换。加工要取适当的名字,加工是对数据的某种操作或变换。加工要取适当的名字,以提高可读性。以提高可读性。“加工加工”的名字通常是动词短语,它应简明扼要地表明的名字通常是动词短语,它应简明扼要地表明完成什么加工。不要使用含糊不具体的动词,如完成什么加工。不要使用含糊不具体的动词,如“处理处理”、“加工加工”等。等。(3)文件)文件 文件起暂时保存数据的作用。文件的命名方法与数据流文件起暂时保存数据的作用。文件的命名方法
16、与数据流的命名方法类似。的命名方法类似。(4)数据源头和终点)数据源头和终点 数据源头和终点是数据的始发点和终止点,是表示系统数据源头和终点是数据的始发点和终止点,是表示系统和环境的接口。在实际问题中,它可以是人员、计算机外部和环境的接口。在实际问题中,它可以是人员、计算机外部设备或其他装置,不需要对它进行软件设计和实现。因此,设备或其他装置,不需要对它进行软件设计和实现。因此,在命名时应符合环境的真实状况。在命名时应符合环境的真实状况。可行性研究可行性研究2.2.5 经济可行性可行性 在可行性研究在可行性研究过程中,程中,经济可行性研究占有重要地位,可行性研究占有重要地位,它从它从经济上衡量
17、一个上衡量一个项目是否有开目是否有开发价价值。经济可行性研究主要包括两个方面的内容:一是新系可行性研究主要包括两个方面的内容:一是新系统成本的估成本的估计;二是新系;二是新系统可能可能产生的效益。又称生的效益。又称为成本成本效益分析。效益分析。主要内容系统成本系统效益软件开发成本运行维护成本经济效益社会效益图2.6 经济可行性分析的主要内容可行性研究报告的主要内容 以及在软件开发中的作用可行性研究报告的主要内容 以及在软件开发中的作用 可行性研究报告是可行性分析阶段结束后 提交的文档,是决定软件开发项目的重要基础,也是软件后续设计的基本依据。2.3.1 可行性研究报告的基本内容 1.引 言 2
18、.可行性研究的前提 3.对现有系统的分析 4.所建议技术的可行性分析 5.所建议系统经济可行性分析 6.社会因素可行性分析 7.其他可供选择的方案 8.结论意见可行性研究报告的主要内容 以及在软件开发中的作用1.引言引言 (1)阐明明编写写该报告的目的,指出告的目的,指出读者者对象。象。(2)指出)指出项目的背景。包括目的背景。包括项目名称目名称;项目的任目的任务提出者、提出者、开开发者、用者、用户及及实现软件的件的单位位;项目与其他目与其他软件系件系统的关的关系。系。(3)定)定义。给出出报告中用到的告中用到的专门术语的定的定义和英文和英文缩写写的原文。的原文。(4)参考)参考资料。列出可能
19、使用到的有关料。列出可能使用到的有关资料的料的标题、标号、号、作者、作者、发表日期、出版社或表日期、出版社或资料来源。料来源。书写文档所引用的有关写文档所引用的有关资料所参考的料所参考的软件件标准或准或规范范;与与项目有关的已目有关的已发表的表的资料料;项目目经批准的批准的计划任划任务书、合同或上、合同或上级机关的批文。机关的批文。可行性研究报告的主要内容 以及在软件开发中的作用 2.可行性研究的前提可行性研究的前提 (1)要求)要求:列出列出对拟开开发项目的各目的各项基本要求,并加以基本要求,并加以说明。包括明。包括:功能、性能、功能、性能、输入入.输出、基本数据流出、基本数据流图、安全与、
20、安全与保密要求等。保密要求等。(2)目)目标:可包括人力与可包括人力与设备费用的用的节省、省、处理速度的提理速度的提高、控制精度或生高、控制精度或生产力的提高、管理信息服力的提高、管理信息服务的改的改进、决策、决策系系统的改的改进、人、人员工作效率的提高。工作效率的提高。(3)条件、假定和限制)条件、假定和限制:可包括建可包括建议开开发软件运行的最短件运行的最短寿命,寿命,经费来源和使用限制,法律和政策方面的限制,硬件、来源和使用限制,法律和政策方面的限制,硬件、软件、运行件、运行环境和开境和开发环境的条件和限制,可利用的信息和境的条件和限制,可利用的信息和资源,建源,建议开开发软件投入使用的
21、最件投入使用的最迟时间等。等。(4)可行性研究方法。)可行性研究方法。(5)决定可行性的主要因素。)决定可行性的主要因素。可行性研究报告的主要内容 以及在软件开发中的作用 3.对现有系有系统的分析的分析 (1)处理流程和数据流程。理流程和数据流程。(2)工作)工作负荷。荷。(3)费用支出用支出:如人力、如人力、设备、空、空间、支持性服、支持性服务、材料等、材料等各各项开支。开支。(4)人)人员:列出所需人列出所需人员的的专业技技术类别和数量。和数量。(5)设备。(6)局限性)局限性:说明明现有系有系统存在的存在的问题以及开以及开发新系新系统的必要性。的必要性。可行性研究报告的主要内容 以及在软
22、件开发中的作用4.所建所建议技技术的可行性分析的可行性分析(1)对系系统的的简要概述。要概述。(2)与)与现有系有系统比比较的的优越性。越性。(3)处理流程和数据流程。理流程和数据流程。(4)采用建)采用建议系系统带来的影响来的影响:对设备的影响、的影响、对现有有软件的影响、件的影响、对用用户的影响、的影响、对系系统运行的影响、运行的影响、对开开发环境境的影响、的影响、对经费支出的影响。支出的影响。(5)技)技术可行性可行性评价价:包括在限制的条件下,功能目的能包括在限制的条件下,功能目的能否达到否达到;利用利用现有技有技术,功能目的能否达到,功能目的能否达到;对开开发人人员数量数量和和质量的
23、要求,并量的要求,并说明是否明是否满足足;在在规定的期限内,开定的期限内,开发能能否完成。否完成。可行性研究报告的主要内容 以及在软件开发中的作用5.所建所建议系系统经济可行性分析可行性分析(1)支出。)支出。(2)效益。)效益。(3)收益投)收益投资比。比。(4)投)投资回收周期。回收周期。(5)敏感性分析:指一些关)敏感性分析:指一些关键性因素,如系性因素,如系统生命周期生命周期长短、系短、系统工作工作负荷量、荷量、处理速度要求、理速度要求、设备和和软件配置件配置变化化等等对支出和收益的影响分析。支出和收益的影响分析。可行性研究报告的主要内容 以及在软件开发中的作用6.社会因素可行性分析社
24、会因素可行性分析 (1)法律因素)法律因素:如合同如合同责任、侵犯任、侵犯专利利权、侵犯版、侵犯版权等。等。(2)用)用户使用可行性使用可行性:如用如用户单位的行政管理、工作制度、位的行政管理、工作制度、人人员素素质等能否等能否满足要求。足要求。7.其他可供其他可供选择的方案的方案 逐个逐个阐明其他可供明其他可供选择的方案,并重点的方案,并重点说明未被推荐的明未被推荐的理由。理由。8.结论意意见(1)着手)着手组织开开发;(2)等待若干条件具)等待若干条件具备后才能开后才能开发;(3)需)需对开开发目目标进行某些修改行某些修改;(4)不能)不能进行或不必行或不必进行行;(5)其他。)其他。可行
25、性研究报告的主要内容 以及在软件开发中的作用2.3.2 可行性研究可行性研究报告告编制中制中应注意的注意的问题 1.坚持持实事求是的原事求是的原则,不要随意夸大新系,不要随意夸大新系统的功能和的功能和其他指其他指标。2.任何一任何一项内容的内容的书写均要以科学分析的写均要以科学分析的结果果为依据,依据,不能凭空想象。不能凭空想象。3.对每一每一项内容的描述必内容的描述必须反复推敲,一定要做到用反复推敲,一定要做到用词恰当、准确。恰当、准确。4.从具体情况出从具体情况出发。可行性研究。可行性研究报告不一定面面俱到,告不一定面面俱到,但但对于用于用户关心的部分或关心的部分或项目中重要的部分要重点目
26、中重要的部分要重点阐明。明。5.书写形式要写形式要规范。范。可行性研究报告的主要内容 以及在软件开发中的作用2.3.3 可行性研究可行性研究报告在告在软件开件开发中的作用中的作用 1.可行性研究可行性研究报告是可行性研究告是可行性研究阶段的成果。段的成果。2.可行性研究可行性研究报告提出了告提出了软件开件开发的的总体目体目标和范和范围,因此它是因此它是软件开件开发的行的行动指南。指南。3.可行性研究可行性研究报告是需求分析的基告是需求分析的基础和依据。和依据。.实例分析实实例分析例分析 2.4.1 弄清弄清问题的背景及定的背景及定义 2.4.2 确定目确定目标系系统的功能的功能 2.4.3 技
27、技术可行性分析可行性分析 1.网络方面 2.数据库方面 2.4.4 经济效益分析效益分析 2.4.5 项目目实施施计划划 1.需求分析;2.需求分析确认;3.系统设计;4.程序设计;5.新作业制度实施;6.数据收集整理与建档本章小结本章小结软件的定义及可行性研究是软件生命周期的第一个阶段。在问题正确定义的基础上,通过分析,导出问题的初步试探性的解法。然后在此基础上复查,并修改问题的定义,再分析,再提出改进解法如此反复,直至提出一个符合系统目标的高层次的逻辑模型。由这个逻辑模型可设想出多种可能的物理系统。然后对这些物理系统进行可行性研究,最后由系统分析员提出一个推荐的行动方案,提交审查。数据流图是描述系统逻辑模型的最好工具,而系统流程图则是描述系统物理模型的最好工具。在可行性研究中,经济可行性是一项重要内容。使用部门往往从经济的角度考虑是否投资于这项工程。”可行性研究报告”是软件的定义及可行性研究时期所产生的重要文档。演讲完毕,谢谢观看!