软件工程讲稿02.ppt_第1页
软件工程讲稿02.ppt_第2页
软件工程讲稿02.ppt_第3页
软件工程讲稿02.ppt_第4页
软件工程讲稿02.ppt_第5页
已阅读5页,还剩16页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、第二章 可行性研究,1 可行性研究的任务,2 可行性研究过程,3 系统流程图,4 数据流图,5 数据字典,6 成本/效益分析,第二章 可行性研究,可行性研究是指: 1)在当前组织内外的现有条件下,开发系统所必须具备的资源和 条件,能否满足系统的目标需求? 2)希望通过用最小的代价、在尽可能短的时间内,确定所识别出 来的问题是否有解(不是研究如何解决问题)。,1 可行性研究的任务,1. 可行性研究的任务是什么?,2. 如何进行?,由此可以看出,可行性研究实际上是一个大大简化了(花最小代价)的系统分析和设计过程。也就是说,是一个在较高的层次上、以较抽象的方式进行的系统分析和设计过程。 可行性研究的

2、成本一般只占工程总成本的5%左右。,第二章 可行性研究,3. 问题识别(项目分析与规划),系统开发的前提是:开发人员必须首先弄清楚5个W,即What,Why,Who,Where,When。即开发人员必须知道做什么?为什么要做?由谁来做?在哪里做?以及什么时间内做等问题。 如果在没有搞清楚以上问题就匆忙着手开发,往往是导致系统失败的主要原因。但是,真正搞清楚以上几个问题并非易事。,问题识别主要是通过了解企业目标、现行企业系统的问题、企业的信息战略等内容,决定如何使用信息技术帮助企业解决这些问题。要识别的问题首先是管理问题。例如,企业战略优势下滑、产品滞销、效率低下等。还要了解信息技术的利用程度。

3、例如有无数据混乱、处理速度慢,设备老化等问题。,获取需求时,分析人员要有主动性。应采用启发式策略来激发企业的需求。将“满足用户需求”模式转变为“使用户满意”的模式。 问题识别的越清楚,开发成功的概率就越大。,注意,没有“How”,第二章 可行性研究,对每一种解决方案,分别从技术、经济、社会(可操作)、法律四方面,进行分析研究,推荐最佳方案(包括项目进度计划)。,4. 简单需求分析,5. 设计可供选择的方案,6. 推荐最佳方案,初步确定系统的规模和目标、约束和限制等;,对系统进行高层逻辑分析,建立逻辑模型。,低档方案;,中档解决方案;,高档方案;,人工解决方案(现有解决方案);,对高层逻辑模型进

4、行简要设计,给出各种可能的解决方案。,对系统的功能、性能和限制条件等进行分析,确定现有资源(软、硬件资源,技术水平和已有的工作基础)的条件下,有多大技术风险?项目是否能实现?需要考虑以下三种情况: (1) 开发的风险:在规定的限制范围内,能否实现所必须的系统功能和性能? (2) 资源的有效性:可用于开发的技术人员是否存在问题? 可用于建立系统的其它资源是否具备? (3) 技术:相关技术的发展是否支持该系统的开发? 进行技术可行性研究时,一旦估计错误,可能会导致出现灾难性后果。,第二章 可行性研究,技术可行性:现有技术与资源能否实现用户的需求?,对项目开发成本进行估算或对进行项目的成本/效益分析

5、,确定要本系统是否值得投资开发。 对于大多数系统而言,衡量经济上是否合算,应考虑一个“底线”,经济可行性研究范围较广,包括成本/效益分析,长期公司经营策略,开发所需的成本和资源,潜在的市场前景等。,第二章 可行性研究,经济可行性:从人、财、物上考虑开发本系统的经济效益是否高于开发成本?,研究系统是否存在任何侵犯、妨碍等责任问题。系统的运行方式在现有用户组织内是否行得通?现有管理制度、人员素质和操作方式是否可行?即目标、方案等是否具有可操作性,是否能满足企业的进一步发展的需求? 社会可行性研究的范围也很广,它包括合同、责任、侵权、用户组织的管理模式及规范,以及一般技术人员所不了解的陷阱等。,社会

