软件工程实验报告学生成绩管理系统.docx

上传人:b****8 文档编号:11400478 上传时间:2023-02-28 格式:DOCX 页数:47 大小:570.59KB
下载 相关 举报
软件工程实验报告学生成绩管理系统.docx_第1页
第1页 / 共47页
软件工程实验报告学生成绩管理系统.docx_第2页
第2页 / 共47页
软件工程实验报告学生成绩管理系统.docx_第3页
第3页 / 共47页
软件工程实验报告学生成绩管理系统.docx_第4页
第4页 / 共47页
软件工程实验报告学生成绩管理系统.docx_第5页
第5页 / 共47页
点击查看更多>>
下载资源
资源描述

软件工程实验报告学生成绩管理系统.docx

《软件工程实验报告学生成绩管理系统.docx》由会员分享,可在线阅读,更多相关《软件工程实验报告学生成绩管理系统.docx(47页珍藏版)》请在冰豆网上搜索。

软件工程实验报告学生成绩管理系统.docx

软件工程实验报告学生成绩管理系统

计算机科学与技术学院

《软件工程》课程设计报告

(2013/2014学年第1学期)

 

*******

学生专业:

计算机科学与技术

学生班级:

计算机102001

学生学号:

************

********

 

2014年1月17日

 

 

1问题的定义

随着互联网的发展,利用INTERNET技术来实现“无纸办公”这个概念已经深入人心,校园网作为学校信息化建设的一个平台在完成资源共享、互联网访问、教务管理、电子备课等方面发挥了重要作用。

服务教学、提高教学水平和效果是校园网建设的核心目标和核心价值,本系统立足于校园实际,着眼于未来发展,建成符合标准化协议、通用性较强、实用的系统,以提高高校的现代化管理水平,实现信息资源的共享。

该项目主要是服务于教学方面,进一步方便教师的工作和学生的学习,从而从侧面达到提高学校的教学方面‘软件’质量。

可以说它适用于每一所高校,因此很有开发价值。

我们不敢说该产品是所有该系列产品中最好的,但是我们这里要强调的是它具有使用范围广,实用性强,使用简单,所花经费少等优点。

我们可以肯定的说它将在高校的使用过程中其优点将得到最充分的体现。

主要功能有三方面:

管理员,登陆,进入系统,可以进行管理员操作。

进行学生信息、教师信息、课程信息的编辑、查询、删除、修改、添加、打印等操作。

学生,登陆,进入系统,可以进行查询、修改、打印等操作。

教师,登陆,进入系统,可以进行查询、学生成绩录入、修改、打印等操作。

软件系统目标为一下几点:

本系统具有很强的可靠行,可以对录入的学生信息进行效验,对数据进行修改、删除,规定各种权限。

本系统中的模块具有很强的可续性,可以方便管理人员的修改与维护。

本系统操作方便、灵活、简单。

本系统可高效、快速的查询到学生的基本信息。

 

2可行性研究

2.1技术可行性

该系统将大大改善数据处理的速度,并且更加方便的对数据进行管理,同时可以大大减少人力资源的浪费以及工作的支出。

另外还可以提高查询的效率,降低查询的错误率,修改数据方便等。

因为原来的系统是人工操作,所以效率比较低,相对于以前的系统,本小组开发的学生管理系统在效率上会更高,耗费最短的时间处理更多数据。

2.2经济可行性

校园内部局域网络已经建成;每个人电脑均已配置;硬件投入不需要很大,另外,学校对系统的开发大力支持。

因此经济上是可行的。

2.3操作可行性

为了对学生成绩的管理方便,开发人员完成了全面的调查与分析,同时与目标用户进行了多次深入沟通,主要用于大中专院校学生日常管理工作,以规范的学生档案为基础,实现了学生考勤,学籍变更、学生奖惩、考试成绩、教师考勤等电算化管理,实现学校人力资源的优化和学生成绩管理的科学管理而设计的,通过试用本系统,可以更加有效的管理学生成绩信息,其中包括学生的基本信息,成绩信息并且具有信息的增加,查询,修改等功能,所以经过研究与探讨,该软件操作是可行的。

 

 

3项目开发计划

3.1项目背景

随着科学技术的不断提高,计算机科学日渐成熟,其强大的功能以为人们深刻认识,它已进入人类社会的各个领域并发挥着越来越重要的作用。

作为计算机应用的一部分,使用计算机对学生成绩管理信息进行管理,具有手工管理所无法比拟的有点。

