第五章 简单数据库应用系统设计与开发 115
5.1 数据库应用系统的开发流程
本节将以“学生兴趣爱好”数据库应用系统为例,介绍数据库应用系 统的开发流程。通过本节的学习,你可以:
■
了解数据库应用系统的开发流程
■
能够针对实际问题进行流程分析
针对“学生兴趣爱好”数据库应用系统的设计,请思考以下问题。
(1)该数据库应用系统需要具备哪些功能。
(2)利用前面几章学习的方法可以解决哪些问题。
(3)向数据库输入数据都有哪些方法?在实际应用中,是如何输入数据的?
一个完整的数据库应用系统是由数据库、硬件系统、软件系统、相关人 员组成的。
软件系统包括操作系统、实用程序、数据库管理系统等。其中的核心是 数据库管理系统,它提供了一系列命令,用来建立数据库文件,对数据进行 各种操作,如删除、插入、
查找、输出等。 Access 就 是一个小型数据库管理 系统。相关人员包括系统 分析员、开发人员、数据 库系统管理员(DataBase Administrator) 、用户等。
数据库应用系统的 结构如图 5-1 所示。
要设计制作一个数 据库应用系统,首先要进 行需求分析,这个环节需 要通过调查、访谈等形式 与用户直接接触。
通常,用户提出的需求是零散的、重叠的、不完整的,所以还需要对需 求进行分析、归纳,从而确定系统的总体任务。在此基础上进一步对系统的 功能进行分析,确定系统结构,然后进入数据库设计阶段。建立了数据库 后,就进入应用程序设计阶段,在这个阶段要按照系统设计中规定的功能进 行查询与报表的设计、界面设计以及代码编写。创建了应用程序后还需要进 行测试和运行,保证系统能正常使用。
…
图5-1 数据库应用系统结构
用户1 用户2 …… 用户n
应用程序 数据库管 理系统
应用开发工具
数据库系 统管理员 数据库
Heninger在 1980年对软件需 求文档提出了6 点要求:(1)应该 只叙述系统外部 行为;(2)应该定 义 实 现 上 的 约 束;(3)应该是容 易改变的;(4)应 该成为系统维护 人 员 的 参 考 工 具;(5)应该记录 系统的整个生命 周期;(6)应该对 非预期事件给出 可接受的反应。
常见的数据 库系统开发工具 有PowerBuilder,
Visual Basic,Vi- sual C++,Delphi 等。
图5-2 数据库应用系统的开发流程
5.1.1 需求分析
需求分析(Requirements Analysis)就是用行之有效的方法,准确了解 用户的需求,确定应用系统功能、性能和运行环境,作为下一步开发系统的 依据。
对于同一个数据库,不同用户群的需求也不相同。所以,在需求分析 时,首先要确认使用应用系统的用户群,然后再分析不同用户群的需求。
例如,针对“学生兴趣爱好”数据库应用系统,有学生用户、教师用户、
学生会用户、系统维护员用户等用户群。
对于学生用户群来说,主要应用是利用系统完成个人信息的输入工作,
所以展示在学生面前的界面应该是数据录入界面。
对于教师和学生会用户群来说,需要对数据库中的数据进行各种查询、
统计、分析,如统计分析爱好与性别的关系、爱好广泛性分析、学生基本情 况统计等。此外,这个用户群还需要输出报表。
对于系统维护员用户群来说,主要的操作是对应用系统的设置、更新与 维护。
做需求分析并不是件容易的事情,有以下三种情况会影响需求分析的质量。
(1) 在分工日益精细的今天,用户常常不能完整地描述整个流程中的每个细节;
还有些需求不易表达清楚。就像一个人清楚地知道自己爱吃“鱼香肉丝”,却不一定 说得清楚肉和辅料的比例、放多少盐、多少辣椒,他只是在吃到这个菜的时候才知 道味道好不好。
(2)用户表达有误、需求分析人员理解有误等也会影响需求分析的结果。
(3)需求可能会随时发生变化。如一个公司拓宽了业务范围,国家的政策法规 发生变化等,都可能导致需求变化。
资料
数据库应用系统的开发流程如图 5-2 所示。
需 求 分 析
结 构 设 计
数 据 库 设 计
应 用 程 序 设 计
调 试、
运 行 与 发 布
由于前面几章已经对数据结构设计、数据库创建、设计查询与报表等 操作进行了较详细地介绍, 本章仅介绍数据库应用系统开发流程中的需求 分析、应用程序设计以及调试运行与发布。
如果用户对 需 求 的 表 述 不 清,或者表述非 常复杂,难以准 确理解,可以试 着开发一个简单 的系统(叫做原 型),让用户用一 用,再听一听用 户的意见,以便 确定他们的真实 需求。如果不满 意,就要进行修 改,直到用户满 意为止。
按照《软件设计文档国家标准GB8567—88》的要求,需求分析文档一般要包 含以下内容。
1. 引言
包括软件的编写背景,文档中用到的一些术语的定义和相关的参考资料等。
2. 任务概述
包括软件的编写目的,要达到的目标和软件特性;该软件适用于哪些特定的用 户;打算投入的人力、物力等。
3. 需求规定
用列表的方式逐项叙述对软件提出的功能要求;对输入数据和输出结果的要求
(比如精度等);对软件响应用户的速度要求;故障处理要求等。
如果必要,还要说明软件的灵活性要求。即当需求发生某些变化时,该软件对 这些变化的适应能力,如操作方式上的变化、运行环境的变化、同其他软件的接口 的变化。
4. 软件运行环境要求
硬件环境要求,如CPU的运算速度、内存大小等;软件环境要求,如操作系统 版本、其他的支持软件等。
假设现在要开发一套班费管理应用系统,将全班同学分成3个小组,分别代表 教师、学生和学校,分析这3组人员各自对这个系统的需求。
资料