剖析学生成绩管理系统设计与实现的重点与难点教育文档.docx

上传人:啊飒飒 文档编号:10163754 上传时间:2021-04-25 格式:DOCX 页数:8 大小:21.02KB
返回 下载 相关 举报
剖析学生成绩管理系统设计与实现的重点与难点教育文档.docx_第1页
第1页 / 共8页
剖析学生成绩管理系统设计与实现的重点与难点教育文档.docx_第2页
第2页 / 共8页
剖析学生成绩管理系统设计与实现的重点与难点教育文档.docx_第3页
第3页 / 共8页
剖析学生成绩管理系统设计与实现的重点与难点教育文档.docx_第4页
第4页 / 共8页
剖析学生成绩管理系统设计与实现的重点与难点教育文档.docx_第5页
第5页 / 共8页
点击查看更多>>
资源描述

《剖析学生成绩管理系统设计与实现的重点与难点教育文档.docx》由会员分享,可在线阅读,更多相关《剖析学生成绩管理系统设计与实现的重点与难点教育文档.docx(8页珍藏版)》请在三一文库上搜索。

1、剖析学生成绩管理系统设计与实现的重点与难点:Thisarticlefocusesontheanalysisofstudentachievementmanagementsystem,focusingonthesystemarchitecture,systemfunction,databasedesignandsystemimplementationandotheraspectstoillustratethedifficultiesandprioritiesinthedesignandimplementationofstudentachievementmanagementsystem1概述软件技术

2、专业综合实践教学环节是毕业设计。通过毕业设计,能将学生所学的各种理论知识和职业技能联结起来,培养学生的综合能力,为学生走上工作岗位打好基础。我校毕业设计采用以自主选题为主结合给定选题为辅的原则,在选题中,很多学生喜欢选择“学生成绩管理系统”作为自己的研究课题,究其原因学生认为他们对“学生成绩管理系统”这一课题的管理流程比较熟悉,但往往意识不到学生成绩管理系统的复杂性,由于每个学校的应用环境不一样,业务流程不统一,所以许多现成的成绩管理系统不是拿过来就能用的,开发符合自身学校特色的学生成绩管理系统是十分必要。本文以笔者指导的2013级软件技术专业学生开发“基于C#的学生成绩管理系统”为例,剖析系

3、统设计与实现的重点与难点。2系统架构剖析从目前应用系统的发展方向看,学生成绩管理系统理应采用B/S结构,即浏览器/服务器模式,它的特点是通过浏览器来进入工作界面,系统分布性强、维护方便、开发简单且共享性强。但就本次学生毕业设计方向看,笔者指导的软件技术专业是C#WinForm方向,所以学生成绩管理系统的架构定位采用的是C/S结构,即客户机/服务器的模式,它主要应用于局域网中,针对小范围的用户,数据的安全性可以保证,但不能实现真正大范围的信息共享、信息传达和发布。不同的架构技术基本决定了系统服务对象,基于C#的学生成绩管理系统主要的服务对象应该是教师用户和教务管理员用户,这里不考虑学生用户。3系

4、统功能剖析开发一个应用系统的重点是确定系统的功能。这就需要开发者从了解和调研用户的业务流程和用户的需求开始,确定系统的功能。业务流程不同,实现的功能就不同。结合我校实际情况,教务管理员的主要业务是:1)每年新生入学需要组建学生信息;2)规划每学期每个班级的课程表;3)安排授课教师;4)学生成绩管理。学生成绩管理主要包括成绩存档及成绩统计。成绩存档主要是收集学生每学期的每一门课程的平时成绩、期中考试和期末考试成绩等信息,并按指定的比例折算出总评成绩。成绩统计包括汇总班级成绩总表、班级补考信息、单科课程的成绩情况(包括计算课程平均分、统计各分数段人数及占比等)及汇总出每学期每个学生的成绩单。教师主

5、要业务是分阶段递交成绩,负责递交所授课程的学生平时成绩,期中成绩和期末成绩并对缺考等情况作说明,老师应确保上交的成绩信息正确无误。因此,在功能设计中,教务管理员在系统登录后不仅可以完成学生、教师、系别、班级、学期、课程、授课等信息管理,同时还要完成成绩管理模块的功能,通过选择学期、系别、班级及所授课程等信息后,即完成学生的成绩录入、成绩修改、成绩删除、成绩统计、成绩打印等功能。4数据库设计剖析在系统开发中,最难的应该是数据库设计。一方面,系统的功能规模直接影响数据库的设计,另一方面数据库结构设计的好坏又直接影响系统的效率以及实现效果。如何设计合理的数据库结构,保证数据存储效率及方便程序的实现是

