• 1.73 MB
  • 2022-04-22 13:40:54 发布

软件工程课程设计的度量与评价系统毕业设计.doc

  • 25页
  • 当前文档由用户上传发布,收益归属用户
  1. 1、本文档共5页,可阅读全部内容。
  2. 2、本文档内容版权归属内容提供方,所产生的收益全部归内容提供方所有。如果您对本文有版权争议,可选择认领,认领后既往收益都归您。
  3. 3、本文档由用户上传,本站不保证质量和数量令人满意,可能有诸多瑕疵,付费之前,请仔细先通过免费阅读内容等途径辨别内容交易风险。如存在严重挂羊头卖狗肉之情形,可联系本站下载客服投诉处理。
  4. 文档侵权举报电话:19940600175。
'软件工程课程设计的度量与评价系统毕业设计目录引言1第一章概述21.1系统总体概述21.2课题开发背景21.3系统开发目的21.4开发环境及相关技术介绍31.4.1Visualstudio2005介绍31.4.2ASP.NET技术概述31.4.3ASP.NET技术特点31.4.4C#语言极其特点41.4.5SQLServerExpressEdition介绍51.5小结5第二章系统可行性及需求分析62.1可行性分析62.1.1技术可行性62.1.2经济可行性62.1.3操作可行性62.2需求分析72.2.1学生功能模块需求72.2.2教师功能模块需求72.2.3管理员功能模块需求82.3小结9第三章系统总体设计及数据库设计103.1系统总体设计103.2数据库设计103.3小结14第四章系统详细设计与实现154.1系统首页设计154.2学生用户模块设计实现164.3教师用户模块设计实现174.4管理员模块设计实现184.5成绩报表设计实现194.6小结20II 结论21致谢22参考文献23II 引言随着时代的进步,社会生产力高速发展,新技术层出不穷信息量急剧膨胀,整个人类社会已成为信息化的社会,人们对信息和数据的利用和处理已经进入自动化、网络化和社会化的阶段。如何有效地进行数据信息的管理和利用,已经成为人们普遍关注的课题。通过本系统,学生可以通过互联网方便的进行课程学习,及时的了解教师发布的教学信息,与教师进行教学互动。通过课程设计的度量与评价系统,对其工作流程的度量进行全面地管理,提供工作效率和工作质量。学生和教师通过本系统可以实现学习互动,更高效率的完成软件工程课程设计工作。在软件工程的课程设计过程中,对其工作流程度量管理,往往不够全面,只能从结果上评价,而且在评价时项目较多,工作繁琐,为了改善这一状况,设计这样一个课程的度量与评价系统,可提高教师的工作效率和工作质量。针对软件工程课程设计学习的各个阶段和文档材料多,教师批阅、汇总成绩还停留在手工阶段,工作过程复杂且辛苦,而且可能会产生错误。为了改变现状,提高软件工程课程设计的管理效率和管理水平,开发一个软件工程课程设计的度量和评估平台。教师可通过本系统进行设定课程设计各个阶段的成绩百分比,给出学生成绩,系统可自动进行成绩等级评定,可通过报表打印成绩单等,提高工作效率。23 第一章概述1.1系统总体概述本系统通过ASP.net构架,B/S编程模式实现教师与学生在互联网上方便快捷的办公、学习。针对管理员、教师及学生三类用户,界面友好,操作简单,可高效的进行相关数据的操作及管理功能。《软件工程》课程设计的度量与评价系统从可实践软件工程的角度运用软件工程的思想和方法,完成一个软件系统,并发布适合其过程模型的软件制品,包括项目计划、需求文档、体系结构设计、源代码、可运行的系统等,其内容包括了软件工程所经历的各个阶段和文档制品。1.2课题开发背景近年来,随着计算机技术的飞速发展,计算机技术及软件技术的应用领域、深度和广度日益扩大,软件工程课程已成为相关学科重要的专业基础课。为满足中国软件产业发展的需要,我国自1984年开始探索软件工程教育,它的发展过程和中国软件产业的发展过程基本一致。目前,在我国国内,教育部进一步深化本科教学改革全面提高教学质量,启动高等学校教学质量与教学改革工程精品课程建设工作,在教学条件方面,重视优质教学资源的建设和完善,加强课程网站的辅助教学功能。随着软件工程学科的日益成熟,原有的教学模式(教学方法、教学内容、实践教学体系与环境、考核评价方式等)已经不能适应学科发展的要求和工程人才培养的实际需要,因此探索适合软件工程学科发展的教学模式十分重要。新的教学模式中,对学生的考核评估系统进行改革,实施多元化综合评价考核方法,由此引导他们学习态度的转变和技能的进步。设计开发《软件工程》课程设计的度量与评价系统这样一个度量与评估平台,可有效地提高教师的工作质量和工作效率。1.3系统开发目的在教学教育领域,教学网络化、办公自动化无疑是大势所趋,可以让师生之间方便的进行交流,提高学生学习及教师办公效率。现代信息技术的发展给高校教育带来了新的机遇和挑战,随着计算机网络的迅猛发展和Internet的日益普及以及高校学生群体和层次的不断扩大,需要这样一个系统来提高工作效率和效果,节省人力资源等。同时高校的管理水平的提高,有利于推动高校管理的23 “无纸化办公”进程。在软件工程的课程设计过程中,对其工作流程度量管理,往往不够全面,只能从结果上评价,而且在评价时项目较多,工作繁琐,为了改善这一状况,设计这样一个课程的度量与评价系统,可提高教师的工作效率和工作质量,同时也方便学生提交作业、查询成绩等。1.4开发环境及相关技术介绍1.4.1Visualstudio2005介绍Microsoft公司推出的VisualStudio2005(简称VS2005)提供了一个全新的开发环境,在此环境下,可用多种语言开发Windows窗体应用程序、ASP.NET网站、移动设备应用程序、组件与控件、数据报表和XMLWeb服务等多种复杂的系统。VisualBasic.NET、VisualC++.NET、VisualC#.NET和VisualJ#.NET全都使用相同的集成开发环境(IDE),该环境允许它们共享工具并有助于创建混合语言解决方案。另外,这些语言利用了.NETFramework的功能,此框架提供对简化ASPWeb应用程序和XMLWebservices开发的关键技术的访问。1.4.2ASP.NET技术概述ASP.net构架是可以用Microsoft(R)公司最新的产品VisualStudio.net开发环境进行开发,WYSIWYG(WhatYouSeeIsWhatYouGet所见即为所得)的编辑。这些仅是ASP.net强大化软件支持的一小部分。ASP.NET是一种用于创建基于Web的应用程序的编程模型。从本质上来说,运行时和.NETFramework类库集可以用于创建动态Web页。它需要在Web服务器的环境中运行,例如MicrosoftInternetInformationServer(Microsoft互联网信息服务器,IIS),并且根据服务浏览器请求指示在服务器上执行程序。与直接由Web服务器提供的静态HTML不同的是,ASP.NET页面实际上是在服务器上执行以后再产生结果的。页面的最后生成也许是由许多不同的指令和/或数据源构造的。1.4.3ASP.NET技术特点1.增强的性能。ASP.NET是在服务器上运行的编译好的公共语言运行库代码。与被解释的前辈不同,ASP.NET可利用早期绑定、实时编译、本机优化和盒外缓存服务。这相当于在编写代码行之前便显著提高了性能。2.世界级的工具支持。ASP.NET框架补充了VisualStudio集成开发环境中的大量工具箱和设计器。WYSIWYG编辑、拖放服务器控件和自动部署只是这个强大的工具所提供功能中的少数几种。23 3.威力和灵活性。由于ASP.NET基于公共语言运行库,因此Web应用程序开发人员可以利用整个平台的威力和灵活性。.NET框架类库、消息处理和数据访问解决方案都可从Web无缝访问。ASP.NET也与语言无关,所以可以选择最适合应用程序的语言,或跨多种语言分割应用程序。另外,公共语言运行库的交互性保证在迁移到ASP.NET时保留基于COM的开发中的现有投资。4.简易性。ASP.NET使执行常见任务变得容易,从简单的窗体提交和客户端身份验证到部署和站点配置。例如,ASP.NET页框架使您可以生成将应用程序逻辑与表示代码清楚分开的用户界面,和在类似VisualBasic的简单窗体处理模型中处理事件。另外,公共语言运行库利用托管代码服务(如自动引用计数和垃圾回收)简化了开发。5.可管理性。ASP.NET采用基于文本的分层配置系统,简化了将设置应用于服务器环境和Web应用程序。由于配置信息是以纯文本形式存储的,因此可以在没有本地管理工具帮助的情况下应用新设置。此"零本地管理"哲学也扩展到了ASP.NET框架应用程序的部署。只需将必要的文件复制到服务器,即可将ASP.NET框架应用程序部署到服务器。不需要重新启动服务器,即使是在部署或替换运行的编译代码时。6.可缩放性和可用性。ASP.NET在设计时考虑了可缩放性,增加了专门用于在聚集环境和多处理器环境中提高性能的功能。另外,进程受到ASP.NET运行库的密切监视和管理,以便当进程行为不正常(泄漏、死锁)时,可就地创建新进程,以帮助保持应用程序始终可用于处理请求。7.自定义性和扩展性。ASP.NET随附了一个设计周到的结构,它使开发人员可以在适当的级别"插入"代码。实际上,可以用自己编写的自定义组件扩展或替换ASP.NET运行库的任何子组件。实现自定义身份验证或状态服务一直没有变得更容易。8.安全性。借助内置的Windows身份验证和基于每个应用程序的配置,可以保证应用程序是安全的。1.4.4C#语言极其特点C#是一种面向对象的编程语言,主要用于开发可以在.NET平台上运行的应用程序。C#是从C和C++派生出来的一种简单、现代、面向对象和类型安全的编程语言,其语言体系都构建在.NET框架上,并且能够与.NET框架完美结合。C#具有以下突出的特点:a.语法简洁。不允许直接操作内存,去掉了指针操作。b.23 彻底的面向对象设计。C#具有面向对象语言所应有的一切特性——封装、继承和多态。c.与Web紧密结合。C#支持绝大多数的Web标准,如HTML、XML、SOAP等。d.强大的安全机制。可以消除软件开发中的常见错误(如语法错误),.NET提供的垃圾回收器能够帮助开发者有效地管理内存资源。e.兼容性。因为C#遵循.NET的公共语言规范(CLS),从而保证能够与其他语言开发的组件兼容。f.灵活的版本处理技术。因为C#语言本身内置了版本控制功能,使得开发人员可以更容易地开发和维护。g.完善的错误、异常处理机制。C#提供了完善的错误和异常处理机制,使程序在交付应用时能够更加健壮。1.4.5SQLServerExpressEdition介绍SQLServerExpressEdition是SQLServer2005的简化版本。是一种基于文件的数据库服务模型,编程者使用SQL数据库就像使用基于文件服务的Access数据库一样,开发的项目中可以直接包含数据库文件,也可以将创建的包含数据库文件的项目直接复制到另一个目录或者复制到另一台计算机上,而不再需要设计者对数据库进行单独的管理。当应用程序首次与数据库建立连接时,SOLServerExpress会自动将.mdf数据库文件附加到正在运行的SQLServerExpress实例中。当用户关闭或退出应用程序时,SQLServerExpress便将.mdf文件从实例上自动分离出来。在项目中创建或添加的数据库也可以随项目直接发布。数据量限制在4GB,只是比SQLSERVER2005少了点高级功能,一般的使用存取,没有什么区别。1.5小结本章对《软件工程》课程设计的度量与评价系统做了一个总体概述,介绍了本系统的开发背景、开发目的。对开发本系统所用的VisualStudio2005开发环境、C#语言及相关技术做了一个系统的介绍。随着高校网络课程建设的发展,基于Internet的各种教学管理、网络课程信息系统也在不断地深入和发展。本文所介绍的“《软件工程》课程设计的度量与评价系统”是高校网络课程系统的一个组成部分,今后我会继续努力,争取将这个系统做到更加完善、能投入到实际的运用之中。23 第一章系统可行性及需求分析2.1可行性分析可行性研究的目的使用最小的代价在尽可能短的时间里确定问题是否能解决,通过复杂系统的规模与目标的探讨,在研究与此类似的系统后,我们具体从下面三个方面考虑。2.1.1技术可行性此系统要求用VisualStudio2005开发,VisualStudio提供了在设计、开发、调试和部署应用程序时所需的工具,VisualC#集成开发环境(IDE)是VisualStudioIDE中的一种。VisualStudio2005和.NETFramework2.0将在应用程序开发的所有方面取得大幅进展。首先,VisualStudio2005根据开发人员个人的需要调整软件开发体验,设置新的开发人员工作效率标准。这一“个性化工作效率”将在开发环境和.NETFramework类库中提供相应的功能,以帮助开发人员在最少的时间内克服其最为紧迫的困难。其次,VisualStudio2005使开发人员能够通过与MicrosoftOfficeSystem和SQLServer2005的更好集成,在更广泛的应用程序开发方案中应用现有的技能。最后,VisualStudio2005将提供一组新的工具和功能,以满足目前大规模企业的应用程序开发需要。综上所述,本系统的设计与开发在技术上和硬件设备上的条件都是满足的,因此,它在技术上是可行的。2.1.2经济可行性现在,计算机的价格已经十分低廉,性能却有了长足的进步。而本系统的开发,为高校教师的工作效率带来了一个很大的飞跃,为此主要表现有以下几个方面:第一,本系统的运行可以代替教师进行许多繁杂的劳动。第二,本系统的运行可以节省许多资源。第三,本系统的运行可以大大的提高教师的工作效率。最后,本人在开发前,系统学习了VisualStudio2005等的相关内容,所以从人力、物力、财力方面都是可行的。2.1.3操作可行性本系统为一个小型的《软件工程》课程设计的度量与评价系统,所耗费的资源非常的小,高校的电脑无论是硬件还是软件都能够满足条件。系统的界面友好,完全是Windows可视化操作环境,教师与学生可方便的使用,只要具备计算机使用常识,用户通过网络可以访问使用该系统,因此,本系统在操作上是可行的。23 2.2需求分析2.2.1学生功能模块需求学生功能模块由查看公告、修改密码、网上选题、上传文档、查看成绩、在线交流6个部分组成。学生用例如图2.1所示。图2.1学生管理用例修改密码:每个用户都有一个自己的用户名和密码,管理员添加学生用户时初始化的学生用户密码为1,学生登录系统后可修改密码,以确保信息私有性和安全性。网上选题:学生登录系统后,可查看教师发布的课题题目、课题描述、课题要求等详细信息,并进行网上选题。上传文档:学生可上传教师要求的文档材料、软件作品到服务器,如果班级所在文件夹已存在就自动保存在班级文件夹中,如果班级文件夹不存在,就自动创建学生所在班级文件夹后资料保存在文件夹中。查看成绩:学生登录后可查看自己的考勤成绩、软件成绩、文档成绩、其他成绩、总成绩以及等级评定信息。在线交流:学生用户可以通过在线交流功能和教师探讨、交流学习中的问题。2.2.2教师功能模块需求教师功能模块由班级管理、成绩管理、文档管理、课题管理、学生信息管理、在线交流6个部分组成。教师用户用例图如图2.2所示。23 图2.2教师管理用例(1)班级管理:通过此模块可以对班级信息进行增加、修改、删除的基本操作。(2)成绩管理:设置学生各项成绩所占百分比;录入学生各项成绩,计算出总成绩并自动进行等级评定;对成绩有误的学生可进行成绩的修改并重新计算总成绩及等级评定;可进行学生成绩记录的删除操作;可生成学生成绩报表,并能进行Word,Excel等格式的导出,方便的进行打印等。(3)文档管理:可查看学生上传的文档信息;查询出每个班级的学生上传的文档并进行下载或在线进行查看;删除数据库中学生文档信息的同时删除服务器上学生上传的文档,并能按班级进行批量数据的删除操作。(4)课题管理:对课题进行发布、修改、删除操作;并对学生所选课题记录进行查看、修改、删除操作。(5)学生信息管理:教师对学生信息进行录入、修改、删除。(6)教师用户可以通过在线交流功能和学生探讨、交流学习中的问题。2.2.3管理员功能模块需求管理员功能模块包括学生管理、教师管理、公告编辑。管理员用例图如图2.3所示。23 图2.3系统管理用例(1)学生管理:对学生用户进行注册、修改学生用户密码、删除学生用户记录。(2)教师管理:对教师用户进行注册、修改教师用户密码、删除教师用户记录。(3)公告编辑:调用记事本打开.txt公告文件,对文件进行编辑,保存后学生用户可在登录网站后看到最新的公告信息。2.3小结本章主要对《软件工程》课程设计的度量与评价系统进行了可行性分析、需求分析,并给出了用例图,为后续的开发工作做好准备。23 第一章系统总体设计及数据库设计3.1系统总体设计本系统在设计时整体上分为三大模块,它们分别是:管理员功能模块、教师功能模块、学生功能模块。其基本功能模块划分如图3.1所示。图3.1系统功能模块划分各个模块的主要功能有:1、管理员管理模块:对教师信息,学生信息进行添加、修改、删除,对数据库信息进行维护,发布公告提醒学生选题。2、教师管理模块:教师发布课题题目,对课题题目进行修改、删除;查看学生上传的文档,并能在线打开或下载;对学生提交的文档、程序等给出每个阶段的评分,对学生信息、班级信息进行添加、修改、删除;教师和学生可进行课程学习交流、探讨等。3、学生管理模块:修改密码,进行网上选题,上传软件工程经历的各个阶段文档材料,对成绩进行查询,学生和教师可进行课程学习交流、探讨。3.2数据库设计数据库设计(DatabaseDesign)是指根据用户的需求,在某一具体的数据库管理系统上,设计数据库的结构和建立数据库的过程。本系统采用Visualstudio2005自带的SQLServer23 Express数据库,系统数据库名为classDB,主要有以下10个数据表:(1)班级信息表(gradeInfo)因为本系统是计算机科学与信息工程系所用,此表只包含班级名称一个字段。表3.1班级信息表列名数据类型备注classNamenchar(30)班级名称,主键(2)发布课题表(releaseTopic)此表包括课题题目、发布时间(程序中自动获取系统时间)、课题描述、课题要求、备注5个字段。表3.2发布课题表列名数据类型备注topicnvarchar(30)课题题目,主键releaseTimedatetime发布时间describetext课题描述demandtext课题要求remarkstext备注(3)学生选课表(selectTopic)此表包括学生学号、课题题目、备注3个字段,特定情况下,学生可选择多个课题题目,所以把学生ID和课题题目同时作为主键。表3.3学生选课表列名数据类型备注studentIDnchar(20)学生学号,主键topicnvarchar(30)课题题目,主键remarkstext备注(4)学生信息表(studentInfo)此表包括6个字段,分别为:学生学号、学生姓名、学生性别、QQ、Email、班级名称。表3.4学生信息表列名数据类型备注studentIDnchar(20)学生学号,主键studentNamenchar(10)学生姓名studentSexnchar(2)学生性别QQnchar(20)QQ号码Emailnchar(30)电子邮箱23 classNamenchar(30)班级名称(1)学生成绩表(studentScore)此表包括8个字段,分别为:学生学号、班级名称、考勤成绩、软件成绩、文档成绩、其它成绩、总成绩、等级评定,输入学生各个部分成绩后可计算总成绩,并自动进行等级评定。表3.5学生成绩表列名数据类型备注studentIDnchar(20)学生学号,主键classNamenchar(30)班级名称kaoqinScoreint考勤成绩ruanjianScoreint软件成绩wendangScoreint文档成绩qitaScoreint其它成绩totalScorefloat总成绩degreenchar(4)等级评定(2)成绩百分比设定表(studentScorePer)此表包括考勤成绩百分比、软件成绩百分比、文档成绩百分比、其他成绩百分比4个字段,设定百分比后可根据各个部分百分比计算总成绩。表3.6成绩百分比设定表列名数据类型备注kaoqinScorePerint考勤成绩百分比ruanjianScorePerint软件成绩百分比wendangScorePerint文档成绩百分比qitaScorePerint其他成绩百分比(1)学生登录表(studentLogin)此表包括学生学号、学生密码两个字段,学生学号唯一标识一名学生。表3.7学生登录表列名数据类型备注studentIDnchar(20)学生学号,主键studentPwdnchar(10)学生密码(2)教师登录表(teacherLogin)此表包括教师号、教师密码两个字段,教师号唯一标识一名教师。表3.8教师登录表23 列名数据类型备注teacherNamenchar(20)教师号,主键teacherPwdnchar(10)教师密码(1)留言表(message)此表由id(自动增量)、留言者、留言时间(获取系统时间)、留言内容4个字段。表3.9留言表列名数据类型备注idint自动增量,主键留言者nchar(20)留言者名称留言时间datetime留言内容text(10)文档上传信息表(upFiles)此表由包含6个字段,分别为:id(自动增量)、班级名称、学生学号、文档名称、上传时间(获取系统时间)、文件上传路径。表3.10文档上传信息表列名数据类型备注idint自动增量,主键classNamenchar(30)班级名称studentIDnchar(20)学生学号namevarchar(50)文档名称datetimedatetime上传时间fileloadvarchar(MAX)上传路径数据库关系如图3.2所示。23 3.2数据库关系图良好的数据库设计对于一个高性能的应用程序非常重要,关系没有经过优化,数据库无法尽可能高效地运行。规范化指的是为了尽量避免重复性和不一致性而组织数据结构的过程,数据库的关系和性能是规范化的一部分。一个规划和设计良好的数据库的优点是众多的,它也证实了这样一个道理,前期做的工作越多,后面所要做的就越少。本系统通过良好的数据库设计能提高数据的查询效率,通过合理表结构,提高数据的读取速度,提高查询效率。3.3小结本章主要对本系统的总体设计和数据库设计进行了详细的阐述,并给出了系统功能模块划分图示,为后续工作奠定了基础。23 第一章系统详细设计与实现4.1系统首页设计详细设计阶段就是为每个模块完成的功能进行具体的描述,要把功能描述转变为精确的、结构化的过程描述。本选课系统有3类用户,所有用户通过网站首页登录到系统,不同身份的用户将进入不同的操作界面,这一设计能很好的控制用户的操作权限,保证系统的安全。系统运用页内框架布局,使系统有统一的风格,界面友好,美观。以下为系统的主要实现过程。首页是所有用户登录系统后浏览的第一个界面,十分重要。首页所要完成不同用户的登录。系统有3类用户:学生用户、教师用户、管理员。用户登录的时候通过下拉列表选择自己的身份,进行身份登录,选择不同的身份,输入正确的用户名密码,将进入不同的用户操作界面。本系统首页登录还需输入验证码,验证码可有效防止对某一个特定注册用户用特定程序暴力破解方式进行不断的登录尝试,因为每次发送登录的请求,服务器都要给一个验证码,由于这个验证码是随机的,所以很难伪造,这样在很大程度上确保了本系统的安全性。随机生成验证码方法的主要代码如下:publicstringRandomNum(intn){stringstrchar="0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z";string[]VcArray=strchar.Split(",");stringVNum="";inttemp=-1;//记录上次随机数值,尽量避免产生相邻的随机数Randomrand=newRandom();//采用一个简单的算法以保证生成的随机数不同for(inti=1;iwindow.alert("请先选择要上传的文件!");");return;}stringFilePath=Server.MapPath("~/uploadfiles/"+className+"/")+System.IO.Path.GetFileName(FileUpload1.FileName);FileUpload1.SaveAs(FilePath);try{SqlConnectionconn=newSqlConnection(System.Configuration.ConfigurationManager.ConnectionStrings["classDBpConnectionString"].ConnectionString);{FileUpload1.SaveAs(path);Label1.Text="恭喜你,上传成功!";}}catch(Exceptionex){Label1.Text=ex.ToString();}}privateDataSetCreateDataSource(){//定义连接字符串stringstrCon;strCon="Provider=Microsoft.Jet.OLEDB.4.0;DataSource="+Server.MapPath("excel/studentinfo.xls")+";ExtendedProperties=Excel8.0;";OleDbConnectionolecon=newOleDbConnection(strCon);OleDbDataAdaptermyda=newOleDbDataAdapter("SELECT*FROM[Sheet1$]",strCon);DataSetmyds=newDataSet();myda.Fill(myds);returnmyds;}选课结果管理23 conn.Open();SqlCommandcommand=newSqlCommand("insertintoupFiles(className,studentID,name,datetime,fileload)values(""+TextBoxBanji.Text.Trim()+"",""+TextBoxXuehao.Text.Trim()+"",""+System.IO.Path.GetFileName(FileUpload1.FileName)+"",""+DateTime.Now.ToString("yyyy.MM.ddhh:mm:ss")+"",""+FilePath+"")",conn);command.ExecuteNonQuery();conn.Close();Response.Write("window.alert("上传成功,谢谢!");");}catch(Exceptionerr){Response.Write("window.alert(""+err.Message+"");");}}教师用户操作图如图4.3所示。图4.3教师用户操作4.4管理员模块设计实现管理员登录后进入到管理员操作界面,管理员界面同样采用页内框架布局,相关操作显示在页内框架中,界面风格统一。页内框架实现代码如下:管理员操作图如图4.4所示。23 图4.4管理员操作4.5成绩报表设计实现ASP.NET网站中只能使用非嵌入式水晶报表,没有强制的数据集类,只能通过代码生成一般的数据集对象,通过使用“XML架构”模板,再利用XML架构模板在代码中生成一般数据集,最后在代码中把Crystal报表绑定到数据集。学生成绩可生成水晶报表进行打印。也可以把学生成绩水晶报表导出为Word、Excel等格式,能方便的进行排版、打印、数据筛选等操作。主要代码如下:usingSystem.Data.SqlClient;usingCrystalDecisions.CrystalReports.Engine;usingCrystalDecisions.Shared;publicpartialclassStudentScoreReport:System.Web.UI.Page{protectedvoidPage_Load(objectsender,EventArgse){DataSetdataSet=null;//检查是否已经缓存if(Cache["dataSet"]==null){23 //填充数据集dataSet=newDataSet();dataSet.ReadXmlSchema(Server.MapPath("XMLSchema.xsd"));SqlConnectionconn=newSqlConnection(System.Configuration.ConfigurationManager.ConnectionStrings["classDBpConnectionString"].ConnectionString);SqlDataAdapteradapter=newSqlDataAdapter(SqlDataSource1.SelectCommand,conn);adapter.Fill(dataSet,"StudentScore");Cache["dataSet"]=dataSet;}else{dataSet=(DataSet)Cache["dataSet"];}//设置报表源ReportDocumentreportDocument=newReportDocument();reportDocument.Load(Server.MapPath("StudentScoreReport.rpt"));reportDocument.SetDataSource(dataSet);CrystalReportViewer1.ReportSource=reportDocument;//设置报表标题reportDocument.SummaryInfo.ReportTitle="学生成绩表";}protectedvoidCrystalReportViewer1_Init(objectsender,EventArgse){//设置初始缩放比例为75%CrystalReportViewer1.Zoom(75);}}4.6小结本章主要对本系统的详细设计进行了具体的描述,重要的地方给出了系统源代码。通过系统各个模块的简要介绍,结合运行界面,展示了整个系统的详细开发过程。23 结论《软件工程》课程设计的度量与评价系统的设计与实现是基于Visual Studio可视化编程平台,本论文详细阐述了基于ASP.NET平台的《软件工程》课程设计的度量与评价系统的工作原理、运行机制和设计实现,同时分析了ASP.NET动态网页技术、ADO.NET数据库访问原理。详细介绍了《软件工程》课程设计的度量与评价系统的总体框架和使用的主要技术、以及功能的实现。整个系统可划分为三大功能模块:学生功能模块、教师功能模块及管理员功能模块。各个模块都要对用户的身份进行验证,以保证只对相应身份的登录用户开放。系统功能完备实用,用户权限划分合理,能满足学校学生与教师软件工程课程学习的需求。系统很好结合了Word、Excel等办公软件的使用,这将大大提高办公的效率。本课题的《软件工程》课程设计的度量与评价系统经过可行性分析、需求分析、总体设计、数据库设计、详细设计,到界面设计、编写代码,以及不断调试下完成。但是,由于本系统主要是为提高教师工作效率而开发的以及时间关系,开发工作以教师用户操作为重点,因此系统还存在一定的不足,需要进一步改进和完善。23 致谢经过几个月的忙碌,到此,我的毕业设计已接近尾声。作为一个本科生的毕业设计,由于经验的匮乏,难免有许多考虑不周全的地方,如果没有指导老师的悉心指导,以及同学们的帮助,想要完成这个设计是非常困难的。在这里首先衷心感谢我的指导教师王宛平老师。王老师平日里工作繁忙,但在我做毕业设计的每个阶段,都给予了我耐心的指导,每周都检查我的毕业设计进度情况,并细心的给我纠正毕业设计中的不足,给予我学习参考的资料并耐心的给我讲解相关的知识。她的治学严谨和科学研究的精神也是我永远学习的榜样,并将积极影响我今后的学习和工作。其次要感谢给予我帮助的同学们,他们的帮助使我学到了许多新的知识,没有他们的帮助,我的毕业设计会变得非常困难。然后还要感谢大学所有的老师,为我们打下计算机专业知识的基础;同时还要感谢所有的同学们,正是因为有了你们的支持和鼓励。此次毕业设计设计才会顺利完成。在大学学习期间,得到许多同学的关心和帮助,在此表示深深的感谢。愿与所有关心帮助过我的朋友友谊长存。23 参考文献[1]张跃廷,韩阳,张宏宇.C#高级编程[M].北京:清华大学出版社:2007.[2]王石.精通VisualC#2005—语言基础、数据库系统开发、Web开发[M].北京:人民邮电出版社:2007.[3]马俊.C#网络应用编程实验指导与开发实例[M].北京:人民邮电出版社:2007.[4]韩万江.软件工程案例教程[M].北京:机械工业出版社:2007.[5]肖春景,乔永卫.软件工程课程教学探讨[J].北京:高教论坛:2007.[6]沈备军,顾春华,虞慧群.软件工程教学的思考与改革[J].北京:化工高等教育:2005.[7](美)ChristianNagel,BillEvjen,JayGlynn,李敏波翻译.C#高级编程[M].北京:清华大学出版社:2006.[8]李香敏.SQLServer2000Programmer’sGuid编程员指南[M].北京:北京希望电子出版社:2001.[9](美)内格尔.C#高级编程(第4版)[M].北京:清华大学出版社:2006.[10](美)solid.SQLServer2005从入门与精通(应用技术基础)[M].北京:清华大学出版社:2006.[11](美)Liberty,J.Programming.ASP.NET[M].北京:电子工业出版社:2007.[12](澳)维恩霍尔特著,田松茂,谢君英译.NET性能优化[M].北京:清华大学出版社:2005.[13]JesseLiberty,DanHurwitz.ASP.NETProgramming[M].南京:东南大学出版社:2007.[14]PaulDickinson,FabioClaudioFerracchiati等著.ProfessionalADO.NETwithVB.NET[M].北京:电子科技出版社:2006.[15](美)德兰妮著,聂伟译.MicrosoftSQLServer2005技术内幕[M].北京:电子工业出版社:2007.[16]元燕辉.浏览器/服务器应用开发[M].北京:科学出版社:2008.23'