翼度科技»论坛 编程开发 JavaScript 查看内容

数据库系统原理之数据库应用设计与开发实例

7

主题

7

帖子

21

积分

新手上路

Rank: 1

积分
21
数据库应用设计与开发实例

第一节 需求描述与分析

在此,结合某高校个性化课程在线选课的实际需求,给出一个简化的需求分析
一、功能性需求

1 管理员后台模块


  • 学生信息管理
  • 教师信息管理
  • 课程信息管理
  • 班级信息管理
2 学生使用模块


  • 查询课程
  • 浏览所选课程
  • 查询成绩
3 教师使用模块


  • 我的课程
  • 登分
二、非功能性需求

在线选课系统
浏览器/服务器(B/S) 结构

  • 选课系统质量需求:

    • 可靠性
    • 正确性
    • 兼容性
    • 健壮性

第二节 系统设计

自顶向下  功能模块结构图
一、功能模块设计


  • 登录验证模块
  • 管理员后台模块

    • 学生信息管理模块
    • 教师信息管理模块
    • 课程信息管理模块
    • 院系信息管理模块

  • 学生使用模块

    • 查询课程模块
    • 浏览已选课程模块
    • 选课及退选模块
    • 成绩查询模块

  • 教师使用模块

    • 我的课程模块
    • 登分模块

二、数据库设计

1 确定实体


  • 学生实体用于描述学生的基本信息,包括学号、姓名、性别、密码等信息。
  • 教师实体用于描述教师的基本信息,包括教师工号、姓名、性别、年龄、职称、密码登信息。
  • 课程实体用于描述课程的基本信息,包括课程号、课程名、学分、时间、地点、类别、开课学院、限选人数等信息。
  • 院系实体用于描述院系的基本信息,包括院系名称、办公地点、教师人数等信息。
  • 系统管理员实体用于描述系统管理员的基本信息,包括姓名、ID号、密码登信息。
注意:在数据库设计时,实体的描述信息可根据实际需求进行增加或删减,如果实体的属性较多,在构建 E-R 模型时不一定需要把所有的属性都标识在E-R 模型上,可以另外用文字说明,这样也使得 E-R 模型简明清晰,便于分析。
2 局部信息结构


  • 学生-课程  “选修” 多对多(M:N)
  • 教师-课程 “授课” 一对多(1:N)
  • 教师-院系 “属于” 一对多(1:N)
  • 学生-院系 “属于” 一对多(1:N)
  • 系统管理员-学生 “管理” 多对多 (M:N)
  • 系统管理员-教师 “管理” 多对多 (M:N)
  • 系统管理员-课程 “管理” 多对多 (M:N)
  • 系统管理员-院系 “管理” 多对多 (M:N)
3 全局信息结构


  • 首先将学生-课程E-R图、教师-课程E-R图,教师-院系E-R图、学生-院系E-R图合并成为一个较大的局部信息结构。

    • 学生-教师-课程-院系 E-R 图

  • 将 系统管理员-学生、系统管理员-教师、系统管理员-课程、系统管理员-院系的E-R图合并成为一个较大的局部信息结构。

    • 系统管理员-学生-教师-课程-院系 E-R 图

  • 最后,将 学生-教师-课程-院系 E-R 图和系统管理员-学生-教师-课程-院系 E-R 图合并成为一个本系统的全局 E-R 图。
4 逻辑结构与规范化设计

转换为关系模式,主码用下划线标识

  • 学生(学号、姓名、性别、登录密码、院系编号)
  • 院系(院系编号、系名、学生人数、教师人数、办公地点)
  • 教师(职工号、姓名、性别、年龄、职称、登录密码、院系编号)
  • 课程(课程号、课程名称、课程类别、学分、上课时间、上课地点、开课学院、限选人数、职工号)
  • 系统管理员(ID号、姓名、登录密码)
  • 选修(学号、课程号、成绩)
  • 管理学生(管理员 ID 号、学号、操作时间)
  • 管理院系(管理员 ID 号、院系编号、操作时间)
  • 管理教师(管理员 ID 号、职工号、操作时间)
  • 管理课程( 管理员 ID 号、课程号、操作时间)
E-R 图    关系模式    第三范式
院系
院系编码(院系编号、系名)
院系(院系编号、学生人数、教师人数、办公地点)
课程
课程编码(课程号、课程名称)
课程(课程号、课程类别、学分、上课时间、上课地点、开课学院、限选人数、职工号)
第三节 系统实现

1 数据库的实现


  • 创建数据库
  1. mysql> create database db_xuanke;
  2. Query OK, 1 row affected (0.00 sec)
  3. mysql>
复制代码

  • 创建表

    • 学生信息表  student
    • 院系编码表 deptcode
    • 院系表 department
    • 教师表 teacher
    • 课程编码表 coursecode
    • 课程表  course
    • 系统管理员表 administrator
    • 选修表  electing
    • 管理学生表  adminstu
    • 管理院系表  admindept
    • 管理教师表  adminteacher
    • 管理课程表  admincourse

2 系统功能的实现


  • 实现数据库行为

    • 安全控制
    • 管理学生
    • 数据库保护
    • 事务与并发控制
    • 数据查询与统计报表

  • 实现应用软件的业务逻辑
第四节 系统测试与维护

1 登录验证功能测试

2 管理员后台主要功能测试


  • 学生信息管理功能
  • 课程信息管理功能
3 学生使用模块功能测试

4 教师使用模块功能测试


来源:https://www.cnblogs.com/QiaoPengjun/p/17288085.html
免责声明:由于采集信息均来自互联网,如果侵犯了您的权益,请联系我们【E-Mail:cb@itdo.tech】 我们会及时删除侵权内容,谢谢合作!

举报 回复 使用道具