管理信息系统课程设计---学生成绩管理系统
课程设计-学生成绩管理系统

数据结构课程设计报告题目:学生成绩管理系统学生姓名:学号:班级:指导教师:课程设计评分表学生姓名:班级:学号:课程设计题目:学生成绩管理任务:本题对学生的某门课程成绩管理做一个简单的模拟,设计一个学生成绩管理系统。
假设学生信息包括:学号、姓名、性别,课程的成绩信息有平时成绩、实验成绩、期未成绩、总评成绩,总评成绩=平时成绩*0.4+实验成绩*0.3+期未成绩*0.3,用菜单选择方式完成下列功能:(1)登记学生成绩;(2)插入学生成绩;(3)修改学生成绩;(4)删除学生成绩;(5)查询学生成绩;(5)对学生成绩进行排序;(6)输出学生成绩。
在完成上术基本要求的操作后,要应用功能(6)进行测试。
一、设计思路二、设计说明与调试分析三、源程序代码四、测试结果五、设计心得六、参考文献一、设计思路本系统是一个学生成绩管理系统,输入数据类型主要是string等数据类型,输入内容包括:学生学号、姓名、平时成绩、实验成绩、期末成绩等数据。
用户在输入学生数据时要保证输入数据格式的正确性,系统不会自动检测输入的数据是否正确。
输出形式与输入形式类似,根据需要可以选择显示输入的各项内容,显示内容包括:学生学号、姓名、平时成绩、实验成绩、期末成绩,总评成绩。
用户运行程序后进入系统主界面在主界面用户可以输入所有学生的数据并保存到文件中,也可以读取文件中已有的学生数据。
本系统同时只能对一个数据文件进行相关操作。
当用户读取学生数据后可对其进行显示、文件尾增加、删除、查询、排序、修改等相关操作。
用户在操作过程中可随时对当前文件进行保存到文件操作,以防止修改的数据丢失。
二、设计说明与调试分析主要编写部分学生成绩管理系统学生成绩管理系统内,共有两个类,分别为学生类和管理类。
学生对象用vector容器来存放。
管理类共包含了7个不同的函数,而每一个函数是一个模块,并对它们具体编写,使之具有不同的功能,能实行相应的操作。
2.1 本程序中定义的类及其函数:1.Student 类class Student//定义一个Student类//{public:Student(string nu = "0", string na = "0", int ping = 0, int shi = 0, int qi = 0);void set_student(const string &Nu, const string &Na, int Ping, int Shi, int Qi);void set_pingshi(int ping) { pingshi = ping; }//类成员函数set_pingshi,设置平时成绩//void set_shiyan(int shi) {shiyan = shi; }//类成员函数set_shiyan,设置实验成绩//void set_qimo(int qi) { qimo = qi; } //类成员函数set_qimo,设置期末成绩//bool search(const string &num) { return number == num; }void display();//声明display显示函数//bool operator<(const Student&);//运算符重载//Student& swap(Student&);public:string number; //定义学生的学号//string name; //定义学生的姓名//int pingshi/*平时成绩*/,shiyan/*实验成绩*/, qimo/*期末成绩*/;};2. Manage 主要功能类class Manage//主要功能类//{private:vector <Student> stu;public:Manage() {}void Add(Student&s);//声明添加学生信息的函数//void Add2(Student&s);//声明登记学生信息的函数//void Chaxun(); //声明查询学生信息的函数//void Paixu();//声明将学生的成绩的平均数进行排序的函数//void Revise(); //声明修改学生信息的函数//void Delete(); //声明删除学生信息的函数//void Save(); //声明存储学生信息的函数//void Load(); //声明读取学生信息的函数//void Play(); //声明显示学生信息的函数//};2.2 管理类中各模块功能分析1、登记学生信息,登记大量学生信息包括增添学生的姓名、学号、平时成绩、实验成绩、期末成绩等用void Add2(Student&s)函数去实现。
C语言课程设计--学生成绩管理系统

