需求分析(数据库课程设计)

上传人:第*** 文档编号:58919177 上传时间:2018-11-02 格式:PPT 页数:64 大小:683KB
返回 下载 相关 举报
需求分析(数据库课程设计)_第1页
第1页 / 共64页
需求分析(数据库课程设计)_第2页
第2页 / 共64页
需求分析(数据库课程设计)_第3页
第3页 / 共64页
需求分析(数据库课程设计)_第4页
第4页 / 共64页
需求分析(数据库课程设计)_第5页
第5页 / 共64页
点击查看更多>>
资源描述

《需求分析(数据库课程设计)》由会员分享,可在线阅读,更多相关《需求分析(数据库课程设计)(64页珍藏版)》请在金锄头文库上搜索。

1、1,信息系统的需求分析,2,教学内容需求分析的任务、步骤;需求分析必须遵循的基本原则;需求分析的方法;数据流图和数据字典的运用;结构化语言、判定表和判定树的使用;E-R模型、层次方框图、IPO图和Warnier图的使用;需求分析文档和需求分析评审等。 教学要求1熟练掌握:数据流图和数据字典的运用;结构化语言、判定表和判定树的使用。2一般掌握:需求分析的任务、步骤;需求分析必须遵循的基本原则;需求分析的方法;E-R模型、层次方框图、IPO图和Warnier图的使用。了解:需求分析文档和需求分析评审。,3,一、 需求分析概述 1.1 需求分析的任务和目的 需求分析的基本任务是要准确回答“系统必须做

2、什么?”这个问题。需求分析的具体任务包括:1.确定对系统的综合要求对系统的综合要求主要包括功能要求、性能要求、运行要求和其他要求等四个方面。2.分析系统的数据要求由系统的信息流归纳抽象出系统要求的数据以及数据的逻辑关系。3.导出目标系统的详细逻辑模型通过以上二项分析的结果导出目标系统的详细逻辑模型。4.修正项目开发计划,编写用户手册概要。 5.编写系统需求规格说明书,并提交审查。,4,1.2 需求分析的难点需求分析的难点主要体现在以下几个方面:(1)问题的复杂性(2)交流障碍(3)不完备性和不一致性(4)需求易变性,5,通过以下做法可以大大克服上述困难:(1)项目的参与者(包括软件设计开发人员

3、和用户等)必须在需求分析过程中加强沟通和协调。一方面,软件设计人员应尽量使用通俗的语言与用户进行交流;另一方面,用户应积极主动地配合软件设计人员的工作。(2)为了保证需求分析阶段能够提出完整、准确的系统逻辑模型,开发人员必须花费足够的时间,全面了解用户的需要,绝不能在需求模糊的情况下仓促进行系统的设计和编程。根据国外的统计资料表明,在典型环境下开发系统,需求分析阶段的工作量大约要占到整个系统开发工作量的20%左右。(3)使用一些有效的需求分析方法(如结构化分析方法等)及自动化工具(如CASE工具)来进行需求分析。,6,1.3 需求分析的步骤需求分析阶段的工作,大致可分为以下几个步骤:(1) 通

4、过调查研究,获取用户的需求可以采取以下一些调查方式:l 发调查表;l 召开调查会;l 向用户领域的专家个别咨询;l 实地考察;l 跟踪现场业务流程;l 查阅与待开发系统有关的资料;l 使用各种调查工具等。(2) 去除非本质因素,确定系统的真正需求。(3) 描述需求,建立系统的逻辑模型。(4) 书写需求规格说明书,进行需求复审。,7,1.4 需求分析的原则 目前存在着许多需求分析的方法,虽然各种方法都有其独特的描述方式,但不论采用何种方法,需求分析都必须遵循以下的基本原则:(1) 能够表达和理解问题的数据域和功能域(2) 能够将复杂问题分解化简 (3) 能够给出系统的逻辑视图和物理视图,8,1.

5、5 需求分析方法目前常见的需求分析方法有:1.功能分解方法 2.结构化分析方法3.信息建模方法4.面向对象的分析,9,二、需求分析2.1 数据流图在需求分析阶段,数据流(也称信息流)是系统分析的基础。所谓数据流,形象地说就是系统中“流动的数据结构”。数据流图(DFD,Data Flow Diagram)是描述软件系统中数据处理过程的一种有力的图形工具。数据流图从数据传递和加工的角度出发,刻画数据流从输入到输出的移动和变换过程。由于它能够清晰地反映系统必须完成的逻辑功能,所以它已经成为需求分析阶段最常用的工具。1数据流图的用途画数据流图的基本目的是利用它作为交流信息的工具。数据流图的另一个主要用

