学生管理系统数据库与软件设计

需积分: 12 3 下载量 49 浏览量 更新于2024-06-27 收藏 234KB DOC 举报
"学生管理系统的数据库设计" 这篇文档主要介绍了思文学生管理系统的数据库设计过程,涵盖了从需求分析到系统测试的各个阶段。首先,系统的基本需求被列出,包括学籍注册、专业调剂、选课与成绩管理等功能。系统的主要功能分为对学生、教师、课程、选课、成绩和日常表现的管理。 在需求分析阶段,明确了软件的目标和环境,例如需要统一的操作系统(Windows 7)、SQL Server 2005数据库系统和防病毒软件。概念结构设计强调了细分原则、代码重用、自顶向下分析、一致性和模块独立性,将用户需求模块化为管理员、教师和学生三个主要模块。 数据库设计是核心部分,涉及学生、教师、课程和管理员四个实体的表结构设计。每个实体都有其特定的属性,如学生表包含学号、姓名、性别等信息,教师表包括教师ID、姓名和登录密码。设计遵循了数据库设计的范式原则,确保数据的一致性和完整性。 在系统功能设计中,管理员模块能够管理学生和课程信息,教师模块用于查看课程和提交成绩,学生模块则支持选课和查看个人信息。最后,系统的测试环节确保了所有功能的正常运行。 这个学生管理系统旨在提供一个高效、安全的信息管理平台,满足学校对学生、教师、课程等数据的存储和处理需求,同时保证系统的稳定性和扩展性。通过合理的数据库设计和模块划分,实现了功能的明确分工和信息的有序管理。
2023-01-08 上传
数据库设计 题目 思文学生管理系统 姓 名 班 级 指导教师 学 期 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. 基本需求 学生信息管理系统软件,满足以下条件: (1)能完成学生的学籍注册 (2)学生若不喜欢此时的专业,他们可以自动调剂专业 (3)学生可以选课,并查看个人信息及日常表现情况。 (4)对学生信息、课程信息进行记录。 (5) 管理员可以对学生学籍信息的查询,添加,修改,删除;学生信息及成绩的录入,修 改,删除。修改密码等功能。 (6) 管理员拥有最高的权限。允许添加教师信息和课程信息等。 学校需要的就是能满足以上需求的软件。需求就是一套软件的终极目标,但并不 是每一个需求都能达到的,分析人员还要根据开发环境一条条地分析这些需求。 1. 该软件的主要功能 (1)对学生信息的管理 (2)对教师信息的管理 (3)对课程信息的管理 (4)对选课信息的管理 (5) 对成绩的管理 (6) 对学生的日常表现情况 2. 根据需求确定工作环境 1. 软件环境 除了要安装学生管理系统外,还必须具备相应的软件环境,才能更好地运行。 (1)应采用统一的软件操作系统(win 7),这是为了更好地管理。 (2)服务器上安装数据库系统(SQL Server 2005),从而实现信息资源安全化管理。 (3)安装防病毒软件,病毒防火墙等。因为所有的机器都是互连的,一旦有病毒侵 入,容易造成整个系统的瘫痪。 2.概念结构设计 1. 2. 1. 概念结构设计 概念结构设计是根据系统分析的需求和工作环境的情况对整个软件的总体结构进行 大致的设计。概要设计要坚持以下几个原则: (1)细分原则:软件系统都是由很多不同的模块组成,当设计一套软件时,要先将 所有的功能分解。解决复杂问题的方法是将其分解成几个小问题,一个个来解决。 (2)提高代码重用性:在面向对象设计中,首先考虑的就是代码的重用,一个好的 设计,将来在升级换代时不需要太大的改动,节省了人力物力。 (3)从上而下层层分析:概要设计要从整体出发,逐个剖析软件的功能,从上而下 ,先分析系统总的功能,然后一步步细分,直到最小的功能模块。 (4)一致性原则:概要设计要求所有功能模块在定义时使用统一的规范。 (5)提高独立性,减少耦合:各个模块与模块之间尽量减少关联,否则修改一个地 方就会引起其他多处的变动,不符合面向对象的原则。一般情况下,对类封装后,只允 许对类进行扩展,而不能修改,而封装的类必须具有单一职责,即理论情况下不允许两 个类共同完成一个功能。 2. 将用户需求模块化 1. 确定系统最终模块 概要设计中最重要的就是确定此项目包括哪些模块。根据上两节讲述的设计原则和模 块特征,将用户需求转化为下面的模块。 (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) "唯一 " "用户名称 "UserNam