6、整个系统设计的难点和关键点。根前面的功能解析,能够满足用户需求的实体有:管理员、授课教师、学生、班级、学期,课程、授课及成绩。1)管理员(用户名和密码)。2)教师表(教师名、教师密码)。3)系别表(系别编号、系别名称)。4)班级表(班级编号、班级名称、系别编号)。5)学生表(学号、姓名、性别、入学成绩,班级编号)。6)学期表(学期编号、学期名称)。7)课程表(课程编号、课程名称、学时)。8)授课表(授课编号、教师名、课程号、班级号、学期编号)。9)成绩表(成绩编号、授课编号、学号、平时成绩、期中成绩、期末成绩、总评成绩、是否补考、补考成绩、备注)。为了方便代码编写,可以通过视图方式创建数据表与

7、数据表之间的关系,这里比较重要的视图是成绩处理视图resultView,需要将成绩表、教师表、授课表、学生表、课程表、班级表、学期表和系别表联系起来,方便学生的成绩统计、分析及查询。5系统实现剖析在学生成绩管理系统的实现中,学生信息、教师信息、课程信息等管理的功能基本相似,实现起来比较容易,这里不进行分析讨论。在整个系统实现过程中,不仅要考虑到数据的完整性还要考虑到数据如何获取。1)触发器是SQLServer提供给程序员和数据分析员来保证数据完整性的一种方法。教务管理员在安排授课表时,每添加一条授课记录,在成绩表就应该添加与该授课编号相关的班级学生名单,用于记录平时成绩、期中成绩等。为了保证成

8、绩表中学生名单准确无误且与学生信息表名单的完整性,在技术处理上,采用在授课表上需要创建触发器,以实现每添加或删除一条授课记录,成绩表中就批量添加或删除授课班级的学生名单及授课号。基本代码如下:CreateTRIGGERdbo.sktrigONdbo.skInfoAFTERINSERT,DELETEASBEGINdeclaresIDint,cidintifexists(select*frominserted)beginselectsID=sID,cid=cidfrominsertedinsertintoresultInfo(stuId,sID)selectstuid,sIDfromstuInfo

9、wherecid=cidendelsebeginselectsID=sIDfromdeleteddeletefromresultInfowheresID=sIDend2)?R总班级成绩总表是学生成绩管理系统实现中的难点。学期、系别、班级不同所授的课程不同。因为在汇总成绩总表时,每个班级的课程名是动态的。因此在数据汇总的技术处理时,通过编制成绩表的存储过程的来实现,并采用动态交叉表来汇总不同的系别,不同学期,不同班级的学生所学课程的总评成绩,再通过数据绑定技术绑定汇总出来的交叉表,实现界面显示。Createproceduredbo.CrossTablestrTableNamevarchar(50

10、)=,查询的表名strColvarchar(50)=,横向列所在的字段名strGroupvarchar(50)=,分组名strNumbervarchar(50)=,被统计的列strComputevarchar(50)=Sum,运算方式intxidvarchar(50),intcidvarchar(50)asdeclarestrSqlasvarchar(1000),strTempColasvarchar(100)execute(DECLAREcorss_cursorCURSORFORSELECTDISTINCT+strCol+from+strTableName+forreadonly)生成游标b

11、eginsetnocountonsetstrSql=select+strGroupopencorss_cursorwhile(0=0)beginfetchnextfromcorss_cursorintostrTempColif(fetch_status0)breaksetstrSql=strSql+,+strCompute+(case+strCol+when+strTempCol+then+strNumber+else0end)as+strTempCol+endsetstrsql=strSql+,+strCompute+(+strNumber+)as总成绩+from+strTableName+

12、wherecId=+intcid+andxID=+intxid+groupby+strGroupprintstrSqlexecute(strSql)iferror0returnerrorprinterrorclosecorss_cursordeallocatecorss_cursorreturn0end3)单科成绩分数段的统计也是学生成绩管理模块中的难点。在数据处理的技术上,需要对成绩处理视图resultView采用复杂查询技术来实现。在界面实现上通过绑定查询的结果进行显示,这里以单科汇总期中成绩为例进行说明。(selectkName,selectCOUNT(*)fromresultViewwhereqzresult=60andqzresult=70andqzresult=80andqzresult=90andkName=t.kName)as90以上fromresultViewtgroupbykName6总结本学生成绩管理系统是作为学生毕业设计的选题,它在实际应用中有多局限性,许多方面有待进一步改进和完善,通过本系统的设计与开发,学生对所学的软件技术知识进行了系统地回顾和应用,特别是对SQLServer数据库技术、面向对象程序设计、软件工程等课程达到学以致用的目的,剖析学生成绩管理系统设计与实现的重点与难点的目的是给学生成绩管理系统的设计者与研究者提供一点参考和借鉴。

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

当前位置:首页 > 科普知识


经营许可证编号:宁ICP备18001539号-1