学籍管理系统

本文详细描述了一个基础的学生管理系统的设计,包括创建学生和成绩类,实现添加、删除、修改和查询功能,以及与外部文件的交互。文章还展示了功能测试的结果,虽然存在一些未完成目标,如部分功能限制和待改进之处。
摘要由CSDN通过智能技术生成

学生管理系统:

设计一个简单的学籍管理系统,实现出最基本的功能。

总体目标:

  1. 设计一个学生类Student,包含学号,姓名,宿舍,电话。
  2. 设计一个学生成绩类Score,包括学号,课程名称,分值。
  3. 添加、删除、修改学生信息功能。对重复录入进行检查。
  4. 添加,删除,修改学生成绩功能。对重复录入进行检查。
  5. 根据学生学号,查询该学生信息,以及成绩情况。
  6. 使用外部文件存储信息。

2.2 系统功能

功能分解:

  1. 对表格中的学生信息进行添加,删除,修改
  2. 支持使用学生学号查找学生信息
  3. 使用外部excel或txt文档格式进行对表格内信息的存储

2.3 程序设计

类的说明:

StuInfo:储存基本的学生信息

ScoreInfo:储存学生的成绩信息

Form2.cs:

FillGrid:初始化表格,将StuInfo类中的数据输入进表格

ButtonDele_Click:删除键,支持使用学号来进行删除的操作。

ButtonQuery_Click:搜索键,支持使用学号来对已有的学生信息进行搜索。

ButtonAdd_Click:准备键,对输入框进行清零准备。

ButtonEdit_Click:修改键,对表格中已有的数据进行修改操作

ButtonOK_Click:添加键,将输入框内的数据储存到表格中,同时对添加的学号进行重复录入的检查。

ButtonCel_Click:复位键,将输入框内的数据清零。

Exit_Click:退出键,关闭当前的窗口。

buttonsave_Click:保存键,对表格内的数据进行保存,支持在任意目录下保存,格式可选择txt或excel

buttonopen_Click:读取键,支持读取外部excel的内容,但是暂时不支持进行修改。

Form3.cs:

FillGrid:初始化表格,将ScoreInfo类中的数据输入进表格

ButtonDele_Click:删除键,支持使用学号来进行删除的操作。

ButtonQuery_Click:搜索键,支持使用学号来对已有的学生信息进行搜索。

ButtonAdd_Click:准备键,对输入框进行清零准备。

ButtonEdit_Click:修改键,对表格中已有的数据进行修改操作

ButtonOK_Click:添加键,将输入框内的数据储存到表格中,同时对添加的学号进行重复录入的检查。

ButtonCel_Click:复位键,将输入框内的数据清零。

Exit_Click:退出键,关闭当前的窗口。

buttonsave_Click:保存键,对表格内的数据进行保存,支持在任意目录下保存,格式可选择txt或excel

类关系图:

业务流程图:

2.4 测试结果

学生基本信息界面:

1.正常添加学生信息:

添加前:

运行正常。

  1. 添加学生信息时重复录入信息:

弹出警告:学号已存在

重复录入检测功能正常。

  1. 修改学生数据:

文本框正常显示学生数据

对班级和宿舍信息进行修改,运行正常。

  1. 对不存在的学生数据进行修改

弹出警告,修改的数据不存在。

检错功能正常。

  1. 删除表格数据

003学生信息删除,运行正常

6.对不存在的学生数据进行删除

弹出警告,删除的元素不存在

检错功能正常。

7.保存功能

保存为excel正常

保存为txt正常

学生成绩界面:

  1. 正常添加学生信息

运行正常

2.添加学生信息时重复录入信息:

弹出警告:学号已存在

重复录入检测功能正常。

  1. 修改学生数据:

文本框正常显示学生数据

对高数成绩和英语成绩信息进行修改,运行正常。

  1. 对不存在的学生数据进行修改

弹出警告,修改的数据不存在。

检错功能正常。

  1. 删除表格数据

002学生信息删除,运行正常

6.对不存在的学生数据进行删除

弹出警告,删除的元素不存在

检错功能正常。

7.保存功能

保存为excel正常

保存为txt正常

3.结论与心得

程序上还有一些想完成的目标,但由于编程的知识不够完善无法实现,如读取外部文件后的表格内容无法进行修改,没有完成自定义录入的功能。希望在接下来的学习中完善我的不足。

