ImageVerifierCode 换一换
格式:DOCX , 页数:42 ,大小:819.14KB ,
资源ID:3701780      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/3701780.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(软件工程课程设计报告学生选课系统.docx)为本站会员(b****3)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

软件工程课程设计报告学生选课系统.docx

1、软件工程课程设计报告学生选课系统软件工程课程设计报告( 2007 - 2008 年度第 二 学期)课程名称: 软件工程课程设计 题 目: 学生选课系统 院 系: 计算机科学与技术系 班 级: 计算0503 组 号: 2 组 长: 李英龙 组 员: 潘贵生 刘罡 吴志洁 * * 设计周数: 两周 小组成绩: 日期:2008 年 7月 4日软件工程课程设计任 务 书一、 目的、要求通过软件开发的实践训练,进一步掌握软件工程的方法和技术,提高软件开发的实际能力,培养工程设计能力和综合分析、解决问题的能力。具体如下:1.学习和实践在分析和设计计算机应用系统所需要的知识,包括面向对象的系统分析与设计,编

2、码和测试方面的知识;2.熟悉自动化的软件开发工具Rational Rose 2003,并将其运用于软件开发的全过程;3.进一步加强和提高软件工程文档的编写能力;4.培养协作能力和团队精神。二、 主要内容1课题题目:学生选课系统,本系统要实现学生选课的基本功能,包括学生退选课,查看自己的选课信息;教师查看选课学生的信息,提交成绩;管理员添加学生、管理学生、管理成绩、添加教师、管理教师和管理课程等。2运用面向对象技术、UML及可视化的建模工具完成系统的需求分析与设计。3使用Rational Rose作为需求分析与设计的建模工具,包括静态建模和动态建模,并利用对象模型自动生成数据模型,自动建立数据库

3、。4采用分层模式的应用设计模式进行系统的设计实现。5系统要实现四个模块功能:教师模块、学生模块、管理员模块和公用模块。6初步建立系统原型,实现关键的功能,并对系统进行测试。7编写课程设计报告。三、任务分配任务负责人参与人备注需求分析潘贵生李英龙 刘罡 吴志浩总体设计刘罡李英龙 潘贵生 吴志浩详细设计吴志浩李英龙 刘罡 潘贵生系统实现与测试李英龙潘贵生 刘罡 吴志浩四、 进度计划序号设计内容名称完成时间备注1分组及确定题目2008.6.232初步的需求分析与设计建模2008.6.236.253详细的需求分析与设计建模2008.6.266.274关键模块的实现与测试2008.6.307.25编写课

4、程设计报告2008.7.27.36验收检查及评定成绩2008.7.4五、 设计成果要求1建立系统分析与设计模型;2初步建立系统原型,实现关键的功能;3编写课程设计报告。六、 考核方式1模型及代码检查占50%。2设计报告占50%。指导教师: 马素霞 日 期: 2008 年 6 月 23 日软件工程课程设计 成 绩 评定一、 指导教师评语二、 成绩学号姓名成绩备注1051220308李英龙1051220316潘贵生1051220311刘罡1051220321吴志浩 指导教师: 日 期: 年 月 日摘要:本系统实现学生选课的基本功能,包括学生退选课,查看自己的选课信息;教师查看选课学生的信息,提交成

5、绩;管理员添加学生、管理学生、管理成绩、添加教师、管理教师和管理课程等。系统利用.Net平台技术进行开发,实现学生选课的动态管理,使得对信息的管理更加及时、高效,提高了效率。同时还对系统的开发原理、功能特点和设计方案进行了介绍。关键词:学生选课 数据库 管理 ASP.NET一、课程设计的目的与要求通过软件开发的实践训练,进一步掌握软件工程的方法和技术,提高软件开发的实际能力,培养工程设计能力和综合分析、解决问题的能力。具体如下:1.学习和实践在分析和设计计算机应用系统所需要的知识,包括面向对象的系统分析与设计,编码和测试方面的知识;2.熟悉自动化的软件开发工具Rational Rose 200

6、3,并将其运用于软件开发的全过程;3.进一步加强和提高软件工程文档的编写能力;4.培养协作能力和团队精神。二、设计正文1概述1.1课题题目:学生选课系统1.2系统的主要目标:本系统目标是实现选课系统所需的各种基本功能,包括学生选课、退课功能和教师查看选修课程、提交课程成绩功能以及管理员添加学生、维护学生信息、成绩管理、添加教师、维护教师信息、维护选修课程,还有公用的修改密码等功能。1.3 系统的开发环境及运行环境:操作系统: Windows XP Pro SP2建模工具: Rational Rose 2003数据库系统:SQL Server2000开发工具: Visual Studio 200