6、途是作为分析和设计的工具。,10,2数据流图的组成符号1)基本符号表1 数据流图中的基本符号,11,图1 学生档案管理系统数据流图,12,2)附加符号 表2 数据流图的附加表示符号,13,3数据流图的绘制1)数据流图绘制的主要步骤(1)确定系统的输入输出(2)由外向里画系统的顶层数据流图(3)自顶向下逐层分解,绘出分层数据流图,图2 “自顶向下,逐步分解”过程示意图,14,2)绘制数据流图的实例假设一家工厂的采购部每天需要一张定货报表,报表按零件编号排序,表中列出所有需要再次定货的零件。对于每个需要再次定货的零件应该列出下述数据:零件编号、零件名称、定货数量、目前价格、主要供应者和次要供应者。

7、零件入库或出库称为事务,通过放在仓库中的CRT终端把事务报告给定货系统。当某种零件的库存数量少于库存量临界值时就应该再次定货。,15,数据流图有4种成分:源点或终点、加工、数据存储和数据流。因此,第一步可以从问题描述中提取数据流图的4种成分。,16,对于上述的定货系统可以画出如图5-3所示的基本系统模型。,图3 定货系统的顶层(0层)数据流图,17,图3毕竟太抽象了,从这张图上对定货系统所能了解到的信息非常有限。下一步应该把基本系统模型细化,描绘系统的主要功能。从表3可知,“产生报表”和“处理事务”是系统必须完成的两个主要功能,它们将代替图3中的“定货系统”,如图4所示。,图4 定货系统的功能

8、级第1层数据流图,18,接下来应该对功能级数据流图中描绘的系统主要功能进一步细化。,图5 把处理事务的功能进一步分解后的第2层数据流图,19,3)细化数据流图的实例可以看得出来在绘制数据流图时,分层细化数据流图最为关键,下面再以某单位工资管理系统为例,来强化一下如何细化数据流图的过程。某单位财务部门要求人事部门在每月月初提供所有职工上个月的出勤情况和业绩情况,要求后勤部门提供所有职工上个月的水电使用及扣款情况,再将所有数据交给工资计算系统去处理,得到所有职工上个月的工资情况,并将工资转给相应的银行进行发放。请根据上述情况画出对应的数据流图。,20,1)建立顶层数据流图,图6 工资计算系统的顶层

9、(0层)数据流图,21,2)数据流图的分层细化,图7 工资计算系统第一层数据流图,22,对第一层数据流图中的加工继续分解,则可得到第二层数据流图,如图8所示。,(a) “计算工资”子数据流图图8 工资计算系统的第二层数据流图,23,对第一层数据流图中的加工继续分解,则可得到第二层数据流图,如图8所示。,(b)“工资转存”子数据流图图8 工资计算系统的第二层数据流图,24,若数据流图中的加工还可继续细化,则重复以上分解过程,直到获得系统的底层数据流图。工资计算系统的第三层数据流图如图9所示。,图9 工资计算系统的第三层数据流图,25,4绘制数据流图的原则(1) 任何一个数据流至少有一端是处理框。

10、(2) 数据流图中各构成元素的名称必须具有明确的含义且能够代表对应元素的内容或功能。具体来说,命名时要注意: 名称要反映被命名的成分的真实和全部的意义,避免使用不反映实际内容的空洞词汇。 名称要意义明确、易理解、无歧义,加工的名称一般以动词+宾语或名词性定语+动名词为宜。进出数据存储环节的数据流如内容和存贮者的数据相同,可采用同一名称。(3) 对数据流图中某个加工进行细化生成的下层数据流图,称为其上层图的子图。应保证分层数据流图中任意对应的父图和子图的输入/输出数据保持一致。 (4) 在数据流图中,应按照层次给每个加工编号,用于表明该加工所处的层次及上、下层的父图与子图的关系。编号的规则为:顶

11、层加工不用编号;第一层加工的编号为1,2,n;第二层加工的编号为1.1,1.2,2.1,n.1,n.2,等,依次类推。,26,4绘制数据流图的原则(4) 在数据流图中,应按照层次给每个加工编号,用于表明该加工所处的层次及上、下层的父图与子图的关系。编号的规则为:顶层加工不用编号;第一层加工的编号为1,2,n;第二层加工的编号为1.1,1.2,2.1,n.1,n.2,等,依次类推。(5) 在一套数据流图中的任何一个数据存储,必定有流入的数据流和流出的数据流,即写文件和读文件,缺少任何一种都意味着遗漏某些加工。(6) 数据流图只能由四种基本符号组成,是实际业务流程的客观映象,用于说明系统应该“做什

