华科_软件工程_学生成绩信息管理系统实验报告

合集下载
相关主题
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

软件工程课程设计学生成绩管理系统

院系___计算科学与技术____

专业班级____ _____

姓名_____________

学号___ _________

2015年11月20

目录

摘要 (Ⅰ)

1问题定义及可行性分析 (1)

1.1系统的问题定义 (1)

1.2系统环境 (2)

1.3系统的可行性分析 (2)

2需求分析 (4)

3概要设计与详细设计 (7)

4测试报告 (11)

5项目管理 (14)

5体会与建议 (17)

参考文献 (1)

1 问题定义及可行性分析

1.1系统的问题定义

通过设计一个有效的学生成绩管理系统,不仅可以节省大量的人力物力,减少投资和在填写,登记过程中可能出现的错误,而且极大的提高了查询效率和更新效率,并且是成绩管理变得系统化和自动化。

随着学校规模的不断扩大,专业、班级、学生的数量急剧增加,有关学生各门课程的成绩的各种信息量也成倍增长,由于传统学生成绩管理模式仍停留在复杂的人工操作上,重复工作较多,工作量大,效率低,因此,迫切需要开发基于互联网的课程信息管理系统来提高管理工作的效率。学生成绩管理系统,在学生成绩的规范管理、科学统计和快速查询方面具有较大的实用意义。它提高了信息的开放性,大大地改善了学生、教师对其最新信息查询的准确性。

本学生成绩管理系统模块是为了实现学校人力资源的优化和学生成绩管理的科学管理而设计的,通过本系统,可以有效的管理学生成绩信息,能针对不同的用户分别设置了不同的功能,其中包括学生的基本信息,成绩信息并且具有信息的增加,查询,修改等功能,而且能快速统计学生成绩的相关数据。

手工学生成绩管理是一种原始的工作方法,由于手工操作出现错误的概率比较大,其工作量大,工作程序复杂,消耗大量的人力、物力、财力和时间。而且随着时间的推移,由于人员的增加,科目的增多以及调整的频繁,在这种情况下单靠人工来处理学生的成绩不但显得力不从心,而且极容易出错。

手工条件下,学生的成绩分为以下一些工作:(1)建立学生相关档案,包括学生的基本信息和所学课程的信息。(2)根据学生基本信息中的班级和学号及课程,统计并编写出每一个课程的学生。(3)根据学生的课程学习情况和课程成绩创建原始的学生课程成绩档案。(4)根据学生的加权分数,统计学生的排名信息并编写统计档案。

能针对不同的用户分别设置了不同的功能:

1.管理员能够方便的对信息进行添加.修改.删除.查询.汇总.统计等操作。

2.课程教师可以在所教课程内对学生信息进行添加.修改.删除.查询.汇总.统

计等操作。

3.学生可以在自己的权限内对信息进行访问,即时查询相关信息。

1.2系统环境

本系统是基于64位windows10专业版,硬件基于cpu i5-3230m,内存4GB,硬盘750GB,显卡nvdia 720M。程序将基于python3.5,数据库基于MySQL5.6,运用python完成整体开发,数据及数据结构基于数据库语言sql进行开发。

1.3系统的可行性分析

学生成绩管理系统需要有软件工程,数据库技术,相应软硬件支持,经济支持,人才要求等。

软件工程是指导计算机软件开发和维护的一门工程科学,用当前最好的管理解释和方法,经济的开发出高质量的软件并能够有效的维护它。他从六十年代末开始发展到现在已经有半个世纪的历史,研究范围广泛,包括各种新技术方法、工具和管理各方面,是一个异常活跃的研究领域。到现在已经形成了一套系统规范的知识体系,严格遵循软件工程方法可以大大提高软件开发成功的几率,显著减少软件开发维护的问题,为系统的开发和维护提供指导。

