课程管理系统.docx
《课程管理系统.docx》由会员分享,可在线阅读,更多相关《课程管理系统.docx(10页珍藏版)》请在冰豆网上搜索。
课程管理系统
高校课程管理系统
分析与设计
1、确定系统的目标和范围……………………………………2
1.1、开发背景…………………………………………2
1.2、目的和意义………………………………………2
1.3、范围………………………………………………2
2、需求获取、建立系统的功能视图…………………………2
2.1、确定课程系统在高校各系统中的位置…………2
2.2、识别和定义系统角色……………………………3
2.3、分析角色和系统的交互过程、识别系统用例…3
2.4、建立系统用例图…………………………………4
2.5、对每个用例进行简要分析………………………4
2.6、主要用例的详细描述……………………………5
3、发现对象和类,建立类图…………………………………7
3.1、发现对象类………………………………………8
3.2、定义类属性和服务………………………………8
3.3、定义对象类间的关系……………………………8
3.4、系统进一步设计…………………………………9
4、建立系统动态模型视图……………………………………10
4.1、建立各对象时序图………………………………10
4.2、建立各对象的状态图……………………………12
5、进行用户界面设计模拟用户进入系统后的操作………14
1、确定系统的目标和范围
1.1开发背景
随着高校规模逐渐扩大,学生数量增多,人为课程管理任务繁重,工作繁多。
课程管理系统成为学生以及老师和学校必备的系统,主要完成教师发布课程、上传成绩,学生选课、查看成绩以及生成课表的全过程。
1.2目的和意义
因为高校学生人数过多,手动操作各项数据和管理极易出错,为了提高办公效率,节省人力,加快高校信息化发展速度,需要开发课程管理系统,已达到协同高效办公的目的。
1.3范围
课程管理系统主要为教务处服务,管理课程、学生、教师及教室之间的关系,并起到统计学生成绩,分发课表的作用,学生可以通过系统得到需要的课程信息,教师可以通过系统得到需要的学生信息以及查看课程安排等。
教务处可以从系统中得到全院成绩单,并可以查看学生对教师的评价情况、以及各教室的占用情况得以安排教师的意外借出等工作。
2、需求获取、建立系统的功能视图
2.1确定课程系统在高校各系统中的位置
由于高校系统是一个庞大的系统,想要建立课程信息系统需要与其他系统相互协调,所以首先就要明确课程管理系统在高校系统中的地位,经过大概的分析可以得出高校信息系统应该有以下几个部分:
基本信息录入、课程管理、学生管理、教师管理、教务管理、信息发布、系统管理等系统,而课程管理系统依赖于信息录入系统、学生管理系统及教务管理等系统。
对于发杂系统进行细化为如图简单模型:
由图可知课程管理系统是高效管理系统的子系统且依赖于其他子系统。
2.2识别和定义系统角色
通过对系统范围的分析可知,教务处管理员、学生和教师是系统的角色。
课程管理系统作为一个多用户的网络数据库应用系统,必须设立系统管理员角色来负责日常的数据维护和用户管理工作。
课程管理系统与学生管理系统、教师管理系统、有着密切关系,他要从学生管理处获得学生信息,从教师管理处得到教师信息。
并需借助信息录入系统得到选课记录,以及方案成绩,并为教务管理系统提供学生成绩等信息。
因此课程管理系统应包括课程管理员、学生、教师、系统管理员。
2.3分析角色和系统的交互过程、识别系统用例
通过对四种角色使用系统的目的和方式,以及他们与系统交互过程的认真分析,发现各个角色在系统中所起到的作用以及借助系统要完成的功能。
得到每个角色需要借助系统所要完成的功能概述如下,其中每一项功能都是一个用例。
(1)学生。
通过课程管理系统选课、查询课表、查看成绩、评教。
(2)教师。
通过课程管理系统发布课程信息、查看学生成绩、录入成绩、查看确定的课程信息。
(3)课程管理员。
教务处日常课程管理工作,进行信息维护,以及信息发布工作。
(4)系统管理员。
主要负责系统用户管理和数据管理。
进行数据的备份恢复等操作。
2.4建立系统用例图
分析角色交互过程、得到课程管理系统包含的用例有:
课程信息维护、课成发布与选课、成绩录入与查询、评教、系统公告。
有以上用例可以做出用例图如下:
课程管理系统用例图
2.5对每个用例进行简要分析
分析系统角色与系统进行交互的详细过程。
对每一个用例进行的分析结果如下。
用例名:
课程发布与选课
用例目标:
获得教师输入的课程信息,查询教室安排情况,安排相应教室,将安排好的课程信息输出到选课界面,学生进入选课界面,选取自己要学的课程,将学生信息录入课程已选学生中,并将该课程信息加入学生课表。
储存课程信息,其中包括发布课程的教室信息、选取课程的学生信息以及教师信息。
用例名:
成绩录入与查询
用例目标:
教师根据学生相应课程的成绩,将成绩录入,将相应成绩保存到相应学生的成绩单中,学生通过用例查询相应科目的成绩。
课程管理员同样可以通过该用例查看全专业乃至全学院的各科成绩,以便汇总成绩单。
用例名:
评教
用例目标:
学生根据教师一学期教学情况,对教师进行评价,将评价信息录入,系统将某一教师的所有评价进行汇总,然后提供给课程管理员查看,课程管理员可以查看任意教师的相应评价信息。
用例名:
系统公告
用例目标:
课程管理员发布关于课程的相关公告到主界面,提醒使用者即将要做的相关工作。
例如选课信息等。
用例名:
课程信息维护
用例目标:
课程管理员对课程信息的相关性,及临时调整等进行相关维护。
系统管理员对课程信息内相关内容进行及时备份以及数据级维护。
2.6主要用例的详细描述
(1)发布课程用例的用例详细描述:
用例名:
发布课程
方案:
教师发布课程
触发事件:
新学年,教师要发布新课程
简单描述:
教师进入选课系统,选择空白教室,录入课程信息。
对象:
教师
相关用例:
选修课程
前提条件:
教师信息确定正确
课程信息确定存在
后置条件:
发布的课程进入可选课的数据库中
课程信息完善
系列活动:
对象
系统
1.教师登陆网页中的选课系统。
2.查看可安排节次时间
3.发布课程
1.确认教师身份
2.提供相关专业可安排课程
3.收录教师及课程信息
意外条件:
1、教师登陆出错
2、课程时间重复
3、课程信息录入出错
(2)选择可成用例的用例详细描述:
用例名:
选课
方案:
学生选择课程
触发事件:
新学期,选择选修课
简单描述:
学生进入选课系统查看课程信息,选择自己要上的选修课
对象:
学生
相关用例:
发布课程
前提条件:
已发布课程入库
选择课程与已选课程不矛盾
学生信息正确无误
后置条件:
选择的课程进入学生对应课程库
被选的课程进入相应教师数据库
系列活动:
对象
系统
1.学生登陆进入网页中的选课系统。
2.学生查看系统提供的可选课程
3.学生选择要选择的课程
1.检查学上信息,提供相应选修课程
2.判断所选课程信息,与已选的课程是否矛盾
3.将学生信息录入课程数据库
意外条件:
1、学生登陆出错
2、课程提供出错
3、选择课程与已选课程冲突未提醒
(3)评教用例的详细用例描述:
用例名:
评教
方案:
学生进行评教
触发事件:
学期结束学生进行课程评价
简单描述:
学生进入课程管理系统,对所修过的课程进行教师评价。
对象:
学生
相关用例:
选修课程
前提条件:
学生信息确定正确
课程信息确定存在
后置条件:
相应评教信息录入课程信息数据库中
评价信息录入相应教师库中
系列活动:
对象
系统
1.学生登陆系统
2.选择已修课程
3.进行评价
1.确定学生信息正确
2.列出学生选择的课程
3.将评价信息入库
意外条件:
1、学生登陆出错
2、列出课程不全
3、评价信息丢失
3、发现对象和类,建立类图
通过建立用例图,形成了对课程管理系统功能性需求清晰、准确的定义和描述。
接下来便可以建立系统静态模型视图。
3.1发现对象类
仔细分析系统问题,和系统功能,完成从事物到对象的抽象,最后将对象抽象成类。
对于课程管理系统,我们可以抽象出以下对象类:
(1)学生。
学生是是一个主要录入输出点,要模拟其信息查询,录入等过程。
(2)教师。
教师是一个主要录入输出点,要模拟其录入查询过程。
(3)课程。
课程是课程管理系统的主要对象,储存得到的相应的学生以及教师和教室信息。
并储存相应学生得到的课程成绩。
以及学生对于教师的评价信息。
(4)课程管理人员。
管理临时调整的课程。
补课、调课等。
3.2定义类属性和服务
将与系统有关的事物的静态特征抽象程磊的属性,将事物的行为抽像成服务的过程。
并保持事物的特征,完善系统的功能。
(1)学生。
其主要属性包括学号、姓名、专业、班级、身份证号。
主要服务包括选课、评教、查询成绩、查询课程信息。
(2)教师。
其主要属性包括教师号、姓名、身份证号。
主要服务包括发布课程、填写成绩、查询成绩、查看课程信息。
(3)课程。
其主要属性包括课程号、课程名、任课教师号、所选学生学号、所选学生成绩、所选学生对任课教师的评教信息。
所包含服务主要包括生成新课程、录入任课教师信息、录入选课的学生信息、录入学生成绩、录入评教信息。
(4)课程管理员。
其主要属性包括员工号、姓名。
主要服务包括增加课程信息、修改课程信息、查询评教信息、查询课程成绩单。
3.3定义对象类间的关系
已上定义的四个类中,学生、教师、课程管理员与课程的关系都是关联关系。
为了简化类图,省略了一些不重要的类。
其中学生是可以扩展的、其中有留级学生、重修学生等。
并且教师也要包括代理教师。
而课程则将临时课程、补课课程等放在了一起,为了简化类图。
甚至将学生成绩、评教信息、都整合到了一起,但是这些内容都是可以自成一类的、为了简洁明了,将他们都放在了一起,类图更清晰的表现出了全部功能。
但是仍然有很多不足,可以在实际建立数据库及系统时对其进行完善和补充。
得到的简单的类图如下:
课程管理系统类图
3.4系统进一步设计
对于系统的进一步设计,仍需进行大量工作,主要有对于用例和类分析完毕后要进行的数据库的设计,数据库设计涉及很多方面例如,课程信息数据库、学生信息数据库、课程管理员数据库、教师信息数据库。
对于不同的类型都要设计不同的数据表且每个数据表之间都要有相应的关系,即主键等之间的关系。
对于数据库的设计需要进行各类数据之间关系的划分。
在这里用领域类图描述。
领域类图如下:
课程管理系统领域模型类图
可以根据所画的领域类图分析进而设计出相应的数据库。
4、建立系统动态模型视图
根据系统的功能视图和静态视图,建立相应的动态视图。
动态视图模型包括以下内容:
4.1建立各对象时序图:
描述执行所有用例功能对象的交互过程。
并用时序图模型来执行每个用例的功能。
模拟其交互过程。
以检查对象类以及服务是否完整。
(1)学生。
对于学生对象针对课程对像的时序图,学生进入系统首先进入系统,进行登录操作,认证账号和密码,之后可入课程界面,进行选择所需功能,针对选课功能,进入选课功能后,可以查看数据库中,教师发放的课程信息,然后方便的进行选择删除操作。
操作进行完之后保存操作信息,将信息入库,之后注销登陆,返回主页。
具体时序图如下:
学生时序图
(2)教师。
对于学生对象针对课程对象的时序图,教师进入系统首先进入系统,进行登陆操作,认证账号和密码,之后可进入课程界面,进行所需功能,针对填写成绩功能,系统从数据库中从该教师发布的全部课程中找到对应学生的课程信息进行成绩录入,录入结束后,注销登陆,返回主页。
具体时序图如下:
教师时序图
(3)课程管理员。
对于课程管理员对课程对象的时序图,教师进入系统首先进入系统,进行登陆操作,认证账号和密码,之后可进入课程界面,进行所需功能,针对课程修改功能,调出相应课程信息,然后进行相应修改。
然后注销,返回主页。
具体时序图如下:
课程管理员时序图
4.2建立各对象的状态图:
描述对象类的状态以及其状态转移。
有些对象的动态行为是受其状态制约的。
因此,对于有明确状态且行为方式受到状态影响的对象类,指出其生命周期中的状态以及其状态的转移方式,并建立状态图图加以描述。
(1)学生。
根据学生对象的时序图,需指出其生命周期中的状态以及其状态的转移方式,建立如下学生的状态图:
学生状态图
(2)教师。
根据教师对象的时序图,需指出其生命周期中的状态以及其状态的转移方式,建立如下教师的状态图:
教师状态图
(3)课程管理员。
根据课程管理员对象的时序图,需指出其生命周期中的状态以及其状态的转移方式,建立如下教师的状态图:
课程管理员状态图
5、进行用户界面设计模拟用户进入系统后的操作。
由于条件不足,并没有新建用户界面,且使用学校的教务系统进行模拟学生查看课程的全过程,及展示相关界面的内容,详细步骤与时序图近似。
这里只进行对于学生查看课表的具体过程的模拟描述,同过对过程的分析可惜更详细了解系统的具体功能和实现方案。
第一步、进入主页面
第二步、进入登录界面
第三步、验证账号密码后登陆,进入课程管理内部
第四步、进入查看课程页面
第五步、查看结束后注销返回登陆界面
大概步骤就是模拟的这样。
系统需要拥有全部过程的全部功能,具体功能的代码级的实施暂不考虑。
系统的分析与设计过程到此基本结束。
(附:
全篇纯手打,图也是一笔一笔画的,除了最后一部分的截图。
通篇从未模仿。
)