例如,检索迅速、查找方便、可靠性高、存储量高、保密性好、寿命长、成本低等。

这些有点能够极大地提高学生档案管理的效率,也是企业科学化、正规化管理,与世界接轨的重要条件。

因此,开发大学成绩管理系统很有必要。

学生成绩管理系统是一个学校不可缺少的重要部分,它的内容对于学校的决策者和管理者来说都至关重要,所以学生成绩管理系统应该为用户提供充足的信息和快捷的查询手段。

同时,学生成绩管理是各大学的主要日常管理工作之一,涉及到校、系、师、生的诸多方面,随着教学体制的不断改革,尤其是学分制、选课制的展开和深入,学生成绩日常管理工作及保存管理日趋繁重、复杂。

高校都迫切需要研制开发一款属于自己的功能强大,操作简单,具有人性化的学生成绩管理系统。

3.2项目目标

在我国,各大中小学校的各类信息管理系统并非一个新的课题,但也有的学校根本就没有信息任何管理系统,所有的工作几乎还是手工操作来完成。

计算机技术在日新月异的发展,信息化是社会进程的必然趋势,学校管理只有只有快,准,精才能发挥其价值。

本系统是将现代化的计算机技术和传统的教学、教务工作相结合,按照学院的工作流程设计完成的。

为了使系统在学院的管理中发挥更大的作用,实现工作过程的计算机化,提高工作效率和工作质量,现提出如下的系统开发目标:

系统应具有实用性、可靠性和适用性,同时注意到先进性。

对各个数据库进行动态管理,防止混乱。

能够按照用户选择的不同的条件进行简单查询和复合查询。

能够对查询结果进行分类汇总。

注意数据的安全性,具有数据备份和恢复的功能。

方便用户的操作,尽量减少用户的操作。

3.3项目功能

登录管理:

为了保证系统的安全性,可以根据不同的用户权限来提供不同的服务。

分为管理员登录和用户(教师、学生)登录两个子模块。

账户管理:

分为用户管理和修改密码两个子模块。

其中用户管理子模块又包含了添加用户、修改用户和删除用户两部分。

信息查询:

在各基本表的基础上进行信息查询。

分为学生资料查询和学生成绩查询两个子模块。

 

4需求分析

4.1业务流程图

经过对现有的资源以及软件分析,并多次与学生、老师、管理员等进行沟通后、将整个成绩查询业务流程抽象描述如下图4.1所示。

 

登陆查询登录

成绩表查询信息

登录信息管理

 

图4.1学生成绩管理业务流程图

4.2性能要求

为了满足用户的要求,系统必须要有高的运作速度,用户填写的信息输入到系统,系统必须能快速及时作出响应,迅速处理各项数据、信息,显示出所有必需信息,所以要求很高的信息量速度和大的主存容量;由于要存贮大量的数据和信息,也还要有足够大的磁盘容量;安全性也是系统最重要的性能需求之一,学生信息管理系统必须有可靠的安全措施,以保证用户的各项信息安全。

4.3数据流图

该数据流图主要体现出了学生信息的录入以及教师将考核信息存入数据库,最终交给管理员。

学生也可以通过软件从数据库查询自己的成绩信息以及个人信息。

总体说明了系统管理员、学生、教师之间拥有的权利以及能够进行的一些操作。

数据流图见下图4.2和4.3。

图4.2顶层数据流图

图4.3一层数据流图

4.4数据字典

4.4.1数据流

数据流里面包括了录入信息、成绩写入数据库、查询结果以及成绩表等几方面。

具体信息如下表4-1、4-2、4-3、4-4。

表4-1录入信息的数据字典

表4-2成绩写入的数据字典

表4-3查询结果的数据字典

表4-4成绩表的数据字典

4.4.2数据存储

数据存储里面主要包括了五张表。

具体信息见表4-5、4-6、4-7、4-8、4-9。

表4-5学生表数据字典

表4-6管理员表数据字典

表4-7教师表数据字典

表4-8学生选课表数据字典

表4-9学生成绩表数据字典

4.4.3处理

处理主要分为身份验证和查询登记。

具体信息见表4-10和4-11。

 

表4-10身份验证数据字典

表4-11查询等级数据字典

5概要设计

5.1系统功能模块图

根据前面的需求分析以及对软件的开发可能性学生成绩管理系统功能模块图一共分为学生子模块、教师子模块、管理员子模块等基本模块。