数据库技术从诞生到现在,在不到半个世纪的时间里,形成了坚实的理论基础、成熟的商业产品和广泛的应用领域,吸引越来越多的研究者加入。数据库的诞生和发展给计算机信息管理带来了一场巨大的革命。随着应用的扩展与深入,数据库的数量和规模越来越大,数据库的研究领域也已经大大地拓广和深化了。数据库是一个充满活力和创新精神的领域。现在的数据库技术既能进行数据的集中和共享,又能有效的保持数据的独立性和抽象性,非常适合进行数据的管理。而且随着面向对象数据库的出现,是数据库的设计更加人性化,能更好的符合用户的要求,为系统设计提供了基础。

本系统的构建运用python,Python是纯粹的自由软件,源代码和解释器CPython遵循 GPL(GNU General Public License)协议。Python语法简洁清晰,具有丰富和强大的库。它常被昵称为胶水语言,能够把用其他语言制作的各种模块(尤其是C/C++)很轻松地联结在一起。常见的一种应用情形是,使用Python 快速生成程序的原型(有时甚至是程序的最终界面),然后对其中有特别要求的部分,用更合适的语言改写,需要注意的是在您使用扩展类库时可能需要考虑平

台问题,某些可能不提供跨平台的实现。所以由python构建的学生成绩管理系统,能有高效的处理效率,而且小巧易行,开发容易。

学生成绩管理系统的人员要求:系统分析人员,开发人员,数据库管理人员,系统测试人员。采用python实现,依靠强大的数据库控件和数据库管理系统和其他语言相结合,两个月内开发出系统。现在有很多专门的机构用来培养计算机人才,各大高校也设置了很多的相应课程,现在的社会优秀的IT人才层出不穷,为系统的开发提供了强有力的智力支持。

2.需求分析

学生成绩管理系统主要涉及到学生的基本信息、成绩信息和学校的课程信息的管理。主要功能实现对学生的成绩进行收集和修改。具体包括学生成绩录入、修改、增加、删除、查询。成绩录入需要分班级、分年级以及某个时间考试的各门功课的成绩。修改要与成绩录入相对应。增加、删除是对基本表的操作。查询条件设置应该齐全,可以班级查询,年级查询,也可以姓名查询,学号查询等等。

学生成绩管理系统应区分查询的用户,教师可以查询其所任课程的所有信息,包括课程的学生相关信息,可以对课程内学生的成绩信息进行修改,添加,录入,可以查询课程能学生成绩排名。学生用户可以查询本人的所有信息,可以查询其所学课程的成绩。管理员用户拥有修改,添加,录入所有学生基本信息,可以查询任何学生的基本信息,可以根据课程或班级查询学生信息和排名,可以修改,添加,录入所有课程信息,但不能对学生的成绩信息进行修改。

系统的各个用户的与数据的关系为一对多,详细E-R关系见图2-5。

学生成绩管理系统的数据处理的基本结构为:根据用户的种类和其对学生管理系统的请求,查询学生信息库,根据返回的信息对用户输出结果,数据流图见2-1,根据用户种类分为三个部分,每个部分的结构分别为:学生查询、教师管理和管理员管理,其中学生查询的结构,见图2-2,为根据学生用户的登录和学生查询信息的查询学生基本信息数据和学生成绩信息数据,然后系统处理查询后的数据,并将其返回给学生用户;而教师用户管理的结构,见图2-2,为根据教师用户的登录和课程查询信息,查询教师课程信息数据,或者学生成绩信息数据,系统可根据课程数据信息查询返回查询学生相关的数据,将学生数据处理并返回教师用户,也可直接查询学生成绩信息数据并返回教师用户;管理员用户管理的结构,见图2-2,为根据管理员登录信息和管理员处理信息,或者以课程信息对课程信息数据进行管理,或者以学生信息对学生基本信息数据进行管理,或者以学生成绩信息对学生成绩信息数据进行管理,最后将相关信息返回管理员用户。

对于学生基本信息的存放数据,以图2-3的数据字典表示其中保存的数据:学生姓名、学生编号、学生性别、学生年龄;对于学生成绩信息的存放数据,以图2-4的数据字典保存,其中的数据为:学生姓名、学生编号、学生所修课程、

相关文档
最新文档