*题目七:学生成绩管理系统设计学生成绩信息包括:学期,学号,班别,姓名,四门课程成绩(语文、数学、英语和计算机)等。
主要功能:(1)能按学期、按班级完成对学生成绩的录入、修改(2)能按班级统计学生的成绩,求学生的总分及平均分(3)能查询学生成绩,不及格科目及学生名单(4)能按班级输出学生的成绩单要求:使用二进制文件方式存储数据,系统以菜单方式工作源代码:#include<stdio.h>#include<ctype.h>#include<stdlib.h>#include<string.h>struct Student{int cls;char nam[10];char num[10];int chinese;int english;int computer;int math;}stud1[100],stud2[100];{char a;while(a>'7'||a<'0'){system("cls");printf(" 欢迎使用学生成绩管理系统\n");printf(" 制作人:章建\n");printf("********************** 学生成绩管理系统************************\n");printf(" 1.输入学生成绩\n");printf(" 2.输出学生成绩\n");printf(" 3.查找并显示学生成绩\n");printf(" 4.按姓名查找,修改学生资料\n");printf(" 5.显示所有学生名单\n");printf(" 6.查找并删除学生信息\n");printf(" 7.从文件读取数据\n");printf(" 0.储存学生资料并退出系统\n");printf("********************************************************************* *\n");printf("请选择(0-7)\n");a=getchar();}return(a-'0');}/******************************************************************************int Input(Student stud[],int n) //输入数据(第一学期)。
数据库课程设计--学生成绩管理系统

数据库课程设计--学生成绩管理系统一、引言学生成绩是教育领域中最重要的数据之一。
为了有效地管理和分析学生的成绩数据,学生成绩管理系统应运而生。
本文将介绍一个基于数据库的学生成绩管理系统的设计。
二、系统概述学生成绩管理系统主要功能包括学生信息管理、课程管理、成绩录入与查询等。
通过该系统,教师可以方便地管理学生成绩,学生可以随时查询个人成绩,而管理员可以对系统进行维护和权限管理。
三、数据库设计1. 实体-关系模型在学生成绩管理系统中,主要的实体包括学生、课程、教师和成绩。
它们之间的关系如下:- 学生与课程之间是多对多的关系,一个学生可以选修多门课程,一门课程也可以有多个学生参加。
- 学生与成绩之间是一对多的关系,一个学生可以有多个成绩记录,但一个成绩只能对应于一个学生。
- 课程与成绩之间是一对多的关系,一门课程可以有多个成绩记录,但一个成绩只属于一个课程。
2. 数据库表设计基于上述实体-关系模型,我们设计了以下数据库表:- 学生表(Student):包括学生编号、学生姓名、性别、年级等信息。
- 课程表(Course):包括课程编号、课程名称、学分等信息。
- 教师表(Teacher):包括教师编号、教师姓名、职称等信息。
- 成绩表(Score):包括学生编号、课程编号、成绩等信息。
四、系统功能设计1. 学生信息管理教师和管理员可以对学生信息进行增、删、改和查操作。
包括学生的基本信息和选课情况等。
2. 课程管理教师和管理员可以对课程信息进行增、删、改和查操作。
包括课程的基本信息和授课教师等。
3. 成绩录入与查询教师可以根据课程和学生信息录入成绩,同时学生和管理员可以根据课程和学生信息查询成绩。
五、系统界面设计学生成绩管理系统应具有用户友好的界面,便于用户操作和信息浏览。
界面设计应符合人机工程学的原则,以实现良好的用户体验。
六、系统安全设计为了确保学生成绩的保密性和完整性,学生成绩管理系统应具备一定的安全措施。
学生成绩管理系统课程设计报告