且在学生子模块下面又包括了学生选课以及成绩查询模块;教师子模块下面包括了教师选课模块;管理员子模块包括了信息维护模块。

成绩管理系统功能模块图如下图5.1所示。

 

图5.1学生成绩管理系统功能模块图

5.2模块功能说明

1.在学生子模块中,学生可以在该模块中进行选课、退课,成绩查询,并且还可以对自己的个人信息进行增删查改等操作。

2.在教师子模块中,教师可以在该模块中进行选课、退课,成绩录入,并且还可以对自己的个人信息进行增删查改等操作。

3.在管理员子模块中,管理员可以在此模块中维护本软件的远行,并且还可以对自己的个人信息进行增删查改等操作,还可以对教师学生的信息进行增删查改的操作。

4.在学生选课模块中,学生可以登录后在数据库中选择自己所需要选择的课程进行提交、修改、选择等操作。

5.在学生成绩查询模块中,学生可以登录自己的信息后,查询自己所需要的科目成绩,当然可以进行选择后查询自己各个学期的或者一学年的成绩。

6.在教师选课模块中,教师可以在数据库中选择自己所要教授的课程以及班级。

在这里教师可以查到课程的有关信息。

7.在管理员修改信息模块中,管理员可以管理学生以及教师的一些基本信息。

包括修改、查询、删除等操作。

 

 

6数据库设计

6.1外部接口与用户界面

在用户界面部分,根据需求分析的结果,用户需要一个用户友善界面。

在界面设计上,应做到简单明了,易于操作,并且要注意到界面的布局,应突出的显示重要以及出错信息。

外观上也要做到合理化,考虑到用户多对WINDOW风格较熟悉,应尽量向这一方向靠拢。

在设计语言上,已决定使用VisualStudio.NET进行编程。

总的来说,系统的用户界面应作到可靠性、简单性、易学习和使用。

6.2内部接口

内部接口方面,各模块之间采用函数调用、参数传递、返回值的方式进行信息传递。

具体参数的结构将在下面数据结构设计的内容中说明。

接口传递的信息将是以数据结构封装了的数据,以参数传递或返回值的形式在各模块间传输。

6.3E-R图

初步E-R图和三范式E-R图如图6.1和6.2所示。

其中6.1是初步E-R图,包括常用的实体以及属性。

清楚的说明了学生、教师、管理员可以进行的一些操作以及反馈信息。

图6.2是满足三范式的E-R图。

具体信息如图6.1和6.2所示。

图6.1初步E-R图

 

图6.2三范式E-R图

 

6.4数据结构设计

根据数据库的原理再加上E-R图的设计,将进行数据结构设计。

在数据库下创建5个主要数据表。

其结构如下所示:

1.班级信息表(ClassInfo),如表6-1所示。

表6-1ClassInfo表

字段

类型

描述

ClassID

自动编号

班级编号(主键)

ClassName

文本

班级名称

SpecialtyName

文本

专业名称

ClassNumber

文本

教书编号

Length

数字

学制

Teacher

文本

班主任

EnrolmentTime

日期/时间

入校时间

Remark

备注

备注

2.课程表(Course),如表6-2所示。

表6-2Course表

字段

类型

描述

CourseID

自动编号

课程编号(主键)

ClassID

数字

班级编号

Course

文本

课程名称

Semester

文本

学期

3.成绩表(ScoreInfo),如表6-3所示。

表6-3ScoreInfo表

字段

类型

描述

ScoreID

自动编号

成绩编号(主键)

Semester

文本

学期

StudentNumber

文本

学生学号

Course

文本

课程

Score

数字

分数

4.专业表(SpecialtyInfo),如表6-4所示。

表6-4SpecialtyInfo表

字段

类型

描述

SpecialtyID

自动编号

专业编号

SpecialtyName

文本

专业名称(主键)

Remark

备注

备注

 

5.学生信息表(StudentInfo),如表6-5所示。

表6-5StudentInfo表

字段

类型

描述

StudentID

自动编号

自动编号(主键)

StudentNumber

文本

学号

Name

文本

姓名

Sex

文本

性别

Address

文本

家庭住址

Telephone

文本

联系电话

ClassID

数字

班级编号

Remark

备注

备注

 

7详细设计

7.1系统程序流程图

7.1.1学生基本信息模块

学生基本信息模块包括了学生的个人信息以及成绩查询的选项。