7、5Web服务器:IIS+ASP.NET 2.0平台2系统需求分析学生选课系统主要满足来自三方面的需求,这三个方面分别是学生用户、教师用户和管理员用户,也即是三类用户角色。(1)学生用户是主要的需求者,主要需求功能是查询可选课程、查看自己选课情况及进行选课、退课操作等;(2)教师用户主要需求功能是查看自己所教授的课程、课程有哪些学生选修、以及利用本系统提交学生的成绩;(3)管理员用户的功能需求较为复杂,包括对学生信息、教师信息、课程信息进行管理。在学生信息管理子模块中,实现对学生信息的添加、修改、删除操作,还可以输入查询条件进行查询操作。在教师管理子模块中,实现对教师信息的添加、修改、删除、查询

8、等操作。在课程管理子模块中,实现对课程信息的添加,添加时为其分配任课教师、上课时间和地点,实现对课程的修改、删除、查看某个课程的详细信息等。本系统将管理员用户、教师用户、学生用户的身份及权限进行严格的划分,让管理员拥有最高权限,可以查看、维护系统中的所有信息,如添加学生,添加课程,修改课程信息等;让教师拥有查看自己开设的课程的信息,以及提交所开设课程成绩的权限;让学生拥有选课和退选的权限;而修改密码模块的权限每个用户都可拥有,用以修改自己的密码信息。通过进行严格的权限划分,可以更好地进行管理,也可更好地保护用户信息安全。2.1用例图图2-1 学生选课系统用例图用例图说明:(1)系统的外部角色有

9、:学生用户、教师用户和管理员。(2)系统主要用例的文档描述:学生管理用例:学生用户可见的功能,包含了选课、退课和查看选课三个用例功能。教师管理用例:教师用户可见的功能,包含了查看学生选课和提交成绩两个用例功能。信息管理用例:管理员可见的功能,这个用例进一步分为三个用例:学生信息管理用例、教师信息管理用例和课程信息管理用例。学生信息管理用例:信息管理用例可见的功能,实现学生信息的管理功能,包含了添加学生、修改学生信息和删除学生三个用例。教师信息管理用例:信息管理用例可见的功能,实现教师信息的管理功能,包含了添加教师、修改教师信息和删除教师三个用例。课程信息管理用例:信息管理用例可见的功能,实现课

10、程信息的管理功能,包含了添加课程、修改课程信息和删除课程三个用例。修改密码用例:所有用户都可见的功能,用于修改用户的密码信息。(3)系统用例之间的关系:学生管理用例与选课、查看选课、退课三用例之间是包含关系。教师管理用例与查看学生选课、提交成绩两用例之间是包含关系。信息管理用例与学生信息管理用例、教师信息管理用例和课程信息管理用例之间是包含关系。学生信息管理用例与添加学生、修改学生信息和删除学生三个用例之间是包含关系。教师信息管理用例与添加教师、修改教师信息和删除教师三个用例之间是包含关系。课程信息管理用例与添加课程、修改课程信息和删除课程三个用例之间是包含关系。(4)系统关键用例的正常事件流

11、图和异常事件流图表2-1 修改密码用例的正常事件流图和异常事件流图用例名称修改密码参与者管理员、教师、学生描述管理员、教师、学生用户进行密码修改启动单击“修改密码”链接前置条件用户成功登录主事件流用户系统1.进入用户修改密码界面,输入旧密码一次 ,新密码两次2.系统检查密码格式是否相符3.系统检查旧密码是否正确4.如果正确,进行密码修改,转入密码修改成功界面异常流异常流密码检查未通过系统返回密码修改界面,提示旧密码不正确,新密码格式不符,两次不同等密码异常用户旧密码错误表2-2 提交成绩用例的正常事件流图和异常事件流图用例名称提交成绩用例参与者教师用户描述提交选自己开设课程的学生的成绩启动进入

