查看帮助>>

课程导航

11.2.2 数据需求分析

1.数据需求分析的任务

需求分析的任务是通过详细的调查研究,充分了解用户的业务规则、各种应用以及对数据的需求,收集系统所需要的基础数据和对这些数据的处理要求,为数据库的设计提供依据。下面以一个图书销售管理系统为例,来说明需求分析的任务。

确定用户的全部数据需求是一件非常困难的事情。事实上,它是数据库设计中最困难的任务之一。

(1)系统本身是不断变化的,用户的需求必须不断调整。例如随着技术的发展和读者个性化需求的变化,读者希望能够在网上下载电子图书;读者希望建立网上读者俱乐部,定期交流读书的感想,好书、新书的介绍等。

(2)由于一般用户缺少计算机和数据库方面的专业知识,要表达他们的需求非常困难。例如如何根据读者近期的购书情况给予一定的奖励?时间段怎样划分?已经参与奖励的订单在下一次中是否继续考虑?如果这些问题不清楚,就无法确定在数据库中应该存储哪些数据,这些数据如何改变。

(3)由于开发人员缺少实际业务经验,对用户的需求描述不能正确理解。也就是说,即使是数据库应用的行家,但由于对实际业务流程不熟悉,设计出的数据库也可能不能满足整个业务的需求。例如在设计订书奖励时,由于对奖励规则和实际操作流程不清楚,可能会导致实际的奖励结果与期望的不一致。

因此,在数据的需求分析过程中,系统设计人员与业务人员的密切配合是非常重要的。这里也提出了一个大家非常关心的问题:IT技术只是一个工具,这个工具是否能够恰当地使用,不仅取决于对技术的掌握,更重要的是对实际业务的理解和管理对数据处理要求的理解。

2.需求分析的步骤

需求分析大致可以分为三个步骤:需求信息的收集、分析整理和评审。

1)需求信息的收集

需求信息的收集又称为系统调查。为了充分地了解用户可能提出的要求,在调查研究之前,要做好充分的准备工作,明确调查的目的、调查的内容和调查的方式。

(1)调查的目的 。了解应用系统提供的功能、业务活动、工作流程和流程中涉及的数据。

(2)调查的内容。调查的内容包括以下几项:

①图书销售提供的功能。系统提供哪些功能?如图书查询、网上订购、读者往来、促销、折扣、读后感交流、新书推介、统计分析、读者服务等。

②信息的种类。订单、读者会员卡、图书信息等。

③信息处理的流程。通过调查,可以详细了解每一项功能的输入数据、处理过程、输出数据。输入数据的来源,输出数据的来源。例如读者订单查询功能:读者输入查询的条件,可以是订单号,也可以是订单日期,甚至是订单上的某一本图书,接收到条件后,从数据库中查询与条件匹配的所有订单,输出结果就是与输入条件匹配的订单。

④信息的数量。大概的输出存储数量,如有多少会员读者,增长速度,销售图书种类等。

⑤信息处理的频度。例如:每天的订单大概有多少张?

⑥信息的安全性需求。什么人、对什么数据、有什么样的处理权利,如修改权、删除权、查看权等。

⑦信息之间的约束关系。例如一旦订单被确认以后,库存中的图书数量要相应减少。

(3)调查方式

①开座谈会。适合于确定大致的业务范围、岗位划分、存在问题及希望改进的内容。

②填写调查表。适合调查那些非常规范的业务,有明确的输入,规范的处理流程,明确的输出。

③查看业务记录、票据、表格等。

④个别交谈。适合了解某一项业务的详细工作流程。

⑤实地考察和参与。便于系统开发人员对业务处理的感性认识。

2)需求信息的分析整理

调查的结果往往是零散的、杂乱无章的,需要对这些信息进行分类整理,然后清楚地描述出来。数据的需求分析需要整理出下列清单,分类编写。

(1)数据项清单。列出每一个数据项的名称、含义、来源、类型、长度等。例如图书编号、读者会员编号、订单编号、购书日期等都是我们所需要的数据项。将整个系统中设计的所有数据项整理出来,最后填写如表11-1所示的表格。

(2)业务活动清单。列出系统中最基本的工作任务,包括任务名称、功能描述、输入数据和输出数据。填写业务活动清单,如表11-2所示。

(3)性能要求。描述系统数据处理的性能要求。例如规定图书信息的查询响应时间不能超过5s。

(4)数据结构描述。也就是系统中涉及的单证、表格等数据。例如订单就是一个单证,它的格式和内容如表11-3所示。


(5)安全性、一致性描述。主要描述什么人、对什么数据、有什么样的访问权力。我们一般把数据的访问权分为读(read)、写(write)和执行(execute)三种基本权力。读权力就是可以看数据,但不能修改;写权力是既可以看,又可以修改;执行权力一般是指添加表、创建索引等新的内容。例如,我们规定,读者只能查看图书信息,但不能修改;订单管理员只能查看订单,不能随意修改订单;读者的在线信用卡信息谁都不能随意读、写(除了读者本人到指定的网上银行或其他开户行外)。

3)评审

评审的目的在于判断某一阶段的任务是否完成,以免出现重大的疏漏或错误。

一般来说,评审工作的参与人员应该是由开发小组以外的有经验的专家以及用户来组成,以保证评审工作的客观性和质量。评审工作可能会导致调查工作和数据分析工作的重复,即根据评审意见修改提交的需求分析结果,然后再评审。

在整个数据分析的过程中,需要特别注意的是,有一些数据是业务处理需要的,但还有一些数据是为了数据管理而增设的。例如,为了标记订单中的数据是否已经领取的奖品,可以对已经领取奖励的订单做上一个标记,这样下次再累计奖励时就不会重复统计了。就像到超市买东西开发票一样,已经开具发票的购物小票上都作上了标记,注明“发票已开”,这样商家就不会重复开发票、重复交税了。所以,在进行数据的需求分析时,还要考虑数据管理的需求,根据管理需要确定系统中需要哪些信息。

相关知识点:
11.2.1 条码应用系统开发的阶段划分
11.2.2 数据需求分析
11.2.3 系统设计