在这里学生可以根据自己的需求选择要进行的操作。

进行相应的操作就会把相应的信息输出,以便能够清楚的查询自己所需要的知识。

流程图如下图7.1所示。

 

图7.1学生基本信息流程图

7.1.2学生选课模块

该模块主要包括了学生在选课数据库里进行选课的一些操作。

学生可以在这里输入信息,然后选择自己想要选择的课程。

当然,学生在这里也可以查询课程的一些相关信息。

流程图如下图7.2所示。

 

 

图7.2学生选课流程图

 

7.1.3学生成绩查询模块

该模块主要提供学生对成绩的查询信息。

学生可以在此输入学号和密码后,查询自己想要查询的课程的成绩信息。

流程图如下图7.3所示。

 

图7.3学生成绩查询流程图

 

7.1.4教师基本信息模块

该模块主要说明了教师的一些基本信息。

包括自己的授课查询以及对学生成绩的查询等一些操作。

流程图如下图7.4所示。

 

 

图7.4教师基本信息流程图

7.1.5教师选课模块

本模块主要说明了教师能够进行自己授课的一些选择。

可以在选课信息表里选择自己要教授的课程。

流程图如下图7.5所示。

 

 

图7.5教师选课流程图

7.1.6管理员基本信息模块

该模块主要说明了管理员应该具备的一些权利以及对一些信息的管理以及查询。

管理员可以在这里进行学生成绩的管理以及教师选课的一些信息管理。

流程图如下图7.6所示。

 

 

图7.6管理员基本信息流程图

 

7.1.7管理员信息维护模块

该模块主要说明了管理员可以对一些信息进行维护的操作。

其中,这些信息可以是学生的或者是教师的信息都可以在这里进行维护。

流程图如下图7.7所示。

 

 

图7.7管理员信息维护流程图

7.2界面设计

用户登陆:

该系统根据用户的身份实现了不同的功能,用户登陆时需要选择一种登陆方式(默认情况下是学生),系统再根据用户选择的登陆方式到相应的表中去搜索。

例如,登陆时选择了教师登陆方式,系统将会在教师信息表中搜索是否存在与该用户的输入相符的信息,如果存在则进入教师主页,否则提示用户输入有误,请重新输入。

7.2.1学生用户界面

学生的初始密码是由管理员指定的。

学生登陆后,可以按照要求自行修改使用密码。

首先需要输入原始密码,如果原始密码没有输入正确将不能修改密码,只有在原始密码正确的基础上,用户才能继续下面的操作。

新密码设定后,系统还要求用户再输入一次重复密码,避免因为误输而导致密码丢失。

查询指定学期成绩:

学生可以查询自己指定学期的成绩和所有的成绩。

方便学生了解自身情况。

选课系统:

学生选课系统是针对学生进行网上选课而设计的,学生可以自主选择自己想修的课程。

7.2.2教师用户界面

查询授课计划:

教师可以利用该系统实现查询授课计划的功能,教师不仅可以看到自己本学期要授的课程信息,还能查看选修对应课程的学生名单,同时可以添加对应课程的学生成绩。

帮助教师提高了工作效率。

查询学生基本信息:

教师可以查询学生的基本信息,以帮助教师了解学生情况。

7.2.3管理员界面

学生基本信息管理:

学生基本信息管理包括学生基本信息添加、学生基本信息修改、学生基本信息删除。

下面给出的是学生信息添加界面

教师基本信息管理:

教师基本信息管理包括教师基本信息添加、教师基本信息修改以及教师基本信息删除。

8测试报告

8.1测试系统模块

首先进入该软件如下图8.1所示,可以进行用户的选择。

图8.1登录系统

进入教师模块可以对学生的成绩进行录入,包括课程编号、课程名、学分、平时成绩、实验、卷面成绩等信息。

如下图8.2所示。

图8.2教师模块

进入学生模块后,可以输入学号来进行成绩的查询。

其中成绩包括平时成绩、实验成绩、卷面成绩等信息。

如下图8.3所示。

图8.3学生模块

进入管理员模块后,可以进行学生基本信息录入、查询学生信息、班级信息、删除等操作。

也可以将成绩按照综合成绩排或者学分来排序。

入下图8.4所示。

图8.4管理员模块

 

8.2测试摘要

软件所要实现的功能及程序的关系如下表8-1:

表8-1软件测试功能

8.3不足之处

测试的时候有些算法还需简化,由于安全性与权限及运行速度要达到一个平衡。

