课程设计报告1课程设计报告(2013--2014年度第二学期)名称:软件工程课程设计题目:成绩查询管理系统院系:计算机系班级:信安1101班学号:201109040128学生姓名:徐一洲指导教师:宋雨,陈晴,王艳设计周数:2周成绩:日期:2014年6月27日课程设计报告2《软件工程》课程设计任务书一、目的、要求通过该课程设计要使学生树立起强烈的工程化意识,用工程化思想和方法开发软件。切实体会出用软件工程的方法开发系统与一般程序设计方法的不同之处,学生在对所开发的系统进行软件计划、需求分析、设计的基础上,实现并测试实际开发的系统。通过一系列规范化软件文档的编写和系统实现,使学生具备实际软件项目分析、设计、实现和测试的基本能力。二、主要内容要求学生掌握软件工程的基本概念、基本方法和基本原理,为将来从事软件的研发和管理奠定基础。每个学生选择一个小型软件项目(内容参照《计算机综合实践指导》,宋雨等编著,清华大学出版社出版),按照软件工程的生命周期,完成软件计划、需求分析、软件设计、编码实现、软件测试及软件维护等软件工程工作,并按要求编写出相应的文档。具体的方法可以选用传统的软件工程方法或者面向对象的方法,开发环境和工具不限。三、进度计划序号设计(实验)内容完成时间备注1软件计划、软件需求分析、软件设计,制定出软件测试计划,软件测试用例第1周要求上机前做好充分的文档准备2各模块录入、编码、编译及单元测试第2周的第1、2天3联调及整体测试,第2周的第3、4天4验收,学生讲解、演示、回答问题第2周的第5天四、设计成果要求1.至少提交4个文档,包括软件计划、软件需求规格说明书、软件设计说明书、软件测试计划,要求文档格式规范、逻辑性强(可参考《计算机综合实践指导》中给出的要求及格式)、图表规范;2.独自实现了系统的某些功能,基本达到了要求的性能,经过了测试,基本能运行。五、考核方式(1)提交的文档规范,工作量大,文档逻辑性强、正确,按《计算机综合实践指导》标准考核(附《软件工程课程设计》实验报告评分表)占60%(2)系统验收、讲解、答辩占25%(3)考勤占15%2014年6月27日课程设计报告3《软件工程课程设计》实验报告评分表姓名专业班级学号题目标准分数得分(√)标准分数得分(√)标准分数得分(√)报告规范,符合要求20报告较规范,基本符合要求17报告不规范,不符合要求1110169819157614541813321210工作量大,报告完整20工作量适中,报告较完整17工作量较小,报告不完整14191613181512文档逻辑性强、正确,语言流畅20文档逻辑性较强,无明显错误,文字表述较流畅16文档有逻辑性,有明显错误,语言表述不顺畅12111915109181487171365实验报告成绩评分教师签字课程设计报告4一、课程设计的目的与要求1.课程设计目的通过该课程设计要使学生树立起强烈的工程化意识,用工程化思想和方法开发软件。切实体会出用软件工程的方法开发系统与一般程序设计方法的不同之处,在对所开发的系统进行软件计划、需求分析、设计的基础上,实现并测试实际开发的系统。通过一系列规范化软件文档的编写和系统实现,使自己具备实际软件项目分析、设计、实现和测试的基本能力2.课程设计要求1.1课程设计准备1)复习软件工程课程的主要内容,熟练掌握软件生命周期的理论以及各阶段的基本概念。2)明确可行性分析、需求分析、设计、测试等阶段的基本任务和基本方法。3)熟练运用规范化的描述方法和文档,描述软件开发的各个阶段。4)熟悉开发环境和开发工具。1.2内容要求1)对所设计和实现的系统进行可行性分析,提交可行性分析报告;2)对系统进行需求分析;3)在SRS的基础上进行软件的概要设计和详细设计,提交软件设计文档;4)遵循上述文档的要求,实现软件;5)对所实现系统进行软件测试,完成软件测试报告课程设计报告5二、设计正文1.可行性分析报告1.1项目简介1.1.1项目目标完成一个功能相对完善的成绩管理系统,初步确定了四种功能,适当的调整功能是否再继续增加。随着学校规模的扩大,和学生数量的增多,使得成绩查询的难度在增加,简单的完全人工的成绩查询方式已不能满足学校的诸多方面的需求,利用计算机管理学生成绩,提供了一种方便快捷的方式,能够接受大量的人力物力,并且能够提供有效的管理手段。1.1.2系统的简要描述,主要功能本系统将提供给教学管理人员和学生使用,进行日常教务工作的查询、管理和调度,提高时间的利用率和工作效率。系统应该提供的功能包括:1.永久存储用户输入的信息;2.数据调度和数据查找操作简易;3.为不同级别用户设置不同操作权限;本项目的产品是一个独立、完整的程序,目前不提供其他系统的接口。1.2对现有系统的分析1.2.1处理流程和数据流程(系统流程图)系统流程图1.2.1课程设计报告61.2.2对现有系统的其他说明随着数据库的数据的增加,数据库设计的不合理性使得数据读取,计算等时间较长,系统维护开销已经较大,系统相对老旧,运行速度较慢1.3技术可行性分析本系统采用C/S结构,c#windows程序设计,分为三部分:数据连接,业务逻辑,界面设计。在功能实现方面,结合其他程序数据库作为数据来源,利用SqlServer作为数据库支持,用加密技术实现用户密码保护。1.4经济可行性分析通过对现有系统进行改进,提高系统效率。减少系统维护费用。1.5社会因素可行性分析1.5.1法律因素本系统提供学生成绩查询管理功能,给学校带来方便的成绩管理,成绩不公示,学生无法查看他人成绩1.5.2用户使用可行性给用户提供有好的界面,使用的功能选择,并在起始页上进行产用功能,方便用户的功能选择,用户登录控制使得系统更加安全。任何学生、管理人员看到就会使用1.6可供选择的方案1.对控件进行功能扩展,使sqlserver数据库,c#语言进行编写,使用数据加密技术对用户关键信息进行加密处理课程设计报告71.7需求概述1)给出软件需求的摘要和简单描述实现学生成绩管理功能,主要功能包括:用户登录验证,密码修改,专业调整,成绩录入,修改,打印,查询。2)运行环境Windows平台下,.NET3.5以上环境1.8功能需求1)学生成绩和学生信息查询。功能:查询、浏览学生信息。可以查询单一记录,也可以浏览所有信息。操作:单击显示即可浏览所有学生信息或成绩信息,输入学号点击查询可查询单独记录。教师信息查询同上。2)学生成绩录入删除窗体功能:设置权限管理,管理人员可以录入删除学生成绩和信息。操作:在文本框处填写信息后点击添加实现录入成绩功能,输入学号点击删除实现成绩删除功能。查询条件显示结果退出不符合条件数据库课程设计报告83)学生成绩修改功能:修改学生成绩信息。操作:填写信息后,输入新的成绩,点击修改。学生考试成绩退出系统登陆成绩管理系统成绩录入模块增加记录条件满足显示结果数据库退出不满足课程设计报告91.9数据描述学生:学生=学号+姓名+性别+班号+入学年份学号=入学年份+年级+系号+专业号+班级位次号姓名=[1{英文}40|1{汉字}20]性别=[男|女]班号=年份+年级+系号+专业号+班级数入学年份=”1945”..”9999”专业:专业=专业号+专业名+系号专业号=”01”..”99”专业名=2{汉字}20系号=”01”..”99”教师:教师=教师号+系号+教师名+性别+教师编制号教师号=系号+科室号+科室排名系号=”01”..”99”教师名=[1{英文}40|1{汉字}20]性别=[男|女]教师编制号=”01”..”99”课程:课程=课程号+课序号+开课系号+课程名+教师号+学分课程号=”001”..”999”课序号=”001”..”999”开课系号=”01”..”99”课程名=2{汉字}20教师号=系号+科室号+科室排名学分=”0”..”10”1.10性能需求1)数据精确度数据库设计要消除数据冗余,使数据库易于扩展,查找快捷2)时间特性提供时间限制的功能开启,系统并不要求长时间不间断运行,当用户有功能需求,且满足一定的时间要求是进行开启3)适应性能够适应大量学生数据的的管理,在系统发生错误时,不会发生系统崩溃情况,提供一定的同挫能力1.11运行需求1)用户界面1、用户界面要方便快捷,功能清楚,并容易查找,添加常用功能区,方便用户的使用。2、用户需要登录后才能使用系统,登录控制要有一定的安全保证措施,密码要进行加密存储。用户分等级登录系统,根据用户的等级确定用户能够使用的功能。2)硬件接口进行数据库服务器的连接3)软件接口课程设计报告10连接选课系统等系统数据库获得数据4)故障处理提供友好的错误提示界面,方便用户进行错误查找,提供友好的用户界面1.12其它需求无2.软件设计说明书2.1文件结构和全局数据1)数据库设计E-R图,如图系统E-R图结构课程表成绩学号课程号号成绩表选课学生表学号姓名年龄系名总成绩备注性别学分学生人数开课时间课程名课程号考核姓名性别年龄密码教师编号nn管理nn课程设计报告11数据库清单,如下表名说明XS学生信息表KC课程信息表XS_XC选课,成绩信息表Admin管理员信息表Teacher教师信息表表1Admin表字段号字段名字节长度数据类型说明1Admin_IDint管理员ID主码2Admin_name10nchar管理员姓名3Admin_pass10nchar管理员密码4Admin_levelint管理员级别表2KC表字段号字段名字节长度数据类型是否允许空值说明1KCHint否课程号,主码2KCM10nchar否课程名3KKXQ4Int否开课学期4XSInt否学时5XFInt否学分表3XS表结构字段号属性名字节长度数据类型是否允许空值说明1XH10nchar否学号,主码2XM10nchar否姓名3ZYM10nchar是专业名4PASS10nchar否密码5XB10nchar是性别课程设计报告126CSNYdate否出生日期7XFint否已修学分8BZ100nchar是备注表4XS_XC表结构字段号属性名字节长度数据类型是否允许空值说明1课程号10nchar否参照KC表主键2学号10nchar否参照XS表主键3成绩Float是成绩(0~100)4idint否主码表5Teacher表结构字段号属性名字节长度数据类型是否允许空值说明1teach_num10nchar否教工号,主码2teach_name10nchar否姓名3teach_pass10nchar是密码4age10int否年龄5sex4nchar是性别数据库表关系图课程设计报告13数据库视图设计View_Score视图3.3模块描述3.3.1主界面1)功能:提供成绩管理功能,包括成绩的录入,修改,查询功能。能够根据学生学号对学生成绩进行管理,并能进行批量的成绩录入。提供报表打印功能,方便用户阅读。2)接口:供学籍管理系统主模块调用。3)数据:从数据库中获得datatable,用于存放学生信息。并用修改后的datatable更改数据库4)处理:能够根据学生学号对学生成绩进行管理,并能进行批量的成绩录入。3.3.2学生信息查询1)功能:根据学生的学号,系别,提供学生的课程成绩,并能根据课程的类别进行不同的显示。2)接口:共学籍管理系统主模块调用。3)数据:从数据库中获得datatable,统计学生学分。4)处理:接受用户选择的学号,课程类别,查询数据库生成学生的学分统计表,并通过gridview进行显示,可以给用户提供分页显示功能。课程设计报告143.3.3成绩录入1)功能:供教师使用,提供学生的成绩录入功能。提供给用户的选择有学号,姓名,课程名,学分。2)接口:共学籍管理系统主模块调用。3)数据:使用学生信息表,学生选课表,课程信息表等数据。4)处理:对成绩进行查询录入。3.3.4选课信息,成绩管理1)功能:根据所选课程给出学生成绩2)接口:共学籍管理系统主模块调用。3)数据:使用学生信息表,学生选课表,课程信息表等数据。4)处理:根据所选课程给出学生成绩供用户查看。课程设计报告153.3.5教师信息管理界面1)