软件工程实践SoftwareEngineeringPractice课件.ppt
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《软件工程实践SoftwareEngineeringPractice课件.ppt》由用户(ziliao2023)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 软件工程 实践 SoftwareEngineeringPractice 课件
- 资源描述:
-
1、1第第3 3章章 传统的软件工程传统的软件工程可行性研究与项可行性研究与项目开发计划目开发计划需求分析需求分析软件设计软件设计软件编程软件编程软件测试软件测试软件维护软件维护 项目开发计划可行性研究的概念与必要性可行性研究的主要内容可行性研究的步骤可行性研究的评价原则可行性研究报告实例2给出初步的项目开发总体设想:目标 内容 资源计划 实施计划 验收计划3它是运用多学科的知识,寻求使开发的软件达到最佳经济效果的综合研究方法。它的核心是经济问题。研究项目能不能做,值不值得做,成功的把握有多大。实际上就是风险分析。由此可以理解为什么要进行可行性研究了。4可行性研究的内容涉及到社会、政治、经济、法律
2、、和多方面的专业技术知识,概括地说分为环境、技术和经济三个方面。5(1)形势的急迫性问题(2)管理水平问题(3)系统方案是否与现实环境相吻合(4)人员配备、培训 6 在划分系统与环境边界时应注意以下几点:1.研究分析问题(未来的系统)的重要部分应作为系统的要素;Profit、Tax 2.对系统分析问题有重大影响的部分也应看作系统的要素;Inventory、Account 3.对研究分析问题有关联但却无重大影响而又不可忽略的非重要部分,可视为系统的环境;Customer 4.对系统影响甚微的部分,可从环境中略去,便于简化研究。Kit7 要对系统进行全面整体的调查分析,大体可以从两个方面着手进行:
3、对系统的外界环境进行调查分析,即系统的目的调查分析;a 输出调查分析 Tax、Bill、SO、PO、Invoiceb 输入调查分析 Capital、Vendor、Device对系统的内部进行调查分析,即系统的方案调查分析。a 对系统实施方案的可行性分析 Excel、NWb 各实施方案的经济效益分析 Efficiency、Margin 8调查分析关系图 输入 系统转换机构 输出系统外界环境调查系统外界环境调查分析(目的调查分析)分析(目的调查分析)系统内部调查分析系统内部调查分析(方案调查分析)(方案调查分析)环境对系统的需求分析环境对系统的需求分析(系统的输出调查分析)(系统的输出调查分析)对
4、系统的限制性调查分析对系统的限制性调查分析(系统的输入调查分析)(系统的输入调查分析)系统实施方案可系统实施方案可行性调查分析行性调查分析 实施方案的成本效益分析实施方案的成本效益分析(对输出)(对输出)(对输入)(对输入)(转换机构)(转换机构)(输入输出比较)(输入输出比较)系统系统全面全面调查调查分析分析9调查原则 1.制定调查计划和调查培训 2.调查顺序:严格按照系统化原则进行 3.如实记录调查情况,弄清部门和工作环节存在的道理再分析有无改进的可能性 4.采用规范化的工作方法 5.全面铺开与重点调查结合 6.调查态度和方式 7.调查与分析整理相结合 8.了解业务与收集数据同时进行 10
5、1.系统的界限和运行状况 History、range2.系统的外部环境 Contact with outside people3.组织机构4.人员及构成5.系统的业务流程 SO、PO、Receiving、Sale、Payment6.系统的信息流程 Collect、Analyze、Save、Process、Output7.系统的资源状况8.系统的约束条件9.系统的薄弱环节10.系统研制工作的资源状况11.各个方面对现行系统和新系统研制的态度12.其他需要调查的相关问题11 1.根据新目标确定调查目标、拟定调查项目 2.确定调查对象和方法 3.制定调查计划步骤、人员、分工、时间、进度、费用 4.调
6、查的组织准备 a.对调查人员进行培训 b.确定询问项目或调查表 c.确定抽样设计 d.安排好各项具体工作 5.实施调查 6.分析、整理资料 7.写出调查报告 报告基本内容:引言、正文、结论、附件12个人访问法(1)通常大多数人都宁愿说而不愿写,所以回答率比别的方式要高;(2)有助于深入了解情况,不清楚的地方可以再提出问题;(3)可以直接观察到被调查者的反应,这是书面调查所不能做到的;(4)可以相互启发;收集到事先不曾预料到的问题与情况。(1)调查的成本高,费用大;(2)所得到的资料受调查人的主观偏见的影响很大,本应实事求是。13 (1)可以向相隔较远的被调查者进行调查,调查的成本低;(2)被调
7、查者有充分的时间考虑问题;(3)被调查者还可能反映家庭成员、同事、同学的意见。答复率低,西方国家一般仅 15。14(1)收集资料快;(2)调查成本低;(3)有现成的电话本,有利于分类。(1)只限于简单的问题,只能了解被调查者的态度或反应,但不能作深入的交谈;(2)被调查人的年龄、收入、身份、家庭情况等都无法知道,如果你在电话里问此类问题,很可能被拒绝回答就挂断电话;(3)照片图像无法利用。15 这种方法适宜于基层的管理者。通过开调查会,了解基层管理者的业务范围、工作方式、业务的内外关系等。这种方法是调查中常用的方法之一,调查人员目的明确,适当地启发和引导,调查会才能有收获。这是为搞清某种较复杂
8、业务活动的现状而采取的方法,最易沟通,同时调查结果最准确、最可靠、最符合实际、还可减少后面与用户打交道的时间。但是费时。将上面诸方法混合起来加以综合利用。162.技术可行性研究主要内容:(1)开发冒险性(2)现有资源的可用性(3)软件确定的开发技术(4)软、硬件用户的服务功能17 现有资源的可用性从三方面去考虑:人力资源硬件资源软件资源 A.支撑软件 在开发阶段中起辅助作用,如各类工具等。B.实用软件尽可能利用已开发好的并且有实用价值的现有软件;最好不用有风险的现成软件。18操作系统是否选择适当;实用程序是否选择适当;数据库管理系统是否选择适当;高级编程的语言是否选择适当;汉字处理软件、应用软
9、件包是否选择适当。193.经济可行性研究主要从两方面分析:费用、效益估计 费用估计是对软件开发、运行整个过程的总的费用进行估计,它包括以下各阶段:a.调查分析和设计阶段;b.实施阶段;c.运行阶段。日常性费用 一次性投资20 一般投资费用有以下开支:a.计算机机房费用b.计算机及其外围设备的购置费用 c系统和程序的开发费用 d软件调试和安装费用 e培训费 f资料费 g人员工资 h消耗品费用 i.技术服务性费用 21 经济效益估计可分为:直接经济效益可直接用数字描述。间接经济效益难以用数字直接表示出来的效益,也称社会效益。如:解放劳动力、提高信誉和知名度、队伍得到锻炼等。22 按照需求分析的原理
10、,要做好可行性研究,必须按一定的工作程序进行。1.确定目标:希望达到的某种结果。A.基本目标 B.期望目标 C.考核指标 2.业务调查:对现行业务和市场调查。3.列出可能的技术方案 4.技术先进性分析 5.经济效益分析 6.综合评价 7.优选可取方案并写出可行性研究报告23 效益性原则 经济性原则 可靠性原则 可比性原则 满足需要可比 消耗费用可比 价格可比 时间可比24 可行性研究报告的一般格式:(1)概要概要说明软件的名称、目标和功能。(2)背景软件开发的组织单位、软件的服务对象及本软件系统和其它系统或机构的关系与联系。(3)参考和引用的资料说明本软件的经核准的文件、合同及与本软件系统有关
11、的文件、资料等。(4)专门术语的定义本报告所使用到的专门术语的定义。25 现行业务分析摘要 需求调查和分析 需求预测 提出一个主要方案和若干个辅助方案,其内容包括:软件的目标 软件的开发规模和初步设计方案 软件开发的实施计划 投资方案 人员培训及补充方案 其他26 技术上的可行性 经济上的可行性 运行上的可行性 对所有的候选方案从技术、经济和运行三个方面进行比较研究。论述可以按某方案立即开始建设,或条件成熟后再按某方案建设,或不可行必须停止。27学生成绩管理信息系统调查实例(1)学校概况,学校组织机构,学生人数,学生班级数,教职工人数;(2)资源条件调查,包括计算机配备,网络支持条件等;(3)
12、学生成绩管理各有关单位(教务处、学生处、各个系部等)的系统概况,工作业务流程;(4)考试及考查课的门数;(5)需要查询和统计学生成绩的部门、单位和个人;(6)学生成绩单及学生成绩统计表的格式,希望改进后的格式;(7)部门、单位、教师、学生对系统的要求和希望。28目标与作用内容与原理结构化系统分析的过程功能树数据流程图DFDIDEF方法数据流程图DFDIDEF方法数据字典DD需求分析实例软件需求规格说明书编写 29 需求分析(Requirement)是指用户要求软件系统必须满足的所有。开发人员与用户双方一起充分理解用户的要求,明确地表达成一份书面资料软件需求规格说明书。简单地说就是分析用户和市场
13、的需要和要求,。它的过程是沟通的过程,理解和解释的过程。系统分析员是连接用户与开发人员(系统设计员/程序员)之间的桥梁 系统系统分析员分析员 系统设计员系统设计员程序员程序员 用户用户 30 确定目标;软件的总体结构描述;子系统功能描述;子系统数据分析:编制DFD、数据字典;数据输入输出描述;确定技术性能指标,包括可靠性、安全保密性、适用性、可维护性和可移植性;优化业务处理流程和数据流程,定义经济数学算法和模型,产生子系统模块功能表、数据流程图、IPO、数据字典等系统方法文档;确定计算机系统配置,计算机网络技术方案;制定初步的系统测试计划。31需求分析逻辑设计业务调查:是主要工作内容,是基础和
14、关键。最好方法:收集一套完整的带有实际数据的报表,然后搞清表与表、数据与数据之间的关系。32 (SA)是一种面向过程的方法,它将业务分解为过程、输入、输出和文件,为业务问题建立了一种面向输入处理过程输出的模型。新模型是由数据流程图(DFD)组成,也称。33 建立面向用户的观点,用户自始至终要参与系统的开发。加强调查研究和需求分析。逻辑数据和物理数据分开进行设计。层次分解。采用图形化建模工具。结构化系统分析的结构化系统分析的34第一步,理解现行系统 构造现行系统的物理模型;由物理模型导出其逻辑模型。第二步,识别用户需求 记录用户的业务处理需求(逻辑需求);记录用户的物理需求。第三步,新系统说明
15、利用现行系统的逻辑模型和本质需求(逻辑需求)建立新系统的逻辑模型;利用新系统的逻辑模型和用户的物理需求导出新系统的物理模型。35需求分析被认为是一项困难的工作,这是因为:(1)分析问题的边界和结构不明确,且具有很大的不确定性。(2)由于系统分析员具有不同的知识背景、经验以及爱好,造成对同一个软件系统所提出的解决方案的不一致。(3)问题域是动态的,没有一成不变的业务环境,永远不变的事情是变化。同样,用户需求也在不断变化。(4)软件开发需要相互协作,由开发小组和用户共同来完成,所以这些人员之间的沟通问题需要解决。(5)系统分析员在问题域方面的知识越丰富,越有利于其提高需求分析的技巧和水平。(6)需
16、求分析是一个认知的过程,在该过程中,需要系统分析员刻画抽象系统的结构;处理来自不同用户的各种信息;建立一个逻辑的而且是一致的规格说明书。需求分析面临的主要问题需求分析面临的主要问题36 用一个树型结构表示系统的功能,叫功能树。调查清楚现有系统的状况和存在问题,才能确定新系统的目标和功能。目标要和用户部门的领导反复磋商后才能确定,而功能一般由功能树表示。功能树实际是子系统以及子系统下功能的划分方法,它与业务子系统的功能不一样,是从系统角度来划分的。如图表示某大学的管理信息系统功能树。37学生成绩管理系统成绩输入 成绩处理成绩使用建立删除修改分类排序统计查询奖惩留级毕业存档成绩通知 分析某大学某大
17、学MIS功能树功能树图示图示38 数据流程图DFD(Data Flow Diagram)是描述逻辑模型的主要工具,它将数据独立抽象出来,通过图形方式描述信息的来龙去脉和实际流程,它是描述软件数据流程的工具。很简单,仅有四种。39(1)外部实体 (2)数据流 顾客顾客订货合同订货合同 (3)处理)处理 (4)存储(数据库)存储(数据库)3.5库存库存管理管理D2产品产品 40(1)由外向内,先外部后内部,先粗后细;(2)由顶向下,先父图后子图;(3)由左向右,从输入到处理到输出;(4)由主到次,先处理一般情况,再处理特例、出错等特殊情况;(5)合理命名,唯一标识,反映层次,例如P5表示第5个子系
18、统的处理逻辑;P3.5表示第一层第3个处理中对应的第二层第5个处理逻辑;(6)父子图平衡(一致),下面将详细介绍;(7)以层次不超过4,每层处理不超过7为宜,最终画到功能模块处理逻辑和数据库设计;(8)尽量避免数据流的线条交叉。数据流程图的绘制方法数据流程图的绘制方法41上一节讲到的第6条规则非常重要,下面举例说明父图与子图平衡的含义:顶层图即0层图说明信息处理系统 P 有两个外部输入信息a和b,一个外部输出信息e。PabeDFDDFD的的0 0层图例层图例42 1层图说明信息处理系统 P 有3个子系统P1、P2、P3,从P1、P2 到 P3分别有内部信息c与d。1层图是0层图的子图,必须与其
19、父图平衡:即输入到P1、P2的外部信息有a和b,P3输出为e,表明0层到1层是一致的。P1P2P3cdeDFDDFD的的1 1层图例层图例ab43 2层图分别展开1层图中的P1、P2、P3,故有3张图,均是1层图的子图。以下是DFD的2层图例(1层图的3张子图):chfaP1.2P1.3P2.1P2.2P1.1(a)gbkd(b)(c)P3.4P3.1P3.2P3.3edclmnpq44 第3层DFD图将有9张,分别展开处理逻辑Pl.1,Pl.2,Pl.3,P2.1,P2.2,P3.1,P3.2,P3.3,P3.4,例如画其中一张P2.1的子图。P2.1.1P2.1.4P2.1.3P2.1.2
20、bxyzuk第第3层的层的DFD图(对应图(对应2 2层图层图b的一张子图)的一张子图)45IDEF(ICAM Definition)基本符号业务活动业务活动 输入输入控制控制机制机制输出输出(限制、制约活动的数据)(使活动进行作业,采取行动的手段,或活动的执行者,或需要的资源)46业务活动的结合示意图 业务活动业务活动 业务活动业务活动 业务活动业务活动 1234567471.根据如下要求完成学生信息管理系统的数据流程图0层与1层的绘制。录入(学生信息由学生处输入)编辑(增、删、改)查询(查询者)统计(管理者)查询表输出内容为:学号 姓名 专业 班级年级学生信息统计表输出内容为:班级 专业
21、人数练习练习482.试根据如下要求完成学生课程信息管理系统的数据流程图试根据如下要求完成学生课程信息管理系统的数据流程图0层与层与1层的绘制。层的绘制。l 录入(学生信息由学生处输入,课程安排由教务处录入)录入(学生信息由学生处输入,课程安排由教务处录入)l 编辑(增、删、改)编辑(增、删、改)l 查询(查询者)查询(查询者)l 统计(管理者)统计(管理者)查询表输出格式为:查询表输出格式为:学号学号姓名姓名专业专业班级班级年级学生信息统计表输出格式为:年级学生信息统计表输出格式为:班级班级专业专业课程课程1课程课程2课程课程7493.试根据如下要求完成学生成绩管理信息系统的数据流程图试根据如
22、下要求完成学生成绩管理信息系统的数据流程图0层层与与1层的绘制。层的绘制。l 录入(学生信息由学生处输入,课程安排由教务处录入,录入(学生信息由学生处输入,课程安排由教务处录入,各科成绩由任课教师录入)各科成绩由任课教师录入)l 编辑(增、删、改)编辑(增、删、改)l 查询(查询者)查询(查询者)l 统计(管理者)统计(管理者)查询表输出内容查询表输出内容1为:为:学号学号姓名姓名专业专业班级班级查询表输出内容查询表输出内容2为:为:学号学号 姓名姓名 各科成绩各科成绩 总成绩总成绩某专业学生成绩统计表输出内容为:某专业学生成绩统计表输出内容为:班级班级各科成绩各科成绩 总成绩总成绩50(Da
23、ta Dictionary)是在数据流程图的基础上,进一步定义和描述数据流处理过程,外部实体及数据存储(数据库)的详细逻辑内容的工具。数据流程图加上数据字典就是一套完整的逻辑设计。(1)数据流的名称,由哪些数据项组成(数据项是数据的最小组成单位,不可再分),数据流的来源与去处,流通量(产生频率:多长时间传送多少次)及高峰流通量。(2)数据存储(数据库)的名称与结构,流入与流出的数据流名称;(3)处理逻辑的名称、编号、主要功能,流入与流出的数据流名称;(4)数据项的名称、编号、类型、长度、取值范围。51数据字典数据字典 设计数据库设计数据库 编写数据字典编写数据字典 设计数据库设计数据库 维护维
24、护数据库数据库 简化实用的数据字典简化实用的数据字典(数据字典作用的变化)(数据字典作用的变化)实用的数据字典实用的数据字典52学生成绩管理信息系统我们建立的管理信息系统要求实现如下功能:学生成绩录入;学生成绩增删改;学生成绩查询;学生成绩统计分析。输出格式1:学生成绩查询表学号学号姓名姓名课程课程成绩成绩 53 输出格式2:学生成绩统计表 班级班级1 班级班级2 班级班级3课课程程名名人人数数90以上以上%及及格格人人数数90以上以上%及及格格人人数数90以上以上%及及格格课程课程1课程课程2课程课程5课程课程4课程课程354学生成绩管理信息系统业务流程图 教务处教务处 教务处教务处 教师教
25、师 输入计算机输入计算机 输出输出学学生生课课程程成绩成绩55(3)画出数据流程图 学生成绩管理信息系统0层数据流程图 学籍学籍管理管理部门部门教师教师教务处教务处学生学生教师教师 学学生生成成绩绩管管理理信信息息系系统统 学生信息学生信息a学生成绩学生成绩c 查询查询e统计分析统计分析f56学生成绩信息系统1层数据流程图 管理管理部门部门 教务处教务处 教师教师 查询者查询者 管理者管理者 1.0学生管理学生管理 2.0课程管理课程管理 3.0成绩管理成绩管理 4.0统计分析统计分析 D1D2D3学生学生课程课程成绩成绩57一.引言编写目的背景说明术语定义参考资料二.任务概述目标用户的特点假
展开阅读全文