第2章可行性研究.ppt
《第2章可行性研究.ppt》由会员分享,可在线阅读,更多相关《第2章可行性研究.ppt(95页珍藏版)》请在三一文库上搜索。
1、,第1章 软件工程学概述 第2章 可行性研究 第3章 需求分析 第4章 形式化说明技术 第5章 总体设计 第6章 详细设计 第7章 实现 第8章 维护 第9章 面向对象方法学引论 第10章 面向对象分析 第11章 面向对象设计 第12章 面向对象实现 第13章 软件项目管理,教学内容 2.1 可行性研究的任务 2.2 可行性研究过程 2.3 系统流程图 2.4 数据流图 2.5 数据字典 2.6 成本/效益分析,第2章 可行性研究,2.1 可行性研究的任务,可行性研究的目的:用最小的代价,在尽可能短的时间内确定问题是否能够解决。 可行性研究的实质:进行一次大大压缩简化了的系统分析和设计的过程。
2、 可行性研究,首先需要进一步分析和澄清问题定义;在澄清了问题定义之后,系统分析员应该导出系统的逻辑模型;然后从系统逻辑模型出发,探索若干种可供选择的主要解法(即系统实现方案);之后再对每种解法仔细研究它的可行性。,可行性研究的任务,技术可行性 使用现有的技术能实现这个系统吗? 经济可行性 这个系统的经济效益能超过它的开发成本吗? 操作可行性 系统的操作方式在这个用户组织内行得通吗?,技术可行性:使用现有的技术能否实现这个系统。 开发风险:在限制条件范围内能否达到必需的功能与性能; 资源配置:现有的技术人员能否胜任,软硬件资源是否能如期得到; 技术:现有的技术是否能够支持系统的研制。,经济可行性
3、:这个系统的经济效益能否超过它的开发成本。 经济效益评价的合理性 长期的总体的经营策略 对其他获利中心或产品的影响 开发工作需用资源的购置费用 成本/效益分析 潜在的市场 权衡支出的费用和收到的利益 正确估计开发费用以及最终从所开发的系统中获得的利益能否超过开发成本,操作可行性:系统的操作方式在这个用户组织内是否行得通。,可行性研究的步骤,复查系统规模和目标 研究目前正在使用的系统 导出新系统的高层逻辑模型 重新定义问题 导出和评价供选择的解法 推荐行动方针 草拟开发计划 书写文档提交审查,复查定义,明确限制的约束 研究老系统 解决老系统问题,老系统功能,新增 功能,注意: 新系统效益 老系统
4、效益?,导出高层逻辑模型 报告应该告诉用户做什么而不是怎么做,老系统,抽象,改进,实现,新系统,模型,新模型,重新定义问题,草拟开发计划 任务分解(确定负责人) 大致进度规划(大致什么时间做什么) 财务预算(大概会花多少钱,那些事情会花多少钱) 风险分析及对策(会出现哪些风险,出现风险怎么应对 ),书写文档提交审查,可行性研究实施,问题识别 市场调查 分析准备 环境分析 物理分析 功能分析,信息分析 动态分析 确立系统方案,做出 各种估算 模型评审,问题的初步认识,了解系统应解决的问题,这些问题是如何提出的 设想这些问题如何解决才能满足要求 了解问题的结构,市场调查,了解市场对待开发软件的需求
5、情况 调查市场上已有的类似软件系统的功能性能价格情况,分析准备,确立分析计划 规定由谁参加分析作业,任务分配 对参加分析的人员进行必要的培训,环境分析,明确系统的目标和限制条件 使用单位的状况,经营方针和组织机构 使用单位的计算机利用情况 相关的硬件,软件及其它接口部分 用户的操作环境及操作要求 习惯,法律,制度上对软件的制约 开发能具备的基数条件和设备条件,物理分析,了解实际业务活动状况,特别对一些活动要点进行分析 明确在这些要点之间什么东西在流动,如何进行流动 对物理流量进行分析 对其模型化,得到实际业务系统(当前系统)的物理模型,功能分析,决定系统应具备的功能(工作域) 分析功能的结构:
6、功能展开和功能分配 分析各功能之间的关系,整理它们之间传递的信息 利用数据流图,描述信息在系统流动与处理的情况,信息分析,调查系统的输入,输出,保存信息 明确信息的结构及各信息之间的关系 调查各信息的信息量 调查各种报表和文件的格式 建立粗略的数据词典,定义系统中使用的数据,动态分析,系统内每一部分有几种状态 各种状态转换的条件 同步产生的条件与同步后状态的变化,确立系统方案,进行各种估算,粗略地估算成本 估算可能取得的效益 提出可能需要的资源,包括人员,硬件,软件等 提出大概的进度安排,2.3 系统流程图,系统流程图:系统流程图是概括地描绘物理系统的传统工具。它的基本思想是用图形符号以黑盒子
7、形式描绘组成系统的每个部件(程序,文档,数据库,人工过程等),它表达的是数据在系统各部件之间流动的情况。 2.3.1 符号 2.3.2 例子 2.3.3 分层,2.3.1 符号,基本符号,系统符号,例: 某装配厂有一座存放零件的仓库,仓库中现有的各种零件的数量以及每种零件的库存量临界值等数据记录在库存清单主文件中。当仓库中零件数量有变化时,应该及时修改库存清单主文件,如果哪种零件的库存量少于它的库存量临界值,则应该报告给采购部门以便定货,规定每天向采购部门送一次定货报告。,2.3.2 例子,该装配厂使用一台小型计算机处理更新库存清单主文件和产生定货报告的任务; 零件库存量的每一次变化称为一个事
8、务,由放在仓库中的CRT终端输入到计算机中; 系统中的库存清单程序对事务进行处理,更新存储在磁盘上的库存清单主文件,并且把必要的定货信息写在磁带上; 每天由报告生成程序读一次磁带,并且打印出定货报告。,库存清单系统的系统流程图,面对复杂的系统时,一个比较好的方法是分层次地描绘这个系统。首先用一张高层次的系统流程图描绘系统总体概貌,表明系统的关键功能。然后分别把每个关键功能扩展到适当的详细程度,画在单独的一页纸上。这种分层次的描绘方法便于阅读者按从抽象到具体的过程逐步深入地了解一个复杂的系统。,2.3.3 分层,2.4、 数据流图,数据流图(Data Flow Diagram,DFD)是描述系统
9、中数据流程的图形工具,它描述了将系统的逻辑输入转换为逻辑输出所需的加工处理过程。,2.4.1 符号,基本符号,附加符号,数据流图的画法(一),由外向里:不分层,一次性画出完整的数据流图 )先确定系统边界,再确定总的输入和输出 )画系统内部,即画加工用若干个加工把输 入和输出联系起来在数据流每次发生改变 的地方画上一个加工,在数据要存储的地方 画上一个文件 )加工如果还有新的数据流产生,则加工还需 要进一步分解成更细的加工,叫基本加工,数据流图实例,现有一图书预定系统,接收由顾客发来的订单,并对订单进行验证,验证过程是根据图书目录检查订单的正确性,同时根据顾客档案确定是新顾客还是老顾客,是否有信
10、誉经过验证的正确订单,暂存在待处理的订单文件中对订单进行批处理,根据出版社档案,将订单按照出版社进行分类汇总,并保存订单存根,然后将汇总订单发往各出版社,例一 图书预定系统(顶层DFD图),出版社,顾客,验证 订单,汇总 订单,订单,出版社 订单,图书目录文件,待处理订单文件,正确 订单,一批 订单,出版社档案文件,画图步骤 : 1、确定外部实体及输入、输出数据流。 2、确定分解顶层的加工。 3、确定使用的文件。 4、用数据流将各部分连接起来,形成数据封闭。,注意:标注各加工框及数据流名称。,数据流图的画法(二),分层数据流图:自顶向下画,对系统进行逐层分解,可以控制每一层的复杂度 顶层:实体
11、输入一个加工输出 中间层:加工子加工子加工 底层:由基本加工组成,顶层,中 间 层,底 层,先全局后局部,先整体后细节,先抽象后具体.,0图,1图,2图,1.1图,2.1图,2.2图,分层DFD 图,分层数据流图的作图步骤:,先画出顶层的DFD图,即确定实体和输入输出 逐层分解顶层DFD图,获得若干中间层DFD图 画出底层的DFD图,例1: 假设一家工厂的采购部每天需要一张定货报表,报表按零件编号排序,表中列出所有需要再次定货的零件。对于每个需要再次定货的零件应该列出下述数据:零件编号,零件名称,定货数量,目前价格,主要供应者,次要供应者。零件入库或出库称为事务,通过放在仓库中的CRT终端把事
12、务报告给定货系统。当某种零件的库存数量少于库存量临界值时就应该再次定货。,2.4.2 例子,第一步:从问题描述中提取数据流图的4种成分。 系统的源点和终点 仓库管理员是数据源点 采购员是数据终点 处理 定货系统 数据流 定货报表 事务 数据存储,分析:,定货系统的基本系统模型,第二步:把基本系统模型细化,描绘系统的主要功能。 将处理“定货系统”进行功能分解,分解为“产生报表”和“处理事务”两部分; 考虑有关数据存储的问题,例中涉及到的两个数据存储:处理事务需要的“库存清单”数据、产生报表和处理事务在不同时间,因此需要存储“定货信息”;,定货系统功能级数据流图,第三步:对功能及数据流图中描绘的系
13、统主要功能进一步细化。 将“事务处理”进一步分解为“接受事务”、“更新库存清单”和“处理定货”三部分;,定货系统功能进一步分解后的数据流图,案例二 医院病房监护系统,一、问题的描述 在医院ICU病房里,将病症监视器安置在每个病床,对病人进行监护。监视器将病人的组合病症信号实时地传送到中央监护系统进行分析处理。 在中心值班室里,值班护士使用中央监护系统对病员的情况进行监控,监护系统实时地将病人的病症信号与标准的病诊信号进行比较分析,当病症出现异常时,系统会立即自动报警,并打印病情报告和更新病历。 根据护士的要求随时打印病人的病情报告,系统还定期自动更新病历。,案 例 二 医院病房监护系统,经过初
14、步的需求分析,得到系统功能要求: 1、监视病员的病症(血压、体温、脉搏等)。 2、定时更新病历。 3、病情出现异常情况时报警。 4、随机地产生某一病员的病情报告。,例2:医院病房监护系统,监视病情,更新病历,2.2.3 实例:医院病房监护系统,请分析软件系统需求!,1、监视病员的病症 采集病症信号(血压、体温、脉搏等)。 组合病症信号。 将模拟病症信号转换为数字信号(A-D转换)。 2、定时更新病历 将病症信号进行格式化并加入更新日期、时间。 更新病历库中病人的信息。 可人工设定更新病历的时间间隔。 3、病情出现异常情况时报警 根据标准病症信号库中的值,判断是否报警。 将报警信号转换为各种模拟
15、信号(D-A转换)。 实时打印病情报告,立即更新病历。 4、随机地产生某一病员的病情报告,二、系统功能需求,局部监视,更新日志,产生病情报告,顶 层DFD图,医院病房监护系统分层DFD图,顶层确定了系统的范围,其外部实体为病员和护士,护士,病员,护士,第一层:,医院病房监护系统顶层DFD图,第二层:加工“中央监视”分解,医院病房监护系统二层DFD图,医院病房监护系统分层DFD图,紧急报告,习题: 银行计算机储蓄系统的工作过程大致如下: 1)储户填写的存款单或取款单由业务员键入系统, 2)如果是存款则系统记录存款人姓名、住址(或电话号码)、身份证号码、存款类型、存款日期、到期日期、利率及密码(可
16、选)等信息,并印出存单给储户; 3)如果是取款而且存款时留有密码,则系统首先核对储户密码,若密码正确或存款时未留密码,则系统计算利息并印出利息清单给储户。 请用数据流图描绘本系统的功能,并用实体-联系图描绘系统中的数据对象。,顶层DFD图,储户,储户,储蓄系统,存款单,取款单,存单,利息清单,存款信息,密码,四、 画分层DFD图的基本原则,数据守恒与数据封闭原则 数据守恒是指加工的输入/出数据流是否匹配, 即每一个加工既有输入数据流又有输出数据流。 数据封闭是对整个系统而言。,子图与父图的“平衡” 父图中某个加工的输入输出数据流应该同相应的子图的输入输出相同(相对应),分层数据流图的这种特点称
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 可行性研究
链接地址:https://www.31doc.com/p-2979292.html