软件工程导论第2章.ppt
《软件工程导论第2章.ppt》由会员分享,可在线阅读,更多相关《软件工程导论第2章.ppt(69页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第第2章:可行性研究章:可行性研究 可可行行性性研研究究就就是是要要回回答答“所所定定义的的问题有有可行的解决可行的解决办法法吗?”。可可行行性性研研究究的的目目的的是是:用用最最小小的的代代价价在在尽尽可可能能短短的的时间内内确确定定问题是是否否能能够解解决决,以以及是否及是否值得去解决。得去解决。2.1可行性研究的任务可行性研究的任务 可可行行性性研研究究所所需需的的时间取取决决于于工工程程的的规模模,所所需需要要的的成成本本要要占占工工程程总成成本本的的5%10%。可行性研究的内容:可行性研究的内容:1)技)技术可行性可行性技技术可行性要分析各种技可行性要分析各种技术因素,例如:因素,例
2、如:使用使用现有的技有的技术能否能否实现这个系个系统?是否有是否有胜任开任开发该项目的熟目的熟练技技术人人员?能能否否按按期期得得到到开开发该项目目所所需需的的软件件、硬硬件件资源?源?2)经济可行性可行性 对经济合理性合理性进行行评价,所要考价,所要考虑的的问题是:是:这个系个系统的的经济效益能否超效益能否超过它的开它的开发成本?成本?这就就需需要要对项目目进行行价价格格/利利益益分分析析,即即“投投入入/产出出”分析。分析。由由于于利利益益分分析析取取决决于于软件件系系统的的特特点点,因因此此在在软件件开开发之之前前,很很难对新新系系统产生生的的效效益益作作出出精精确的定量描述,所以往往采
3、用一些估算方法。确的定量描述,所以往往采用一些估算方法。3)操作可行性)操作可行性 操操作作可可行行性性评价价系系统运运行行后后会会引引起起的的各各方方面面变化化,如如:对组织机机构构管管理理模模式式、用用户工工作作环境等境等产生的影响。生的影响。4)社会可行性)社会可行性 社社会会可可行行性性主主要要讨论法法律律方方面面和和使使用用方方面面的可行性。的可行性。例例如如,被被开开发软件件的的权利利归属属问题、软件件所使用的技所使用的技术是否会造成侵是否会造成侵权等等问题。7 72.2 可行性研究过程可行性研究过程1.1.1.1.复复复复查查系系系系统规统规模和目模和目模和目模和目标标 2.2.
4、2.2.研究目前正在使用的系研究目前正在使用的系研究目前正在使用的系研究目前正在使用的系统统3.3.3.3.导导出新系出新系出新系出新系统统的高的高的高的高层逻辑层逻辑模型模型模型模型4.4.4.4.重新定重新定重新定重新定义问题义问题5.5.5.5.导导出和出和出和出和评评价供价供价供价供选择选择的解法的解法的解法的解法6.6.6.6.推荐行推荐行推荐行推荐行动动方方方方针针7.7.7.7.草草草草拟拟开开开开发计发计划划划划8.8.8.8.书书写文档提交写文档提交写文档提交写文档提交审查审查8 8第一步第一步 复查系统规模和目标复查系统规模和目标对问题定定义阶段段书写的关于写的关于规模和目
5、模和目标的的报告告书进一步复一步复查确确认。改正。改正报告告书中的叙述模糊、不正确的地方。中的叙述模糊、不正确的地方。这个步个步骤的工作,的工作,实质上是上是为了确保分析了确保分析员正在解决的正在解决的问题确确实是要求他解决的是要求他解决的问题。进一步复一步复查确确认“规模和目模和目标报告告书”9 9第二步第二步 研究目前正在使用的系统研究目前正在使用的系统正在使用的系统的基本功能以及某些缺点正在使用的系统的基本功能以及某些缺点分析现有系统的文档资料和使用手册,实地考分析现有系统的文档资料和使用手册,实地考察现有系统察现有系统描绘现有系统的高层系统流程图并确认描绘现有系统的高层系统流程图并确认
6、记录现有系统的接口记录现有系统的接口1010第三步第三步 导出新系统的高层逻辑模型导出新系统的高层逻辑模型设计过程通常总是从设计过程通常总是从现有的物理系统现有的物理系统出发,再参考现有系统的出发,再参考现有系统的逻辑模型,设想逻辑模型,设想目标系统的逻辑模型目标系统的逻辑模型,最后根据目标系统的逻,最后根据目标系统的逻辑模型建造辑模型建造新的物理系统新的物理系统。使用使用数据流图数据流图,描绘数据在系统中流动和处理的情况,从而概,描绘数据在系统中流动和处理的情况,从而概括地表达出对新系统的设想。括地表达出对新系统的设想。通常为了把新系统描绘得更清晰准确,还应该有一个初步的数通常为了把新系统描
7、绘得更清晰准确,还应该有一个初步的数据字典,定义系统中使用的数据。据字典,定义系统中使用的数据。数据流图和数据字典共同定义了新系统的逻辑模型,以后可以数据流图和数据字典共同定义了新系统的逻辑模型,以后可以从这个逻辑模型出发设计新系统。从这个逻辑模型出发设计新系统。1111第四步第四步 重新定义问题重新定义问题分析员应该和用户一起再次复查问题定义、工程规模和目标,分析员应该和用户一起再次复查问题定义、工程规模和目标,这次复查应该把数据流图和数据字典作为讨论的基础。这次复查应该把数据流图和数据字典作为讨论的基础。可行性研究的前四个步骤实质上构成一个循环。可行性研究的前四个步骤实质上构成一个循环。定
8、义问题定义问题分析问题分析问题导出一个试探性的解导出一个试探性的解重新定义问题重新定义问题符合系统目标?符合系统目标?YN1212第五步第五步 导出和评价供选择的解法导出和评价供选择的解法分析员应该从他建议的系统逻辑模型出发,导出若干个较高层次分析员应该从他建议的系统逻辑模型出发,导出若干个较高层次的(较抽象的)物理解法供比较和选择。的(较抽象的)物理解法供比较和选择。A.A.从技术角度出发考虑解决问题的不同方案。例如,从技术角度出发考虑解决问题的不同方案。例如,2 24 4节中将举例说明节中将举例说明在数据流图上划分不同的自动化边界在数据流图上划分不同的自动化边界 B.B.根据技术可行性的考
9、虑初步排除一些不现实的系统。例如,如果要求系根据技术可行性的考虑初步排除一些不现实的系统。例如,如果要求系统的响应时间不超过几秒钟,显然应该排除任何批处理方案。统的响应时间不超过几秒钟,显然应该排除任何批处理方案。C.C.考虑操作方面的可行性。分析员应该根据使用部门处理事务的原则和习考虑操作方面的可行性。分析员应该根据使用部门处理事务的原则和习惯检查技术上可行的那些方案,去掉其中从操作方式或操作过程的角度惯检查技术上可行的那些方案,去掉其中从操作方式或操作过程的角度看用户不能接受的方案。看用户不能接受的方案。D.D.考虑经济方面的可行性。考虑经济方面的可行性。分析员应该估计余下的每个可能的系统
10、的开发成本和运行费用,并且估计相对于现有分析员应该估计余下的每个可能的系统的开发成本和运行费用,并且估计相对于现有的系统而言这个系统可以节省的开支或可以增加的收入。的系统而言这个系统可以节省的开支或可以增加的收入。在这些估计数字的基础上,对每个可能的系统进行成本效益分析。在这些估计数字的基础上,对每个可能的系统进行成本效益分析。制定实现进度表。制定实现进度表。通常只需要估计生命周期每个阶段的工作量。通常只需要估计生命周期每个阶段的工作量。1313第六步第六步 推荐行动方针推荐行动方针做出一个关键性的决定:是否继续进行这项开发工程。做出一个关键性的决定:是否继续进行这项开发工程。如果分析员认为值
11、得继续进行这项开发工程,那么他应该选择如果分析员认为值得继续进行这项开发工程,那么他应该选择一种最好的解法,并且说明选择这个解决方案的理由。一种最好的解法,并且说明选择这个解决方案的理由。1414第七步第七步 草拟开发计划草拟开发计划为推荐的系统草拟一份开发计划:为推荐的系统草拟一份开发计划:1.工程进度表工程进度表2.估计对各种开发人员和各种资源的需要情况。估计对各种开发人员和各种资源的需要情况。3.估计系统生命周期每个阶段的成本。估计系统生命周期每个阶段的成本。4.最后应该给出下一个阶段(需求分析)的详细进度表和最后应该给出下一个阶段(需求分析)的详细进度表和成本估计。成本估计。1515第
12、八步第八步 书写文档提交审查书写文档提交审查写成清晰的文档,写成清晰的文档,请用用户和使用部和使用部门的的负责人仔人仔细审查。16162.3 系统流程图系统流程图系系统流程流程图是描是描绘物理系物理系统的的传统工具。工具。它的基本思想是用它的基本思想是用图形符号以黑盒子形式描形符号以黑盒子形式描绘系系统里面的每个部件(程序,文件,数据里面的每个部件(程序,文件,数据库,表格,人,表格,人工工过程等等)。程等等)。系系统流程流程图表达的是信息在系表达的是信息在系统各部件之各部件之间流流动的的情况,而不是情况,而不是对信息信息进行加工行加工处理的控制理的控制过程。程。尽管系尽管系统流程流程图使用的
13、某些符号和使用的某些符号和程序流程程序流程图使使用用的符号相同,但是它却是物理数据流程的符号相同,但是它却是物理数据流程图而不是程而不是程序流程序流程图。2.3.1 符号符号 符号符号名称名称说明说明处理处理如:程序,处理机,人工加工如:程序,处理机,人工加工输入输入/输出输出连接连接换页连接换页连接数据流数据流表示输入或输出表示输入或输出指指出出转转到到图图的的另另一一部部分分或或从从图图的的另另一部分转来,通常在同一页上一部分转来,通常在同一页上指出转到另一页图上或由另一图转来指出转到另一页图上或由另一图转来指明数据流动方向指明数据流动方向图图2.1基本符号基本符号符号符号名称名称说明说明
14、穿孔卡片穿孔卡片文档文档磁带磁带联机存储联机存储磁盘磁盘磁鼓磁鼓显示显示人工输入人工输入人工操作人工操作辅助操作辅助操作通信链路通信链路穿孔卡片输入穿孔卡片输入/输出,或穿孔卡片文件输出,或穿孔卡片文件打印输出,或打印终端输入数据打印输出,或打印终端输入数据磁带输入磁带输入/输出,或表示磁带文件输出,或表示磁带文件任何种类磁盘存储,如磁盘、磁鼓等任何种类磁盘存储,如磁盘、磁鼓等磁盘输入磁盘输入/输出,或磁盘上文件、数据库输出,或磁盘上文件、数据库磁鼓输入磁鼓输入/输出,或磁鼓上文件、数据库输出,或磁鼓上文件、数据库显示器部件显示器部件人工输入数据,如填写表格人工输入数据,如填写表格人工完成的处
15、理人工完成的处理使用辅助设备进行的脱机操作使用辅助设备进行的脱机操作通过远程通信线路传送数据通过远程通信线路传送数据图图2.2系统符号系统符号2.3.2例子例子 事务事务库存清单程序库存清单程序报告生成程序报告生成程序定货定货信息信息定货报告定货报告库存清单库存清单主文件主文件图图2.3库存清单系统的系统流程图库存清单系统的系统流程图某装配厂有一座存放零件的某装配厂有一座存放零件的仓库,仓库中现有的各种仓库,仓库中现有的各种零件的数量以及每种零件零件的数量以及每种零件的库存量的库存量临界值临界值等数据记等数据记录在库存清单主文件中。录在库存清单主文件中。当仓库中零件数量有变化当仓库中零件数量有
16、变化时,应该及时修改库存清时,应该及时修改库存清单主文件,如果那种零件单主文件,如果那种零件的库存量少于它的库存量的库存量少于它的库存量临界值,则应该报告给采临界值,则应该报告给采购部门以便定货,规定每购部门以便定货,规定每天向采购部门送一次定货天向采购部门送一次定货报告。报告。习惯画法是使信息在图中从习惯画法是使信息在图中从顶向下,从左向右流动。顶向下,从左向右流动。20202.3.3 2.3.3 分层分层首先用一张高层次的系统流程图描绘系统总体概貌,表明系统首先用一张高层次的系统流程图描绘系统总体概貌,表明系统的关键功能。的关键功能。然后分别把每个关键功能扩展到适当的详细程度,画在单独的然
17、后分别把每个关键功能扩展到适当的详细程度,画在单独的一页纸上。一页纸上。这种分层次的描绘方法便于阅读者按从抽象到具体的过程逐步这种分层次的描绘方法便于阅读者按从抽象到具体的过程逐步深入地了解一个复杂的系统。深入地了解一个复杂的系统。2121数据流数据流图描描绘系系统的的逻辑模型,模型,图中没有任何具体的物理元中没有任何具体的物理元素,只是描素,只是描绘信息在系信息在系统中流中流动和和处理的情况。理的情况。因因为数据流数据流图是是逻辑系系统的的图形表示,即使不是形表示,即使不是专业的的计算算机技机技术人人员也容易理解,所以是极好的通信工具。也容易理解,所以是极好的通信工具。此外,此外,设计数据流
18、数据流图只需考只需考虑系系统必必须完成的基本完成的基本逻辑功能,功能,完全不需要考完全不需要考虑如何具体地如何具体地实现这些功能,所以它也是些功能,所以它也是软件件设计的很好的出的很好的出发点。点。2.4 数据流图(描绘数据在系统中流动的逻辑过程)数据流图(描绘数据在系统中流动的逻辑过程)2.4.1 符号符号 图2.4数据流图的符号(a)基本符号的含义;(b)附加符号的含义2323三个附加符号三个附加符号 *:*:表示数据之表示数据之间是是“与与”关系。关系。+:表示数据之:表示数据之间是是“或或”关系。关系。:表示数据之:表示数据之间是是“互斥互斥”关系(只能从关系(只能从中中选一个)。一个
19、)。注意:注意:“处理理”可表示:可表示:单个程序、一系列程序、程序个程序、一系列程序、程序的一个模的一个模块、人工、人工处理理过程等等;程等等;“数据存数据存储”可表示:一个文件、文件的一部分、可表示:一个文件、文件的一部分、数据数据库记录等等;等等;数据流数据流图忽略出忽略出错处理、打开文件、关理、打开文件、关闭文件。文件。2.4.2 绘制数据流制数据流图的的例子例子 问题定义:一家工厂的采购部每天需要一张定货报问题定义:一家工厂的采购部每天需要一张定货报表,报表按零件编号排序,表中列出所有需要再表,报表按零件编号排序,表中列出所有需要再次定货的零件。对于每个需要再次定货的零件应次定货的零
20、件。对于每个需要再次定货的零件应该列出下述数据:零件编号,零件名称,定货数该列出下述数据:零件编号,零件名称,定货数量,目前价格,主要供应者,次要供应者。零件量,目前价格,主要供应者,次要供应者。零件入库或出库称为事务,通过放在仓库中的入库或出库称为事务,通过放在仓库中的CRTCRT终终端把事务报告给定货系统。当某个零件的库存数端把事务报告给定货系统。当某个零件的库存数量少于库存量临界值时就应该再次定货。量少于库存量临界值时就应该再次定货。2626提取数据流图的四种成分提取数据流图的四种成分“通通过放在放在仓库中的中的CRTCRT终端把事端把事务报告告给定定货系系统”仓库管理管理员是是数据源点
21、数据源点。“采采购部每天需要一部每天需要一张定定货报表表”采采购员是是数据数据终点点。“采采购部需要部需要报表表”用于用于产生生报表的表的处理理。“事事务的后果是改的后果是改变零件零件库存量存量”对事事务进行的加工的行的加工的处理。理。“系系统把定把定货报表送表送给采采购部部”定定货报表是表是一个一个数据流数据流。“事事务需要从需要从仓库送到系送到系统中中”事事务是一个是一个数据流数据流。“每当有一个事每当有一个事务发生生时立即立即处理它,然而每天只理它,然而每天只产生一次生一次定定货报表表”应该有一个数据有一个数据存存储保存保存产生定生定货报表表的的数据数据。“当某个零件的当某个零件的库存数
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 软件工程 导论
限制150内