学生成绩管理系统-课程设计报告学生成绩管理系统-课程设计报告一、引言学生成绩管理系统是一种能够方便高效地管理学生学业成绩的软件系统。
随着教育信息化的发展,学生成绩管理系统已经成为各个学校和教育机构不可或缺的一部分。
本课程设计报告旨在设计和实现一款学生成绩管理系统,以满足学校对学生成绩管理的需求。
二、系统需求分析1.学生信息管理:系统需要能够存储学生的基本信息,包括学号、姓名、性别、年级等。
2.课程管理:系统需要能够管理学校的各门课程信息,包括课程名称、授课教师、学分等。
3.成绩录入:系统需要能够录入学生的成绩信息,包括学生学号、课程名称、成绩等。
4.成绩查询:系统需要提供成绩查询功能,学生和教师能够通过系统查询学生的成绩。
5.成绩统计:系统需要能够对学生的成绩进行统计和分析,包括计算平均成绩、最高分、最低分等。
6.成绩报表:系统需要能够生成成绩报表,以便学校和教师能够查看学生成绩的总体情况。
三、系统设计1.数据库设计:设计一个学生表和一个课程表,学生表包括学生的学号、姓名、性别、年级等信息,课程表包括课程的名称、授课教师、学分等信息。
成绩信息通过学生表和课程表建立关联关系。
2.用户界面设计:设计一个用户友好的界面,包括学生登录界面、教师登录界面和管理员登录界面。
学生能够查询个人成绩和课程信息,教师能够录入学生成绩和查询学生成绩,管理员能够管理学生和课程信息。
3.功能模块设计:将系统划分为学生管理模块、课程管理模块、成绩录入模块、成绩查询模块、成绩统计模块和成绩报表模块。
每个模块实现相应的功能,模块之间通过接口进行数据交互。
四、系统实现本系统采用Java语言和MySQL数据库进行开发。
使用Java技术实现用户界面和功能模块,使用MySQL数据库存储学生、课程和成绩信息。
五、系统测试与调试进行系统测试,包括功能测试、性能测试和稳定性测试。
通过测试发现并修复系统中存在的问题,确保系统能够正常运行。
六、系统部署与维护将系统部署到学校的服务器上,并进行系统维护工作,包括定期备份数据、更新系统版本等。
数据库课程设计_学生成绩管理系统

1。
概述1.1 简单介绍本系统实现的内容该学生成绩管理系统,实现简单的密码修改、成绩查询、课程查询、学生查询等操作,并能实现简单的数据统计。
此系统主要完成用户密码登录、用户密码的修改、成绩查询、课程查询、学生查询、具体成绩查询等基本功能.(一)用户密码登录:在登录程序之前会先弹出一个登录对话框,在正确的输入了数据库中存储的用户和密码后才能登录程序.(二)用户密码的修改在成功登录了程序之后用户可以根据自己的需要修改当前密码.(三)成绩查询1。
成绩修改前选中要修改的成绩信息,然后进行修改。
2.成绩添加直接弹出添加对话框,然后进行添加。
3.成绩删除前选中要删除的成绩信息,然后直接删除。
(四) 课程查询1。
课程修改实现对课程名、学时、学分的修改。
2.课程添加对一门新开设的课程进行录入,并存入数据库。
3。
课程删除对一门不再开设的课程进行删除,并从数据库中删除。
(五)学生查询1。
学生信息修改修改选中当前学生的信息。
2。
学生信息添加增加新学生的信息。
3。
学生信息删除删除选中当前学生信息。
1。
2 开发环境简介1)Microsoft visual c++ 6。
0Visual C++是一个功能强大的可视化软件开发工具。
自1993年Microsoft公司推出Visual C++1。
0后,随着其新版本的不断问世,Visual C++已成为专业程序员进行软件开发的首选工具.Visual C++6.0不仅是一个C++编译器,而且是一个基于Windows操作系统的可视化集成开发环境(integrated development environment,IDE)。
Visual C++6.0由许多组件组成,包括编辑器、调试器以及程序向导AppWizard、类向导Class Wizard等开发工具. 这些组件通过一个名为Developer Studio的组件集成为和谐的开发环境。
2)Microsoft SQL Server 2000和与系统相关的SQL 语言介绍数据定义DDL(data definition language)数据定义语言是指对数据的格式和形态下定义的语言,他是每个数据库要建立时候时首先要面对的,举凡数据分哪些表格关系、表格内的有什么栏位主键、表格和表格之间互相参考的关系等等,都是在开始的时候所必须规划好的.2。
C语言课程设计—学生成绩管理系统

