需求分析与数据建模

第二章 需求分析与数据建模

一、项目需求分析与解决方案

1.项目需求分析

所谓需求分析,是指对用户的业务活动进行分析,也指对要解决的问题进行详细分析,弄清楚问题的要求,包括需要输入什么数据,要得到什么结果,最后输出什么。在软件工程中,需求分析是指在建立一个新的或改变一个现存的计算机系统时描写新系统的目的、范围、定义和功能时所做的所有工作。在项目需求分析阶段,设计者通过和系统用户交流,了解业务需求,获得用户的示例表单、报表、查询、更新等活动的说明,明确系统的设计与实施目的,并编写需求分析说明文档,然后进行可行性论证,制订设计与实施计划,这是由设计者和用户共同完成的一个过程。项目需求分析最重要的目标是弄清楚该系统究竟要“做什么”。理解需求是在问题与其最终解决方案之间架设桥梁的第一步。

2.项目解决方案

项目解决方案的重点是分析存在的问题,提出新系统的功能需求及相应的技术实现手段和实施保障的措施,说明用户需求是可以实现的。解决方案是系统开发人员在与用户充分交流的基础上结合自己的专业知识而提出的。

(1)项目解决方案的设计

项目解决方案的基本结构包括以下五个部分:①现状分析与诊断,回答“为什么做”的问题;②系统规划与设计,回答“做什么”的问题;③系统技术方案,回答“达到什么效果”的问题;④系统实施方案,回答“怎么做”的问题;⑤保障措施,回答“如何保障质量”的问题。

(2)项目解决方案的评价

目前,关于项目解决方案的评价还没有唯一的标准,一般来说,可以从以下方面进行评价:是否能够透视现存问题并提出有针对性的解决措施;是否针对本项目业务的特点和流程设计;能否满足基本需求、关键需求和未来变化的需要。

(3)项目解决方案的优化

优化项目解决方案是指让所设计的项目解决方案更加有针对性,更能满足需求和未来变化的需要。对项目解决方案进行优化,通常可以采取以下方法:重新做需求,确认现存问题,重新提出有针对性的解决措施;重新梳理项目业务的特点和流程,根据特点和流程进行二次设计;检查项目基本需求、关键需求和未来变化的需要,改进解决方案。

二、数据的采集与分类

1.数据采集的途径

数据采集的途径多种多样,在数据库管理系统设计中,根据解决问题的需要,开发人员通常会使用以下几种数据采集技术:分析文档资料、面谈、实地调查、研究、问卷调查。

2.数据的分类

(1)噪声数据

噪声数据即无意义的数据,或错误或异常的数据。噪声数据可能会影响后面数据分析的结果,因此噪声数据处理是数据处理的一个重要环节。

(2)数据的类型

数据可以分为结构化数据、非结构化数据、半结构化数据。

三、建立关系数据模型

1.概念模型与ER方法

在人们研究信息世界的过程中,常常用到以下术语:

   ●实体:客观存在且可以相互区别的事物。

   ●属性:实体的特征。

   ●键:能在一个实体集中唯一标识一个实体的属性。

   ●联系:实体与实体之间的联系,有三种联系:一对一联系、一对多联系、多对多联系。

概念模型是数据库设计人员进行数据库设计的有力工具,也是数据库设计人员和用户之间进行交流的语言,因此,概念模型应满足以下三个方面的要求:能比较真实地模拟现实世界,具有较强的表达能力,能够方便、直接地表达应用中的各种要求;简单、清晰,容易理解;要便于在计算机上实现。概念模型的表示方法很多,其中最为著名、最为常用的是1976年提出的实体—联系模型,即ER模型。

建立实体模型一般分为四个步骤: ①确定实体; ②确定实体相关属性; ③确定相关实体间联系类型; ④设计出ER图所表示的概念模型。

ER模型基本图案如图所示。

2.从概念模型到关系数据模型的转换

机器世界又称数据世界,信息世界中的信息经过抽象和组织,经数据形式存储在计算机中,就成为机器世界。与信息世界一样,机器世界也有用来描述数据的习惯术语,这些术语与信息世界中的术语有着对应的关系。

   ●字段:用来标记实体的一个属性。它是可以命名的最小信息单位

   ●记录:一定逻辑关系的字段的组合。它与信息世界中的实体相对应,一条记录描述一个实体。

   ●文件:同一类记录的集合。

   ●关键字:可以唯一标识一条记录的字段。它可以是一个字段,也可以是多个字段。关键字与信息世界中的键相对应。

 随堂练习

一、单项选择题

1.下列选项中,不属于数据管理软件的是(  )。

A. Access B.MySQL C.Excel D.Outlook