6、可行性:从社会行为各个方面,研究可操作性。,研究系统是否满足法律上的要求,有没有社会的因素会对系统开发产生消极影响。,第二章 可行性研究,法律可行性:从法律准则的等方面,研究可行性。,经过可行性研究后,应该对各种可行的方案进行对比分析,为用户推荐一个最佳的解决方案,同时,给出项目的进度计划安排。,第二章 可行性研究,2. 研究正在运行的系统。研究做什么而不是怎么做,注重系统与 其它系统的接口等。,2 可行性研究过程,可行性研究的步骤如下:,1. 复查系统的规模与目标,主要是确认用户需求;,3. 导出新系统的高层逻辑模型。,4. 重新定义问题,即用户需求。,5. 导出和评价可供选择的方案,6.

7、推荐行动案,7. 草拟开发计划,8. 书写文档并提交审查,参加人员:SA,USER,SE,根据上述可行性研究的结果,选择一个最合理的方案并说明理由,对所推荐的方案要做出详细的成本/效益分析。,明确了新系统的功能、处理流程及相关约束后,使用数据流图和数据字典来建立高层逻辑模型,概要描述数据在系统中的流动和处理情况。,分析员进行调研,仔细阅读和分析有关资料,对项目的规模和目标进行定义和确认,清晰地描述项目的一切限制和约束,确保要解决的问题确实是用户所需要的。,正在运行的系统可能是人工系统,也可能是旧的计算机系统。研究现有的系统是信息的重要来源。只关心它的基本功能、存在的问题,以及新的功能要求,与其

8、它系统的接口等。,新系统的模型反映了SA对用户需求的认识,是否正确应由用户确认。确认的基础是DFD和DD(为使用户能明白,略去了细节)。若不正确,则应重复上述过程,直到所提出的系统模型完全符合新系统的目标。,从逻辑模型出发,设计几套不同的方案(高档、中档、低档,包括现有系统等),并从技术、经济、可操作、法律等方面,对它们进行可行性评估,确定可行的解决方案。,为所推荐的方案草拟一份开发计划,列出所需的人员、各种资源,指出何时开始,何时结束,整个生命期的各阶段的成本等。最后要给出需求分析阶段的详细进度表和成本估计。,将上述可行性研究的结果写成相应的文档,即可行性研究报告与项目开发计划,并提请评审。

9、通过评审后,便可进入下一阶段的开发。,系统流程图是描述物理系统的传统工具,它的基本思想是用图形符号以黑盒子形式描绘组成系统的每个部件(程序、文档、数据库、人工过程等)。 所谓物理系统,就是一个具体实现的系统。在可行性研究中,可通过画出系统流程图来说明系统的大概处理流程、范围和功能等。系统流程图不仅能用于可行性研究阶段,还能用于需求分析阶段。 系统流程图表达的是信息在各个部件间的流动情况,而不是对信息进行加工处理的控制过程。应该与程序流程图加以区别。 画系统流程图时,首先要弄清楚业务流程及各处理元素,选择正确的符号来代表系统中的各个元素。所画的系统流程图要反映出系统的处理流程。,第二章 可行性研

10、究,3 系统流程图,1. 系统流程图的作用,第二章 可行性研究,人工 输入,人工输入数据(脱机处理)。,以上是一些示例,MS-WORD中已经提供了全部符号。,2. 系统流程图的符号,例子:某工厂有一个库房,存放该厂生产需要的物品,库房中的各种物品的数量及各种物品库存量临界值等数据记录在库存文件上,当库房中物品数量有变化时,应更新库存文件。若某种物品的库存量少于库存临界值,则报告采购部门以便其订货,每天向采购部门送一份采购报告。 系统要求用一台PC处理更新库存文件和产生订货报告。物品的发放和接受称为变更记录,由键盘录入到微机中。系统中的库存管理模块对变更记录进行处理,更新存储在磁盘上的库存文件,

11、并把订货信息记录到联机存储中。每天由报告生成模块读一次订货信息,并打印出订货报告。,第二章 可行性研究,3. 系统流程图的例子,依据上述描述画出的系统的系统流程图如下:,库存管理系统的系统流程图,第二章 可行性研究,输入变更记录,库存管理模块,库存数据文件,订货信息,报告生成程序,订货报表,注意,画复杂系统的系统流程图时,通常采用分层描述的方法。首先画高层的系统流程图描述系统概貌,表明系统的关键功能。然后在另外的纸上分别将每个关键功能扩展到适当的详细程度。这种分层描述的方法,结构清晰、便于阅读。,第二章 可行性研究,4 数据流图(Data Flow Diagram,DFD),数据流图(DFD)

