您好,欢迎访问三七文档
《实用软件工程》陆惠恩编著1第2章软件计划本章内容:问题定义及可行性研究制订项目开发计划需求分析的任务需求分析步骤实体-关系图数据流图状态转换图数据字典需求分析的其他图形工具软件计划阶段文档本章重点:可行性研究需求分析任务、步骤回目录《实用软件工程》陆惠恩编著22.1问题定义及可行性研究2.1.1问题定义1.明确系统目标规模、基本要求2.对现有系统的分析3.设计新系统可能的解决方案2.1.2可行性研究技术可行性经济可行性社会因素方面的可行性2.1.3制订项目开发计划1.项目概述2.软件工程实施计划Gantt图法工程网络技术。《实用软件工程》陆惠恩编著32.2需求分析的任务需求分析的基本任务是软件人员和用户一起完全弄清用户对系统的确切要求。需求分析是理解、分析和表达系统必须做什么。需求分析必须经过严格复审。2.2.1确定目标系统的具体要求(1)确定系统的运行环境要求(2)系统的性能要求(3)确定系统功能(4)接口需求《实用软件工程》陆惠恩编著4【例2.1】某高校医疗费管理系统医疗费:校内门诊费、校外门诊费、住院费、子女医疗费。要求数据库中存放每个职工的职工号、姓名、所属部门。报销时填写所属部门、职工号、姓名、日期、医疗费种类和数额。该校规定,每年每个职工的医疗费报销有限额(如480元),限额在年初时确定,每个职工一年内报销的医疗费不超过限额时可全部报销;超过限额时,超出部分只可报销90%。职工子女的医疗费也有限额(如240元)。医疗费管理系统每天记录当天报销的若干职工或职工子女的医疗费的类别、金额。让系统自动结账、统计当天报销的医疗费总额,供出纳员核对。每笔账要保存备查,每天所报销的费用要和各个职工已报销的金额累计起来,以检查哪些职工已超额。系统要设计适当的查询功能。年终结算、下一年度开始时,要对数据库文件进行初始化,职工医疗费余额累加到下一年度的余额中。《实用软件工程》陆惠恩编著52.2.2建立目标系统的逻辑模型模型是为了理解事物而对事物做出一种抽象,对事物的无歧义的书面描述。模型由一组图形符号和组成图形的规则组成。建模的基本目标是:描述用户需求为软件的设计奠定基础定义一组需求,用以验收产品。模型分为:数据模型:用实体—关系图功能模型:用数据流图行为模型:用状态转换图数据字典用来描述软件使用或产生的所有数据对象,并对各种图形工具所不能表达的内容加以补充。《实用软件工程》陆惠恩编著62.2.3软件需求规格说明1.引言2.信息描述3.功能描述4.行为描述5.确认标准6.运行需求7.附录2.2.4修正系统开发计划2.2.5制订初步的系统测试计划2.2.6编写初步的用户手册1.引言2.用途3.运行环境4.使用过程2.2.7编写数据要求说明书《实用软件工程》陆惠恩编著72.3需求分析步骤2.3.1进行调查研究调查研究的目的:是了解用户的真正需要调查研究的方法访谈:正式访谈和非正式访谈。分发调查表。开会—讨论—确认的方法。2.3.2分析和描述系统的逻辑模型1.建立起目标系统的逻辑模型2.沿数据流图回溯2.3.3复审《实用软件工程》陆惠恩编著82.4实体-关系图1.实体2.属性3.关系【例2.2】学生成绩管理系统教师与学生试题关系图《实用软件工程》陆惠恩编著92.5数据流图1、数据流图的基本符号《实用软件工程》陆惠恩编著102、数据流图的附加符号*表示数据流之间是“与”关系(同时存在)+表示数据流之间是“或”关系⊕表示只能从几个数据流中选一个(互斥关系)《实用软件工程》陆惠恩编著113、画数据流图的步骤画顶层数据流图画分层数据流图画总的数据流图【例2-3】先画招聘考试成绩管理系统的高层数据流图。4、几点注意事项《实用软件工程》陆惠恩编著12招聘考试成绩管理系统数据流图《实用软件工程》陆惠恩编著13例2.4医疗费管理系统数据流图《实用软件工程》陆惠恩编著142.6状态转换图1.什么情况下要画状态转换图2.状态转换图的符号【例2.5】数据结构中“栈”对象的状态转换图。《实用软件工程》陆惠恩编著152.7数据字典数据字典(DataDictionary,DD)是对实体-关系图、状态转换图和数据流图中出现的所有数据对象、属性、关系、状态、数据流、文件、处理等元素的定义的集合。2.7.1数据字典的内容1.数据元素2.数据流3.数据存储4.数据处理《实用软件工程》陆惠恩编著162.7.2数据字典使用的符号=表示“等价于”或“定义为”+连接[],|表示“或”,用“|”分隔,表示可任选其中某一项{}表示“重复”()表示“可选”,用“,”号隔开1{A}表示A的内容至少要出现1次。{B}表示B的内容允许重复0至任意次。如:成绩单=学号+姓名+1{课程名+成绩}3也可写为成绩单=学号+姓名+{课程名+成绩}《实用软件工程》陆惠恩编著172.7.3数据字典与图形工具应遵守以下约定:可以用图形工具描述的尽量用图形描述。有关数据的组成在数据字典中描述。有关数据的加工细节在数据字典中描述。编写数据字典时不能有遗漏和重复,要避免不一致性。数据字典中的条目的排列要有一定规律,方便查阅。如按英文字母表顺序或按汉字笔画顺序排列或按功能分类等;数据字典的要易于更新修改。数据字典与数据流图等图形工具应相辅相成、互相配合,既要互相补充又要避免冗余。《实用软件工程》陆惠恩编著18【例2.6】写出例2.3招聘考试成绩统计系统的数据字典。1、数据项定义:考生=准考证号+姓名+性别+出生年月+地址+1{课程名+成绩}3+总分+名次+专业代号+录用否+录用单位考生文件分两种:一种按准考证号码次序排列,另一种按考生成绩总分由高到低排列。专业代号=[1=法律/2=行政学/3=财经学]录用通知书=准考证号+专业+姓名+录用单位考生成绩单=准考证号+姓名+专业+1{课程名+成绩}3+总分2、处理算法:排序:(1)三个专业的考生分别按总分由高到低的次序排序,输出成绩单,供录用参考。(2)按准考证号的顺序将考生成绩单打印出来,一份给招干委员会留底,另一份发给考生。录用原则:各专业按考生成绩总分从高分到低分的次序录用,总分相同时专业课成绩高的优先。《实用软件工程》陆惠恩编著19【例2.7】写出例2.1医疗费管理系统数据字典。1、数据项职工库=部门名+职工号+姓名当日明细账=报销日期+部门名+职工号+姓名+校外门诊费+校内门诊费+住院费+总额+余额+子女医疗费+子女总额医疗费总账=部门名+职工号+姓名+校外门诊费+校内门诊费+住院费+总额+余额+子女医疗费+子女总额余额=限额-总额(小于0时,取为0)医疗费明细账={当日明细账}2、操作说明(1)输入数据时只需输入职工号,就可在职工库中查找出该职工所属部门名及姓名,显示在屏幕上供核对,并将医疗费总账中该职工今年内今日前已报销的医疗费总额和余额显示出来。(2)输入当日报销的校外门诊费、校内门诊费、住院费、子女医疗费后,计算机自动算出该职工的医疗费总额和余额。(3)核对:算出当日所有职工报销的各类医疗费的分类总和及所有总和,供出纳员核对。若发现错误应进入“修改”模块进行修改。核对正确后可进入“累加”模块。(4)累加:把职工当天报销的各类医疗费与以前报销的分类累加并算出总额。《实用软件工程》陆惠恩编著202.8需求分析其他图形工具2.8.1层次图层次图是一系列多层次的树形结构矩形框,用来描述数据的层次结构,也可描述程序结构。《实用软件工程》陆惠恩编著212.8.2Warnier图(Warnierdiagram)表示数据层次结构(Warnier-Orr图)可表达数据结构也可表达程序结构Warnier图使用的符号:(1)花括号{表示属于数据结构的同一层次。(2)异或符号⊕,符号的上、下方的两个名字代表的数据只能出现一个。(3)圆括号(),数据重复出现的次数。《实用软件工程》陆惠恩编著222.8.3IPO图输入/处理/输出(InputProcessOutput)图的简称。【例2.10】招聘考试成绩管理系统IPO图。《实用软件工程》陆惠恩编著232.9.1软件计划阶段文档的编写步骤(1)编写软件问题定义文档。(2)书写可行性研究报告。(3)编写软件需求说明书。(4)修改、完善项目开发计划。(5)制定初步的系统测试的计划,作为今后软件确认和验收的依据。(6)编写初步的用户手册。(7)编写数据要求说明书。《实用软件工程》陆惠恩编著24处理展会事务的大致过程门票观众展会观众管理系统观众分类分析表参展商参观时间明细表调查表工作人员展会公司《实用软件工程》陆惠恩编著25第2章小结可行性研究阶段要从技术方面、经济方面、社会因素方面写出可行性研究报告。软件开发计划可用Gantt图和工程网络图来描述。软件需求是进行软件设计、实现和质量度量的基础。需求分析是理解、分析和表达软件需求的过程。建立模型是描述用户需求,定义需求,用以验收产品。数据模型用实体-关系图来描述数据对象及相互关系。功能模型用数据流图来描述。行为模型用状态转换图来描绘。数据字典用来描述软件使用或产生的所有数据对象、数据存储规则和处理算法等。需求分析阶段还应写出软件需求规格说明,有时附上可执行的原型及初步的用户手册。它是需求分析阶段的最终成果。复审:需求分析的结果要经过严格的审查。返回第2章首返回目录
本文标题:软件工程第2章
链接地址:https://www.777doc.com/doc-213496 .html