#include ”stdio.h”#include ”string.h”#include "stdlib.h"#include "conio.h"#include ”string.h”#include "fcntl。
h"typedef struct student{int num;char grade[10];char classroom[10];char name[10];float score_math;float score_chinese;float score_english;float average;float sum;}STU;typedef struct Node{STU data;struct Node *next;}*linklist;void menu();char *loginpassword(char password[],int n);//登录验证密码函数声明//linklist createstulist(linklist head);//创建学生链表即学生信息录入函数声明// void printstulist(linklist head);//学生信息输出函数声明//void searchstu_namelist(linklist head);//学生信息查询函数声明(按姓名)// void searchstu_numlist(linklist head);//学生信息查询函数声明(按学号) linklist modifystulist(linklist head);//学生信息修改函数声明//linklist delatestulist(linklist head);//学生信息删除函数声明//void savestulist(linklist head);//学生信息保存到文件函数声明// linklist loadstulist();//从文件中读取学生信息函数声明// void sortstulist(linklist head); //成绩排名函数(按年级)声明//void sort(STU stu[],int flag); //学生分班函数声明//void sortstuclass(linklist head); //成绩排名函数(按班级)声明////*************************************//void main(){char admin[]=”zhangqiong";char password[]=”123456";char person[20];char password1[10];int i;printf(”********************************************************************************\n”);printf("\t\t **********欢迎来到学生成绩管理系统**********\n\n");printf(”********************************************************************************\n\n”);printf(”\t\t\t\t用户登录\n\n\n\n");for(i=0;i<3;i++){printf("用户名:”);gets(person);fflush(stdin);printf(”\n\n\n”);loginpassword(password1,10);printf("\n\n\n”);if(strcmp(admin,person)==0&&strcmp(password,password1)==0){printf(”\t\t\t\t成功登录,亲!\n”);printf("\n\n”);printf(”按任意键继续!”);getch();menu();break;}elseprintf("\t用户名或者密码输入错误\n”);}if(i==3)printf("\t对不起,您今天输入次数太多,已被强制退出!\n”);}//**********************************************************////**********************************************************//char *loginpassword(char password[],int n)//登录密码函数,隐藏密码可见//{int i=0;int m=0;char ch;printf("用户密码:”);while((ch=getch())!='\r’&&m〈n){password[i++]=ch;printf(”*");}password[i]='\0';return password;}//***************************************************// void menu()//主界面函数//{system("cls");linklist L;L=(linklist)malloc(sizeof(Node));L—>next=NULL;int ch;do{printf(”\t -——-----—-******——--——--—---******—————-————-******-—-—-—-—-—\n\n");printf("\t\t\t**********学生成绩管理系统***********\n\n”);printf("\t ——----——--******-—-——------—******—---———--—-******—---———-——\n\n\n\n\n");printf("\t1。
学生成绩管理系统PB课程设计

学生成绩管理系统程序分析一系统分析与设计1)系统功能分析系统功能分析阶段的任务就是确定该系统所要解决的问题及其具体要求。
学生成绩管理系统需要完成的主要功能如下:(1)班级信息的输入和存储,包括班级编号、班级名称、所属专业、入学时间和学制等。
(2)对已经输入的班级信息的修改、查询。
(3)学生基本信息的输入和存储、包括学号、姓名、性别、出生日期、班级等。
(4)学生基本信息的修改和查询。
(5)每学期初各班所开设课程的输入,包括课程名、学期、学时等。
(6)各班所开设课程信息的修改和查询。
(7)学期末输入每个学生的考试成绩。
(8)学生成绩的修改。
(9)查询某个学生。
(10)查询并打印某班某学期所有学生的各科成绩。
(11)查询并打印某班某学期某课成绩。
(12)系统具有用户和密码的管理。
2)系统功能模块分析通过上面各项功能的分析、分类、综合,按照模块化程序设计的要求,得到它的模块结构:(1)系统管理它包括密码修改,用户管理,登录控制。
(2)班级信息管理它包括班级信息修改,班级信息查询,班级信息输入。
(2)学生基本信息管理包括学生基本信息查询,学生基本信息修改,学生基本信息输入。
(3)课程信息管理包括课程信息查询修改,课程信息输入。
(4)成绩信息管理包括成绩查询,成绩修改,成绩输入。
二、数据库设计和实现1)创建数据库在PowerBuilder开发环境中打开数据库画板,使用[ODB ODBC]接口建立Adaptive Server Anywhere 8.0(ASA 8.0)的数据库,然后建立5个表和1个视图。
分别为“班级”表、“学生基本信息”表、“课程”表、“成绩”表、“用户”表。
各表之间的关系如下图1所示:图1 各表的关联关系2) 创建应用对象(1)创建新的工作空间。
(2)创建应用对象,应用对象名设为“app_xscj”。
(3)打开新的对象画板.为应用对象app_xscj的Open事件编写代码如下:// Profile liudiSQLCA.DBMS = "ODBC"SQLCA.AutoCommit = FalseSQLCA.DBParm = "ConnectString='DSN=liudi;UID=;PWD='"CONNECT;if SQLCA.sqlcode<>0 thenmessagebox("提示","数据库连接失败!")elseopen(w_login)end if执行此应用时,首先链接数据库“xscj”,成功后打开登录窗口。
学生成绩管理系统+课程设计