我们还有待找到一个平衡支点。

要使软件更加的安全和权限更好的分配给不同的用户。

设计时还应该尽可能多的设计更好的模块。

使得模块功能更多,但结构更简洁。

使每个人都能轻易的掌握操作原理以及技巧。

 

9用户手册

9.1编写目的

编写该文档是为了指导普通用户使用操作该程序。

处理和查询想要知道的数据,并为测试提供依据。

该文档的阅读者为普通用户和测试人员。

9.2背景

1)待开发系统软件名称:

学生成绩管理系统;

2)本项目的任务提出者是学校信息管理系统的各位老师,由本小组负责开发,用于太原科技大学广大师生成绩查询及管理;

3)开发背景:

本系统属于太原科技大学网络管理系统的学生成绩管理模块,实现的是网络管理系统中关于学生成绩管理的子功能,通过此软件,提高用软件工程分析问题、解决问题的能力,同时增强对数据库和VC的使用能力。

9.3运行环境

9.3.1硬设备

1)至少具有奔腾III800,128M内存配置的计算机;

2)Microsoft鼠标,或其他兼容鼠标;

3)至少500M的磁盘空间;

4)至少32MB的RAM存储器。

9.3.2支持软件

操作系统:

WIN98,WIN2000,WINXP和Vista等

  执行程序:

visualC

数据库:

SQLSever2000

9.3.3数据结构

本系统的使用需要连接SQLServer数据库,当需更新数据库时,可以新建数据库,并且在数据库中按需要新建各个表格,存储在相应的文件夹中。

附录

程序源代码如下:

#include

#include

#include

#include

usingnamespacestd;

classstu

{

charnumber[10];

charname[20];

public:

stu(chara[10],charb[20])

{

strcpy(number,a);

strcpy(name,b);

}

char*getnumber()

{

returnnumber;

}

char*getname()

{

returnname;

}

 

};

classstu1:

publicstu

{

charsex[4];

charsushenumber[8];

chartelephone[10];

public:

stu1(chara[10],charb[20],charc[4],chard[8],chare[10]):

stu(a,b)

{

strcpy(sex,c);

strcpy(sushenumber,d);

strcpy(telephone,e);

}

friendvoidmain();

};

classstu2:

publicstu

{

charclassnumber[8];

charclassname[10];

doublescore,pingshigrade,shiyangrade,juanmiangrade,zonghegrade,lastscore;

public:

stu2(chara[10],charb[20],charf[8],charg[10],doubleaa,doublebb,doublecc,doubledd,doubleee,doubleff):

stu(a,b){

strcpy(classnumber,f);

strcpy(classname,g);

score=aa;

pingshigrade=bb;

shiyangrade=cc;

juanmiangrade=dd;

zonghegrade=ee;

lastscore=ff;

}

friendvoidmain();

};

voidmain()

{

charc;stringpassword;intflag7=0;ints=0;

cout<<"欢迎进入学生成绩管理系统"<

cout<<"请输入你的登录密码"<

 

do{do{

c=getch();

if(c==char(13))break;

password+=c;cout<<"*";

}while

(1);

cout<<"\n";

if(password=="123456")

{

flag7=1;

charnumber[10];

charname[20];

charsex[4];

charsushenumber[8];

chartelephone[10];

inti=0,I=0,j=0;intja;ja=0;

ofstream*file[50];

stu1*s[50];

stu2*s1[50];

charclassnumber[8];

charclassname[10];

doublescore,pingshigrade,shiyangrade,juanmiangrade,zonghegrade,lastscore;

boolflag=0;

intp;

charc6;

do

{

cout<<"请输入你的身份:

"<

cout<<"1管理员"<

cout<<"2老师"<

cout<<"3学生"<

do

{

cin>>p;

if(1<=p&&p<=3)

flag=1;

else

cout<<"错误指令!

请重新输入。

"<

}while(flag==0);

if(p==1)

{

cout<<"欢迎进入管理员模块"<

charc4;

do{

cout<<"请输入您要进行的操作"<

cout<<"1学生基本信息录入"<

cout<<"2查询学生基本信息"<

cout<<"3查询班级学生信息"<

cout<<"4删除功能"<

cout<<"5按综合成绩实现排序功能"<

cout<<"6按实得学分实现排序功能"<

intm;

cin>>m;

switch(m)

{

case1:

char

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 解决方案 > 营销活动策划

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1