测品娱乐
您的当前位置:首页项目一数据库管理系统中需求分析

项目一数据库管理系统中需求分析

来源:测品娱乐
一、本课程的任务

后台数据库构建、数据库操作.管理、维护,为后续课 程如JAVA, ASP. NET作准备工作,从而从前台到后台完成一 个完整信息管理系统的创建。 二、本课程的学习特点及思路

1、项目引导,任务驱动 2、以一个完整的信息管理系统的后台数据

库的构建为例, 贯穿本课程。

3、项目分成若干个子项目。按子项目的完成来开展教学。

三、考试形式: 按平时实验情况及课程设计情况给出分数O

12

项目一学生信息管理系统中数据需求分析

务: 确左学生信息管理系统的基本功能。

找出系统中的实体,如学生、教师、课程等。 丄

找出各实体的各■种属性,如学生有学号,姓名,性别,出生日期等。 找出实体之间的关系,如学生与课程的关系是“学习”,画出E-R图 将E-R图转换成二维表 丄 丄 对二维表进行优化处理 课程引入: 丄

在IT企业中,经常需要创建一些小型的数据库对企业的生产,销售,财务,人事等日

常生产活动进行管理,那第要创建一个怎样的数摇库,库中包含哪些表及其它对象,表中有 哪些数据既能保证数摇的冗余尽可能少,又能何证对数据库操作不会出现异常,既方便用户 的使用和操作,又能满足数据库安全及管理需要?这是IT工作岗位中经常遇到的工作,也 是IT从业人员必备的职业素质。因此掌握信息系统的数据分析的知识、方法及技巧是完全 必要的。本单元通过对“学生信息管理系统”中的数据需求分析的学习及实践,便同学们掌 握常用信息系统的数据分析方法与技巧,为后续章节的学习打好基础。

数据库设il•目的是根据用户的需求,构造最优的数据库模式,使它能有效地存储数据。 数据库设计的优劣直接影响到信息系统的质量和运行效果。因此设计一个结构优化的数据库 是对数据进行有效管理的前提和正确利用信息的保证。在中小型企业中,通常便用SQL Server数摇库。 项目背最:

随着信息技术的发展,在教学管理中采用现代的科学管理和技术手段势在必行。这样 可以减轻管理人员的工作S,充分发挥人,财,物各种将资源的效用。通过分析我校教学管 理现状,结合学校实际情况,开发学生信息管理系统,实现对学生信息,教师信息,学成成 绩,教学授课,选课情况等方而进行一体化管理 课程内容:

数据库设计的方法中比较著名的有新奧尔良方法,它将数据库的设讣分为四个阶段: 需求分析,概念设计,逻辑设计和物理设计-

需求分析:需求分析阶段是整个设讣的基础,是最困难,最耗时间的一步,需求分析做得是 否充分与准确,决立了其上构建数据库的速度与质量。需求分析如果做的不好,可能会导致 整个数据库设计返工重做。

本案例中任务分析:管理员可对学生基木信息,班级信息.教师借息,学生选课情况,学校这样几个功能模块:

1、 用户管理:用户注册,用户登录,用户修改,用户删除

2、 学生基本信息管理:系别信息添加、修改、删除;班级信息添加、修改、删除:学生信 息的

添加、修改、删除;系别、班级、学生基本信息的查询。 3、 教师基本信息管理:教师信息的添加、修改、删除、查询。

4、 课程管理:课程信息的添加、修改、删除、查询;教师授课安排,学生选课。

5、 学生成绩管理:成绩的录入和修改:成绩的汇总统计,成绩的审核和锁出:成绩的査询。 6、 系统维护管理:数据备份、恢复:导入、导岀:系统帮助。

通过对以上系统功能分析得知,该系统涉及大量,复杂的数据管理,如何组织数据,采取何

I 基

本信息进行管理,学生可对本人信息进行修改,进行网上选课•浏览个人成绩及选课情况』 包括

12

种数据模型来维护数摇,是摆在我们而前的首要问题。

槪念设计:概念设汁是在需求分析的基础上,用概念数据模型如E-R数据模型,表示数据及 其相互间的联系。此时的模型虽然不能直接实现,但由于它易于被用户所理解,因而它不但 用于后续的设计,而且也是打用户交流的重要资料。 E-R模型的图形表示法

提供了表示实体、属性和联系的方法 实体用矩形表示,框内写明实体需。 属性用椭圆表示,框内写明属性。