12、是一种图形化技术,它描绘信息流和数据从输入移动到输出的过程中所经受的变换。在数据流图中,没有任何具体的物理部件,它只描绘数据在软件中流动和被处理的逻辑过程。 DFD是系统逻辑功能的图形表示,即使是非计算机专业的技术人员也容易理解它,因此它是分析员与用户之间极好的通信工具。此外,设计数据流图时只需考虑系统必须完成的基本逻辑功能,不需要考虑怎样具体地实现这些功能,所以它也是今后进行软件设计的很好的出发点。 DFD中有四种基本符号: 正方形(或立方体)表示数据的源点或终点(外部项); 圆角矩形(或圆形)代表变换数据的处理; 开口矩形(或两条平行横线)代表数据存储; 箭头表示数据流,即特定数据的流动方

13、向。,第二章 可行性研究,注意,数据流与程序流程图中用箭头表示的控制流有本质不同,千万不要混淆。在数据流图中应该描绘所有可能的数据流向,而不应该描绘出现某个数据流的条件。DFD中不应该出现控制信息。 处理并不一定是一个程序。一个处理框可以代表一系列程序、单个程序或者程序的一个模块,甚至可以代表某个人工处理过程。 一个数据存储也并不等同于一个文件,它可以表示一个文件、文件的一部分、数据库的元素或记录的一部分等。 数据存储和数据流都是数据,仅仅所处的状态不同。数据存储是处于静止状态的数据,数据流是处于运动中的数据。注意,并不是所有数据存储和数据流都能直接从问题描述中提取出来。 通常在DFD中忽略出

14、错处理,也不包括诸如打开或关闭文件之类的内务处理。DFD的基本要点是描绘“做什么”而不考虑“怎样做”。 画DFD时,有时也可以约定一些其它符号,用以区分数据流之间的相互关系。,第二章 可行性研究,典型的DFD例子,A商店业务处理系统的顶层数据流图,第二章 可行性研究,第二章 可行性研究,5 数据字典(Data Dictionary,DD),数据字典(DD)是关于数据信息的集合,即对DFD中所包含的所有元素的定义的集合。,一般而言,DD有以下四个元素的定义组成: 数据流 数据流分量,即数据元素 数据存储 处理(可能用IPO图或PDL语言描述更为方便)。,1. DD的内容构成,第二章 可行性研究,

15、DD的用途是作为分析阶段的工具。 DD中给出了每个数据元素的控制信息,它对分析数据对程序的影响很有帮助。 DD是开发数据库的第一步,而且是很有价值的一步。,2. DD的用途,数据流图和数据字典共同构成系统的逻辑模型。 没有数据字典数据流图就不严格,然而没有数据流图数据字典也难于发挥作用。只有数据流图和对数据流图中每个元素的精确定义放在一起,才能共同构成系统的规格说明。,第二章 可行性研究,3. DD的实际例子(注意数据息的来龙去脉),名字:订货报表 别名:订货信息 描述:每天一次送给采购员的需要订货的零件表。 定义:订货报表=零件编号 + 零件名称 + 定货数量 + 目前价格 + 主要供应商

16、+ 次要供应商。 位置:输出到打印机。,书上例子课后仔细阅读,关于DFD和DD的详细内容,在后面的章节中再做详细说明。,成本/效益分析的目的是从经济角度出发,评价开发一个新系统是否可行。成本/效益分析首先是估算将要开发的系统的开发成本,并与可能取得效益进行比较和权衡。效益分有形效益和无形效益两种。有形效益可以用货币的时间价值、投资回收期和纯收入等指标进行度量;无形效益主要从性质上、心理上进行衡量,很难直接进行定量度量。 系统的经济效益 = 因使用新的系统而增加的收入 + 使用新的系统可以节省的运行费用 运行费用包括操作人员数、工作时间和消耗的物资等。 分析成本与效益,其目的是为了帮助用户预见到系统带来的好处,激励用户全力支持系统的开发。,第二章 可行性研究

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论