软件工程简单的选课系统.docx
《软件工程简单的选课系统.docx》由会员分享,可在线阅读,更多相关《软件工程简单的选课系统.docx(10页珍藏版)》请在冰豆网上搜索。
软件工程简单的选课系统
软件工程课程设计
班级:
09信息与计算科学
学号:
A00914105
姓名:
苏晓
学生选修课管理系统、问题定义
“选课”是现在高校行政管理工作中一项很重要的课题。
而且是每个学期都必须要而对的问题。
选课工作做不好,学生不知逍自己将要学习的课程,老师也不知道自己将要讲授的课程,教务处的排课计划、教室安排等其他调度工作也无从做起。
因此,如何解决高校教务管理中的选课工作便成为了如今^$大高校而临的很实际的问题》
随着近几年高校的持续扩招,学生人数逐年增加。
为了满足广大学生的求学需要,齐个高校的师资力量、硬件配置也随之增强。
这样一来,日常行政部门的工作也就越来越繁重,这一点在选课这块显得尤为突出。
而传统的手工操作,即费时又费力,而且容易出错,工作效率较低。
因此,拥有一套实用、高效、完善的在线选课系统就显得尤为重要,它可以提升高校的教育质虽和教学管理质量,提高工作效率,降低行政成本。
大学期间总会有很多公共选修课,以往的选课方法是随堂报名。
这种方法虽然直接,但是造成选课的盲目性,有些课堂选课时人满为患,有些课堂无人选课。
原因是传统的选课方法没有预见性,大家没有事先协调好。
并且学生选课存在这样的特点:
公选课较多,学生人数众多,学生可根据自己的专业及兴趣选择公选课程进行学习,而且学生对课程的要求有较大差异。
便用了网上选课系统以后,可以在开课前就在网上选课,每个学生的课程在开课前就确立好,学生通过本系统可以了解课题相关信息,进行自主选题,能够满足不同学生对不同题目的不同要求,有利于发挥学生的长处,而且能够充分利用学校的各类教学资源。
使用本系统有三个角色,即管理员、学生和教师用户。
管理员的权限最高,包括设置系统登陆信息,用户基本信息、选课信息的录入、査看、修改、删除等,同时还具有査询各个模块的功能。
老师和学生可以实现基本信息査询和进行选课的相关操作,如添加选课信息,退选等。
、可行性研究可行性研究的任务
为了使高校学生选课、教师开课操作更加简单方便、提高效率,我们需要设计一个选修课管理系统来解决高校教务管理中的选课工作。
可行性分析
(1)经济上的可行性
系统界面友好,操作简单,系统的配置要求不高,实现可行,因此经济可行。
该系统可以容易实现学生、老师与学校之间的联系,在Internet上实现完成部分教务工作,提高办事效率。
(2)技术上的可行性
il算机科学日渐成熟,
随着互联网的蓬勃发展,越来越多的机构将科研管理与Internet融合到一起,以方便个高校管理。
在这样一个社会背景下的学生网上选课系统,将学生、老师、管理员、有机地结合在一起,有效地提高管理水平和效率。
随着科学技术的不断提高,基于以上的技术在现今比较容易实现。
(3)操作上的可行性
该系统操作方便,简单。
系统流程图
数据流图
系统分为管理员用户登录、学生选课、教师开课、3个加工。
(1)管理员用户登录后,可进行以下一些操作:
r发布通知:
即先对教师发出通知(教师得到通知后才可申请教课),然后对学生发出通知(此时已安排完有关选修课的所有信息)。
2、课程信息录入:
课程信息录入:
进入课程信息管理功能单元,输入课程号,课序号,课程需称,教师姓名,开设院系这些数据后提交数据,完成课程借息的录入操作,此时在选课表中将出现刚才添加的课程的有关信息。
3、课程信息更新:
管理员用户登录后,进入课程信息管理功能单元,可根据教师开课情况进行课程删除(课程信息删除,进入课程信息管理功能单元,如果是已经登录,选择要删除的课程的课序号,提交后,就将选立课程删除了)。
5、关闭选课系统,即学生不得再进行选课活动。
(2)学生选课:
1、收到系统的选课通知,通过学号密码登录选课系统,査看课程信息2、査询自己所属专业应修的课程3、查看课程信息,查看课程的开课时间、地点、课时、教师、学分3、在选课过程中会有课程信息的更新,学生可相应的修改或删除所选谍程.
需字:
用户登录
别需:
管理员用户登录
描述:
管理员用户登录通过系统管理员身份,发布开课、选课通知、教学信息、课程信息以及课程信息的更新和关闭选课系统
定义:
管理员用戶登录=用户名+密码
位置:
选课系统
名字:
学生选课
别名:
描述:
学生通过登录选课系统,査看课程信息、进行选课活动、修改或删除所选课程
立义:
学生选课=姓名+学号+密码
位置:
选课系统
名字:
教师开课
别名:
描述:
教师通过登录选课系统,进行开课、确立课程要求、修改或删除所开课程
注义:
教师开课=姓爼+工号+密码
位置:
选课系统
需求分析的任务
1、功能需求:
建立的学生选课系统用以满足髙校对学生选课的高效细致的安排,同时录入学生和教师的信息,对于教师更好的安排课程,学生更好的了解课程变换动态,及时选课。
学生可进一步对课程的学时、性质、上课时间、授课教师的信息。
同时教师利用该系统进行开课、以及对学生信息的了解、学楼课时安排、学生成绩录入。
2、性能需求:
在系统能够容纳的学生人数以内,选课系统的反应时间必須在三秒之内完成一次选课。
3、可靠性和可用性需求:
在选课期间,选课系统不能出现故障,在选课系统期间,选课系统必须是可用的,其余时间不可用。
4、出错处理需求:
当系统出现故障,应及时发现自己所犯错误找岀解决方案,可根据情况
关闭系统以免影响学生选课和信息出错。
实体联系
状态转换图
卜•图描述的是学生选课操作和教师开课操作的状态转换图。
学生从登录选课系统到选课完成需经历一系列过程。
首先输入学号和密码登录系统,系统给岀提示,若登录成功则进行课程信息查询。
然后对信息进行详细査看,例如选课时间安排、教师安排、人数安排等,之后可点击选择课程井提交确认,此时系统也会给出提示,若成功选择给出课程详细信息,否则将提示人数已满的限制信息。
修改所选课程,也必须找到自己已选课程列表并进行删除,然后再按相同方法进行选课,最终完成选课。
修改课程过程中,要注意修改时间的限立,因为管理员也要统讣学生及其所选课程的信息,所以必须在规定时间进行修改。
教师首先输入工号和密码登录系统,若登录成功则进行教学信息查询,然后确左课程要求,比如开课时间、地点、课时、学分、人数,可供学生查询。
最终完成开谍。
修改课程,即学生人数为满足开课的最低要求,或者是教师个人因素而删除课程。
同样修改课程也要注意时间限左。
经过状态转换图的可视化效果,可更清楚了解此过程。
模块化
系统功能模块基本将本系统划分为三大模块,即学生选谍模块、教师开课模块以及管理员管理模块。
层次图
该层次图反映了^^个模块的层次结构及功能
(1)学生选课模块:
在这个模块中,允许学生浏览课程信息;并实现主要的选课功能,包括填写选定课程、査看已选课程、修改选课等。
(2)教师开课模块:
这个模块主要是让教师开课,教师节到开课通知可査看教学信息,确定课程要求,申请开课、也可删除课程。
(3)管理员管理模块:
这个模块的功能比较多,主要包括发布开课选课通知、发布教学课程信息、课程信息的录入、课程信息信息更新,关闭选课系统。
使用该选课系统有三个角色,即管理员、学生和教师用户。
管理员的权限最高,包括设
置系统登陆信息,用户基本信息、选课信息的录入、査看、修改、删除等,同时还具有査询各个模块的功能。
老师和学生可以实现基本信息査询和进行选课的相关操作
IPO图
1、课程
更新后的
用户需和
信息录入'
•课程信息
密码
_>
*
开课通知
f
2、课程信
更新后的
教学信息
息更新'
选课信息
洗谀i甬知
输入
1
输出
工号和
教学信息
二A
开设课程
密码
—
课程要求
申请开课
删除开课
学号和
•
密码
A—
课程信息
提交课程
在线选课
输出
输入
处理
五、详细设计设计问题
1、系统响应时间:
选课系统的反应时间应在三秒钟之内。
2、用户帮助设施:
(1)选课系统提供全部功能的帮助信息:
(2)在选课系统中,用户请求帮助可选择帮助菜单:
(3)用户请求帮助后,选课系统在反应时间内,会在屏幕某固左位置出现简短提示;(4)用户得到帮助后可由屏幕上的返回按钮回到正常的交互方式:
(5)用户可通过帮助信息简短提示査找更详细的帮助信息(层次结构)。
3、出错信息处理:
(1)选课系统会根据用户具体操作,而发出一些警告信息,如:
该课程你已选过;
(2)选课系统也会根摇用户的具体操作发岀一些建设性意见,如:
密码错误!
请重新输入!
(3)选课系统会根据用户具体操作发出用户错误操作会导致的后果如:
是否对更改的信息保存如保存,原信息将无法恢复:
(5)选课系统术语是友好的。
4、交互命令:
(1)选课系统每个菜单项都有对应的命令:
(2)选课系统的命令形式是功能键
盒图
根据前面需求分析中,学生选课操作的状态转换图•制作盒图
我们描述的是学生选课操作,首先进入系统,输入学号和密码,学号或密码错误系统出现错误信息要求重新进入,这是又回到进入系统阶段,这里运用了DO-UNTIL循环,由图可以看出。
学号和密码正确,学生进入课程信息査询,即该课程的授课教师、上课时间地点、课时等,同样要査看是否选择过该课程,如果已经选过该课程则根据自己的判断,考虑是否删除该课程,如果删除,则重新进入课程信息查询,这里同样也有DO-UNTIL循环,如果未选择该课程,则查看该课程是否人数已满,如果人数已满,则同样要回到课程查询阶段,这里仍旧是一个DO-UNTIL循环,如果人数未满,则点击该课程,提交选择课程,最后再次确认,完成选课。
同样操作仍可循环进行。
开设课程
六、总结
这次的软件工程课程设计,我做的是“学生选修课管理系统S通过对其各阶段任务的分析实验操作(问题定义、可行性研究、需求分析、总体设计、详细设计九使我们对这门课程有了更深层次的了解,同时也学到了很多东西。
问题企义・弄淸了当前老师开课与学生选课的诸多不方便•提出了解决选课问题的方案,以便后面可以按着这个方向进行设计。
可行性研究.可行性研究的主要任务不是具体解决系统中的问题,而是以最小的代价在尽可能短的时间内确企问题是否值得解决,是否能够解决•因此我考虑了经济、技术与操作上的可行性。
然后作图,系统流程图概括的描述了选课的物理系统,这个过程让我简洁的分析了问题,为下而的过程作了铺垫,数据流图描绘的是信息流和数据从输入移动到输出的过程中所经受的变换,是数据在软件中流动和被处理的逻辑过程,这个过程花费时间比较长,我改了好久,除了对系统自身的不断改正之外,也有和后而设讣的冲突的内容的协调・数据字典只是简单的对数据进行了定义
需求分析,先进行了需求任务的分析,包括功能需求、性能需求、可靠性和可用性需求、出错处理需求。
实体联系图描绘了教师、学生和课程各个数据对象之间的关系和他们各自的属性,状态转移图,这个也花了我好多时间,因为我要根据系统要求,以及和尖他部分内容不冲突,做了许多改动•现在也不是很满意•但是我在不断改动过程中,对选课系统有了更深的认识,同时也知逍了设讣过程的艰辛。
总体设ih因为有了前而的可行性分析和需求分析•系统已经基本明确划了,总体设计就是帮助我们划分模块,更好的设汁齐个模块的功能,我的选课系统比较简单,只有老师、学生和管理员三个模块,而且层次方框图也让选课系统各个模块看着更加形彖具体。
IPO图,我主要针对管理员的模块做的,因为老师和学生毕竞是系统的终端用户,管理员的操作更能体现系统功能。