用户描述 1.引言 随着信息技术高速发展,信息化程度的不断提高,计算机的应用已普及到经济和社会生活的各个领域。计算机虽然与人类的关系愈来愈密切,还有人由于计算机操作的不方便而继续沿用传统的手工劳动。 为了适应现代社会的高效率,提高当前在教学领域的管理水平,我们特开发一套学籍管理系统。 该系统由目前主流的程序设计开发工具实现,其功能在系统内部由源代码直接完成。通过操作手册,用户可以了解本软件的基本工作原理。操作人员只需输入一些简单的汉字、数字,即可达到自己的目标,从而为教学办公自动化带来了极大的方便。 1.1编写目的 此文档作为用户对即将开发的软件的功能要求,是软件设计和开发者的主要依据。 1.2项目背景 项目名称:学生学籍管理信息系统 项目委托单位:XXX 软件开发单位:hustwh_xj 2.任务描述 2.1目标 使得学籍管理更为完善; 对学生档案的管理更为方便; 减轻教学管理人员的工作量。 2.2运行环境 本系统是基于C/S模式的采用vb实现的学生管理信息系统(Students Management Information System),以后简称SMIS。数据库服务器由access实现。操作系统:WINDOWS xp;数据库服务器端软件Microsoft Access2000 + SQL查询语句。 3.数据描述 1. 数据流程图: 用 户 系统登录 初始化 新生报到 信息录入 分班开始学习 结束 退出登录 录入成绩 考试 信息修改及打印 2.针对这个处理流程,现具体描述如下: ① 用户登录:对系统进行初始化设置,包括对专业、课程和班级的设置 ② 新生报到:按专业分班进行教学,并为每位新生分配学号,然后对学生基本信息进行录入, ③ 学生分配到班级、领教材开始新的大学学习生活 ④ 用户对学生在校期间个人基本信息发生变化的,在系统中进行修改 ⑤ 期末考试结束,把每个学生的成绩进行录入、修改、查询和打印 3.功能 3.1功能划分 学生档案管理系统必须完成以下功能: 系统管理模块学籍管理模块,班级管理模块,专业课程管理模块,成绩管理模块,用户帮助模块。 3.2描述 系统管理模块:包括用户管理,重新登录,退出系统子功能 学籍管理模块:包括学生添加学生查询学生注销学生打印子功能。 班级管理模块:包括添加,查询,注销班级子功能。 专业课程管理模块:包括设置专业,设置课程,查询修改子功能。 成绩管理模块:添加成绩。 用户帮助模块:对各个病人的生理信号的安全范围进行输入、修改、查询。 二、可行性分析 1.可行性研究的前提 学生档案管理系统必须完成以下功能: ① 数据添加功能:对于新生报到,系统必须具有班级的建立,课程的设置,如果新增专业,则能添加新专业,期末学生的考试成绩信息必须能够录入; ② 数据修改功能: 当上述资料发生变化或有错误信息输入时,应能够及时对数据进行修改和补充; ③ 数据查询功能:该系统的主要功能之一即根据用户提供的相关信息,能够及时查找出对应的学生信息,系统应该提供多种查询方法,以便满足用户的不同需求; ④ 数据打印功能: 学生基本信息和成绩录入后应可以打印出来形成文字档案,装入学生档案,这也是学生档案管理系统必须具备的功能。 2.技术可行性 a. 经费、投资方面的来源和限制:各种硬件和工作人员工资需至少1万元 b. 硬件、软件、运行环境和开发环境方面的条件和限制:软件需求:操作系统WINDOWS 2000 Advance Server以上;数据库服务器端软件access。硬件需求:10M以上的LAN接入网络带宽,P4 3.0G Xeon CPU /1G内存/360G(10K) SCSI硬盘的服务器,P3以上微机(带网卡)的客户机,P4 3.0G Xeon CPU /1G内存/36G(10K) RAID硬盘的数据库服务器 本系统采用vb实现,依靠其强大的控件系统,access数据库管理系统和用c语音编制的传感器驱动相结合,能在2个月内开发出系统。 3.经济可行性 学校如果要采用完全人工的方式处理,现在看来基本上是不太可能的。首先是一个存放的问题,必需要有一个足够大的档案室来存放这些档案,而且随着年数的增加,这个规模几乎是成几何式的增长。其次是存取,查阅的问题,随着档案的不断增加,要从如此复杂的档案库中调阅某学生的档案所消耗的人力物力是无法估量的,而且学生档案本身就很复杂,要查阅或者修改其中的某一项值,其修改的冗余度太大。最后是 一个保存和管理的问题,纸质媒介存放时间短,体积大,需要的人力物力过大。虽然制作一个数据管理系统的前期投资相对较大,但后期除了系统的维护升级和少量人力的投入以外几乎无其他投资,随着时间的推移,就会逐步显现经济上的巨大优势。 4.法律可行性 法律可行性是考虑要开发系统是否存在任何侵犯、妨碍和责任问题,用户操作可行性考虑待开发软件的运行方式在用户组织内是否行得通,现行管理制度、人员素质、操作知识是否可行。 由于在本系统中是有合同作为双方合作的基础,所以不会存在任何侵犯、妨碍和责任问题。即使存在了,也可以根据合同进行分析,一定有人会负责任,所以此系统完全可以进行开发。 由以上经济、技术、操作和法律四方面的分析可以看出,本系统的开发时机成熟,从多种角度考虑,都是可行的。 5结论 本系统投资势在必行。 三、需求分析 用户需求分析 根据系统分析得到的现行业务处理流程,在反复研究后,首先得到目标系统即学生档案管理系统的业务流程,其处理流程如图所示 用 户 系统登录 初始化 新生报到 信息录入 分班开始学习 结束 退出登录 录入成绩 考试 信息修改及打印 针对新的处理流程,现具体描述如下: ① 用户登录:对系统进行初始化设置,包括对专业、课程和班级的设置 ② 新生报到:按专业分班进行教学,并为每位新生分配学号,然后对学生基本信息进行录入, ③ 学生分配到班级、领教材开始新的大学学习生活 ④ 用户对学生在校期间个人基本信息发生变化的,在系统中进行修改 ⑤ 期末考试结束,把每个学生的成绩进行录入、修改、查询和打印 3.1 用户调查 经过详细的调研,并多次与学生档案管理的老师进行研讨后,首先加深了对学生信息管理系统业务的深刻了解,其次在充分熟悉学生档案管理业务的同时,将整个学生档案管理的业务流程描述如下: ○1 新生入校,首先报到并进行登记注册,然后到财务部门缴费。根据学生被录取的专业,持缴费单到所在系部报到注册。 ○2 到系或部注册后,根据选报专业分配到班级 ○3 进入正常大学生活,参加各种教学活动,学期期末要求每位同学参加各科的期末考试。 ○4 考试结束,由各系或部将每位学生的考试成绩及其他一些相关信息记录到每个同学的档案中。 根据以上总结,得出可行的业务流程图 办理登记手续 系部 安排课程 档案信息 开始学习活动 3.2 构造系统的逻辑模型 根据现行学生信息管理的业务流程,确定数据流图中的源点和终点都选定为学生,如此就得到了学生档案管理系统的基本系统模型。 学生基本信息 学生成绩信息 根据基本系统模型,逐步细化,得到描绘逻辑系统细化后的数据流图。 D1 学生信息表 D3 课程信息表 学生基 本信息 课程信息 新生报到 1.2 1.3 成绩信息 注册 建档分班 课程确定 班级 信息 D2 班级信息表 D4 成绩信息表 学生 毕业分档 1.4 成绩信息 处理档案 系统的主要数据元素的数据字典卡片,以具体说明数据字段卡片中相关数据的含义 3.3 数据分析——概念模型设计 分析用户对数据的要求。 3.4.1 数据库建模 实体:学生、课程、专业、班级等。它们的实体图分别如图所示 学生实体 学号 姓名 政治面貌 性别 出生日期 家庭住址 课程实体 课程名称 课 程 所属专业 专业实体 专业名称 专 业 所属院系 班级实体 班级名称 人 数 所属院系 班 级 所在教室 辅导员 根据两两实体之间的联系,然后进行合并,给出所有实体的联系图即E-R图,如图1所示 课程 学 学生 成绩 属于 班级 属于 专业 图1.9 学生信息管理的E-R图 3.4.2 关系描述的设计 学生(学号、姓名、性别、政治面貌、出生日期、专业、班级、家庭住址、联系方式、备注) key为学号, 课程(课程名称、所属专业)key为课程名称, 专业(专业名称、所属院系)key为专业名称 班级(班级名称、所属院系、辅导员、教室、人数)key为班级名称 成绩(学号、姓名、专业、课程名称、成绩)key为学号与课程名称 在考虑系统安全的前提下,需要增加用户关系,其关系模式如下: 用户(用户名称、密码、用户ID)key为用户名称 得出以上关系后,根据关系数据库的理论要求,需要对所有关系进行关系规范化。 系统设计 系统设计一般分为总体设计和详细设计,进过需求分析阶段的工作,已经清楚系统必须完成的工作,下面的工作就是决定“如何做”的问题。总体设计的基本目的就是“概括地说系统应该如何实现?”。通过该阶段的工作将划分出组成系统的物理元素——程序、文件、数据库、文档等,另一方面的主要工作就是设计软件的结构,即确定系统都由哪些模块组成及模块之间的相互关系。 3.5 软件系统结构的设计 3.5.1得到新的业务流程 目标系统即学生档案管理系统的业务流程 用 户 系统登录 初始化 新生报到 信息录入 分班开始学习 结束 退出登录 录入成绩 考试 信息修改及打印 具体描述如下: ① 用户登录:对系统进行初始化设置,包括对专业、课程和班级的设置 ② 新生报到:按专业分班进行教学,并为每位新生分配学号,然后对学生基本信息进行录入, ③ 学生分配到班级、领教材开始新的大学学习生活 ④ 用户对学生在校期间个人基本信息发生变化的,在系统中进行修改 ⑤ 期末考试结束,把每个学生的成绩进行录入、修改、查询和打印 3.5.2 系统功能结构图 学生信息管理系统的系统功能结构图。 学生档案管理系统 系统 学籍管理 添加用户 修改密码 退出系统 添加学籍 修改学籍 删除学籍 打印信息卡 班级管理 专业与课程 添加班级 修改班级 专业信息 课程信息 设置专业课程 添加专业信息 设置课程 添加课程 修改课程 成绩管理 添加成绩 查询修改成绩 打印成绩单 3.6 数据库的设计 3.6.1 数据库的逻辑设计 根据前面得到的各个关系,现把它们转化为数据表。 ① 学生信息表 ② 课程信息表 ③ 专业信息表 ④ 班级信息表 ⑤ 成绩信息表 ⑥ 用户表 3.6.2 数据库的物理设计 考虑程序设计的简易性及通用性,本学生管理信息系统采用Microsoft的Access2000数据库,并在其下创建6个数据表,结构分别如下: ① 学生信息表(student),共有10个字段,分别为:学号、姓名、性别、政治面貌、出生日期、专业、班级、联系电话、家庭住址、备注。 表1 学生信息表的结构 字段名 数据类型 字段长度与格式 关 键 字 学号 文本 15 是 姓名 文本 8 否 性别 文本 2 否 政治面貌 文本 10 否 出生日期 日期型 YYYY-MM-DD 否 专业 文本 20 否 班级 文本 10 否 家庭住址 文本 30 否 联系电话 文本 15 否 备注 文本 50 否 ② 课程信息表(kc),本表有2个字段:课程名称、所属专业,见表2 表2 课程信息表的解放 字段名 数据类型 字段长度与格式 关键字 课程名称 文本 20 是 所属专业 文本 20 否 ③ 班级信息表(class),共有5个字段分别为:班级名称、所属院系、辅导员、教室、人数,见表3 表3 班级信息表结构 字段名 数据类型 字段长度与格式 关键字 班级名称 文本 10 是 所属院系 文本 20 否 辅导员 文本 8 否 教室 文本 15 否 人数 文本 3 否 ④ 专业信息表(zy),有2个字段分别为:专业名称、所属院系 表4 专业信息表结构 字段名 数据类型 字段长度与格式 关键字 专业名称 文本 20 是 所属院系 文本 20 否 ⑤ 成绩信息表(score),有5个字段分别为:学号、姓名、专业、课程名称、成绩, 表5 成绩信息表结构 字段名 数据类型 字段长度与格式 关键字 学号 文本 15 是 姓名 文本 8 否 成绩专业 文本 20 否 课程名称 文本 10 是 成绩 整型 否 ⑥ 用户表(yonghu),有2个字段为:用户名称、密码 表6 用户表结构 字段名 数据类型 字段长度与格式 关键字 用户名称 文本 8 是 密码 文本 8 否 以上为本系统的6个表。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值