《软件工程-可行性分析教案资料.ppt》由会员分享,可在线阅读,更多相关《软件工程-可行性分析教案资料.ppt(45页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、软件工程-可行性分析n n合同软件(委托开发)的问题定义。n n如远程教育学院:学位查询系统,想要那些功能、性能,进行招标。n n软件外包:中国的程序员平均水平不尽如人意,如程序设计的方法论、中文文档水平,英语、日语的文档水平等。发达国家软件外包是为了节约成本。n n在需求分析之前,需要描述和定义问题。问题定义阶段必须回答的关键问题是“要解决的问题是什么”。n n通过对系统的实际用户和使用部门负责人的访问调查,最后得出一份双方都满意的文档。n n问题定义阶段是软件生存周期中最简短的阶段,一般只需要一天甚至更少的时间。n n思想往往来源于非技术人员,如行业内人员,IT企业的决策人员参与其中,是否
2、值得去做需要研究。可行性研究的任务n n技术可行性n n使用现有的技术能实现这个系统吗使用现有的技术能实现这个系统吗?n n经济可行性n n这个系统的经济效益能超过它的开发成本吗这个系统的经济效益能超过它的开发成本吗?n n操作可行性n n系统的操作方式在这个用户组织内行得通吗系统的操作方式在这个用户组织内行得通吗?n n可以看出需要三种调研人员 不是解决问题,而是确定是否可解不是解决问题,而是确定是否可解 值得解值得解n n如超市商品价格查询系统技术的可行性:用户查询某种商品价格可用CALLCENTER实现,打电话。可采用人工接线或语音识别,要技术小组来评估,如口音方面的影响。经济方面的可行
3、性:电话服务需要人工合不合算?盈利模式用短信(每条短信收费)或者网络会员服务(按月收费)。n n操作上的可行性:如:需要用短消息方式,公司是否有短消息平台开发的资质?组织上是否行得通?如技术人员都是做C语言、汇编语言的,而系统要用JAVA,当前公司有几个合适的人选,工作任务是否繁重,能否找到合适的项目经理。未来一段时间是否有时间上冲突的大项目。n n最终的决策由高层领导来做,不一定不赚钱就不做,不一定公司没有技术力量就不做。n n可行性研究报告有规范的模板。可行性研究的步骤n n1 复查系统规模和目标n n2 研究目前正在使用的系统n n3 导出新系统的高层逻辑模型n n4 重新定义问题n n
4、5 导出和评价供选择的解法n n6 推荐行动方针n n7 草拟开发计划n n8 书写文档提交审查可行性研究的步骤n n一、复查定义,明确限制的约束。一、复查定义,明确限制的约束。可研人员与提出问题的人进行沟通。可研人员与提出问题的人进行沟通。如超市询价系统:超市的数量,商品的种类,如超市询价系统:超市的数量,商品的种类,询价的目标是什么?给用户所有价格还是只给询价的目标是什么?给用户所有价格还是只给最低价商品超市。最低价商品超市。可行性研究的步骤n二、研究老系统n解决老系统问题老系统老系统功能功能新增新增功能功能新系统效益新系统效益老系统效益老系统效益注意注意:?寻找相关系统,是否有人在做?如
5、淘宝、易趣、百度,汽车询寻找相关系统,是否有人在做?如淘宝、易趣、百度,汽车询价系统;旧系统改造:存在哪些问题?需要增加哪些功能?又价系统;旧系统改造:存在哪些问题?需要增加哪些功能?又如家校通系统,功能:提示家长小学生什么时候上学、放学、如家校通系统,功能:提示家长小学生什么时候上学、放学、成绩怎样,用短信和家长联络。成绩怎样,用短信和家长联络。?很多公司做这种系统,每个?很多公司做这种系统,每个小学一般用同一个系统,可能由主管部门指定。小学一般用同一个系统,可能由主管部门指定。可行性研究的步骤可行性研究的步骤n n三、导出高层逻辑模型n报告应该告诉用户做什么而不是怎么做从系统中抽象出系统能
6、做什么,用户在系统中从系统中抽象出系统能做什么,用户在系统中怎么操作,不用涉及内部实现,如超市询价系怎么操作,不用涉及内部实现,如超市询价系统中查询某种商品价格用户如何操作。征求用统中查询某种商品价格用户如何操作。征求用户意见,如用户对价钱的接受能力,如短信的户意见,如用户对价钱的接受能力,如短信的包月费用,短信和上网哪种操作方式更吸引用包月费用,短信和上网哪种操作方式更吸引用户。又如汽车违章通知系统。户。又如汽车违章通知系统。可行性研究的步骤老系统老系统模型模型新模型新模型新系统新系统抽象抽象改进改进实现实现可行性研究的步骤可行性研究的步骤n n四、重新定义问题n n以上四步构成循环以上四步
7、构成循环定义/再定义问题分析问题导出可行解如超市查询系统中,某些商品的价格变动较如超市查询系统中,某些商品的价格变动较大,如当天蔬菜、鲜肉的打折,系统很难跟大,如当天蔬菜、鲜肉的打折,系统很难跟踪实现,意义不大。需要重新定义系统的规踪实现,意义不大。需要重新定义系统的规模,或去掉某些功能,软件分期。模,或去掉某些功能,软件分期。n五、导出多种解法进度表进度表经济上合算经济上合算技术上可行技术上可行操作上可行操作上可行技术上不可行技术上不可行用户用户不不可可能能操操作作不合算不合算可行性研究的步骤可行性研究的步骤可行性研究的步骤可行性研究的步骤n n六、推荐行动方针六、推荐行动方针n n七、草拟
8、开发计划七、草拟开发计划n 任务分解,确定负责人n 大致进度规划n 财务预算n 风险分析及对策n然后与项目经理交换意见n n八、书写文挡提交审查八、书写文挡提交审查Yes or No?NoYesWhy?Which one is the best?Why?(cost/benefit)n n风险投资之前要进行可行性研究报告。Google的可行性研究是由斯坦福大学做的。可行性研究实施可行性研究实施n问题识别问题识别n市场调查市场调查n分析准备分析准备n环境分析环境分析n物理分析物理分析n功能分析功能分析n n信息分析信息分析n n动态分析动态分析n n确立系统方确立系统方案,作出各案,作出各种估算种
9、估算n n模型评审模型评审要多面手!,需要专业人员的类型较多。问题的初步认识问题的初步认识(了解背景,行业、行规、术语,以确(了解背景,行业、行规、术语,以确定研究人员)定研究人员)n了解系统应解决的问题,这了解系统应解决的问题,这些问题使如何提出的些问题使如何提出的n设想这些问题如何解决才能设想这些问题如何解决才能满足要求满足要求n了解问题的结构了解问题的结构市场调查市场调查n n了解市场对待开发软件的需求情况(如超了解市场对待开发软件的需求情况(如超市询价系统的使用人员的调研,顾客的调市询价系统的使用人员的调研,顾客的调研,商品价格是否愿意告知)研,商品价格是否愿意告知)n n调查市场上已
10、有的类似软件系统的功能、调查市场上已有的类似软件系统的功能、性能、价格情况、运作模式(了解竞争对性能、价格情况、运作模式(了解竞争对手)手)分析准备分析准备n n确立分析计划(如问卷方式,短信息、确立分析计划(如问卷方式,短信息、电话是否愿意开通?分析问卷,快餐店电话是否愿意开通?分析问卷,快餐店的开设的常用方式)的开设的常用方式)n n规定由谁参加分析作业,任务分配规定由谁参加分析作业,任务分配n n对参加分析的人员进行必要的培训对参加分析的人员进行必要的培训n n分析使用的常用工具分析使用的常用工具Word、Excel、Matlab(趋势分析、预测)(趋势分析、预测)环境分析环境分析明确系
11、统的目的和限制条件明确系统的目的和限制条件明确系统的目的和限制条件明确系统的目的和限制条件n n使用单位的状况(个人、公司、机关?)、经营使用单位的状况(个人、公司、机关?)、经营使用单位的状况(个人、公司、机关?)、经营使用单位的状况(个人、公司、机关?)、经营方针和组织机构方针和组织机构方针和组织机构方针和组织机构n n使用单位的计算机利用情况使用单位的计算机利用情况使用单位的计算机利用情况使用单位的计算机利用情况n n相关的硬件、软件及其它接口部分相关的硬件、软件及其它接口部分相关的硬件、软件及其它接口部分相关的硬件、软件及其它接口部分n n用户的操作环境(用户的操作环境(用户的操作环境
12、(用户的操作环境(WinXP?WinXP?)及操作要求(如:控)及操作要求(如:控)及操作要求(如:控)及操作要求(如:控件、字体的大小,是否支持手机彩信?手机支持件、字体的大小,是否支持手机彩信?手机支持件、字体的大小,是否支持手机彩信?手机支持件、字体的大小,是否支持手机彩信?手机支持浏览器?)浏览器?)浏览器?)浏览器?)n n习惯、法律、制度上对软件的制约习惯、法律、制度上对软件的制约习惯、法律、制度上对软件的制约习惯、法律、制度上对软件的制约(如办论坛需如办论坛需如办论坛需如办论坛需要向公安机关申请要向公安机关申请要向公安机关申请要向公安机关申请)n n开发能具备的基数条件和设备条件
13、开发能具备的基数条件和设备条件开发能具备的基数条件和设备条件开发能具备的基数条件和设备条件(如:最少的如:最少的如:最少的如:最少的开发人员和最低的环境配置开发人员和最低的环境配置开发人员和最低的环境配置开发人员和最低的环境配置)n n如:超市询价系统的扩展,查询超市的商品进价。用户是否熟悉计算机?能进行什么样的操作?物理分析物理分析n n了解实际业务活动状况,特别对一些活动要了解实际业务活动状况,特别对一些活动要点进行分析。点进行分析。n n明确在这些要点之间什么东西在流动(物、明确在这些要点之间什么东西在流动(物、资金、信息?)资金、信息?),如何进行流动,如何进行流动n n对物理流量进行
14、分析(流量多大?网页的图对物理流量进行分析(流量多大?网页的图片的清晰度要合适、和网络带宽有关,网站片的清晰度要合适、和网络带宽有关,网站首页的打开时间最好在首页的打开时间最好在6秒以内)。秒以内)。n n对其模型化(制定关系数据库?),得到实对其模型化(制定关系数据库?),得到实际业务系统(当前系统)的物理模型际业务系统(当前系统)的物理模型功能分析功能分析n n决定系统应具备的功能决定系统应具备的功能(工作域,功能的工作域,功能的需求往往是无止境的,必须限定一个范围)需求往往是无止境的,必须限定一个范围)n n分析功能的结构:功能展开(细化)和功分析功能的结构:功能展开(细化)和功能分配(
15、功能属于哪个子系统或模块),能分配(功能属于哪个子系统或模块),对功能进行轮廓性的设计,证明其可实现。对功能进行轮廓性的设计,证明其可实现。n n分析各功能之间的关系,整理它们之间传分析各功能之间的关系,整理它们之间传递的信息递的信息n n利用数据流图,描述信息在系统流动与处利用数据流图,描述信息在系统流动与处理的情况理的情况信息分析信息分析n n调查系统的输入、输出、保存信息调查系统的输入、输出、保存信息n n明确信息的结构及各信息之间的关明确信息的结构及各信息之间的关系系n n调查各信息的信息量调查各信息的信息量n n调查各种报表和文件的格式调查各种报表和文件的格式n n建立粗略的数据词典
16、,定义系统中建立粗略的数据词典,定义系统中使用的数据使用的数据动态分析动态分析n系统内每一部分有几种状态(如:系统内每一部分有几种状态(如:处理数据状态、传输状态、暂停状处理数据状态、传输状态、暂停状态,或:超级用户的使用状态和普态,或:超级用户的使用状态和普通用户不一样,系统管理员和操作通用户不一样,系统管理员和操作员状态不一样)员状态不一样)n各种状态转换的条件各种状态转换的条件确立系统方案,进行各种估算确立系统方案,进行各种估算n粗略地估算成本粗略地估算成本n估算可能取得的效益估算可能取得的效益n提出可能需要的资源,包括人员、提出可能需要的资源,包括人员、硬件、软件等硬件、软件等n提出大
17、概的进度安排提出大概的进度安排系统流程图n n2.3.1 符号n n2.3.2 例子n n2.3.3 分层变化变化仓库仓库零零 库存量库存量件件 临界值临界值库存清单库存清单XX :XX :库存库存 临临界值界值定货报告定货报告系统流程图n n反映信息在各部分间流动的情况,不是反映信息在各部分间流动的情况,不是一个纯计算机的概念。一个纯计算机的概念。n n符号和例子符号和例子事务事务库存清单程序库存清单程序库存清单主库存清单主文件文件定货定货信息信息报告生成程序报告生成程序定货报告定货报告即库存量变化即库存量变化注意注意:系统流程图系统流程图 程序流程图程序流程图符号符号=系统部件系统部件 箭
18、头箭头=信息流动路径信息流动路径=教材39页系统符号。数据流图n n2.4.1 符号n n2.4.2 例子n n2.4.3 命名n n2.4.4 用途inputData storagefunctionData flowoutput数据流图n n系统的逻辑模型,决定了软件后期的主体框架系统的逻辑模型,决定了软件后期的主体框架n n符号和例子符号和例子数据流图分层细化时必须保持信息连续性数据流图分层细化时必须保持信息连续性数据流图数据流图n n命名n n为数据流图为数据流图(或数据存储或数据存储)命名(教材命名(教材4545页)页)n n为处理命名为处理命名n n用途n n信息交流的工具信息交流的
19、工具n n分析和设计的工具分析和设计的工具n n面向数据流的设计方法面向数据流的设计方法数据字典n n2.5.1 数据字典的内容n n2.5.2 定义数据的方法n n2.5.3 数据字典的用途n n2.5.4 数据字典的实现数据字典数据字典n n数据的信息的集合也就是对数据流图中所包含的所有元素的定义的集合n n数据字典的内容n n数据流数据流n n数据流分量数据流分量(数据元素数据元素)-)-别名别名(出现的原因出现的原因?)?)n n数据存储数据存储n n处理处理数据字典数据字典n n定义数据的方法n n顺序:出生年月顺序:出生年月=年年+月月n n选择:性别选择:性别=【男【男|女】女】
20、n n重复:订货数量重复:订货数量=1=1 数字数字55n n可选:生产日期可选:生产日期=年年+月月+(日日)n n用途:分析工具、估计改变数据时的影响、开发数据库的第一步。名字:零件编号名字:零件编号名字:零件编号名字:零件编号别名:别名:别名:别名:描述:唯一地标识库存清单中描述:唯一地标识库存清单中描述:唯一地标识库存清单中描述:唯一地标识库存清单中 一个特定零件的关键域一个特定零件的关键域一个特定零件的关键域一个特定零件的关键域定义:零件编号定义:零件编号定义:零件编号定义:零件编号=8 =8 字符字符字符字符 8 8位置:定货报告位置:定货报告位置:定货报告位置:定货报告 定货信息
21、定货信息定货信息定货信息 库存清单库存清单库存清单库存清单数据数据结构结构成本效益分析n n2.6.1 成本估计n n2.6.2 成本效益分析的方法成本效益分析n n成本估计成本估计n n代码行技术:每行代码的平均成本代码行技术:每行代码的平均成本 源代源代码行数码行数n n任务分解技术:人力任务分解技术:人力 工资工资成本效益分析n n成本效益分析的方法成本效益分析的方法n n货币的价值体现货币的价值体现n n投资回收期投资回收期n n纯收入纯收入n n投资回收率投资回收率例:假设某软件生命周期为例:假设某软件生命周期为例:假设某软件生命周期为例:假设某软件生命周期为5 5年。现在投资年。现
22、在投资年。现在投资年。现在投资2020万元,万元,万元,万元,平均年利率平均年利率平均年利率平均年利率3%3%。从第一年起,每年年底收入。从第一年起,每年年底收入。从第一年起,每年年底收入。从第一年起,每年年底收入4.24.2万元,问该项目是否值得投资?万元,问该项目是否值得投资?万元,问该项目是否值得投资?万元,问该项目是否值得投资?P=20万万4.2万万4.2万万4.2万万4.2万万4.2万万012345到第到第到第到第5 5年底结算时:年底结算时:年底结算时:年底结算时:投资额投资额投资额投资额=200000=200000 (1+3%)(1+3%)5 5 231855(231855(元元
23、元元)收入收入收入收入=42000 =42000 (1+3%)(1+3%)4 4+(1+3%)+(1+3%)3 3+(1+3%)(1+3%)2 2+(1+3%)+1+(1+3%)+1 222984(222984(元元元元)不合算!不合算!衡量工程价值的经济指标有:衡量工程价值的经济指标有:衡量工程价值的经济指标有:衡量工程价值的经济指标有:纯收入纯收入纯收入纯收入 =折合现价的总收入折合现价的总收入折合现价的总收入折合现价的总收入-当前投资额当前投资额当前投资额当前投资额 =投资回收期投资回收期例:第例:第6年底可收回年底可收回)(3517403.11420006元年回收期年5.22)(22.0351747652 投资回收率:设为投资回收率:设为投资回收率:设为投资回收率:设为j j此课件下载可自行编辑修改,仅供参考!此课件下载可自行编辑修改,仅供参考!感谢您的支持,我们努力做得更好!谢谢感谢您的支持,我们努力做得更好!谢谢