12、提交成绩界面前置条件用户成功登录后置条件尚未提交过成绩主事件流用户系统1.单击提交成绩2.系统提交成绩页面3.填写学生成绩,单击提交成绩 5.更新学生成绩,提示提交成功异常流异常流用户已经提交过该门课程成绩系统提示该课程成绩已提交,不能再次提交2.2类图图2-2 学生选课系统类图类图说明:(1)BaseUser类是一个系统角色用户的基类,主要方法有两个:modifyPWD() 用于修改用户的密码;loginCheck() 用于用户登录验证。(2)Admin类继承自BaseUser类。(3)Student类继承自BaseUser类,主要方法有:studentAdd() 用于添加学生;studen

13、tDel() 用于删除学生;studentUpdate() 用于更新学生信息;getStudents() 用于获取学生列表。(4)Teacher类继承自BaseUser类,主要方法有:teacherAdd() 用于添加教师;teacherDel() 用于删除教师;teacherUpdate() 用于更新教师信息;getTeachers() 用于获取教师列表。(5)Course类是一个课程类,主要方法有:courseAdd() 用于添加课程;courseDel() 用于删除课程;courseUpdate() 用于修改课程信息;getCourses() 用于获取课程列表。(6)Elect类是一个选

14、课表类,主要方法有:elect() 选修课程;electDel() 退选课程;getElectInfo() 获取选课信息;haveSubmit() 检测是否已提交过成绩;submitScore() 提交成绩。2.3顺序图(1) 管理员修改课程信息顺序图图2-3 管理员修改课程信息顺序图(2) 学生用户退选课的顺序图图2-4 学生用户退选课的顺序图(3) 教师提交成绩顺序图图2-5 教师提交成绩顺序图2.4协作图(可选)(1) 学生用户选课协作图图2-6 学生用户选课协作图(2) 教师提交成绩协作图图2-7 教师提交成绩协作图3系统总体设计3.1 设计问题域子系统学生选课系统是实现学生选课退课、

15、教师提交成绩以及学校教务管理员维护信息的一个平台,整个学生选课系统有前台和后台两部分,共分为4个模块:管理员模块,教师模块,学生模块和公有模块,分别用于完成各自的功能。以下为学生选课系统总体设计图和各功能模块说明:(1)总体设计图(2)各模块功能表3-1 学生选课系统功能模块表功能模块包含子功能模块功能管理员模块学生管理子模块对学生信息的添加、修改,删除操作教师管理子模块对教师的添加,修改,删除,查询操作课程管理子模块对课程的添加,添加时为其分配任课教师,上课时间和地点,实现对课程的修改,删除,查看某个课程的详细信息等教师模块实现查看自己所教授的课程,课程有哪些学生选修,以及利用本系统提交学生

16、的成绩学生模块实现学生选课,查看所选课程,修改自己的选课信息公有模块实现用户的身份验证,密码修改,退出系统等功能3.2 设计数据管理子系统(1)数据库表表3-2 数据库表序号数据库表数据表存储的内容1Student存储学生的信息2Teacher存储教师的信息3Users存储管理员的信息4Elect存储选课的信息5Cource存储课程的信息6Depart存储学校系院信息(2)数据表之间的关系图3-2 数据表之间的关系图(3)数据库表结构学生表Student的详细数据字段:表3-3 Student学生用户表序号字段名字段类型说明备注1stuIDnvarchar(20)not null学生学号关键字

17、2stuPwdnvarchar(20)not nul学生密码3stuNamenvarchar(20)not nul学生姓名4stuDepartInt学生系院号5stuGradeint学生年级6stuClassint学生班级教师表Teacher的详细数据字段:表3-4 Teacher教师用户表序号字段名字段类型说明备注1teaIDnvarchar(20)not null教师编号关键字2teaPwdnvarchar(20)not null教师密码3teaNamenvarchar(100)not null教师姓名4teaDepartInt(4)教师系院号课程表Course的详细数据字段:表3-5 C

18、ource课程信息表序号字段名字段类型说明备注1courseIDnvarchar(20)not null课程编号关键字2teaIDnvarchar(20)not null教师编号关键字3courseNamenvarchar(100) not null课程名称4courseTimenvarchar(20)上课时间5courseAddressnvarchar(50)上课地点6courseInfoText课程简介选课表Elect的详细数据字段:表3-6 Elect选课信息表序号字段名字段类型说明备注1stuIDnvarchar(20)not null学生学号关键字2courseIDnvarchar(

19、20)not null课程编号关键字3teaIDnvarchar(20)not null教师编号关键字4Scoreint课程成绩系统管理员表Users的详细数据字段:表3-7 Users管理员表序号字段名字段类型说明备注1adminNamenvarchar(20)not null系统管理员用户名关键字2adminPwdnvarchar(20)系统管理员密码系院表Depart的详细数据字段:表3-8 Depart系院表序号字段名字段类型说明备注1departIDInt not null系院号关键字2departNamenvarchar(100)系院名称3.3 设计人机交互子系统(1)用户分类本系