12、么”,而不需要指明系统“如何做”。(7) 数据流图的分解速度应保持适中。通常一个加工每次可分解为24个子加工,最多不要超过七个,因为过快的分解会增加用户对系统模型理解的难度。(8) 数据流图绘制过程,就是系统的逻辑模型的形成过程,必须始终与用户密切接触,详细讨论,不断修改;另还要和其他系统建设者共同商讨以求一致意见。,27,5数据流图的局限性(1)难以在数据流图上标识出数据流、数据存储,加工和外部项的具体内容。(2)不能反映系统中的决策与控制过程。(3)难以对系统中人-机交互过程以及信息的反馈与循环处理进行描述。,28,2.2 数据字典没有数据字典准确地描述数据流图中使用的数据,数据流图就不严

13、格。反之,没有数据流图,数据字典也难于发挥作用。只有把数据流图和对数据流图中每个数据的精确定义放在一起,才能共同构成系统的规格说明。1数据字典的作用数据字典最重要的用途是作为分析阶段的工具。在结构化分析中,数据词典的作用是给数据流图上每个成分给以定义和说明。换句话说,数据流图上所有成分的定义和解释的文字集合就是数据词典,而且在数据字典中建立的一组严密一致的定义很有助于改进分析员和用户之间的通信。如果要求所有开发人员都根据公共的数据字典描述数据和设计模块,则能避免很多麻烦的接口问题;数据字典中包含的每个数据元素的控制信息是有价值的,因为列出了使用一个给定的数据元素的所有程序(或模块),所以很容易

14、估计改变一个数据将产生的影响,并且能对所有受影响的程序或模块做出相应的改变;最后,数据字典是开发数据库的第一步,而且是非常有价值的一步。,29,2数据字典的基本符号如表4所示给出了数据字典中的基本符号和其含义。 表4 数据字典中的基本符号及其含义,30,3数据字典中的条目及说明格式数据字典是关于数据流图中各种成分详细定义的信息集合,可将其按照说明对象的类型划分为四类条目,分别为数据流条目、数据项条目、数据文件条目和数据加工条目。1)数据流条目,表5 数据流条目例子出勤表,31,2)数据项条目表6 数据项条目例子职工号,32,3)数据文件条目表7 数据文件条目职工工资档案文件,33,4)数据加工

15、条目表8 数据加工条目计算应发工资,34,4. 建立数据字典的原则建立数据字典时应遵守的原则有:(1) 对数据流图上各种成分的定义必须严密、精确、易理解、唯一,不能存在二义性。(2) 书写格式应简洁且严格,风格统一、文字精炼,数字与符号正确。(3) 命名、编号与数据流图一致。(4) 符合一致性与完整性的要求,对数据流图上的成分定义与说明无遗漏项。 (5) 应可方便地实现对所需条目的按名查阅。(6) 应便于修改和更新。(7) 没有冗余。,35,5建立数据字典的方法建立数据字典的常用方法有2种:手工建立和自动建立。1)手工建立手工建立数据字典的内容并用卡片形式存放,其步骤如下:(1) 按 4 类条

16、目规范的格式印制卡片; (2) 在卡片上分别填写各类条目的内容; (3) 先按图号顺序排列,同一图号的所有条目按数据流、 数据项、数据文件和数据加工的顺序排列; (4) 同一图号中的同一类条目(如数据流卡片)可按名字的字典顺序存放,加工一般按编号顺序存放; (5) 同一成分在父图和子图都出现时,则只在父图上定义; (6) 建立索引目录。,36,2)自动建立自动建立主要是指利用计算机辅助建立并维护数据字典,其方法有2种:(1) 编制一个“数据字典生成与管理程序”,可以按规定的格式输入各类条目,能对字典条目增、删、改,能打印出各类查询报告和清单,能进行完整性、一致性检查等。美国密执安大学研究的PSL/PSA就是这样一个系统。 (2) 利用已有的数据库开发工具,针对数据字典建立一个数据库文件,可将数据流、数据项、数据文件和加工分别以矩阵表的形式来描述各个表项的内容,如表9所示。 表9 数据流的矩阵表然后使用开发工具建成数据库文件,便于修改、查询,并可随时打印出来。另外, 有的数据库管理系统本身包含一个数据字典子系统,建库时能自动生成数据字典。 自动建立比手工建立数据字典有更多的优点,能保证数据的一致性和完整性,使用也方便,但增加了技术难度与机器开销。,

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 中学教育 > 教学课件 > 高中课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号