学生成绩管理系统课程设计学生基本成绩管理系统需求分析编写目的:学生成绩管理是学校管理的一个重要方面,数据量巨大,人工管理方式以及人为处理方式工作繁复、负担重。
为方便学校管理,在此研发一个基于网络的综合学生基本成绩管理系统以及作为系统分析员进行系统分析和测试人员进行测试时的手册。
需求概述:1、增加学生成绩记录;2、显示学生成绩;3、学生成绩排行;4、查找学生成绩;5、删除学生成绩;6、插入学生成绩;7、清空所有数据;8、安全退出系统;需求说明:学生成绩包括:学号,姓名,语文,数学,英语,总分;录入的学生成绩要求用文件形式保存,并可以对其进行输入、浏览、查询、修改、删除等基本操作;学生成绩的显式要求有一定的规范格式;对学生成绩应能够分别按姓名和学号两种方式进行,要求能返回所有符合条件的学生的成绩;对学生成绩的修改应逐个地进行,一个学生成绩的更改不应影响其他的学生记录;所设计的系统应以菜单方式工作,应为用户提供清晰的使用提示,依据用户的选择来进行各种处理,并要求在此过程中能够尽可能的兼容用户使用过程中的异常情况总体设计编写目的:根据需求分析文档,初步提出问题的解决方案,以及软件系统的体系结构和数据结构的设计方案并写出书面文档总体设计说明书,为下一步进行详细设计做准备.总体设计:1. 该系统可以按功能进行模块划分,其模块图如下:帐号学生成学生基本成绩查询管理员绩管理系统密码学生成绩管理系统模块图其中:成绩输入模块完成学生成绩的输入功能,输入成绩包括学号,姓名,年龄,性别,出生年月,地址,电话,E-mail等;成绩浏览模块完成已录入学生成绩的显示; 成绩查询模块完成学生成绩的查询,查询时对应有按姓名查询和按学号查询两种方式;成绩修改模块完成学生成绩的修改功能;成绩删除模块完成学生成绩的删除功能;菜单选择模块完成用户命令的接收,此模块也是学生成绩管理系统的入口,用户所要进行的各种操作均需在此模块中进行选择并进而调用其他模块实现相应的功能;2. 数据结构学生成绩包括:学号,姓名,语文,本系统中主要的数据结构就是学生的成绩, 数学,英语,总分;在处理过程中各项可以作为一个学生的不同属性来进行处理 3。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
太原理工大学经济管理学院《管理信息系统》课程设计报告学生成绩管理系统班级:姓名:学号:指导教师:设计时间:目录一、前言 (2)二、系统分析 (2)(一)可行性分析 (2)1.管理上的可行性 (3)2.技术上的可行性 (3)3.经济上的可行性 (3)(二)组织结构图 (4)1.组织结构图分析 (4)2.具体组织结构图 (4)(三)业务流程图 (5)(四)数据流程图和数据字典 (6)1.数据流程图 (6)2.数据字典 (8)三、系统设计 (10)(一)模块结构体系 (10)1.功能模块 (10)2.功能模块说明 (11)3.系统维护模块 (11)4.系统流程图 (12)5.数据库设计 (12)(1)数据库概要设计 (12)(2)数据库详细设计 (12)(二)代码设计 (14)(三)输入/输出设计 (14)四、体会和收获 (15)学生成绩管理信息系统一、前言学生成绩管理系统是为了更好的管理学生考试成绩而开发的数据管理软件。
它对于一个学校是不可缺少的重要部分,它的内容对于学校的决策者和管理者来说都至关重要。
目前各个高校的基本情况是:每次考试结束,老师们都要统计大量的学生成绩,这些数据的归档、统计工作任务重,统计结束后往往错误百出。
工作量之大,查阅,维护都有不同程度的问题存在。
所以,学生成绩管理管理系统为用户提供充足的信息和快捷的查询手段,实现学生基本信息、成绩的录入,删除,查询,维护以及成绩的统计分析等几方面的功能,是现实问题的迫切要求。
如果一个学校没有一个完善的成绩管理平台,计算机的使用就没有真正发挥有效的作用。
随着计算机应用的普及与深入,利用计算机能够对所有考试成绩进行统一管理,进行分析,大大减少了工作量,提高了工作效率,为教学办公带来了极大的方便。
本系统开发的总体任务是实现学生成绩管理的系统化、规范化、自动化。
达到提高学生成绩管理效率的目的。
与传统管理方法相比有明显的优点:查找方便,可靠性高,保密性好,成本低。
彻底改变了以前繁杂的管理模式,实现全面的、相对集中的、职能化的信息综合管理。
计算机被用到信息管理系统的环境正是适应了当今时代飞速发展的信息时代。
人们深刻的认识到了计算机功能的强大,对于复杂的信息管理,计算机充分发挥着它的优越性。
检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低,这些优点极大地减轻了学院教学人员的工作量,缩小开支,提高了学生档案管理的效率和准确性,能够合理的安排时间,学生能够尽快的知道自己的考试成绩。
同时,学生管理系统的应用也为今天的教育在未来市场的竞争力有所提高。
对于一个学校而言,学生成绩管理是一项非常繁琐和复杂的工作,工作量大,不好管理。
为了适应时代的发展,提高工作效率尤为重要。
学生成绩管理系统的改进更好的利用了现代高科技,对学生负责,对本校未来的发展负责,对整个中国教育的负责,是真正朝向未来教育发展的顺应潮流的进步。
二、系统分析(一)可行性性分析1.管理上的可行性:主要是教务处管理人员的大力支持,系领导认同,现有的管理制度和方法科学,规章制度齐全,原始数据正确等。
规章制度和管理方法系统的建设提供了制度保障。
2.技术上的可行性:技术的可行性分析要考虑将来要采用的硬件和软件技术能否满足用户提出的要求。
此外还要考虑开发人员的水平,在数据库方面要对管理模式比较熟悉。
我们学习过数据库和管理信息系统课程设计的相关课程,有能力编写学生成绩管理系统这种不算太难的程序。
使用VB作为系统开发环境,它提供完善的指令控制语句、类与对象的支持及丰富的数据类型,给开发高性能系统提供的保障为开发满足客户要求的系统,保证了代码的模块化要求,而代码模块化的提高,非常有利于以后对新系统的扩展与修改。
而且由于有指导老师的指导和相关参考文献,特别是网上资料,特别是参考其它程序的功能,因此几乎可以实现。
综上所述,本系统的设计与开发在技术上和硬件设备上的条件都是满足的,因此,它在技术上是可行的。
3.经济上的可行性:现在,计算机的价格已经十分低廉,性能却有了长足的进步。
而本系统的开发,也在一定程度上为学校的工作效率带来了一个质的飞跃,为此主要表现有以下几个方面:一方面是支出的费用,包括设备购置费、管理和维护费用、人员工资和培训费等,另一个是取得的收益。
这是个超小的管理系统,从投入的人力,财力与物力来讲是非常之小的,只要一台电脑,一台打印机,这个系统就可以搞起来,考虑到学校里有电脑,现只要购置一台打印机就可以了。
从节省人力方面,可以让管理人员从繁冗复杂的工作中解脱出来,做更多的工作,可以给教学管理提高一个层次。
具体有以下几个方面:(1)本系统只需要一台计算机;(2)本系统的运行可以节省许多资源;(3)本系统的运行可以大大的提高学校的工作效率;(4)本系统可以敏感文档更加安全,等等。
(二)组织结构图1.组织结构图分析总控模块管理有三种不同的信息的处理模块,即管理员模块、教师模块、学生模块,各模块的主要功能有:(1)系统管理员进入学生成绩管理的主要功能:实现管理员用户的添加、修改和删除,以及对教师添加、教师修改、教师删除、教师查询、学生添加、学生修改、学生删除、学生查询等基本功能,并且参与开设课程、选择课程的管理,安排教师的任课和学生的选课工作。
(2)教师进入学生成绩管理系统的主要功能:各科教师登录系统后查询和修改个人信息,修改自己的账号密码,查询自己的授课课程,实现对选修了自己课程的学生的成绩进行查询、录入和修改,各科老师可以对自己学生选修课程结束后给予分数,同时可以对自己所带课程的成绩优秀人数、及格人数、不及格人数的分布信息进行查询。
(3)学生进入学生成绩管理系统的主要功能:每个学生登录后可以查询和修改个人信息、修改自己的账号密码,以及自己所选任课老师的个人信息,同时在课程结束后可以查询在校期间各个时间段选修课程的成绩与学分,以及对单科成绩和总分的排名查询。
2.具体的组织机构图如图1所示:图1 组织结构图(三)业务流程图经调查之后,结合现行管理模式,为开发本系统而绘制出的学生成绩管理业务流程图。
如图2所示:图2 业务流程图(四)数据流程图和数据字典1.数据流程图系统的数据流程图如图3、图4所示:图3 学生成绩管理数据流程图(顶层图)图4 学生成绩管理数据流程图(展开图)2.数据字典(1)数据流的描述填表人_____________ 年月日(2)处理逻辑的描述填表人_____________ 年月日(3)数据存储填表人_____________ 年月日(4)外部实体表4 数据字典(四)No:__________填表人_____________ 年月日(5)数据项表5 数据字典(五)No:__________填表人_____________ 年月日(6)数据结构表6 数据字典(六)No:__________填表人_____________ 年月日三、系统设计(一)模块结构体系1.功能模块图5功能模块图2.功能模块说明(1)用户管理和班级管理:通过验证用户的使用权限及进行数据的导入、导出工作。
对班级的管理。
(2)学生信息设置对与学生相关信息的录入。
(3)课程与成绩设置:各门课程所属学院及相关学分设置。
学生成绩的录入。
(4)成绩查询与统计:按要求查询成绩。
进行图表的统计。
成绩审核业务,就单据格式是否规范和填写数据是否与实务数量相符的审核在系统中仍由人工完成,对成绩单上填写的学生人数量大于实际学生成绩数量的情况可在成绩录入过程中自动审核,并拒绝该成绩单。
数据录入模块用于录入学生名单和成绩单,它是高校学生成绩管理系统的基本数据输入的模块,他根据各科教师送来的成绩单,记录各学生的每人成绩数据。
为方便学校各级管理人员及时了解、掌握各学院的学生成绩,新系统特别设计了数据查询模块,并提供多种查询功能,每学期、各学院的查询等。
报表输出模块可以完成系统所需的各种报表的计算和打印输出功能,可输出“学生成绩表”等。
为了统一产品的品种及其特性,方便数据输入。
特设计了产品代码、产品名称及其特性对照表。
系统中设计代码维护模块的目的是当产品代码或特性变动时及时修改代码表,可对代码表进行增加、删除和修改等处理。
3.系统维护模块图6系统维护内部模块图4.系统流程图图7 系统流程图5.数据库设计(1)数据库概要设计本系统的数据库主要有“学生”、“班级”、“课程”、“教师”等。
其中教师与课程系统存在授课联系,并且一个教师可以授N门课程,即教师与课程是一对多的关系。
一个学生可以学习N们课程,一门课程可以有M个学生学习,即学生与课程是多对多的关系。
整个数据库可以用一个E-R图表示。
如图8所示:图8 系统E-R 图(2)数据库详细设计该系统子系统分为学生系统、班级系统、课程系统、学生-课程系统、用户信息系统。
如图9、图10、图11、图12、图13所示:图9 学生信息表图10 班级信息表图11 课程信息表图12 学生--课程表图13 用户信息表(二)代码设计新系统为每个学生设计了代码,一方面可统一学生的成绩管理,另一方面是为了方便数据输入。
产品代码为两位数字字符,采用的是顺序码结构。
在系统运行过程中,凡是需要输入某种产品时,只需输入产品代码即可,系统可根据学生代码、成绩表单、自动将相应的学生姓名和成绩等信息调出来,而且代码表显示在输入/输出窗口中,用户不一定要记住学生的代码,可随时通过系统联机查询。
(三)输入/输出设计在系统的输入/输出设计上遵循的是既满足用户需求又方便用户使用的原则。
输入/输出界面的确定都与用户反复沟通,直到用户满意为止。
输入界面的设计不仅考虑数据输入窗口的屏幕格式,而且考虑如何使输入数据的错误率可能的小,为此在程序中加入了对输入数据的校验和判断等功能,如输入数据上下限的设置、与相关数据关系的判断、参考对照表等。
例如,在输入和选择学生时,只输入学生代码即可,系统可根据成绩代码、科目及其学生姓名对照表,自动将相应的学生姓名和成绩等信息调出来。
当用户输入的学生代码不对时,系统自动转入代码表查询窗口,让用户在窗口中浏览查询选择学生代码,因此用户可不必一定记住每个产品的代码,系统将代码表显示在输入输出窗口旁,用户可随时通过系统联机查询。
四、收获和体会通过这次的课程设计,我们对管理信息系统这门课有了更深入的认识,同时体会最深的是,软件的编写需要一丝不苟的精神和足够的耐心。
软件编程工作是辛苦的,每一个细小的环节都是注意的重点,因为稍有不慎,所有的努力就会白费,就会前功尽弃。
出现的错误每次都是细微的,因为小小的疏忽,就要花费很长时间去查找,这个过程是痛苦的。
由于我们的经验不足,只有理论知识而缺乏实践经验,在做的过程中总是反反复复。
虽然我们做的速度不快,但是我们的体会逐渐深入,每一次尝试的小小成功都让我们兴奋不已。