联系用菱形表示,菱形框内写上实体间的联系需,并用无向边分別与有关实体连接起来,同 时在无向边旁标上联系的类型(1: 1. 1: X, M: N).(一对一,一对多,多对多)。 在本案例中:包會的实体有:学生,课程,班级.教师等,同学们可根据功能需求确定每个 实体中所包含的属性,并画出相应的E-R表示。 如学生:

实体之间的关系表示为:

概念模型的设计有这样几个步骤: 设讣局部概念模型

(1) 明确局部应用的范鬧、

根摇应用功能相对,实体个数适量的原则,划分局部应用。例我们可以将系统划分为选 课E-R模型,授课E-R图。

(2) 选择实体,确立实体的属性及标识实体的关键字。 (3) 确定实体之间的联系,产生局部E-R模型。 设讣全局概念模型

对局部概念模型进行合并。

思考:

在本案例中,应有几个实体,各实体的属性有哪些,各实体之间有什么样的关 系?

在本案例中:

确定实体为:学生,教师,班级,课程

12

学生属性有:学号,姓名,性别,出生日期,班级名称,联系电话 教师属性有:教师编号,教师姓需,所属系部,联系电话

班级属性有:班级编号,班级名称,班主任,班长,所属专业,所属系部

课程属性有:课程編号,课程冬称,课程类型,学时,学分,具体描述 各实体之间的关系: 学生学习课程,教师教授课程,学生属于班级,教师授课班级 根摇以上情况画出相应的E-R图如下:

12

逻辑设计:将概念数据模型表示的,与DBMS (数据库管理系统)无关的数据模式,转换成 以DBMS的逻辑数据模型表示的逻辑模式,并对其进行优化。 从E-R图转化成关系模式

关键字(码):唯一标识实体的属性称之。例如学生实体的学号,教师实体的教师编号等 候选关镀字:对某个关系,若存在多个属性都是关键字,则它们中的任何一个都称为候选关 键字。

外部关键字:不是本关系的关键字,而是另一个关系的关键字。

一个实体转换为一个数据表。实体的属性转换为数据表的字段。

一对一,一对多的联系不转换为一个数摭表。两个实体对应的数摇表依靠外部关键字建 立联系。 一对_:

一位厂长管理着一个工厂,一个工厂只有一位厂长。 厂长数据表(厂长姓需#,年龄,性别,职工人数) 工厂数据表(工厂编码#,工厂全名,地址,厂长姓名*) 一对多:

两个实体分别转换为两个数据表,而联系不用转换为数据表,依靠外部关键字建立联系。在 多的一方引入外部关键字。

专业数据表(专业编号#,专业需称)

班级数据表(班级编号#,班级需称,班长,班主任,专业编号*)

多对多的联系转换为一个数据表。该数据表的复合关键字为两个实体的关键字。 必须把多对多联系简化成两个一对多的联系来处理。 多对多:

学生(学号#,学生姓需,性别,年龄,邮箱) 课程(课程编号#,课程名称,课时数,学分) 学习(学号#,课程编号#,成绩)

根据以上理论,在本案例中,可以转化出几个表?确定每个 表中包含字段及主键和外键。(思考)

12

规范化处理

消除异常,改善完整性和存储效率,一般达到第三范式要求就可以了。 第一范式

若一个关系中,外属性都是不可再分割的基本数摇项,则称该关系属于第一范式,如下面的 学生数据表:

学生表(学号#,姓名,生日,性别,所在城市,长途区号,课程#,学期,学分,成绩) 学号,课程为复合关键字 第二范式

如果一个关系满足第一范式,并且所有非主属性都完全函数依赖于关键字,则该关系是第二 范式。

完全函数依赖:若属性Y单值依赖于关键字X,而Y不能单值依赖于X的某一真子集,则称 Y完全函数依赖于X。

方法:把学号和课程拿岀来,组成一个新的数据表(学号#,课程#,成绩) 再把其他的分成两个表:学生(学号#,姓名,生日,性别,所在城市,长途区号) 课程(课程#,学期,学分)

从规范化的立义可以得到一个结论:若关键字由单一属性组成,那么满足第一范式的关系必 然满定第二范式。 第三范式

如果一个关系满足第二范式,并且不存在非主属性对关键字的传递函数依赖,则该关系是第 三范式。

传递函数依赖:若属性Y单值依赖于关键字X,而属性Z又单值依赖于属性Y,则称Z传递 依赖于X。

在以上表中,长途区号单值依赖于所在城市,所在城市又单值依赖于学生,存在了传递函数 依赖。

把学生表进一步分解为:

学生(学号#,姓名,生日,性别,所在城市) 城市(所在城市#,长途区号〉

物理设计:是为逻辑数据模型选取一个最适合的应用环境的物理结构,即存储结构和存取方 法。即文件结构,徉种存取路径,存储空间的分配,记录的存储格式先等。 思考题:

设有如图所示的关系 职工号 11 职工名 年龄 性别 单位号 单位名 CCC AAA 张三 20 男 D3 李四 女 D1 12 22 试问R属于3NF吗?为什么,若不是,它是第几范式?如何把它规范化为3附?12

如下为选课系统的E-R图,写出包含的实体及实体之间的关系。并将E-R图转化成关系模式。

强级

八、 修〉 厂一

/属于 、史/

学生

迁)

'、、、

m /、 —

£1 > 上课时 (fftlU )

(ffS

实训题:

教)

设计一个图书皆理系统,系统中包括以下几部分: 图书:图书号,图书需,作者,类型,单价,数量

出版社:出版社号,出版社名称,所在城市,电话,邮政编码,联系人 读者:借书证号,姓名,性别,班级

有如下约定:一个人可以借多本图书,一种图书可以被多个读者借阅;读者在借书和还书时, 要登记借书日期和还书日期;图书入库时要记录购买数量;一个出版社可以出版多种书籍, 一种书仅为一个出版社岀版。 完成如下问题:

设il•图书管理系统的出版局部E-R图、借阅局部E-R图。 将出版局部E-R图打借阅局部E-R图合成全局E-R图 根据以上全局E-R图导出关系模式,并指出主键和外键。 基本概念:

数据库(DB):在长期存入在il•算机内,有组织的,可共享的相关数据的集全,它将数据按 一定的数据模型进行组织、描述和存储,具有冗余度小、数据性高、易扩展和可被^^类 用户共享的特点。数摇库中不仅存放数据,还存放有数据之间的关系。

数据库管理系统(DBMS):是位于用户和操作系统之间的数据皆理软件,它为用户或应用程 序提

12

供访问数据库的方法,包括数据库的创建、查询、更新及各种数据控制,它是数据库系 统的核心。目前比较流行的有:ACCESSSQL Server , Oracle, Sybase等「主要包括以 下功能:数据世义功能,数据操纵功能,数据库运行笛理,数据库的建立和维护。

12

当前流行的几种数据库:

目前,商品化的数摇库管理系统以关系型数据库为主导产品,技术比校成熟。面向对象的数 据库管理系统虽然技术先进,数据库易于开发、维护,但尚未有成熟的产品。 Visual FoxPro

由微软公司开发,功能包插前台界面设计及后台数摇皆理。 Access

由微软开发,办公套件之一,桌面型数据库软件之一。 SQL Server

SQL Server是由微软开发的数据库管理系统,是Web上最流行的用于存储数据的数据库, 它已广泛用于电子商务、银行、保险、电力等与数据库有关的行业。

目前流行版本是SQL Server 2005,它只能在Windows上运行,操作系统的系统稳定性对 数据库十分重要。并行实施和共存模型并不成熟,很难处理日益增多的用户数和数据卷,伸 缩性有限。

SQL Server提供了众多的Web和电子商务功能,如对XML和Internet标准的丰富支持, 通过氐b对数据进行轻松安全的访问,具有强大的、灵活的、基于ffeb的和安全的应用程序 管理等。而且,由于其易操作性及其友好的操作界面,深受广大用户的喜爱。 .Oracle

提起数据库,第一个想到的公司,一般都会是Oracle(甲柠文)。该公司成立于1977年, 最初是一家专门开发数据库的公司.Oracle在数据库领域一直处于领先地位。1984年,首 先将关系数摇库转到了桌而计算机上。然后,0racle5率先推出了分布式数据库、客户/服 务器结构等崭新的概念。Oracle 6首创行锁定模式以及对称多处理让算机的支持……最新 的Oracle 8主要增加了对象技术,成为关系一对象数据库系统。目前,Oracle产品覆盖了 大、中、小型机等几十种机型,Oracle数据库成为世界上使用最广泛的关系数据系统之一。 Oracle数据库产品具有以下优良特性。 (1) 1-容性

Oracle产品采用标准SQL,并经过美国国家标准技术所CXIST)测试。与IBMSQL/DS、DB2、 INGRES. IDMS/R 等兼容。 (2) 可移植性

Oracle的产品可运行于很宽范阖的硬件与操作系统平台上。可以安装在70种以上不同的 大、中、小型机上;可在VMS、DOS、UNIX. Windows等多种操作系统下工作。 (3) 可联结性

Oracle能与多种通讯网络相连,支持齐种协议(TCP/IP、DECnet. 1X6. 2等)。 (4) 高生产率

Oracle产品提供了多种开发工具,能极大地方便用户进行进一步的开发。 (5) 开放性

Oracle良好的加容性、可格植性、可连接性和高生产率使Oracle RDBMS具有良好的开放 性。 DB2

DB2是内嵌于IBM的AS/400系统上的数据库管理系统,直接由硬件支持。它支持标准的

12

SQL语言,具有与异种数据库相连的GATEWAYo因此它具有速度快、可靠性好的优点。但是, 只有^^件平台选择了 IBM的AS/400.才能选择使用DB2数据库管理系统。 DB2能在所有主流平台上运行(包括Windows),最适于海量数据。

DB2在企业级的应用最为广泛,在全球的500家最大的企业中,几乎85%以上都用DB2数 据库服务器,而国内到1997年约占5£ MySQL

MySQL是最受欢迎的开源SQL数据库管理系统,它由MySQL AB JF发、发布和支持。MySQL AB是一家基于MySQL开发人员的商业公司,它是一家使用了一种成功的商业模式来结合开 源价值和方的第二代开源公司。HySQL是MySQL AB的注册商标。

MySQL是一个快速的、多线程、多用户和健壮的SQL数据库服务器。HySQL服务器支持关 键任务、重负载生产系统的使用,也可以将它嵌入到一个大配置(mass-deployed)的软件中 去。 与貝他数据库管理系统相比,MySQL具有以下优势: (1) MySQL是一个关系数据库管理系统。 (2) MySQL是免费、开源的。

(3) MySQL服务器是一个快速的、可靠的和易于使用的数摇库服务器。 (4) MySQL J1U务器工作在客户/服务器或嵌入系统中。 (5) 有大量的MySQL软件可以使用「

12

如何选择数据库

U前使用比较多的数据库系统有sqlserverx oracle、db2等。选择一个好的 数据库是非常重要的。

开放性:

SQL Server只能在windows上运行,开放性相对不太好,操作系统的系统的稳 定对数据库是十分磴要的。Windows9X系列产品是偏重于桌面应用,XT server 只适合中小型企业。而且windows平台的可幕性,安全性和伸缩性是非常有限的。 它不象Unix那样久经考验,尤其是在处理大数据量的关键业务时。Oracle能 在所有主流平台上运行(包括windows) O完全支持所有的工业标准。采用完全 开放策略。可以使客户选择最适合的解决方案。对开发商全力支持。DB2能在所 有主流平台上运行(包括windows)。最适于海量数据。DB2在企业级的应用最 为广泛,在全球的500家最大的企业中,儿乎85%以上用DB2数据库服务器,而国 内到97年约占5眾

可伸缩性,并行性:

SQL server并行实施和共存模型并不成熟。很难处理日益增多的用户数和数据 卷。伸缩性有限。Oracle平行服务器通过使一组结点共享同一簇中的工作来扩 展windownt的能力,提供高可用性和高伸缩性的簇的解决方案。如果

WindowsNT 不能满足需要,用户可以把数据库移到UMX中。DB2具有很好的并行性。DB2 把数据库管理扩充到了并行的、多节点的环境•数据库分区是数据库的一部分, 包含自己的数据、索引、配置文件、和事务日志。数据库分区有时被称为节点或 数据库节点。

安全性:

SQL server没有获得任何安全证书©

Oracle Server获得最高认证级别的ISO标准认证。 DB2获得最高认证级别的ISO标准认证。

性能:

SQL Server多用户时性能不佳。Oracle性能最高,保持WindowsNT下的TPC-D 和TPC-C的世界记录。DB2适用于数据仓库和在线事物处理性能较髙。 客户端支持及应用模式:

SQL Server C/S 结构,可以用 ADO, DAO, OLEDB, ODBC 连接。Oracle 多层次网络 计算,支持多种工业标准,可以用ODBC, JDBC, OCI等网络客户连接。DB2跨平台, 多层结构,支持ODBC, JDBC等客户。

12

操作简便:

SQL Server操作简单。Oracle较复杂,同时提供GUI和命令行,在WindowsNT 和Unix下操作相同。DB2操作简单,同时提供GUI和命令行,在WindowsNT和unix 下操作相同。

使用风险:

SQL server完全重写的代码,经历了长期的测试,不断延迟,许多功能需要时 间来证明。并不十分兼容早期产品。使用需要冒一定风险。Oracle长时间的开 发经验,完全向下兼容。得到广泛的应用。完全没有风险。DB2在巨型企业得到 广泛的应用,向下兼容性好。风险小。

尽管sqlserver在许多方面不如oracl和db2,但是其价格比较低,其性能完全 能够满足中小企业的应用。

12

因篇幅问题不能全部显示,请点此查看更多更全内容