收藏 分销(赏)

软件工程可行性研究.pptx

上传人:精*** 文档编号:7641562 上传时间:2025-01-11 格式:PPTX 页数:71 大小:928.90KB 下载积分:16 金币
下载 相关
软件工程可行性研究.pptx_第1页
第1页 / 共71页
软件工程可行性研究.pptx_第2页
第2页 / 共71页


点击查看更多>>
资源描述
Click to edit Master title style,Click to edit Master text styles,Second level,Third level,Fourth level,Fifth level,*,*,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,*,*,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,*,*,软件工程导论,Software Engineering,主讲:吕晓华,E-mail:bowen995,1,软件工程可行性研究,第1页,Chap02 可行性研究,可行性研究任务,可行性研究过程,系统流程图,数据流图,数据字典,(内容、方法、用途、实现),成本/效益分析,(成本预计、分析方法),可行性研究目标就是用最小代价在尽可能短时间内确定问题是否能够处理;可行性研究目标不是处理问题,而是确定问题是否值得去解。,2,软件工程可行性研究,第2页,2.1 可行性研究任务,可行性研究实质上是要进行一次大大压缩简化了系统分析和设计过程,也就是在较高层次上以较抽象方式进行系统分析和设计过程:,分析和澄清问题定义,导出系统逻辑模型探索系统实现方案:,技术可行性:现有技术,经济可行性:开发成本,操作可行性:用户操作,实现进度,可行性研究成本:预期工程总成本510,3,软件工程可行性研究,第3页,2.2 可行性研究步骤,复查系统规模和目标,研究当前正在使用系统,导出新系统高层逻辑模型,重新定义问题,导出和评价供选择解法,推荐行动方针,草拟开发计划,书写文档提交审查,4,软件工程可行性研究,第4页,复查系统规模和目标,对问题定义阶段书写关于规模和目标汇报书深入复查确认。更正汇报书中叙述含糊、不正确地方。这个步骤工作,实质上是为了确保分析员正在处理问题确实是要求他处理问题。,深入复查确认“规模和目标汇报书”,5,软件工程可行性研究,第5页,研究当前正在使用系统,正在使用系统基本功效以及一些缺点,分析现有系统文档资料和使用手册,实地考查现有系统,描绘现有系统高层系统流程图并确认,统计现有系统接口,6,软件工程可行性研究,第6页,导出新系统高层逻辑模型,设计过程通常总是从,现有物理系统,出发,再参考现有系统逻辑模型,构想,目标系统逻辑模型,,最终依据目标系统逻辑模型建造,新物理系统,。,使用,数据流图,,描绘数据在系统中流动和处理情况,从而概括地表示出对新系统构想。,通常为了把新系统描绘得更清楚准确,还应该有一个初步数据字典,定义系统中使用数据。,数据流图和数据字典共同定义了新系统逻辑模型,以后能够从这个逻辑模型出发设计新系统。,7,软件工程可行性研究,第7页,重新定义问题,分析员应该和用户一起再次复查问题定义、工程规模和目标,这次复查应该把数据流图和数据字典作为讨论基础。,可行性研究前四个步骤实质上组成一个循环。,定义问题,分析问题,导出一个试探性解,重新定义问题,符合系统目标?,Y,N,8,软件工程可行性研究,第8页,导出和评价供选择解法,分析员应该从他提议系统逻辑模型出发,导出若干个较高层次(较抽象)物了解法供比较和选择。,从技术角度出发考虑处理问题不一样方案。比如,24节中将举例说明在数据流图上划分不一样自动化边界,依据技术可行性考虑初步排除一些不现实系统。比如,假如要求系统响应时间不超出几秒钟,显然应该排除任何批处理方案。,考虑操作方面可行性。分析员应该依据使用部门处理事务标准和习惯检验技术上可行那些方案,去掉其中从操作方式或操作过程角度看用户不能接收方案。,考虑经济方面可行性。,分析员应该预计余下每个可能系统开发成本和运行费用,而且预计相对于现有系统而言这个系统能够节约开支或能够增加收入。,在这些预计数字基础上,对每个可能系统进行成本效益分析。(参看26节),制订实现进度表。,通常只需要预计生命周期每个阶段工作量。,9,软件工程可行性研究,第9页,推荐行动方针,做出一个关键性决定:是否继续进行这项开发工程。,假如分析员认为值得继续进行这项开发工程,那么他应该选择一个最好解法,而且说明选择这个处理方案理由。,10,软件工程可行性研究,第10页,草拟开发计划,为推荐系统草拟一份开发计划:,工程进度表,预计对各种开发人员和各种资源需要情况。,预计系统生命周期每个阶段成本。,最终应该给出下一个阶段(需求分析)详细进度表和成本预计。,11,软件工程可行性研究,第11页,书写文档提交审查,写成清楚文档,请用户和使用部门责任人仔细审查。,12,软件工程可行性研究,第12页,2.3 系统流程图,系统流程图是描绘物理系统传统工具。,它基本思想是用图形符号以黑盒子形式描绘系统里面每个部件(程序,文件,数据库,表格,人工过程等等)。,系统流程图表示是信息在系统各部件之间流动情况,而不是对信息进行加工处理控制过程。,尽管系统流程图使用一些符号和,程序流程图,中用符号相同,不过它却是物理数据流程图而不是程序流程图。,2.3.1 符号,13,软件工程可行性研究,第13页,基本符号,一个符号表示系统中一个部件。,符号,名,称,说,明,处理,能改变数据值或数据位置加工或部件,比如,程序、处理机、人工加工等都是处理。,输入输出,表示输入或输出(或既输入又输出),是一个广义不指明详细设备符号。,连接,指出转到图另一部分或从图另一部分转来,通常在同一页上。,换页连接,指出转到另一页图上或由另一页图转来。,数据流,用来连接其它符号,指明数据流动方向。,14,软件工程可行性研究,第14页,系统符号,15,软件工程可行性研究,第15页,2.3.2 例子,某装配厂有一座存放零件仓库,仓库中现有各种零件数量以及每种零件库存量,临界值,等数据统计在库存清单主文件中。当仓库中零件数量有改变时,应该及时修改库存清单主文件,假如那种零件库存量少于它库存量临界值,则应该汇报给采购部门方便定货,要求天天向采购部门送一次定货汇报。,习惯画法是使信息在图中从顶向下,从左向右流动。,系统流程图,16,软件工程可行性研究,第16页,2.3.3 分层,首先用一张高层次系统流程图描绘系统总体概貌,表明系统关键功效。,然后分别把每个关键功效扩展到适当详细程度,画在单独一页纸上。,这种分层次描绘方法便于阅读者按从抽象到详细过程逐步深入地了解一个复杂系统。,提醒:下一节-2.4 数据流图,17,软件工程可行性研究,第17页,2.4 数据流图,1,数据流图描绘系统逻辑模型,图中没有任何详细物理元素,只是描绘信息在系统中流动和处理情况。,18,软件工程可行性研究,第18页,2.4 数据流图,2,因为数据流图是逻辑系统图形表示,即使不是专业计算机技术人员也轻易了解,所以是极好通信工具。,另外,设计数据流图只需考虑系统必须完成基本逻辑功效,完全不需要考虑怎样详细地实现这些功效,所以它也是软件设计很好出发点。,19,软件工程可行性研究,第19页,四种基本符号,表示数据源点或终点。,表示变换数据处理。,表示数据存放(静止数据)。,表示数据流,即特定数据流动方向(流动数据)。,20,软件工程可行性研究,第20页,三个附加符号,*:表示数据之间是“与”关系。,+:表示数据之间是“或”关系。,:表示数据之间是“互斥”关系(只能从中选一个)。,21,软件工程可行性研究,第21页,说明,数据存放和数据流都是数据,仅仅所处状态不一样。数据存放是处于静止状态数据,数据流是处于运动中数据。,22,软件工程可行性研究,第22页,说明,有时数据源点和终点相同。假如只用一个符号代表数据源点和终点,则最少有两个箭头和这个符号相连(一个进一个出,)可能其中一条箭头相当长,这将降低数据流图清楚度,假如代表同一个事物一样符号在图中出现在n个地方,则在这个符号一个角上画n-1条短斜线做标识。,23,软件工程可行性研究,第23页,说明,数据流与程序流程图中用箭头表示控制流有本质不一样,千万不要混同。,熟悉程序流程图初学者在画数据流图时,往往试图在数据流图中表现分支条件或循环,殊不知这么做将造成混乱,画不出正确数据流图。,24,软件工程可行性研究,第24页,说明,在数据流图中应该描绘全部可能数据流向,而不应该描绘出现某个数据流条件。,数据流图基本关键点是描绘“做什么”而不考虑“怎样做”。,25,软件工程可行性研究,第25页,例子,问题定义:一家工厂采购部天天需要一张定货报表,报表按零件编号排序,表中列出全部需要再次定货零件。对于每个需要再次定货零件应该列出下述数据:零件编号,零件名称,定货数量,当前价格,主要供给者,次要供给者。零件入库或出库称为事务,经过放在仓库中CRT终端把事务汇报给定货系统。当某个零件库存数量少于库存量临界值时就应该再次定货。,26,软件工程可行性研究,第26页,提取数据流图四种成份,1,“经过放在仓库中CRT终端把事务汇报给定货系统”仓库管理员是数据源点。,“采购部天天需要一张定货报表”采购员是数据终点。,“采购部需要报表”用于产生报表处理。,“事务后果是改变零件库存量”对事务进行加工处理。,27,软件工程可行性研究,第27页,提取数据流图四种成份,2,“系统把定货报表送给采购部”定货报表是一个数据流。,“事务需要从仓库送到系统中”事务是一个数据流。,“每当有一个事务发生时马上处理它,然而天天只产生一次定货报表”应该有一个数据存放保留产生定货报表数据。,“当某个零件库存数量少于库存量临界值时就应该再次定货”应该有一个数据存放保留库存清单数据。,28,软件工程可行性研究,第28页,数据流图四种成份,29,软件工程可行性研究,第29页,定货系统基本系统模型,仓库,管理员,定货,系统,采购员,事务,定货报表,30,软件工程可行性研究,第30页,定货系统功效级数据流图,31,软件工程可行性研究,第31页,把处理功效深入分解后数据流图,32,软件工程可行性研究,第32页,注意,当深入分解将包括怎样详细地实现一个功效时就不应该再分解了。,比如:为何不深入分解“产生报表”这个功效呢?定货报表中需要数据在存放定货信息中全都有,产生报表只不过是按一定次序排列这些信息,再按一定格式打印出来。然而这些考虑纯属详细实现细节,不应该在数据流图中表现。,33,软件工程可行性研究,第33页,注意,当对数据流图分层细化时必须保持信息连续性。,也就是说,当把一个处理分解为一系列处理时,分解前和分解后输入输出数据流必须相同。,34,软件工程可行性研究,第34页,注意,应该注意在图中对处理进行编号方法。,35,软件工程可行性研究,第35页,2.4.3 命名,数据流图中每个成份命名是否恰当,直接影响数据流图可了解性。,36,软件工程可行性研究,第36页,为数据流(或数据存放)命名,名字应代表整个数据流(或数据存放)内容,而不是仅仅反应它一些成份。,不要使用空洞、缺乏详细含义名字(如:“数据”、“信息”、“输入”等)。,假如在为数据流(或数据存放)起名字时碰到了困难,则很可能是因为对数据流图分解不恰当造成,应尝试重新分解,看是否能克服这个困难。,37,软件工程可行性研究,第37页,为处理命名,1,通常先为数据流命名,然后再为与之相关联处理命名。这么命名比较轻易,而且表达了人类习惯“由表及里”思索过程。,名字应该反应整个处理功效,而不是它一部分功效。,名字最好由一个详细及物动词,加上一个详细宾语组成。应该尽可能防止使用“加工”、“处理”等空洞笼统动词作名字。,38,软件工程可行性研究,第38页,为处理命名,2,通常名字中仅包含一个动词,假如必须用两个动词才能描述整个处理功效,则把这个处理再分解成两个处理可能更恰当些。,假如在为某个处理命名时碰到困难,则很可能是发觉了分解不妥迹象,应考虑重新分解。,39,软件工程可行性研究,第39页,为数据源点/终点命名,采取它们在问题域中习惯使用名字(如“采购员”、“仓库管理员”等),40,软件工程可行性研究,第40页,2.4.4 用途,1,画数据流图基本目标是利用它作为交流信息工具。,数据流图另一个主要用途是作为分析和设计工具。,能够依据系统逻辑模型考虑系统物理实现。当用数据流图辅助物理系统设计时,以图中不一样处理定时要求为指南,能够在数据流图上画出许多组自动化边界,每组自动化边界可能意味着一个不一样物理系统。,41,软件工程可行性研究,第41页,例1,能够联机地接收事务并放入队列中,然而更新库存清单、处理定货和产生报表以批量方式进行。当然,这种方案需要增加一个数据存放以存放事务数据。,42,软件工程可行性研究,第42页,数据流图,43,软件工程可行性研究,第43页,例2,改变自动化边界,把处理11、12和13放在同一个边界内。,这个系统将联机地接收事务、更新库存清单和处理定货及输出定货信息;然而处理2将以批量方式产生定货报表。,44,软件工程可行性研究,第44页,数据流图,45,软件工程可行性研究,第45页,2.4.4 用途,2,数据流图对更详细设计步骤也有帮助。,本书第五章将讲述从数据流图出发映射出软件结构方法面向数据流设计方法。,46,软件工程可行性研究,第46页,2.5 数据字典,数据字典是关于数据信息集合,也就是对数据流图中包含全部元素定义集合。,数据流图和数据字典共同组成系统逻辑模型,没有数据字典数据流图就不严格,然而没有数据流图数据字典也难于发挥作用。,47,软件工程可行性研究,第47页,2.5.1 数据字典内容,普通说来,数据字典应该由对以下四类元素定义组成:,(1)数据流,(2)数据流分量(即,数据元素),(3)数据存放,(4)处理。,本书中数据字典将主要由对数据定义组成。数据处理定义用其它工具(如IPO图或PDL)描述更方便。,48,软件工程可行性研究,第48页,数据字典中统计数据元素信息,普通信息:名字,别名,描述等。,定义:数据类型,长度,结构等。,使用特点:值范围,使用频率,使用方式输入/输出/当地,条件值等。,控制信息:起源,用户,使用它程序,改变权,使用权等。,分组信息:父结构,隶属结构,物理位置-统计、文件和数据库等。,49,软件工程可行性研究,第49页,出现别名主要原因,对于一样数据,不一样用户使用了不一样名字;,一个分析员在不一样时期对同一个数据使用了不一样名字;,两个分析员分别分析同一个数据流时,使用了不一样名字。,50,软件工程可行性研究,第50页,2.5.2 定义数据方法,数据字典中定义就是对数据自顶向下分解。,普通说来,当分解到不需要深入定义,每个和工程相关人也都清楚其含义元素时,这种分解过程就完成了。,51,软件工程可行性研究,第51页,数据元素组成数据方式,次序,即以确定次序连接两个或多个分量;,选择,即从两个或多个可能元素中选取一个;,重复,即把指定分量重复零次或屡次。,可选,即一个分量是可有可无(重复零次或一次)。,52,软件工程可行性研究,第52页,符号,1,意思是等价于(或定义为),意思是和(即,连接两个分量),意思是或(即,从方括弧内列出若干个分量中选择一个),53,软件工程可行性研究,第53页,符号,2,意思是重复(即,重复花括弧内分量),()意思是可选(即,圆括弧里分量可有可无),54,软件工程可行性研究,第54页,2.5.3 数据字典用途,数据字典最主要用途是作为分析阶段工具。,数据字典中包含每个数据元素控制信息是很有价值。轻易预计改变一个数据将产生影响,而且能对全部受影响程序或模块作出对应改变。,最终,数据字典是开发数据库第一步。,55,软件工程可行性研究,第55页,2.5.4 数据字典实现,三种路径:,全人工过程,全自动化过程(利用数据字典处理程序),混合过程(用正文编辑程序、汇报生成程序等已经有使用程序帮助人工过程),56,软件工程可行性研究,第56页,数据字典含有特点,经过名字能方便地查阅数据定义。,没有冗余。,尽可能不重复在规格说明其它组成部分中已经出现信息。,轻易更新和修改。,能单独处理描述每个数据元素信息。,定义书写方法简单方便而且严格。,57,软件工程可行性研究,第57页,数据字典例子,1,名字:定货报表,别名:定货信息,描述:天天一次送给采购员需要定货零件表,定义:定货报表=零件编号+零件名称+定货数量+当前价格+主要供给者+次要供给者,位置:输出到打印机,58,软件工程可行性研究,第58页,数据字典例子,2,名字:零件编号,别名:,描述:唯一地标识库存清单中一个特定零件关键域,定义:零件编号=8字符8,位置:定货报表、定货信息、库存清单,59,软件工程可行性研究,第59页,数据字典例子,3,名字:定货数量,别名:,描述:某个零件一次定货数量,定义:定货数量=1数字5,位置:定货报表、定货信息,60,软件工程可行性研究,第60页,2.6 成本/效益分析,成本效益分析目标,要从经济角度分析开发一个特定新系统是否划算,从而帮助使用部门责任人正确地作出是否投资于这项开发工程决定。,61,软件工程可行性研究,第61页,2.6.1 成本预计,软件开发成本主要表现为人力消耗(乘以平均工资则得到开发费用)。,代码行技术,任务分解技术,自动预计成本技术,62,软件工程可行性研究,第62页,2.6.2 成本/效益分析方法,成本效益分析第一步是预计开发成本、运行费用和新系统将带来经济效益。,运行费用:系统操作费用(操作员人数,工作时间,消耗物资等等)和维护费用。,系统经济效益:因使用新系统而增加收入加上使用新系统能够节约运行费用。,63,软件工程可行性研究,第63页,相关概念,1,货币时间价值,假设年利率为i,假如现在存入P元,则n年后能够得到钱数为:,FP(1 i)n,反之,假如n年后能收入F元钱,那么这些钱现在价值是,P F(1 i)n,64,软件工程可行性研究,第64页,相关概念,2,投资回收期,通惯用投资回收期衡量一项开发工程价值。,所谓投资回收期就是使累计经济效益等于最初投资所需要时间。,65,软件工程可行性研究,第65页,相关概念,3,纯收入,衡量工程价值另一项经济指标是工程纯收入。,纯收入就是在整个生命周期之内系统累计经济效益(折合成现在值)与投资之差。,66,软件工程可行性研究,第66页,相关概念,4,投资回收率,把资金存入银行或贷给其它企业能够取得利息,通惯用年利率衡量利息多少。类似地也能够计算投资回收率,用它衡量投资效益大小,而且能够把它和年利率相比较,在衡量工程经济效益时,它是最主要参考数据。,67,软件工程可行性研究,第67页,相关概念,4,投资回收率,计算公式:P F,1,(1 j)F,2,(1 j),2,F,n,(1 j),n,P是现在投资额;F,i,是第 i年年底效益(i 1,2,n);n是系统使用寿命;j是投资回收率;,解出这个高阶代数方程即可求出投资回收率(假设系统寿命n5)。,68,软件工程可行性研究,第68页,27 小结,-1,可行性研究目标是深入探讨问题定义阶段所确定问题是否有可行解。,过程,1、经过定义问题,分析问题,提出解法重复过程,最终提出一个符合系统目标高层次逻辑模型。,2、然后依据系统这个逻辑模型构想各种可能物理系统,而且从技术、经济和操作等各方面分析这些物理系统可行性。,3、最终,系统分析员提出一个推荐行动方针,提交用户和使用部门责任人审查同意。,69,软件工程可行性研究,第69页,27 小结,-2,系统流程图实质上是物理数据流图,它描绘组成系统主要物理元素以及信息在这些元素间流动和处理情况。,数据流图基本符号只有四种,它是描绘系统逻辑模型极好工具。通常数据字典和数据流图共同组成系统逻辑模型。,成本效益分析是可行性研究一项主要内容,70,软件工程可行性研究,第70页,Thanks!,9/13/,NEXT CHAP03,需求分析,作业:P43 4、5,71,软件工程可行性研究,第71页,
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 包罗万象 > 大杂烩

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2026 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服