2.下列选项中,不属于关系数据库的是(  )。

A.Access B.SQL Server

C.Oracle Database D.Apache Hbase

3.下表中的数据属于(  )。

A.结构化数据 B.半结构化数据

C.非结构化数据    D.准结构化数据

4.通过做科学实验,获得大量的数据。这种方法叫(  )。

A.分析文档资料    B.面谈 C.实地调查  D.研究

5.以下不是常用的数据采集方法的是(  )。

A.面谈 B.实地调查      C.问卷调查      D.猜测

6.用概念模型描述现实世界的事物时,将现实世界事物的一般特征称为(  )。

A.属性 B.总体 C.实体 D.联系

7.ER图中,表示实体的图形是(  )。

A.平行四边形框    B.菱形框 C.椭圆形框  D.矩形框

8.ER图可以用来描述(  )。

A.物理模型 B.概念模型 C.对象模型  D.数据模型

9.以下不是引起噪声数据的原因的是(  )。

A.拼写错误 B.笔者口误

C.硬件故障 D.OCR中的乱码

10.如图所示,该ER图表示(  )。

A.校名、地址、电话三个实体具有相同的属性

B.学校实体只有校名和地址两个属性

C.学校、校名、地址和电话有相同的属性

D.学校实体有校名、地址、电话三个属性

11.一个车间有多名工人,每个工人只能在一个车间中工作,车间与工人之间的联系是(  )。

A.多对多 B.一对一 C.多对一 D.一对多

12.将ER图转换成关系数据模型时,每个实体集可转换成(  )。

A.一条记录  B.一个二维表 C.一个三维表  D.一个字段

13.在下列二维表中,可以作为关键字的是(  )。

A.序号 B.姓名 C.身份证号码 D.出生年月

14.(  )不是数据库系统中的数据模型。

A.关系模型  B.树状模型 C.层次模型 D.网状模型

15.下列E⁃R模型中,有(  )个实体,(  )种联系。

A.3、 2 B.3、1 C.4、1 D.4、2

二、判断题

16.在设计项目解决方案时,方案“做什么”,实际上就是根据现状分析提出的需求,从总体目标、指导思想、总体框架等方面对系统进行总体规划与设计。(  )

17.项目解决方案的评价标准是统一且唯一的标准。(  )

18.项目解决方案设计完成后,就可以根据方案进行项目实施,不需要进行任何改动。(  )

19.一个实体集中的键,只能包含一个属性。(  )

20.在“学生”这个实体集中,可以用“姓名”属性作为这个实体集的键。(  )

21.数据模型中的文件,是指同一类记录的集合。(  )

22.用ER图表示概念模型时,人们所关心的仅仅是有哪些实体和属性,以及实体和属性之间的联系如何,而不必关心它们在计算机内是如何表示的。(  )

23.将ER模型转换为关系数据模型,一般可以分两步进行:一是将每个实体集转换成一个二维表;二是将实体集之间的联系转换成一个二维表。(  )

三、填空题

24.需求分析就是分析用户的      ,是设计数据库的基础和起点。

25.项目解决方案的重点是      ,提出新系统的功能需求及相应的技术实现手段和实施保障的措施,说明用户需求是可以实现的。

26.在进行国家人口普查时,要采集每家每户的人口数量信息,工作人员需要入户,通过      的方式完成数据采集工作。

27.    数据,就是无意义的数据,就是被测量的变量的随机误差或方差,是指数据中存在着错误或异常的数据。

28.噪声数据产生的原因可能有:                  等。

29.大数据环境下,数据采集和分类一般包括以下方法:      、网络数据采集法、其他数据采集方法。

30.人们在数据库设计的过程中,首先建立对于现实世界数据现象的      模型,然后再将其转换为某一数据管理系统支持的      模型,这个过程也称为数据的抽象过程。

31.在一个实体集中唯一标识一个实体的属性称为    

32.在机器世界中,      用来标记实体的一个属性,它是可以命名的最小信息单位。

33.关系数据模型是采用      的形式表示实体以及实体之间的联系。

34.      是可以唯一标识一条记录的字段,它可以是一个字段,也可以是多个字段。

35.      是有一定逻辑关系的字段的组合,它可以用来描述一个实体。

四、应用题

36.简述项目解决方案的基本结构,并说明每个结构的意义或作用。

37.数据按照数据结构可划分为哪些类型?

38.下表是三大世界的相关概念和术语,请按照对应关系,补充完整。

39.某小学校要建立一个“学生信息管理系统”,以便对学生的基本信息、学习成绩、身体素质健康等进行管理和查询。请你用ER图绘制该项目的概念模型。

40.将上题中的ER模型转换为关系数据模型。