学生管理系统的数据库设计.doc
文本预览下载声明
数据库设计
题目 思文学生管理系统
姓 名
班 级
指导教师
学 期
2015年 12 月 21 日
目录
1.需求分析 3
1.2根据需求确定工作环境 6
2.概念结构设计 7
2.1 概念结构设计的原则 7
2.2 将用户需求模块化 9
3 数据库设计 11
3.1根据数据信息构建表结构 13
4. 系统功能设计 14
5系统的测试 18
基本需求
学生信息管理系统软件,满足以下条件:
(1)能完成学生的学籍注册
(2)学生若不喜欢此时的专业,他们可以自动调剂专业
(3)学生可以选课,并查看个人信息及日常表现情况。
(4)对学生信息、课程信息进行记录。
(5) 管理员可以对学生学籍信息的查询,添加,修改,删除;学生信息及成绩的录入,修改,删除。修改密码等功能。
(6) 管理员拥有最高的权限。允许添加教师信息和课程信息等。
学校需要的就是能满足以上需求的软件。需求就是一套软件的终极目标,但并不是每一个需求都能达到的,分析人员还要根据开发环境一条条地分析这些需求。
该软件的主要功能
(1)对学生信息的管理
(2)对教师信息的管理
(3)对课程信息的管理
(4)对选课信息的管理
(5) 对成绩的管理
(6) 对学生的日常表现情况
根据需求确定工作环境
软件环境
除了要安装学生管理系统外,还必须具备相应的软件环境,才能更好地运行。
(1)应采用统一的软件操作系统(win 7),这是为了更好地管理。
(2)服务器上安装数据库系统(SQL Server 2005),从而实现信息资源安全化管理。
(3)安装防病毒软件,病毒防火墙等。因为所有的机器都是互连的,一旦有病毒侵入,容易造成整个系统的瘫痪。
2.概念结构设计
概念结构设计
概念结构设计是根据系统分析的需求和工作环境的情况对整个软件的总体结构进行大致的设计。概要设计要坚持以下几个原则:
(1)细分原则:软件系统都是由很多不同的模块组成,当设计一套软件时,要先将所有的功能分解。解决复杂问题的方法是将其分解成几个小问题,一个个来解决。
(2)提高代码重用性:在面向对象设计中,首先考虑的就是代码的重用,一个好的设计,将来在升级换代时不需要太大的改动,节省了人力物力。
(3)从上而下层层分析:概要设计要从整体出发,逐个剖析软件的功能,从上而下,先分析系统总的功能,然后一步步细分,直到最小的功能模块。
(4)一致性原则:概要设计要求所有功能模块在定义时使用统一的规范。
(5)提高独立性,减少耦合:各个模块与模块之间尽量减少关联,否则修改一个地方就会引起其他多处的变动,不符合面向对象的原则。一般情况下,对类封装后,只允许对类进行扩展,而不能修改,而封装的类必须具有单一职责,即理论情况下不允许两个类共同完成一个功能。
将用户需求模块化
确定系统最终模块
概要设计中最重要的就是确定此项目包括哪些模块。根据上两节讲述的设计原则和模块特征,将用户需求转化为下面的模块。
(1)管理员模块:是本系统的核心模块,该模块又包括对学生管理和课程管理2个子模块,功能如下:
学生管理子模块:实现对学生信息的添加、修改、删除操作,还可以输入查询条件进行查询操作。
图3-1 学生管理子模块
课程管理子模块:实现对课程的添加,实现对课程的修改、删除,查看某个课程的详细信息等。
图3-2 课程管理子模块
(2)教师模块:实现查看自己所教授的课程、课程有哪些学生选修,以及利用本系统提交学生的成绩。
图3-3 教师管理模块
(3)学生模块:实现学生的选课,查看、修改自己的选课信息及查看自己日常的表现情况。
图3-4 学生模块
数据库设计
在前面已经罗列出了用户的需求,这也正是数据库信息的来源。根据列表内容,可以提炼出以下数据信息。
(1)需要管理学生信息:学生表。
(2)需要管理教师信息:教师表。
(3)需要管理课程信息:课程表。
(4)需要管理管理员信息:管理员表。
实体属性表:
实体 属性 教师 教师ID,教师姓名,登录密码 课程 课程号,课程名称,教师ID 管理员 管理员ID,管理员姓名、登录密码 学生 学号,姓名,性别,密码,身份证号,地址、专业 数据库E-R图设计:
3.1根据数据信息构建表结构
对于如何提取数据表字段,要遵守3个原则。
(1)每个字段都是不可再分的最小数据单位。
(2)非主键字段必须完全依赖于主键
(3)如果两个表存在关联,必须有字段作为外键进行连接。
3.2.1 数据库表的设计
1)用户信息表T_UserInfo UserID UserID Int 主键 用户编号 LoginName Varchar(50) 唯一 用户名称 Use
显示全部