20、统的用户可分为三类:管理员用户;教师用户;学生用户。(2)用户描述管理员用户的描述:管理员用户在整个选课系统中起到管理和维护的作用,对学生和教师的信息进行管理和维护以及开设课设等职责。教师用户的描述:教师用户在本系统中具有管理选修了自己开设的课程的学生的权限,查看选修了自己开设课程的学生信息有及提交学生成绩。学生用户的描述:选课系统主要是针对管理学生的,学生在本系统中具有修改自己的信息,以及选课和退选的功能。(3)设计命令层次系统的人机交互子系统的内容和准则:本学生选课系统的人机交互子系统在根据不同的用户身份登陆到不同的页面,然后按照不同的用户只能进行用户权限内的操作,其结构图如下:通过采用树

21、形结构,细化命令的组织方式,如下:4详细设计学生选课系统是实现学生网上选课、教师提交成绩以及学校教务管理员维护信息的一个平台,整个学生选课系统共分为4个大模块:管理员模块,教师模块,学生模块和公有模块,其中复杂的方法和模块的详细设计流程图如下。4.1系统用户登录流程图4.2 用户密码修改流程图4.3教师提交成绩流程图4.4管理员添加课程流程图4.5学生选修课程流程图5系统实现本系统采用了三层架构来实现,即分为用户界面层(UI)、业务逻辑层(BLL)和数据访问层(DAL),用户界面层是展示给用户的界面,方便用户与系统进行交互;业务逻辑层是对系统业务实体的封装,完成系统业务功能;数据访问层直接与数

22、据库打交道,为业务逻辑层提供底层的数据库操作。5.1 Database类主要是与数据库连接,提供数据库操作功能,代码如下:namespace MyElectCourse.DAL public class Database protected string connectionString; protected SqlConnection connection = null; public Database() connectionString = ConfigurationManager.ConnectionStringsConnectionString.ConnectionString.To

23、String(); Database() if (connection != null) connection = null; protected void Open() if (connection = null) connection = new SqlConnection(connectionString); if (connection.State.Equals(ConnectionState.Closed) connection.Open(); protected void Close() if (connection != null) connection.Close(); pub

24、lic int ExecuteSQL(string sqlstr) int count = -1; this.Open(); SqlCommand cmd = new SqlCommand(sqlstr, connection); count = cmd.ExecuteNonQuery(); this.Close(); return count; public DataSet GetDataSet(string sqlstr) this.Open(); DataSet ds = new DataSet(); SqlDataAdapter adapter = new SqlDataAdapter

25、(sqlstr,connection); adapter.Fill(ds); this.Close(); return ds; public DataTable GetDataTable(string sqlstr) DataSet ds = this.GetDataSet(sqlstr); DataTable dt = new DataTable(); if (ds.Tables.Count 0) dt = ds.Tables0; return dt; public SqlDataReader GetDataReader(string sqlstr) this.Open(); SqlComm

26、and cmd = new SqlCommand(sqlstr, connection); SqlDataReader sdr = cmd.ExecuteReader(CommandBehavior.CloseConnection); /this.Close(); return sdr; 5.2 UserBase类是所有系统角色用户的基类,完成用户登录验证与修改密码的功能,代码如下:namespace MyElectCourse.BLL public class UserBase private string userID; public string UserID get return us

27、erID; set userID = value; private string userPSW; public string UserPSW get return userPSW; set userPSW = value; public string loginCheck(string uid, string upwd, string urole) String selectStr = String.Empty; switch (urole) case 0: /身份为教师时 selectStr = Select * from Teacher where teaID = + uid + ; break; case 1: /身份为学生时 selectStr = Select * from Student where stuID = + uid + ; break; case 2: /身份为管理员时 selectStr = Select * from Users where adminName = + uid + ; break; default: return null; Database db = new Database(); DataT

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

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