UML网上学生选课系统程序设计
- 格式:doc
- 大小:523.50 KB
- 文档页数:15
信息系统集成技术及应用题目:UML系统分析设计、建模与实现学号:100430112022姓名:杨家建专业:计算机技术指导教师:舒远仲UM L系统分析设计与建模以简单的学生选课系统进行详细的系统分析与建模。
(一)系统用例图1•首先根据需求分析可知:管理员维护课程信息,对其进行添加、修改、删除等。
学生可以在线查询课程信息,并进行选课,也可以在规定时间内更改选修 的课程。
我们发现系统中的参与者有:管理员和学生,然后从参与者的角度就可 以发现系统的用例,并绘制出系统的用例图,如图 1所示:图1学生选课系统用例图2.对部分用例进行描述:“添加课程”用例1) 用例名:添加课程2) 执行者:管理员3) 目的:管理员通过系统界面进入,添加所要开设的课程,确认无误后将其信息保 存到数据库中,以供学生选择。
4)过程描述:5) 管理员选择进入管理界面,用例开设修改课程停开课程A —管理员vvinclude>><<include>>添加课程vvinclude>><<extend>>删除课程查询课程信息6)系统提示输入管理密码7)管理员输入密码8)系统验证密码9)A1:密码错误10)进入管理界面,系统显示目前所建立的全部课程信息11)管理员选择添加课程12)系统提示输入新课程信息13)管理员输入信息14)系统验证是否和已有的课程冲突15)A2 :有冲突16)10 )系统添加新课程,提示课程添加成功17)11 )系统重新进入管理界面,显示所有课程18 )12 )用例结束19 )异常事件流处理:20 )A1 :密码错误:1)系统提示再次输入。
2)用户确认后进入第5)步。
21 )A2 :有冲突:1)系统提示冲突,显示冲突的课程信息。
2)用户重新输入,验证无误后进入第10 )步。
选课”用例1)用例名:选课2)执行者:学生3)目的:学生进入选课系统界面,浏览的课程,最后选择一门自己喜欢的课程并提交。
选课系统的UML的环境图,数据流图,结构图,数据库设计,程序流程图选课系统⼀(1)环境图教务处提供教师信息和学⽣信息和推荐课表。
学⽣进⾏教学质量评价后,⽅可进⼊系统选课,系统⾸先提供给学⽣⼀个推荐课表,学⽣根据实际情况选择对应的课程。
选定后,系统显⽰具体学科上课时间和教师教室信息,学⽣选课完成后,可以查看⾃⼰的课表。
若选择情况有误,可点击退选进⾏修改。
学⽣选课完成后,教务系统根据课程容量随机选择选课学⽣。
学⽣再根据选定课程情况进⾏退补选。
选课结束后学⽣可查询并打印课表。
学期末进⾏考试,教师输⼊学⽣成绩,学⽣可进⼊系统查询成绩。
教秘输出:教师信息学⽣信息教学计划学⽣输⼊:教师质量评价所选课程输出:最终课表推荐课表( 教师信息教室信息) 成绩教师输⼊:学⽣成绩图1 选课系统的环境图(2)⼀层数据流图对选课系统进⾏分解,从⼤的⽅⾯分解为教务管理,预选课,正选课,成绩管理系统4部分,得到⼀层数据流图,选修课程图2 选课系统⼀层数据流图图3.1选课的⼆层数据流图教学计划验证信息课程信息⽤户名密码学⽣成绩图3.2教务管理的⼆层数据流图图图4.1登录的三层数据流图⼆数据字典 1.数据流词条(a )数据流名:选修课程简述:学⽣根据学分和上学期成绩选修课程。
组成:选择的课程=课程名+教师信息+教室信息+考试时间+学分+选课⼈数来源:学⽣去向:选课流通量:闲时:50 忙时:200峰值:400(b)数据流名:教师信息简述:教秘在给出推荐课表的同时给出教师信息,输⼊到教务管理并保存到推荐课表中。
组成:教师信息=教师编号+教师姓名+教师职称+性别+所教授的课程来源:教秘去向:教务管理流通量:闲时:30 忙时:100峰值:1502.加⼯词条(a)加⼯名:正选课编号:1.2简述:学⽣根据预选课课表再进⾏正选课,根据课程情况和学分限制选择跨专业课程,对不满意的进⾏补退选。
教务管理对选修课程的⼈数进⾏限制,取消没有达到⼈数最低要求的那些课程,并在选课结束后进⾏公布。
《学生网上选课管理系统(UML)》一、系统概述学生网上选课管理系统是基于UML(统一建模语言)进行设计的,旨在为学生提供一个便捷、高效的选课平台。
本系统通过对选课流程的规范化管理,提高了选课效率,降低了教务管理人员的工作负担,同时保证了选课过程的公平、公正。
二、系统功能模块1. 用户登录模块用户登录模块包括学生登录和教务管理员登录两个部分。
学生通过学号和密码登录系统,进行选课操作;教务管理员则负责维护课程信息、监控选课过程及处理异常情况。
2. 课程浏览模块课程浏览模块为学生提供了丰富的课程信息,包括课程名称、课程编号、上课时间、上课地点、授课教师等。
学生可根据个人兴趣和需求筛选课程,为选课做好充分准备。
3. 选课操作模块选课操作模块是系统的核心部分,学生可以在该模块进行课程选择、退选、查看已选课程等操作。
系统会实时更新选课结果,确保学生选课的实时性和准确性。
4. 课程管理模块课程管理模块供教务管理员使用,主要包括课程信息维护、选课人数限制、选课时间设置等功能。
教务管理员可根据实际情况调整课程安排,确保选课工作的顺利进行。
5. 数据统计与分析模块数据统计与分析模块负责收集、整理选课数据,为教务管理员提供决策依据。
通过分析选课结果,教务管理员可以了解学生选课偏好,优化课程设置,提高教学质量。
三、系统特点1. 操作简便:系统界面设计简洁,操作流程清晰,便于学生快速上手。
2. 高效性:采用UML建模,系统结构合理,数据处理速度快,提高了选课效率。
3. 安全性:系统采用加密技术,保障用户数据安全,防止信息泄露。
4. 可扩展性:系统设计充分考虑未来发展需求,便于功能扩展和升级。
5. 易维护性:模块化设计,便于后期维护和故障排查。
《学生网上选课管理系统(UML)》四、系统角色与权限划分1. 学生角色查询和浏览课程信息;进行选课、退课操作;查看个人选课记录和课程表;接收选课通知和系统消息。
2. 教务管理员角色发布和更新课程信息;设置选课时间、人数限制等参数;监控选课过程,处理选课异常情况;管理学生账户信息,包括权限分配和密码重置;查询和导出选课数据,进行统计分析。
组内分工:黄金全:用例图和类图,调查问卷杨铖佳:状态图和顺序图,调查问卷李冰:细化类图和E-R图,调查问卷一,课程设计目的通过这次的设计,主要是做出一个小型管理系统,来加强JAVA所学知识的巩固和融会贯通,可以说是对一个学期所学知识的一个小结,加强对JAVA数据库的理解。
二,需求分析功能需求分析:该系统具备管理学生信息,课程信息,选课信息的功能:用户通过输入账号和密码进入该系统后,可以进行一些基础维护(学生信息维护,课程信息维护,选课信息维护)。
全部都可以进行增加,修改,删除,模糊查询。
(1)用例图分析工作流.类图状态图顺序图用户登录(1)用户在登录界面输入用户名和密码后,若登录信息正确,则依据用户权限,用户分别进入学生、老师和管理员界面。
(2)用户可以在登录界面进行密码的修改,密码修改后会保存在用户权限表中。
可能出现的情况:输入用户名或密码错误,系统提示非法用户登录,需要重新输入正确的用户名和密码。
学生选定课程学生选定课程,修改已经选定的课程,保存,提交,退出系统。
老师做出相应操作老师根据相应情况对学生进行增删,增加某些课程,删除某些课程,修改学分等。
老师查看学生选课情况老师想看学生的选课情况,系统要返回学生选课情况。
设计工作流细化类图数据库设计概念模型学生课程联系E-R图一个学生可以选修多么课程,一个课程可以被多个学生选修。
所以学生和课程是m:n的关系。
学生的属性有姓名、学号、登录密码和所属院系。
课程的属性有课程号、课程名、课时和学分。
教师课程关系图。
一个老师可以讲授多门课程,一个课程可以有多个老师上,比如很多专业班级要少C语言,全校肯定不止一个C语言老师,所以老师和课程的关系是n:m. 老师的属性有姓名、教师号、密码和所属院系,课程的属性有课程号、课程名、课时和学管理员教师关系实体E-R图一个管理员可以管多个老师,所以管理员和老师是1:n的关系。
逻辑模型学生(学号(主键),姓名,密码,院系)课程(课程号(主键),课程名,课时,学分)选修(学生,课程,(都是主键))老师(教师号(主键),姓名,密码,院系)课程(课程号(主键),课程名,课时,学分)讲授(老师,课程,(都是主键)参考文献1.黄梯云,冯玉强.管理信息系统.北京:高等教育出版社,2006。
学生选课系统UML分析建模1.学生选课系统随着高校教学管理的系统化和计算机的网络化,以及学分制教学改革的加快,网上选课系统已成为教学教务管理的重要部分。
当前,高等院校正逐步实施学分制,学分制允许学生在一定范围内选择适合自己需要的课程,具有分散性、时间不确定性,难于人工调配与集中管理。
另外,随着各个高校扩招程度的加快,学生人数日益增加,造成教学资源比较紧张,这无疑增加了选课管理难度和教务管理人员的工作量。
传统基于集中式管理的选课无力适应这些新的变化,建立网上选课系统势在必行。
2.需求分析学生网上选课系统是针对在校学生和教师使用,从学生的角度来说,由于学校教学制度的改革,现在大部分高等院校开始实行的是学生的自主选课模式,传统的教学模式——学生按照学校安排好的课程上课——已经不能适应新型的教学手段,如果仍然通过纸上的方式选课,一方面浪费的大量的人力、物力资源,另一方面浪费时间以及在人为的统计过程中不可避免出现的差错等情况。
随着高校人数的增多,这种弊端会越来越多的暴露出来。
因此,利用网络,使学生只要在计算机前输入自己的个人选课信息即可完成原来几倍的作业量。
从教师的角度来说,同样是节省了大量的工作量,由于教师提出代课申请完成课程发布的工作较学生选课而言更加的复杂,因此通过网上进行课程发布能大幅度的减少教师的工作量,减少错误的发生几率。
作为教师,也只要通过自己的电脑来操作即可,不用再奔波于教务处和办公室之间。
以UML构建思想来实现网上选课系统可以最大程度的做到实用性,可扩展性和可维护性相结合,安全性以及规范化原则。
功能需求:选课系统主要是对学生信息,成绩信息,教师信息,课程信息进行管理和维护的功能。
对学生的功能,学生可以浏览个人的信息如学号,姓名,性别等,还可以查询成绩。
选课,可以查看课程信息,包括课程时间,类型,学时等,然后进行选课,并且可以查看教师,选课人数。
对管理员的需求,系统的日常维护,包括代码维护和数据维护。
学生选课系统完整的UML建模(一)系统用例图1.首先根据需求分析可知:管理员维护课程信息,对其进行添加、修改、删除等。
学生可以在线查询课程信息,并进行选课,也可以在规定时间内更改选修的课程。
我们发现系统中的参与者有:管理员和学生,然后从参与者的角度就可以发现系统的用例,并绘制出系统的用例图,如图1所示:图1 学生选课系统用例图停开课程删除课程2.对部分用例进行描述:“添加课程”用例1)用例名:添加课程2)执行者:管理员3)目的:管理员通过系统界面进入,添加所要开设的课程,确认无误后将其信息保存到数据库中,以供学生选择。
16)10)系统添加新课程,提示课程添加成功17)11)系统重新进入管理界面,显示所有课程18)12)用例结束19)异常事件流处理:20)A1:密码错误:1)系统提示再次输入。
2)用户确认后进入第5)步。
21)A2:有冲突:1)系统提示冲突,显示冲突的课程信息。
2)用户重新输入,验证无误后进入第10)步。
“选课”用例1)用例名:选课2)执行者:学生-可编辑修改-。
3)目的:学生进入选课系统界面,浏览的课程,最后选择一门自己喜欢的课程并提交。
4)过程描述:5)1)学生进入选课登录界面,用例开始6)2) 系统提示输入学号与密码7)3) 学生输入学号与密码8)4)系统验证9)A1:验证错误10)5) 进入选课主界面11)6)学生点击选课12)7)系统显示所有课程信息 13)8)学生选择课程14)9)系统验证课程是否可选 15)A2:不可选16)10)系统提示课程选择成功 17)11)用例结束18)异常事件流处理:19)A1:验证错误:1)系统提示验证错误,提示重新输入。
2)验证成功,进入第5)步20)A2:不可选1)系统提示课程不可选及原因。
2)学生重新选课。
3)验证成功后进入第10)步“修改”用例-可编辑修改-5)进入修改主界面,系统显示目前所建立的全部课程信息6)管理员选择要修改的课程7)是否确定修改该课程A2:不修改8)系统显示全部课程信息9)管理员输入新信息10)验证是否有课程冲突A3:冲突11)系统修改课程,提示修改成功12)系统重新进入主界面,显示所有课程13)用例结束异常事件流处理:A1:密码错误:1)系统提示再次输入。
学生网上选课管理系统(UML)一、系统概述学生网上选课管理系统是基于UML(统一建模语言)进行设计的,旨在为学生提供一个便捷、高效的选课平台。
本系统通过分析学生的需求,运用UML图示对系统进行详细描述,确保系统功能完善、操作简便。
二、系统功能模块1. 用户登录模块用户登录模块主要包括学生登录和教务管理员登录。
学生通过学号和密码登录系统,教务管理员则拥有更高的权限,负责系统维护和课程管理。
2. 课程浏览模块课程浏览模块为学生提供了丰富的课程资源,学生可以根据自己的兴趣和专业需求,查看课程详情、教师信息、上课时间等。
3. 选课模块学生在课程浏览模块中找到心仪的课程后,可以在此模块进行选课。
系统会根据学生的选课条件进行筛选,确保选课过程公平、公正。
4. 退课模块学生在规定时间内可对已选课程进行退课操作,避免因课程冲突或个人原因导致无法正常上课。
5. 成绩查询模块学生可以在成绩查询模块查看已选课程的成绩,了解自己的学习情况。
6. 教务管理模块教务管理员负责对课程、教师、学生等基本信息进行维护,确保系统正常运行。
三、系统UML图示1. 用例图用例图展示了系统的主要功能模块,包括学生、教务管理员等角色及其操作。
2. 类图类图描述了系统中的主要类及其属性和方法,如学生类、课程类、教师类等。
3. 序列图序列图展示了系统各模块之间的交互过程,如学生登录、选课、退课等操作。
4. 状态图状态图描述了系统中的关键对象在不同状态下的转换过程,如学生选课状态、课程状态等。
5. 活动图活动图展示了系统中的主要业务流程,如选课流程、退课流程等。
四、系统特点1. 操作简便:系统界面友好,操作流程清晰,便于学生快速上手。
2. 功能完善:系统涵盖了选课、退课、成绩查询等核心功能,满足学生日常需求。
4. 安全可靠:系统采用加密技术,保障用户数据安全,防止信息泄露。
五、系统优势1. 灵活的课程配置:学生网上选课管理系统允许教务管理员根据教学计划灵活调整课程设置,满足不同专业、年级学生的需求。
软件工程课程设计报告( 大三下期2015年)课程名称:软件工程课程设计题目:学生选课系统院系:软件工程完成时间:2015 . 5. 8组员:张中秋(U201217502)高蕾(U201217507)曾昭杰(U201217476)UML网上学生选课系统程序设计一、课程设计的目的与要求UML统一建模课程是一门面向对象开发方法的设计语言。
UML统一建模课程设计实验课,着重加强面向对象建模技术。
使用UML统一建模语言,用需求模型简化业务领域;用分析模型验证用例的正确性,一致性,完备性,可行性;用设计模型标识解决方案。
通过模型实现了从业务领域到软件领域的映射。
通过建模,使问题可视化,形式化。
通过以序列的建模和迭代活动,对于提高学生综合素质十分必要。
通过软件开发的实践训练,进一步掌握软件工程的方法和技术,提高软件开发的实际能力,培养工程设计能力和综合分析、解决问题的能力。
二、设计正文1.概述1.1课题题目:网上学生选课系统1.2系统的主要目标:本系统目标是实现选课系统所需的各种基本功能,包括学生选课、查看已修课程、查看已选课程、退课功能和教师查看选修课程、提交课程成绩功能以及管理员添加学生、维护学生信息、成绩管理、添加教师、维护教师信息、维护选修课程,还有公用的修改密码等功能。
1.3 系统的开发环境及运行环境:操作系统:window7建模工具:Rational Rose 20072.系统需求分析学生选课系统主要满足来自三方面的需求,这三个方面分别是学生用户(Student)、教师用户(Teacher)和管理员用户(Administrator),也即是三类用户角色。
(1)学生用户是主要的需求者,主要需求功能是查询可选课程、查看自己选课情况及进行选课、、查看已修课程、退课操作等;(2)教师用户主要需求功能是查看自己所教授的课程、课程有哪些学生选修、以及利用本系统提交学生的成绩;(3)管理员用户的功能需求较为复杂,包括对学生信息、教师信息、课程信息进行管理。
在学生信息管理子模块中,实现对学生信息的添加、修改、删除操作,还可以输入查询条件进行查询操作。
在教师管理子模块中,实现对教师信息的添加、修改、删除、查询等操作。
在课程管理子模块中,实现对课程信息的添加,添加时为其分配任课教师、上课时间和地点,实现对课程的修改、删除、查看某个课程的详细信息等。
本系统将管理员用户、教师用户、学生用户的身份及权限进行严格的划分,让管理员拥有最高权限,可以查看、维护系统中的所有信息,如添加学生,添加课程,修改课程信息等;让教师拥有查看自己开设的课程的信息,以及提交所开设课程成绩的权限;让学生拥有选课和退选的权限;而修改密码模块的权限每个用户都可拥有,用以修改自己的密码信息。
通过进行严格的权限划分,可以更好地进行管理,也可更好地保护用户信息安全。
2、1 用例图图A 用例图包系统的用例图分为三个部分,分别有三个角色:学生、老师和管理员。
图B 学生用例图学生用例中,学生能进行的活动有注册、修改自己登录密码、登陆、学生管理(里面包括查看课程内容、选课、退选、查看已修的课程以及更改自己的信息)。
图C 老师用例图老师用例中,老师能进行的活动有修改自己的密码、登陆、老师管理(里面包括查看个人信息、查看学生成绩、提交学生成绩以及提交自己要开设的课程)。
图D 管理员用例图管理员的用例中,管理员能进行的活动有修改自己的密码、学生信息管理(增加学生、修改学生信息以及删除学生)、老师信息管理(增加老师、删除老师以及修改老师的信息)、课程信息管理(增加课程、修改课程信息、删除课程以及录入分数)。
从上面的三个不同角色的用例图我们可以看出管理员的权限最大,教师的权限次之,学生的权限最低。
2、2类图图E 类图分包类图分包中,将所有的类图分成界面类(Boundries)、控制类(Control)、实体类(Entities)。
图F 界面类在界面类中,拥有登陆界面(LoginFrame),注册界面(RegisterFrame),学生自我管理界面(StudentFrame),老师自我管理界面(TeacherFrame),管理员管理界面(AdministratorFrame,其中管理员管理界面又由学生信息界面(StudentInformationManagement)、老师信息管理界面(TeacherInformantionManagement)和课程信息管理界面(CourseInformationManagement)三个部分组成。
)但以上的所有界面组合成主界面(MainFrame)。
其中大多数界面都有着相同的方法CreateWindows(),这是界面类创建的方法。
图G 控制类控制类的设计主要是根据用例图中的功能设计的,具体分为注册控制(Register)、登录控制(Login)、学生自我管理控制(StudentManagement)、教师自我管理控制(TeacherManagement)、管理员管理控制(AdminManagement,它有三个子类学生信息管理控制(StudentInformationManagement)、老师信息管理控制(TeacherInformationManagement)和课程信息管理控制(CourseInformationManagement))。
图H 实体类实体类的开发就像是JavaBean一样,所以在实体类中主要有学生类(Student)、教师类(Teacher)、管理员类(Administrator)、课程信息类(CourseInformation)、成绩信息类(GradeInformation)、选课单信息类(TheSelectedCourseInformation)。
2、3活动图图I 学生注册课程的活动图活动途中包括了对学生注册的活动进行描写,注册的成功与失败,学生登录与失败的反应。
包含查看课程信息、选择课程。
退选、擦看已修课程成绩、改个人信息,修改密码等操作。
2、4 时序图图J 学生注册时序图这里面主要是注册界面到学生管理界面的过渡,设计到的方法有创建一个新的窗口,提交,注册验证,以及获取JavaBean。
图K 学生登录时序图这里主要是登陆界面到学生管理界面的过渡,涉及到的方法有创建新窗口,提交,登录验证,获取学生类的JavaBean实体类。
图L 学生修改个人信息密码时序图这里主要是在学生管理界面中实现对学生实体类中密码和个人信息的修改。
图M 学生选课退课查看成绩时序图这里主要是对学生查看课程,选择课程、查看选择的课程、退选课程、查看成绩的实现。
2、5 状态图图N 学生登录类状态图此图中主要涉及了登录未登录,是否重新登录,密码验证等状态。
图O 学生管理类的状态图此图中涉及到是否选课状态、选课是否成功的状态、是否获取自己的信息状态、是否退选状态等状态。
MainFra meStudentFr ame TeacherFr ameAdministrat orFrameStudentMa nagementTecherMan agementStudentInformation ManagementFrameTeacherInformation ManagementFrame CourseInformationM anagementFrame StudentCourseInf ormationtGradeInfo rmationTheSelectedCou rseInformationStudentInformati onManagementTeacherInformati onManagement CourseInformatio nManagementTeacher图P 组件图此图中的所有组件代表着一个类,有控制类,界面类以及实体类。
图Q 部署图此图中的结构有四层,数据层,程序应用层,网络传输层和用户客户端。
3 部分核心类代码3、1学生信息管理类//Source file: D:\\Java_SDK\\jdk7\\StudentInformationManagement.java import Control.AdminManagement;public class StudentInformationManagement extends AdminManagement{public String StudentNumber;private String StudentName;private String StudentPassword;private String sex;private String Professional;private String ClassNumber;public AdminManagement theAdminManagement;/*** @roseuid 554F6547035F*/public StudentInformationManagement(){}3、2 登陆类//Source file: D:\\Java_SDK\\jdk7\\Login.javaimport Control.AdminManagement;public class Login{private String StudentNumber;private String StudentPassword;private String TeacherNumber;private String TeacherPassword;private String AdminNumber;private String AdminPassword;public StudentManagement theStudentManagement;public TeacherManagement theTeacherManagement;public AdminManagement theAdminManagement;/*** @roseuid 554F75760092*/public Login(){}/*** @return String* @roseuid 554C7DF90296*/public String Submit(){return null;}/*** @return String* @roseuid 554C7E1D02FA*/public String Cancel(){return null;}/*** @return String* @roseuid 554C7E2400C0*/public String LoginCheck(){return null;}}3、3学生实体类//Source file: D:\\Java_SDK\\jdk7\\Student.javapublic class Student{private String StudentNumber;private String StudentName;private String Sex;private String StudentPassword;private String Professional;private Integer ClassNumber;public GradeInformation theGradeInformation;public TheSelectedCourseInformation theTheSelectedCourseInformation;/*** @roseuid 554F7A590353*/public Student(){}/*** @roseuid 554C46E40313*/public void Login(){}/*** @roseuid 554C46EF0276public void regesiter(){}/*** @roseuid 554C4702006A*/public void LogOff(){}/*** @roseuid 554C47150246*/public void ModifyStudentPassword() {}/*** @roseuid 554C474A02B9*/public void LoginCheck(){}/*** @roseuid 554C47AA01F8*/public void SelectTheCourses(){}/*** @roseuid 554C47B70351*/public void ViewTheSelectedCourses() {/*** @roseuid 554C47FC0226*/public void DropCourses(){}/*** @roseuid 554C480C00EB*/public void SeeTheCompletetedCourses(){}/*** @roseuid 554C481F0276*/public void ChangeOfStudentInformation() {}/*** @roseuid 554C4F28036A*/public void RegisterCheck(){}}。