版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、3 软件需求分析,软件需求分析是软件开发早期的一个重要阶段。它 在问题定义和可行性研究阶段之后进行。需求分析的基 本任务是软件人员和用户一起完全弄清用户对系统的确 切要求。这是关系到软件开发成败的关键步骤,也是整 个系统开发的基础。 软件需求分析阶段要求用 需求规格说明书(SRS) 来表达用户对系统的要求。规格说明书可用文字方式表 示,也可用图形表示。 本章将介绍需求分析的任务、步骤、需求分析方法 (面向数据流图分析方法、面向对象的分析方法)。,3.1 需求分析的任务,软件需求分析的任务,深入描述软件的功能和性能 确定软件设计的约束和软件同其它系统元素的接口细节 定义软件的其它有效性需求,需求
2、分析的任务就是借助于当前系统的逻辑模型导出目标系统的逻辑模型,解决目标系统的 “做什么” 的问题。,通常软件开发项目是要实现目标系统的物理模型 目标系统的具体物理模型是由它的逻辑模型经实例化,即具体到某个业务领域而得到的,数据库中存放的是职工的,某学校医疗费管理系统,所属部门、职工号、姓名,职工报销时应填写:,所属部门、职工号、姓名、日期,校内门诊、校外门诊、住院费、子女医疗费,医疗费分类:,该校规定,每年每个职工的医疗费有一个限额(如 80元),限 额在年初确定,其限额规则如下:,1、每个职工一年内报销的医疗费不超过限额时,全部报销 2、超额,则超出部分只可报销90%,其余10%由职工个人负
3、担 3、职工子女的医疗费也有限额(如 40元),1、医疗费管理系统每天记录当天报销的若干职工或职工子女的医 疗费的类别、金额。 2、在当天下班前让系统自动结帐、统计当天报销的医疗费总额,供 出纳员核对。 3、每笔帐要保存备查,每天所报销的费用要和各个职工已报销的金 额累计起来,以便检查哪些职工已超额。 4、系统还要配有适当的查询功能。 5、年终结算后,下一年度开始时要对数据库文件进行初始化。 6、当职工调离本单位,职工调如本单位或在本单位内部门间调动, 数据库文件应能及时得到修改。,请完成对上述系统的 需求分析,用户对系统的要求,该系统规模不太大,可以和用户单位的其他管理系统 使用相同的计算机
4、硬件设备、相同的操作系统和相同的关 系数据库管理系统。 如果,可以使用汉化了的数据库管理系统,但在建立 数据库结构时,凡是用英文名称来代表字段名时,则必须 在数据字典中予以说明。,1、确定系统的环境要求,3、系统的功能,(1)具有表格形式屏幕的输入格式 (2)具有重复录入数据的功能 (3)具有查询和统计汇总的功能 (4)职工的调入和调出以及对数据库的初始化,2、系统性能要求,(1)数据不能随意更改 2)保证数据的准确性 由于医疗费管理系统涉及到会计经费问题,数据不能 随意更改但数据输入又难免会出错。因而在每输入一个职 工的医疗费后,屏幕提示“数据有误吗?”。若是在核对时 有误,可及时更改,避免
5、输入错误。一天报销结束时,在 数据存档前,再让出纳员核对一下经费总额,若出纳员支 出的金额总数有误时,应让计算机显示每笔帐目,供一一 仔细核对,此时在允许修改一次。当正式登帐后,数据就 绝对不允许在修改了,由此保证财务制度的严格性,保证 数据的安全性。,二、建立目标系统的逻辑模型,通常软件软件开发项目是要实现目标系统的物理模型,即 确定待开发软件系统的系统元素,并将功能和数据结构分配到 这些系统元素中。它是软件实现的基础。 但是目标系统的物理模型是由它的逻辑模型经实例化,即 具体到某个业务领域而得到的。与物理模型不同,逻辑模型忽 视机制和细节,只描述系统要完成的功能和要处理的数据。 为此,该阶
6、段的主要任务是,借助于当前系统的逻辑模型 导出目标系统的逻辑模型,也就是解决目标系统“做什么”的问 题。,用户 调查,具体模型,建立系统模型的工作流程,逻辑 抽象,当前系统,逻辑模型,当前系统,计算 机化,评审 修改,正式模型,完善 细节,目标系统,目标系统 初始模型,经认可的,问题需求,系统模型,用户,1、建立目标系统逻辑模型的步骤,图形工具,2、建立目标系统逻辑模型的图形工具,- 学生购买教材的具体模型,请建立计算机 售书系统的逻辑模型,-学生购买教材的 逻辑模型,-学生购买教材的 逻辑模型,完善目标系统并补充细节,的出目标系统的正式逻辑模型,三、需求规格说明书与评审,软件需求说明书,-
7、SRS(Software Requirement Specification),主要包括以下的内容:,SRS,数据流图,数据字典,一、数据流图,3.2 面向数据流的方法,- DFD(Data Flow Diagram),储 户,检验,付款,登录,存折,帐卡,取款 信息,办理取款手续的 DFD 图,检验不合格,现款,付款信息,取款单,存折,1、数据流图中的主要图形元素,- 转换数据流的处理过程,- 可以是数据库文件或任何形式的数 据组织。箭头向内则表示写入文件 或查询文件,箭头向外则表示从文 件中读取数据或得到查询结果,数据转换,外部实体,- 位于软件系统边界之外的信息生产者 或 消费者,数据流
8、,- 在转换之间有向流动的数据项或数据 集合,数据存储文件,- 系统逻辑模型,-学生购买教材的 逻辑模型,2、数据流图中的其它图形元素,- 有 A 则 B 或者 C,或者两者都有,- 有 A 则 B 与 C,或者两者同时有,- 有 A 则 B 或 C,但不会同时有B与C,- 标识多个数据流与加工之间关系的符号,- 当 A 或 B 有一个存在就有 C,- 只有当 A 与 B 都存在,则有 C,3、分层的数据流图,第 n+2 层,人工销售教材 系统流程图,学 生,教材 购销 系统,保 管员,外部实体,外部实体,教材销售子系统,1.3 登记并开 领书单,1.2 开发票,1.1 审查 有效性,1.4
9、登记 缺书,1.5 补售 教材,采 购,学 生,学 生,暂缺书单,补售 书单,第 3 层,F1 书号 单价 数量,外部 项,采购 子系统,第 2 层,缺书单,2.3 修改教材库 存和待 购量,销 售,2.1 按书号汇 总缺书,2.2 按出版社统 计缺书,保 管员,. 便于实现,. 便于使用,- 采用逐步细化的扩展方法,可避免一 次引入过多的细节,有利于控制问题 的复杂度;,- 用一组图代替一张总图,方便用户及 软件开发人员阅读。,4、分层 DFD 图的优点,. 注意父图和子图的平衡,5、画分层 DFD 的指导原则,. 区分局部文件和局部外部项,. 掌握分解的速度,一般来说,每一个加工每次可分为
10、 2-4个子加工,最 多不得超过 7 个。,. 遵守加工编号规则,顶层加工不编号。第二层的加工编号为1,2,3,n号。 第三层编号为1.1,1.2,1.3n.1,n.2等号,依此类推。,局部 外部项,局部 文件,练,请画出学生成绩管理系统的 DFD 图,习,二、数据字典,- DD(Data Dictionary),1、数据字典的定义,数据流名: 说明:简要介绍作用即它产生的原因和结果。 数据流来源:即该数据流来自何方。 数据流去向:去向何处。 数据流组成:数据结构。 每个数据量流通量:数据量、流通量。,(1) 数据流词条的描述,数据流名:发票 说明:用作学生已付书款的依据 数据流来源:来自加工
11、“审查并开发票” 数据流去向:流向加工“开领书单”。 数据流组成:学号+姓名+书号+单价总价+书费合计,数据元素名: 类型:数字(离散值、连续值),文字(编码类型) 长度: 取值范围: 相关的数据元素及数据结构,(2) 数据元素词条的描述,(3) 数据文件词条的描述,数据文件名: 简述:存放的是什么数据。 输入数据: 输出数据: 数据文件组成:数据结构。 存储方式:顺序,直接,关键码。 存取频率: ,加工名: 加工编号:反映该加工的层次 简要描述:加工逻辑及功能简述 输入数据流: 取值范围: 相关的数据元素及数据结构 ,(4) 加工逻辑词条的描述,名称:外部实体名 简要描述:什么外部实体 有关
12、数据流: 数目:,(5) 外部实体词条描述,2、数据字典定义符号,=,被定义为,+,与, ,x=a+b,则表示 x 由 a 和 b 组成,x=a,b,则表示 x 由 a 或由 b 组成, ,或,重复,x=a,则表示 x 由 0个或多个 a 组成,( ),可选,表示在两个 * 之间的内容为词条的注释,m n,重复,x=3a8,则表示x中至少出现3次a ,最多出现8次,*,注释符,x=(a),则表示 a 在 x 中出现, 也可不出现,请为下列给出的 DFD 图编写 DD,3、数据字典的实现,数据字典的实现,三、加工说明,-(Process Specification),加工说明组成,加工说明 描述
13、工具,描述把输入数据流变 换为输出数据流的加工过 程,是加工说明的主体。,自然语言+结构化形式,结构化语言,例1: 请写出下列在 DFD 图中给出的 “统计晚婚职工” 的加工说明,Count Late -Marriage Employees,Late-Marriage -Count Request,职工名册文件,Late-Marriage-List =List-Count+Name-List,Name-List=Name,Count Late-Marriage Employees Policy For each Late-Marriage-Count request: Repeat the f
14、ollowing; Access the staffs-Record. If status is single, If sex is maie and Age is over 30 or sex is female and Age is over 26 Write Name to Name-List. Increment List-Count. Until there are no more Staff-Records. Combine List-Count and Name-List. Write Up Late-Marriage-List.,例2: 请为下列DFD中的“审查并开发票”加工点
15、写 加工说明,把学生学号和姓名写到发票上 按购书单上学生的年级和系、专业与班号 检索“各班学生用书表”文件,获得该生当年的书单 对 购书单上的每一书号 如果 书单上无此书号 则 把书号写到出错通知单上 否则 按书号检索 “教材存量表”文件, 从而获得该书的单价与库存量 如果 库存量 购书单的数量 则 将书号写到出错通知单上 否则 将书号、单价、数量、总价等项写入到发票上; 更新存书量,并写回“教材存量表” 文件; 累计书费合计 把书费合计写到发票上,对每张购书单,分房加工逻辑,判断表,1、一般职工婚后5年可参加分房 2、中级以上职称的职工婚后3年 可参加分房 3、符合正常分房条件的职工, 若再
16、符合晚婚条件可优先分房,判断树,“检查发货单” 的判断表,工资管理系统,对工资管理系统进行需求分析,二、把下列用文字叙述的内容请采判断表和判断树描述出来,设某旅游票预定系统中,在旅游旺季 7- 9、12月 份,如果订票超过 50张,则优惠票价的 15% ; 50张以 下,优惠5%。在旅游淡季1-6,10、11月份,若订票超 过 50张,则优惠30%;50张以下,优惠 20%。,面向对象,3.3 面向对象的需求分析,一、面向对象的概念,对象,数 据,操作代码,类,是一组具有相同数据结构和相同操作的对象 集合。类的定义包括一组数据属性和在数据上的 一组合法操作。类定义可视为一个具有类似特性 与共同行为的对象摸板,可用来产生对象。 可以说,类是对象的抽象,而对象是类的具 体实例。,继承,是在一个已存有的类的基础上建立一个新 的类。并将已存在的类称为-基类或父类; 新建立的类称为派生类或子类。,基 类,派 生 类,对象继承了类所有属性,- 从类到对象的继承,对象、类、继承,对象 继承类的所有属性和操作,Buy Sell Weight move,- 面向对象类的表示模式,识别对象,1、标识潜在对象,找出通过分析过程中的所有名词或名词短语并合并 同义词。除去有动作含义的名词,使它们将被描述为对 象的操作。 标识规则如下:,(1)、外部实体,(2)、事物,(
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 铁路机车车辆驾驶安全操作规程及应急处理模拟试卷及答案
- 保险中介从业人员资格证考试保险产品销售专项训练题库及答案
- 检验住院医师规范化培训结业考核考点题库及答案
- 焊接作业安全操作流程专项训练题库及答案
- 专升本中药炮制学实验考点巩固试卷及答案
- 钢厂煤气知识课件
- 中医执业医师资格考试中医养生学模拟试卷及答案
- 高处安装维护作业人员证考试备考实操技能备考习题集及答案
- 管材力学课件
- 构成类图表课件
- 聚乳酸与聚己内酯:新型生物可降解输尿管药物洗脱支架材料性能的深度剖析
- 福建省泉州市惠安县第一教研联盟2025-2026学年七年级上册期中联考数学科试卷(含答案)
- 水稻绿色生产技术
- 辽宁省葫芦岛市连山区2025-2026学年上学期期末考试七年级数学试卷(含部分答案)
- 民航消防安全知识培训课件
- 2025年秋人教版小学数学五年级上册期中模拟测试卷附答案(三套)
- 中石化油料计量课件
- 风电场运维成本控制-全面剖析
- 生猪屠宰兽医卫生检验人员理论考试题及答案
- DL∕T 1878-2018 燃煤电厂储煤场盘点导则
- (高清版)TDT 1055-2019 第三次全国国土调查技术规程
评论
0/150
提交评论