-
- 素材大小:
- 1.44 MB
- 素材授权:
- 免费下载
- 素材格式:
- .ppt
- 素材上传:
- ppt
- 上传时间:
- 2018-05-10
- 素材编号:
- 110131
- 素材类别:
- 学校PPT
-
素材预览
这是一个关于软件工程导论ppt课件,主要介绍2.1 可行性研究的任务、可行性研究过程、系统流程图、数据流图。第2章 可行性研究 2.1 可行性研究的任务 2.2 可行性研究过程 2.3 系统流程图 2.4 数据流图 2.5 数据字典 2.6 成本/效益分析 2.7 小结习题 2.1 可行性研究的任务 可行性研究的目的不是解决问题,而是确定问题是否值得去解决。 Why to do? 从四方面研究每种解法的可行性:技术可行性:使用现有的技术能实现这 个系统吗? (2) 经济可行性:这个系统的经济效益能超过它的开发成本吗? (3) 操作可行性:系统的操作方式在这个用 户组织内行得通吗? (4)法律、社会效益可行性。2.2 可行性研究过程 1. 复查系统规模和目标 对问题定义阶段书写的关于规模和目标的报告书进一步确认。2. 研究目前正在使用的系统 发现旧系统中存在的问题。4. 进一步定义问题 5. 导出和评价供选择的解法 6. 推荐行动方针7. 草拟开发计划,欢迎点击下载软件工程导论ppt课件哦。
软件工程导论ppt课件是由红软PPT免费下载网推荐的一款学校PPT类型的PowerPoint.
第2章 可行性研究 2.1 可行性研究的任务 2.2 可行性研究过程 2.3 系统流程图 2.4 数据流图 2.5 数据字典 2.6 成本/效益分析 2.7 小结习题 2.1 可行性研究的任务 可行性研究的目的不是解决问题,而是确定问题是否值得去解决。 Why to do? 从四方面研究每种解法的可行性:技术可行性:使用现有的技术能实现这 个系统吗? (2) 经济可行性:这个系统的经济效益能超 过它的开发成本吗? (3) 操作可行性:系统的操作方式在这个用 户组织内行得通吗? (4)法律、社会效益可行性。 2.2 可行性研究过程 1. 复查系统规模和目标 对问题定义阶段书写的关于规模和目标的报告书进一步确认。 2. 研究目前正在使用的系统 发现旧系统中存在的问题。 4. 进一步定义问题 5. 导出和评价供选择的解法 6. 推荐行动方针 7. 草拟开发计划 8. 书写文档提交审查 2.3 系统流程图系统流程图:是概括地描绘物理系统的传统工具。基本思想:用图形符号以黑盒子形式描绘组成系统的每个部件(程序,文档,数据库,人工过程等)。 系统流程图表达的是数据在系统各部件之间流动的情况,而不是对数据进行加工处理的控制过程,是物理数据流图而不是程序流程图。 2.3.1 系统流程图常用符号 2.3.2 例子例1:某装配厂有一座存放零件的仓库,仓库中现有的各种零件的数量以及每种零件的库存量临界值等数据记录在库存清单主文件中。当仓库中零件数量有变化时,应该及时修改库存清单主文件,如果哪种零件的库存量少于它的库存量临界值,则应该报告给采购部门以便定货,规定每天向采购部门送一次定货报告。该装配厂使用一台小型计算机处理更新库存清单主文件和产生定货报告的任务。零件库存量的每一次变化称为一个事务,由放在仓库中的CRT终端输入到计算机中;系统中的库存清单程序对事务进行处理,更新存储在磁盘上的库存清单主文件,并且把必要的定货信息写在磁带上。最后,每天由报告生成程序读一次磁带,并且打印出定货报告。 图2.3 库存清单系统的系统流程图 2.3.3 分层复杂的系统:分层次地描绘这个系统。 首先用一张高层次的系统流程图描绘系统总体概貌,表明系统的关键功能。然后分别把每个关键功能扩展到适当的详细程度,画在单独的一页纸上。 2.4 数据流图(DFD,Data Flow Diagram) 数据流图(DFD):是一种图形化技术,它描绘信息流和数据从输入移动到输出的过程中所经受的变换。 数据流图是系统逻辑功能的图形表示,即使不是专业的计算机技术人员也容易理解它,因此是分析员与用户之间极好的通信工具。 2.4.1 数据流图的常用符号 : 2.4.2 例子一家工厂的采购部每天需要一张定货报表,报表按零件编号排序,表中列出所有需要再次定货的零件。对于每个需要再次定货的零件应该列出下述数据:零件编号,零件名称,定货数量,目前价格,主要供应者,次要供应者。零件入库或出库称为事务,通过放在仓库中的CRT终端把事务报告给定货系统。当某种零件的库存数量少于库存量临界值时应该再次定货。 图2.5 定货系统的基本系统模型 图2.6 定货系统的功能级数据流图 图2.7 把处理事务的功能进一步分解后的数据流图 数据流图的层次 对于大型软件系统,用一张数据流图表示所有数据流、加工和数据存储过于庞大、复杂,难于理解,分层数据流图可以有效解决复杂性的问题。 顶层DFD(也称关联图)描述整个系统的作用范围。高层数据流和数据过程通常分解成许多中间层,一个中间层DFD又可以分解为若干个低层DFD。分解到足够简单可以实现时,便可以停止。 2.4.3 命名 1. 为数据流(或数据存储)命名 (1) 名字应代表整个数据流(或数据存储)的内容,而不是仅仅反映它的某些成分。 (2) 不要使用空洞的、缺乏具体含义的名字(如“数据”、“信息”、“输入”之类)。 (3) 如果在为某个数据流(或数据存储)起名字时遇到了困难,则很可能是因为对数据流图分解不恰当造成的,应该试试重新分解,看是否能克服这个困难。 图2.7 把处理事务的功能进一步分解后的数据流图 2. 为处理命名 (1) 通常先为数据流命名,然后再为与之相关联的处理命名。这样命名比较容易,而且体现了人类习惯的“由表及里”的思考过程。 (2) 名字应该反映整个处理的功能,而不是它的一部分功能。 (3) 名字最好由一个具体的及物动词加上一个具体的宾语组成。应该尽量避免使用“加工”、“处理”等空洞笼统的动词作名字。 (4) 通常名字中仅包括一个动词,如果必须用两个动词才能描述整个处理的功能,则把这个处理再分解成两个处理可能更恰当些。 (5) 如果在为某个处理命名时遇到困难,则很可能是发现了分解不当的迹象,应考虑重新分解。 数据源点/终点命名时采用它们在问题域中习惯使用的名字(如“采购员”、“仓库管理员”等)。 2.4.4 画数据流图的用途一、基本目的是利用它作为交流信息的工具。 二、另一个主要用途是作为分析和设计的工具。 2.5 数据字典(DD,DataDictionary) 数据字典是关于数据的信息的集合,也就是对数据流图中包含的所有元素的定义的集合。 数据流图和数据字典共同构成系统的逻辑模型,没有数据字典数据流图就不严格,没有数据流图数据字典也难于发挥作用。数据流图的基本元素 : 举例:数据流词条描述 数据流名: 说明:简要介绍作用 数据流来源:来自何方 数据流去向:去向何方 数据流组成:数据结构 每个数据量流通量:数据流词条描述举例数据流名:购书单说明: 学生购书时填写的项目来源: 学生去向: 加工1“审查并开发票” 组成: (学号)+姓名+{书号+数量}数据量:1000次/周 高峰值:开学期间1000次/天 数据文件词条描述数据文件名: 简述:存放的是什么数据 输入数据: 输出数据: 数据文件组成:数据结构 存储方式:顺序,直接,关键码 存取频率:数据文件词条描述举例数据文件名:教材存量表简述:存放所有教材的信息 输入数据:教材的购销信息 输出数据:存放的教材信息组成:教材名称+编号+出版社 +单价+存量存储方式:索引文件,以教材编号为关键字存取频率:要求随时能够立即查询数据元素词条描述 数据元素名: 类型: 长度: 取值范围: 相关数据元素及数据结构:数据元素词条描述举例加工逻辑词条描述加工名:加工编号:反映该加工的层次简要描述:加工逻辑及功能简述输入数据:输出数据:加工逻辑:简述加工程序,加工顺序加工逻辑词条描述举例 加工逻辑名:审查并开发票 编号:1.0 简要描述:审核购书单是否有效,有效则开 发票 输入数据:购书单中教材信息 输出数据:发票 加工逻辑: {1.1 输入购书单中教材信息 + 1.2 核对教材存量表 + 1.3 添写发票} 源点及汇点词条描述名称:外部实体名简要描述:什么外部实体有关数据流:数目: 源点及汇点词条描述举例名称:学生 简要描述:向系统发出购书单和从系 统接受领书单的人 有关数据流:购书单,领书单 数目: 800人 数据结构的描述 在数据流图中,数据流和数据文件都具有一定的数据结构。因此必须以一种清晰、准确、无二义性的方式来描述数据结构。 描述数据结构的方式:定义式定义式中使用的符号限制重复次数: m{...}n 数据结构描述F1: 航班信息文件={航空公司名称+航班号+起点+终点+日期 +起飞时间+降落时间} 航空公司名称=2{字母}4 字母=“A”..“Z” 航班号=3{十进制数字}3 十进制数字=“0”..“9” 起点=终点=1{汉字}10 起飞时间=降落时间=时+分 时=“00”..“23” 分=“00”..“59” 日期=年+月+日 年=“0001”..“9999” ? 月=“01”..“12” 日=“01”..“31” 重复项:航空公司名称=2{字母}4 航班号=3{十进制数字}3 起点=终点=1{汉字}10 组合项:日期=年+月+日 起飞时间=降落时间=时+分原数据项:字母=“A”..“Z” 十进制数字=“0”..“9” 时=“00”..“23” 分=“00”..“59” 年=“0001”..“9999” 月=“01”..“12” 日=“01”..“31” 数据结构描述F2: 存折=户名+所号+帐号+开户日期+性质 +(印密)+1{存取行}50 户名=2{字母}24 所号=“001”..“999” (注:储蓄所编码,规定三位数字) 帐号=“00000001”..“99999999” (注:帐号规定由八位数字组成) 开户日期=年+月+日性质=“1”..“6” (注:“1”表示普通户,“5”表示工资户等) 印密=“0”(注:印密在存折上不显示) 存取行=日期+(摘要)+支出+存入+余额 +操作+复核数据结构描述 日期=年+月+日 年=“0001”..“9999” ? 月=“01”..“12” 日=“01”..“31” 摘要=1{字母}4 (注:表明该存取是存?是取? 是换?是工资?还是税?) 支出=金额 (注:金额规定不超过9999999.99元) 存入=金额 余额=金额 金额=“0000000.01”..“9999999.99” 操作=“00001”..“99999” 复核=“00001”..“99999” 字母=[“a”..“z”|“A”..“Z”] 2.6 成本/效益分析 进行开发成本的估算及可能取得效益的评估,确定待开发系统是否值得投资开发。 2.6.1 成本估计软件开发成本主要表现为人力消耗。开发费用=人力消耗*平均工资。 3种估算技术: 1、代码行技术 2、任务分解技术 3、自动估计成本技术 2. 任务分解技术 表2.2 典型环境下各个开发阶段需要使用的人力的百分比 3. 自动估计成本技术 采用自动估计成本的软件工具可以减轻人的劳动,并且使得估计的结果更客观。 注:必须有长期搜集的大量历史数据为基础,并且需要有良好的数据库系统支持。 2.6.2 成本/效益分析的方法 1、货币的时间价值: 通常用利率表示货币的时间价值。设年利率为 i,现已存入 P 元,则 n 年后可得钱数为: F=P(1+i)n 反之,如果几年后能收入F元,那么这些钱现在的价值为: 例1、修改一个已有的库存清单系统,使它能在每天送给采购员一份定货报表。软件成本为5000元;系统修改后能及时定货而避免零件短缺问题,估计每年可以节省2500元,五年共可节省12500(设软件生命周期为五年)。需要把 5 年内每年预计节省的钱折合成现在的价值才能进行比较。 2、投资回收期:使累计的经济效益等于最初的投资所需要的时间。 例2.求例1中的投资回收期。 从表中可见,两年后累计节省4225.12元,比最新投资的5000元还差774.88元。第三年节省了1779.45元, =0.44 因此,投资回收期为2.44年。投资回收期越短,越快获得利润。 3、纯收入:在整个生存期之内系统的累计经济效益(折合成现在值)与投资之差。 例3、例1所述工程的纯收入为 9011.94-5000=4011.94(元) 。 4、投资回收率:衡量投资效益的大小。设现在投资为P(元),第i 年年底的效益为Fi元(i=1,2…,n)。系统的使用寿命为n(一般设n=5),投资回收率为j,则有 P=F1/(1+j)+F2/(1+j)2+……+Fn/(1+j)n 例4.例1中工程的投资回收率的计算 可求得 j=0.41 因此,例1中工程的投资回收率为41%。 【例1、基于计算机系统开发的成本如下表:】 分析员可以估算每一项的成本,然后用开发费用和运行费用来确定投资的偿还、损益两平点和投资回收期。 【例2、系统开发和每年运行费用:】 1.系统开发费用(一次) 人员: .2名系统分析员(450小时/名,45美元/小时) $40,500 .5名系统开发人员(275小时/名,36美元/小时) $49,500 .1名数据通讯专家(60小时/名,42美元/小时) $2,520 .1名数据库管理员(30小时/名,42美元/小时) $1,260 .2名技术写作者(120小时/名,25美元/小时) $6,000 .1名秘书(160小时/名,15美元/小时) $2,400 .2名在转换期间数据输入人员 $960 (40小时/名,12美元/小时) 培训:三天的开发人员内部培训课程 $7,000 30个用户,三天的内部培训课程 $10,000 物资:复印 $500 磁盘、纸张等消耗品 $650 购买硬件、软件: 20台工作站Windows软件 $1,000 20台工作站内存升级 $8,000 网络软件 $17,500 20台工作站办公软件产品 $20,000 ------------------------------------------------------- 系统开发总费用 $167,790 2.年运行费用(每年)人员:维护程序员/分析员(250小时/年,42美元/小时) $10,500 网络管理员(300小时/年,50美元/小时) $15,000 购买硬件、软件升级:硬件 $5,000 软件 $6,000 物资和杂项: $3,500 -------------------------------------------------- 每年总运行费用 $40,000 § 可行性研究报告 附录:478(《实用软件工程》郑人杰等人编) 1 引言 1.1 编写目的 1.2 背景 1.3 定义 1.4 参考资料可行性研究报告可行性研究报告可行性研究报告可行性研究报告可行性研究报告可行性研究报告 § 项目开发计划 附录:480(《实用软件工程》郑人杰等人编) 2.7 小结习题 2-1 在软件开发的早期阶段为什么要进行可行性研究?应该从哪些方面研究目标系统的可行性? 2-2 为方便储户,某银行拟开发计算机储蓄系统。储户填写的存款单或取款单由业务员键入系统,如果是存款,系统记录存款人姓名、住址、存款类型、存款日期、利率等信息,并印出存款单给储户;如果是取款,系统计算利息并印出利息清单给储户。请写出问题定义并分析此系统的可行性。 2-3 为方便旅客,某航空公司拟开发一个机票预订系统。旅行社把预订机票的旅客信息(姓名、性别、工作单位、身份证号码、旅行时间、旅行目的地等)输入进该系统,系统为旅客安排航班,印出取票通知和账单,旅客在飞机起飞的前一天凭取票通知和账单交款取票,系统校对无误即印出机票给旅客。请写出问题定义并分析此系统的可行性。 2-4 目前住院病人主要由护士护理,这样做不仅需要大量护士,而且由于不能随时观察危重病人的病情变化,还会延误抢救时机。某医院打算开发一个以计算机为中心的患者监护系统,请写出问题定义,并且分析开发这个系统的可行性。 医院对患者监护系统的基本要求是随时接收每个病人的生理信号(脉搏、体温、血压、心电图等),定时记录病人情况以形成患者日志,当某个病人的生理信号超出医生规定的安全范围时向值班护士发出警告信息,此外,护士在需要时还可以要求系统印出某个指定病人的病情报告。 2-5 北京某高校可用的电话号码有以下几类:校内电话号码由4位数字组成,第1位数字不是0;校外电话又分为本市电话和外地电话两类,拨校外电话需先拨0,若是本市电话则再接着拨8位数字(第1位不是0),若是外地电话则拨3位区码再拨8位电话号码(第1位不是0)。请用2.5.2小节讲述的定义数据的方法,定义上述的电话号码。 状态 就绪:等待分配CPU 运行:正在CPU上做处理 等待:放弃CPU 事件 t1-因I/O等事件发生而要求中断 t2-中断事件已处理 t3-分配CPU t4-已用完分配的CPU时间 加工逻辑说明对数据流图的每一个基本加工,必须有一个加工逻辑说明;加工逻辑说明必须描述基本加工如何把输入数据流变换为输出数据流的加工规则;加工逻辑说明必须描述实现加工的策略而不是实现加工的细节。用于写加工逻辑说明的工具: 结构化语言/结构化英语(PDL) 判定表 判定树加工逻辑词条描述及加工逻辑说明举例处理名:核实订票处理(MHGP3200MD) 编号: 3.2 激活条件:收到订票信息处理逻辑:1读订票旅客信息文件 2搜索此文件中是否有与输入信息 中姓名及身份证号相符的项 IF 有 THEN 判断其余项是否与文件中信 息相符 IF 是 THEN 输出已订票信息 ELSE 输出未订票信息 ELSE 输出未订票信息执行频率: 实时 处理名:计算折扣率(MHGP534MD) 编号: 5.3.4 激活条件:收到预订票信息处理逻辑:计算折扣率 执行频率: 实时
软件工程基础ppt:这是软件工程基础ppt,包括了软件需求分析与定义,可行性研究,可行性研究工作步骤,软件设计,软件测试,软件维护,软件维护的分类,软件过程管理,类图等内容,欢迎点击下载。
实用软件工程ppt:这是实用软件工程ppt,包括了软件工程概述,软件工程的概念,发展历程,软件工程的生命周期,建模的目的等内容,欢迎点击下载。
软件工程类答辩ppt:这是软件工程类答辩ppt,包括了系统介绍,研究背景,需求分析,系统设计,系统实现,总结,致谢等内容,欢迎点击下载。