第2章软件工程课件.ppt
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《第2章软件工程课件.ppt》由用户(ziliao2023)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 软件工程 课件
- 资源描述:
-
1、第第2章章 软件计划软件计划主讲人主讲人:王琳娟王琳娟回忆回忆n瀑布模型把软件生命周期分为哪几个阶段瀑布模型把软件生命周期分为哪几个阶段?n问题问题:某展览公司要开发一个展览会观众管理和某展览公司要开发一个展览会观众管理和信息分析系统,信息分析系统,该从何解决问题呢?该从何解决问题呢?n是否立即开始考虑实现系统的详细方案,并且动是否立即开始考虑实现系统的详细方案,并且动手编写程序?手编写程序?n不符合软件工程的开发思想。应该如何做呢?不符合软件工程的开发思想。应该如何做呢?n首先考虑系统是否可行,是不是能产生经济效益?首先考虑系统是否可行,是不是能产生经济效益?其次还要考虑用户面临的问题究竟是
2、什么,为什其次还要考虑用户面临的问题究竟是什么,为什么会提出开发这样的系统呢?么会提出开发这样的系统呢?本章内容本章内容n问题定义及可行性研究问题定义及可行性研究n制订项目开发计划制订项目开发计划n需求分析的任务需求分析的任务n需求分析步骤需求分析步骤n实体实体-关系图关系图n数据流图数据流图n状态转换图状态转换图n数据字典数据字典n需求分析的其他图形工具需求分析的其他图形工具n软件计划阶段文档软件计划阶段文档 本章重点:本章重点:n可行性研究可行性研究n需求分析任务、步骤需求分析任务、步骤回目录回目录2.1 问题定义及可行性研究问题定义及可行性研究2.1.1 问题定义问题定义n1.明确系统目
3、标规模、基本要求等明确系统目标规模、基本要求等n2.对现有系统的分析对现有系统的分析n3.设计新系统可能的解决方案设计新系统可能的解决方案2.1.2 可行性研究可行性研究n技术可行性技术可行性n经济可行性经济可行性n社会因素方面的可行性社会因素方面的可行性2.1.3 制订项目开发计划制订项目开发计划n1.项目概述项目概述n2.软件工程实施计划软件工程实施计划n3.支持的条件支持的条件v Gantt图法图法v 工程网络技术。工程网络技术。n问题定义问题定义:通过调查研究,仔细阅读和分析有关资料,确:通过调查研究,仔细阅读和分析有关资料,确定所开发系统的名称,明确系统的目标,规模,定所开发系统的名
4、称,明确系统的目标,规模,基本要求、基本要求、限制限制,并确定可行性研究的方法等。,并确定可行性研究的方法等。n可行性研究可行性研究:是从技术可行性,经济可行性,社会可行性:是从技术可行性,经济可行性,社会可行性等方面决定等方面决定“做还是不做做还是不做”。注意注意:需求分析是决定:需求分析是决定“做什么做什么”技术可行性技术可行性:从设备条件,技术解决方案的实用性,技:从设备条件,技术解决方案的实用性,技术资源的可用性,用户使用可行性,操作可行性等方面术资源的可用性,用户使用可行性,操作可行性等方面进行分析。进行分析。经济可行性经济可行性:考虑支出,收益,投资回收期,风险等。:考虑支出,收益
5、,投资回收期,风险等。社会可行性社会可行性:主要从法律,政策,管理制度等方面进行:主要从法律,政策,管理制度等方面进行可行性分析。可行性分析。基本要求包括:基本要求包括:软件的功能、性能、输入(数据软件的功能、性能、输入(数据的来源、类型及数据的组织)、输出(报告、文的来源、类型及数据的组织)、输出(报告、文件或数据)、处理流程及数据流程、安全和保密件或数据)、处理流程及数据流程、安全和保密方面的要求方面的要求目标:目标:人力与设备费用的减少、处理速度的提人力与设备费用的减少、处理速度的提高、信息服务的改进、人员利用率的改进。高、信息服务的改进、人员利用率的改进。限制:限制:经费投资的来源和限
6、制、法律和政策的经费投资的来源和限制、法律和政策的限制、硬件软件、运行环境和开发环境的条件限制、硬件软件、运行环境和开发环境的条件和限制;可利用资源的限制;完成期限等。和限制;可利用资源的限制;完成期限等。n可行性研究的结论可能有以下几种:可行性研究的结论可能有以下几种:(1)可以进行开发)可以进行开发 (2)需要等待某些条件落实之后才能开发(如资金、人)需要等待某些条件落实之后才能开发(如资金、人力、设备)力、设备)(3)需要对开发目标进行修改之后才能开发。)需要对开发目标进行修改之后才能开发。(4)不能进行或不必进行开发(如所需技术不成熟,经)不能进行或不必进行开发(如所需技术不成熟,经济
7、上不合算)济上不合算)n注意:注意:在可行性研究阶段不要急于着手解决问题,要得到在可行性研究阶段不要急于着手解决问题,要得到系统确实可行的结论,或及时中止不可行的项止,避免在系统确实可行的结论,或及时中止不可行的项止,避免在项目进行了较长时间后,才发现项目根本不可行,以致造项目进行了较长时间后,才发现项目根本不可行,以致造成浪费。成浪费。2.2 需求分析的任务需求分析的任务n需求分析需求分析:需求分析是由软件人员和用户一起完:需求分析是由软件人员和用户一起完全弄清用户对系统的确切要求。包括系统的运行全弄清用户对系统的确切要求。包括系统的运行环境要求,性能要求,系统功能,接口需求。环境要求,性能
8、要求,系统功能,接口需求。n需求分析的结果是否正确,关系到软件开发的成需求分析的结果是否正确,关系到软件开发的成败,正确的需求分析是整个系统开发的基础。败,正确的需求分析是整个系统开发的基础。n需求要析是理解、分析和表达需求要析是理解、分析和表达“系统做什么系统做什么”的的过程。过程。需求分析具体任务需求分析具体任务n确定目标系统的具体要求:包括运行环境的要求、确定目标系统的具体要求:包括运行环境的要求、性能要求、系统功能、接口的需求性能要求、系统功能、接口的需求n建立目标系统的逻辑模型建立目标系统的逻辑模型n软件需求规格说明软件需求规格说明n修正系统开发计划修正系统开发计划n制定初步的系统测
9、试计划制定初步的系统测试计划n编写初步的用户手册编写初步的用户手册【例2.1】某高校医疗费管理系统n医疗费:校内门诊费、校外门诊费、住院费、子女医疗费。医疗费:校内门诊费、校外门诊费、住院费、子女医疗费。要求数据库中存放每个职工的职工号、要求数据库中存放每个职工的职工号、姓名、所属部门。姓名、所属部门。n报销时填写所属部门、职工号、姓名、日期、医疗费种类和报销时填写所属部门、职工号、姓名、日期、医疗费种类和数额。数额。n该校规定,该校规定,每年每个职工的医疗费报销有限额(如每年每个职工的医疗费报销有限额(如480480元),元),限额在年初时确定,每个职工一年内报销的医疗费不超过限限额在年初时
10、确定,每个职工一年内报销的医疗费不超过限额时可全部报销;超过限额时,超出部分只可报销额时可全部报销;超过限额时,超出部分只可报销9090。职。职工子女的医疗费也有限额(如工子女的医疗费也有限额(如240240元)。元)。n医疗费管理系统每天记录当天报销的若干职工或职工子女的医疗费管理系统每天记录当天报销的若干职工或职工子女的医疗费的类别、金额。让系统自动结账、统计当天报销的医医疗费的类别、金额。让系统自动结账、统计当天报销的医疗费总额,供出纳员核对。疗费总额,供出纳员核对。每笔账要保存备查,每天所报每笔账要保存备查,每天所报销的费用要和各个职工已报销的金额累计起来,销的费用要和各个职工已报销的
11、金额累计起来,以检查哪以检查哪些职工已超额。些职工已超额。n系统要设计适当的查询功能。年终结算、下一年度开始时,系统要设计适当的查询功能。年终结算、下一年度开始时,要对数据库文件进行初始化,职工医疗费余额累加到下一年要对数据库文件进行初始化,职工医疗费余额累加到下一年度的余额中。度的余额中。2.2.2 建立目标系统的逻辑模型建立目标系统的逻辑模型n模型是为了理解事物而对事物做出一种抽象,对事物模型是为了理解事物而对事物做出一种抽象,对事物的无歧义的书面描述。的无歧义的书面描述。n模型由一组图形符号和组成图形的规则组成。模型由一组图形符号和组成图形的规则组成。n建模的基本目标是:建模的基本目标是
12、:描述用户需求描述用户需求 为软件的设计奠定基础为软件的设计奠定基础 定义一组需求,用以验收产品。定义一组需求,用以验收产品。n模型分为:模型分为:数据模型数据模型:用实体用实体关系图关系图 功能模型功能模型:用数据流图用数据流图 行为模型行为模型:用状态转换图用状态转换图n数据字典数据字典用来描述软件使用或产生的所有数据对象,用来描述软件使用或产生的所有数据对象,并对各种图形工具所不能表达的内容加以补充。并对各种图形工具所不能表达的内容加以补充。2.3需求分析步骤需求分析步骤2.3.1进行调查研究进行调查研究l 调查研究的目的:是了解用户的真正需要调查研究的目的:是了解用户的真正需要l 调查
13、研究的方法调查研究的方法l 访谈:正式访谈和非正式访谈。访谈:正式访谈和非正式访谈。l 分发调查表。分发调查表。l 开会开会讨论讨论确认的方法。确认的方法。2.3.2分析和描述系统的逻辑模型分析和描述系统的逻辑模型 1.建立起目标系统的逻辑模型(建立起目标系统的逻辑模型(逻辑模型逻辑模型可用实体可用实体关系关系图,数据流图,数据字典,状态转换图,层次图,图,数据流图,数据字典,状态转换图,层次图,warnier图表示)图表示)2.沿数据流图回溯沿数据流图回溯2.3.3 复审(复审(确保软件需求的一致性,完整性和正确确保软件需求的一致性,完整性和正确性。性。)2.4实体实体-关系图关系图n实体关
14、系图:简记E-R图是指以实体、关系、属性三个基本概念概括数据的基本结构,从而描述静态数据结构的概念模式。2.4实体实体-关系图关系图n实体型(Entity):用矩形表示,矩形框内写明实体名;比如学生张三丰、学生李寻欢都是实体。n属性(Attribute):用椭圆形或圆角矩形表示,并用无向边将其与相应的实体连接起来;比如学生的姓名、学号、性别、都是属性。n联系(Relationship):用菱形表示,菱形框内写明联系名,并用无向边分别与有关实体连接起来,同时在无向边旁标上联系的类型(1:1,1:n或m:n)就是指存在的三种关系(一对一,一对多,多对多)。比如老师给学生授课存在授课关系,学生选课存
15、在选课关系。2.4实体实体-关系图关系图【例例2.2】学生成绩管理系统学生成绩管理系统教师与学生试题关系图教师与学生试题关系图2.5 数据流图数据流图n数据流图是结构化分析方法中使用的工具,它以图形的方式描绘数据在系统中流动和处理的过程,由于它只反映系统必须完成的逻辑功能,所以它是一种功能模型。在结构化开发方法中,数据流图是需求分析阶段产生的结果。n数据流图英文缩写DFD(Data Flow Diagram)它是描绘信息流和数据从输入移动到输出的过程中所经受的变换。n数据流图从数据传递和加工的角度,以图形的方式刻画数据流从输入到输出的移动变换过程。n数据流程图包括:a指明数据存在的数据符号,这
16、些数据符号也可指明该数据所使用的媒体;b指明对数据执行的处理的处理符号,这些符号也可指明该处理所用到的机器功能;c指明几个处理和(或)数据媒体之间的数据流的流线符号;d便于读、写数据流程图的特殊符号。2.5 数据流图数据流图数据流图的基本符号数据流图的基本符号n数据流是一组数据。在数据流图中数据流用带箭头的线表示,在其线旁标注数据流名。在数据流图中应该描绘所有可能的数据流向,而不应该描绘出现某个数据流的条件。n加工(处理)是在数据流图中用圆圈表示,在圆圈内写上加工名。一个处理框可以代表一系列程序、单个程序或者程序的一个模块。n数据存储是按照某种规则组织起来的、长度不限的数据。在数据流图中文件用
17、一直线表示,在线段旁注上文件名。一个数据存储也并不等同于一个文件,它可以表示一个文件、文件的一部分、数据库的元素或记录的一部分等;数据流图的附加符号数据流图的附加符号数据流与加工的关系数据流与加工的关系n 表示数据流之间是表示数据流之间是“与与”关系关系(同时存在同时存在)n 表示数据流之间是表示数据流之间是“或或”关系关系n 表示只能从几个数据流中选一个表示只能从几个数据流中选一个(互斥关系互斥关系)数据流图数据流图DFD的画法的画法(一)确定系统的输入输出 由于系统究竟包括哪些功能可能一时难于弄清楚,可使范围尽量大一些,把可能有的内容全部都包括进去。此时,应该向用户了解“系统从外界接受什么
18、数据”、“系统向外界送出什么数据”等信息,然后,根据用户的答复画出数据流图的外围。(二)由外向里画系统的顶层数据流图 首先,将系统的输人数据和输出数据用一连串的加工连接起来。在数据流的值发生变化的地方就是一个加工。接着,给各个加工命名。然后,给加工之间的数据命名。最后,给文件命名。(三)自顶向下逐层分解,绘出分层数据流图 对于大型的系统,为了控制复杂性,便于理解,需要采用自顶向下逐层分解的方法进行,即用分层的方法将一个数据流图分解成几个数据流图来分别表示。3、画数据流图的步骤、画数据流图的步骤n画顶层数据流图画顶层数据流图n画分层数据流图画分层数据流图n画总的数据流图画总的数据流图【例例2-3
19、】画招聘考试成绩管理系统的数据流图画招聘考试成绩管理系统的数据流图某市人事局举行招聘考试,分法律、行政,财经三个专业,某市人事局举行招聘考试,分法律、行政,财经三个专业,每个专业考生参加两门基础课,一门专业课的考试。考生每个专业考生参加两门基础课,一门专业课的考试。考生报名后,招生委员会需做一些考前处理,如编排考生准考报名后,招生委员会需做一些考前处理,如编排考生准考证号,安排考场等,并将考生基本情况输入系统。考试结证号,安排考场等,并将考生基本情况输入系统。考试结束后,将每位考生的各门考试课程的成绩输入系统,由系束后,将每位考生的各门考试课程的成绩输入系统,由系统计算出每位考生的成绩总分,将
20、考生成绩单分给每位考统计算出每位考生的成绩总分,将考生成绩单分给每位考生。录用工作是这样进行的,三个专业的考生分别按总成生。录用工作是这样进行的,三个专业的考生分别按总成绩总分进行排序,录用时从高分到低分录取,总分相同的绩总分进行排序,录用时从高分到低分录取,总分相同的按专业课成绩高的优先录取。录用工作结束后,对考试情按专业课成绩高的优先录取。录用工作结束后,对考试情况进行各种分析。况进行各种分析。3、画数据流图的步骤、画数据流图的步骤【例例2-3】先画招聘考试成绩管理系统的高层数据流图。先画招聘考试成绩管理系统的高层数据流图。招聘考试成绩管理系统数据流图招聘考试成绩管理系统数据流图n例例2.
展开阅读全文