




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、管理信息系统课程设计报告学生选课系统班级:学号:姓名: 指导教师:2014年12月20日目录第一章:现行系统概述第二章:系统分析 2.1需求分析2.2可行性研究2.3信息系统规划2.4系统的开发方法的选择2.5组织结构与功能分析2.6业务流程分析2.7数据与数据流程分析2.8功能/数据分析2.9新系统逻辑方案的建立 第三章系统设计 3.1系统总体结构设计 3.2数据结构与数据库设计 3.3代码设计 3.4输入/输出设计 3.5模块功能与处理过程设计 第四章系统实施 4.1系统实施4.2系统运行调试 第五章:结束语 (结论、建议、收获、体会及小组中每个成员的工作内容)参考文献 第一章 现行系统概
2、述本科生选课系统是个很庞大的信息系统。目前随着学校人数和课程的激增,对教务处而言,管理和维护选课系统关系到自身的效率,选课系统的繁杂,在一定程度上会相对的增加教务处的管理负担。对学生而言,在选课阶段必须面对大量课程进行仔细筛选,而所有课程聚在一起,学生无法快速定位自己想选以及在规定时间内被要求选的课程类别。 这些问题的出现表明我们的选课系统仍然存在着问题,也需要对其进行改造,由此提高学生选课效率,为学生的学习带来更大的便利。 学生选课系统作为一种现代化的教学技术,越来越受到人们重视,是一个学校不可或缺的部分。学生选课系统就是为了管理好选课信息而设计的。学生选课系统将是选课管理工作规范化,系统化
3、,程序化,避免选课管理的随意性,提高信息处理的速度和准确性,能够准确,及时,有效的查询和修改学生选课情况。第二章 系统分析2.1需求分析学生可以选修规定范围内的课程,查看已修学分总数,还可以修改个人信息。教师可以根据统计的人数挑选一定数量的学生,也可以直接在网上公布成绩,让学生直接在网上查询成绩。管理员可以指定每门课程的任课教师,修改课程信息,增加、修改、删除学生信息。分析一:系统应该满足以下几个方面需求:(1) 某些选修课程因为前序课程或者教学管理资源的限制,要求系统能对课程选修人数、选修学生年级、专业等进行限制。(2) 选课过程需具有时效性,系统要能在短时间内响应大量学生的查询和选课要求,
4、並及时处理。(3)教务部门能及时掌握课程选修情况,系统界面直观,操作简单,学生不需经任何培训即可操作。(4)系统要提供数据输出接口以供教务员作后期处理及保存。包括作为以后查询和评估使用的资料。分析二:系统要实现的功能分为二大模块:管理员模块:(1)负责统一管理,包括课程的查询、添加、修改和删除;(2) 限制选修条件的管理,包括条件的添加、修改和删除;(3) 统一管理用户,包括管理员和学生用户的管理;(4) 系统公告的管理;(5) 数据的管理和数据导出;(6) 管理员密码管理和学生密码的初始化操作。2.2可行性研究2.21技术可行性研究技术可行性是指从设备、技术的先进性和技术人员的专业、技术水平
5、两方面来论证新系统实现的可能性。建立管理信息系统必须要有硬件和软件两大部分才能构成,硬件包括计算机、外围设备、辅助设备、网络设备等。软件包括操作系统、数据库管理系统、网络协议、软件工具以及用户专用的软件等。在构件系统的硬件平台时,不仅要了解设备的使用环境、条件和优缺点之外,还要正确地选定系统硬件平台的体系结构。要用好管好学校的信息资源,除了建立以计算机为基础的管理信息系境外,还必须要有一批进行信息采集、信息处理、信息管理和信息维护的人员。对于信息管理系统的设计所需要的硬件系统,学校和个人电脑完全可以满足要求。对于软件技术要求,自己通过对信息管理系统和Visual FoxPro 程序设计教程的课
6、程学习已基本上能对所要设计的系统进行设计。现在的程序设计语言软件技术已经很成熟了,界面设计是充分考虑管理员的习惯,使操作方便快捷,数据输入快速、规范、可靠,统计准确无误,制表灵活,让所有的选课学生直接进入后即可自行操作。因此在技术上是可行的。2.2.2经济可行性研究管理信息系统的应用软件开发费用是指软件开发过程中所投入的工作量及相应的代价,主要是指人的劳动消耗和设备的损耗。软件开发费用的估算是从软件开发计划开始的,经系统分析、系统设计,到系统的实施为止的整个软件开发过程中所花费的人工费用。根据人的劳动消耗及设备的使用损耗,整个设计过程大约需要2万元的费用。当系统投入使用后可为学校教务管理节约大
7、量的人力、物力,所带来的效益将会远远大于软件开发的成本,因此在经济上是可行的。2.2.3社会可行性研究本次对于学生选课信息管理系统的设计只是为了满足校内学生选课的需要,只适用于校内学生、任课教师和教务管理员的,对于社会以及网络的安全不会造成影响,不会影响正常的教务管理和学校的正常教学,且有利于信息资源的共享和学校教学资料的保存,不会侵犯师生的合法权益,为学校的办公信息化和自动化提供了有利的条件和根本保证,所以不会构成违法行为。因此在社会上也是可行的。2.3信息系统规划在需求分析的基础上,我们提出了教材管理系统的总体结构方案,并根据发展战略和总体结构方案,确定了系统的开发次序及时间安排。以下用甘
8、特图表示出我们的规划进度:甘特进度图 2.4系统的开发方法的选择 本文较为详细的介绍了基于Java编程语言和SQL Server 2000数据库所编的学校学生选课系统。给出了开发此系统的软硬件平台以及开发环境,较为详尽介绍了需求分析过程,系统的界面构思以及搭建,软件代码的开发模式,分层搭建,以及部分代码实现。讨论了SQL Server 2000数据库的规定,存储过程,开发java程序的习惯,以及系统的用处和特点。本系统为增强Java程序的可移植性,代码的的复用性,功能界面的可观性,系统的可维护性而对Java源代码进行了抽象封装,对以后可能需要修改的变量放进了配置文件,同时具有操作简单,界面美观
9、等特点。2.5组织结构与功能分析学生选课系统含登录验证模块、学生选课模块、管理员模块和教师查询模块。学生通过本系统,可透过浏览器查询课程安排、教师及选课情况等;管理员通过本系统,可对全校学生进行选修课的统筹管理,如修改、添加、查询、删除等,从而为教务工作提供决策信息。1、从课程列表中选择所要选修的课程;2、查询已选课程及其相关信息,包括上课时间及地点;3、修改自己的登录密码。在该系统中的系统模块功能分析中,将系统模块功能进行划分,如图3-1所示:网上选课模块管理员登陆模块学生选课模块教师登录模块修改注册模块修改课程模块查看信息模块学籍信息模块修改密码模块选定课程模块查看已选模块重新登陆模块选取
10、学生模块查看信息模块给出学分模块查询可选课程删除课程模块图3-1 学生选课管理系统模块流程图用户登录身份验证模块验证用户名和密码,并根据不同的用户类型,跳转到对应的页面中,设置选课时间模块提供给系统管理员修改选课时间段,录入信息模块提供给系统给管理员,用来录入学生和教师信息,以及录入教学楼教室等信息。开设课程模块提供给教师用户,用来开设一门必修课程或者选修课程。编辑课程时间地点模块提供给教师用户、编辑课程的上课时间地点有好的界面与操作。评分模块用于教师用户选修该教师开设的课程的学生评分。查看课程模块包括查看必修课程、查看选修课程、查看已修课程、查看课程成绩单。选课和锁定模块中实现选择选修课和锁
11、定选课信息的功能。2.6业务流程分析业务描述:在每学期末,教务处向各系院下发教学计划表,由各系院根据计划表安排开设课程,再交给教务处。教务处汇总信息(教师信息,时间安排,教室安排,课程信息),列出选课表,供学生选择。学生进行第一次选课,生成个人选课表,与时间安排表,课程和教师名单,教室安排表一起,汇总选课信息,再交由选课管理系统随机进行处理,生成选课总名单,学院选课名单,班级选课名单,课程名单,个人课程表,分别交给教务员,院系,辅导员,教师和学生。学生根据第一次选课的结果,进行第二次,第三次的补选,流程与第一次相同,但选课管理系统按学生选课的时间顺序生成选课结果。同时,学生也可以进行退选,同样
12、交给选课管理系统处理。 学生可以查询个人课程表(课程信息,时间信息,教师信息,教室安排),教师可以查询自己的开课信息(时间,教室,课程)和学生名单,院系可以查看本院课程安排信息(教师,时间,教室,课程,学生),辅导员办公室可以查看所带班级的信息,教务处可查看以上所有信息。业务流程图:开设课程表院系教学计划表辅办课程名单个人课程表表退课表选课表2教务处课程表1学生教师时间安排表选课管理系统课程和教师名单选课信息汇总2教室安排表 选课信息汇总1选课总名单教务员 学院选课名单班级选课名单2.7数据流程图: 选课公告选课结果 选课 排课结果 登录 用户名,密码和用户类型学生学生选课表选课结束反馈信息用
13、户名,密码 课程表等排课结果选课公告管理员和用户类型登录排课选课公告表排课结果教师反馈表排课结果反馈信息排课表撰写教 排课结果师反馈选课公告 登录 用户名密码教师 排课结果 和用户类型选课公告表网上排课系统数据流程图:网上选课系统数据流程图 2.8数据分析数据字典: 根据数据流程分析,对系统数据进行分析和汇总,建立系统数据字典。下面列出部分数据字典内容:(1) 排课数据流编号:A01系统名:网上选课系统输入:课程信息表,教学楼信息表,教师信息表,院系信息表输出:排课表,选课通知表描述:排课者按年级排课,排课表内容包括课程代号,课程名称,授课院系,专业代码,专业名称,教师代号,考查方式,学分等。
14、在排课过程中,排课者可以查询教室使用情况和院系课程设置。在排课者提交排课表以后,系统应当确保该排课方案中没有时间冲突和教室冲突,如有冲突,系统应该提示排课者具体产生冲突的原因。(2) 选课数据流编号:A02系统名:选课输入:排课表,选课通知表,教师反馈表输出:学生选课表描述:学生可以在规定时间选课,该规定时间段由排课者通过发布消息通知教师和学生,选课过程如下:学生在选课表上单击课程号,则该信息被提交到服务器,并显示学生的选课结果。选课表的内容包括排课表的全部内容。如果一门课程已经达到最大选课人数,则不能再选择这门课程。如果有学生退课,则该门课的已选人数减1(3) 设定选课时间段数据流编号:A0
15、3系统名:网上选课系统条目名:设定选课时间段输入:选课时间段表输出:选课时间段表描述:排课者应该设定选课时间段,学生只能在此设定的时间段内选课和退课。第三章系统设计31系统总体结构设计本系统的数据库实体主要有“学生”、“教师”、“课程”等。其中“教师”与“课程”存在“开设”联系,并且一个教师可以开设N门课程,即“教师”与“课程”之间是一对多的关系。同样“教学楼”与“教室”也存在一对多关系。一个学生可以学习N门课程,一门课程可以有M个学生学习,即“学生”与“课程”之间是多对多的的关系。同样“课程”与“教室”之间也是多对多的关系。整个数据库可以用一个E-R图表示。如图3-2所示:任务与目的课程代码
16、考试方法学号性别姓名院系学 生班级上课时间课程名课程学分教学内容课 程m n选课任课教师成绩mm教学课程n教师姓名教 师职称年龄性别教师代码图3-2 学生管理系统数据库E-R图学生选课管理系统中,涉及的实体包括:(1)学生:属性有学号、姓名、性别、院系、班级等;(2)教师:属性有教师代码、教师姓名、性别、年龄、职称等;(3)课程:属性有课程代码、课程名称、教学内容、任务与目的、考试方法等;各个实体及其属性如图3-3、图3-4和图3-5所示。 学生班级日期院系性别姓名学号 图3-3 学生实体图年龄教师职称日期教师代码教师姓名性别图3-4 教师实体图课程考试方法任务与目的教学内容课程名称课程代码图
17、3-5 课程实体图这些实体之间的联系包括:(1)选课:一名学生可以选多门课程,而一门课程也可以被多名学生选,所以是m:n联系;(2)授课:一门课程可以由多名教师讲授,而一名教师可以讲授多门课程,所以是m:n联系。实体之间的联系如图3-6所示。课程学生 学生课程 m m 选课讲授 nn 课程教师图3-6 实体联系图3.2 数据库设计数据库是此类系统的核心,系统中所有的而信息都存储在数据库中,在所有的ASP。NET页面中通过ADO。NET与数据库连接,操作数据库中的数据,从而实现所有的需要的功能。数据库软件有很多种,如MicrosoftSQLServer2000等。数据库是网站的核心,数据库设计的
18、合理与否对网站的建设有着至关重要的影响。数据库存储结构一般包括二维表的字段名、字段含义、数据类型、字段长度、说明等项目,下表是以学生选课管理系统的关系数据模型为依据来设计的数据库存储结构。 选中数据库,向数据库中添加5个表:学生信息表,教师信息表,课程表,课程信息表,成绩单列表,每个表与逻辑设计中一种的关系模式相对应,下面是每个数据表中的属性,包括属性列的名称、数据类型、数据长度、是否可以为空和备注说明等内容。(1)学生信息表:学生信息表用来存储学生的个人信息,使用学号作为主键。如表3-1所示:表3-1 学生信息表字段名字段含义数据类型字段长度说明XH学号整数型10主键XM姓名文本8XB性别文
19、本2YX院系文本20BJ班级文本20KC课程文本30BZ备注文本20 (2)教师信息表:教师信息表用来存储教师的个人信息,用学校分配给教师的编号作为主键。如表3-2所示:表3-2 教师信息表字段名字段含义数据类型字段长度说明JSDM教师代码文本10主键JSXM教师姓名文本8XB性别文本2NL年龄整数型2ZC职称文本8(3)课程表:课程表用来存储课程信息,以课程表号为主键。如表3-3所示:表3-3 课程信息表字段名字段含义数据类型字段长度说明KCBH课程编号整数型10主键KCMC课程名称文本30JXNR教学内容文本50RWMD任务与目的文本100KSFF考试方法文本4YQ要求文本10(4)课程表
20、:课程表用于存储学生的选课信息,在课程表中学号和课程编号是主键,同时也是外键。如表3-5所示:表3-5 课程表字段名字段含义数据类型字段长度说明KCBH课程编号整数型10主键KCMC课程名称文本30RKJS任课教师文本8KCXF课程学分数字4SKSJ上课时间日期/时间10(5)成绩单列表:成绩单列表用于存储学生的选课成绩。以学生的学号作为主键,同时也是外键。如表3-6所示:表3-6 成绩单列表字段名字段含义数据类型字段长度说明XH学号整数型10主键XM姓名文本8YX院系文本20BJ班级文本20KCMC课程名称文本30RKJS任课教师文本8CJ成绩数字63.3代码设计3.3.1学号的代码设计 管
21、理信息系统的代码有七种门类,按照人员代码的设计要求,考虑到学校有大一到大四共四个年级,且每个年级人数不超过四位数,年级用入学年份表示,因此使用组合码,并用10位字符表示。设计方案如图所示。AA BBB CC D EE 入学顺序号 班级号 专业 院系 入学年份3.4.2班级代码设计 班级代码采用两位字符表示,采用方案如图所示: X Y 班级号 年级号3.5模块功能与处理过程设计 <1>登录模块(1) 选择不同身份登录系统本系统有三个类型的用户:管理员,教师和学生。当不同的用户登录系统选择不同的用户类型时,他们就会分别拥有不同的权限。管理员拥有排课,设置选课时段的权限,教师的
22、权限是反馈排课信息。学生的主要权限是选课,退课。(2) 修改密码每个用户登陆后,都可更改初始密码,增加系统的安全性。(3) 退出每个用户登陆后单击退出,就可退出系统 <2>排课模块(1) 已排课表管理员在排课过程中,可以点击已排课表显示排好的选课信息,在排课者提交排课表后,系统应该确保排课方案中没有时间冲突和教室冲突。如有冲突,提示产生原因。(2)设定选课时间段排课者设定选定时间段,学生只能在该时间段内选课。(3)发布选课信息排课完成以后,排课者发布选课的各种信息(4)查看教师反馈 <3>选课模块(1)查看可选择的的课程信息学生在选课时可以查询所有课程的详细信息(2)提
23、交选课申请学生若想选择某门课程,只要点击相应的课程号,就可选课。(3)退课学生在选课时间段内可以删除某门已选的课程,该信息被提交到服务器,服务器返回该删除信息委弹出式窗口。(4)查看教师反馈排课和选课都可查看教师反馈第四章 系统实施4.1系统实施public class User extends JFrame private JLabel use,password; private JTextField k1; private JPasswordField k2; private JButton b1,b2;public User(JFrame f)super("系统登录"
24、);Container c=getContentPane();c.setLayout(new FlowLayout();use=new JLabel("username:");use.setFont(new Font("Serif",Font.PLAIN,20);password=new JLabel("password:");password.setFont(new Font("Serif",Font.PLAIN,20);k1=new JTextField(12);k2=new JPasswordField(12
25、);b1=new JButton("登录");b2=new JButton("退出");BHandler b=new BHandler();EXIT d=new EXIT();b1.addActionListener(b);b2.addActionListener(d);c.add(use);c.add(k1);c.add(password);c.add(k2);c.add(b1);c.add(b2);setBounds(600,300,250,150);setVisible(true);setResizable(false);setDefaultClo
26、seOperation(JFrame.EXIT_ON_CLOSE);public static void main(String args) User f1=new User(new JFrame();import java.awt.*;import java.awt.event.*;import javax.swing.*;public class Menu extends JFrame implements ActionListenerAddstu 增加学生界面;Updatastu 修改学生界面;Delstu 删除学生界面;AddC 增加课程界面;DelC 删除课程界面;UpdateC 修
27、改课程界面;AddSC 增加选课界面;DelSC 删除选课界面;UpdateSC 修改选课界面;Selstu 学生查询界面;JPanel pCenter;CardLayout card=null;JLabel label=null;JMenuBar mb=new JMenuBar();/菜单栏JMenu m1=new JMenu("学生管理");JMenuItem add1=new JMenuItem("add1 ");JMenuItem updata1=new JMenuItem("updata1 ");JMenuItem dele
28、te1=new JMenuItem("delete1 ");JMenu m2=new JMenu("课程管理");JMenuItem add2=new JMenuItem("add2 ");JMenuItem updata2=new JMenuItem("updata2 ");JMenuItem delete2=new JMenuItem("delete2 ");JMenu m3=new JMenu("选课管理");JMenuItem add3=new JMenuItem(&
29、quot;add3 ");JMenuItem updata3=new JMenuItem("updata3 ");JMenuItem delete3=new JMenuItem("delete3 ");JMenu m4=new JMenu("查询管理");JMenuItem 学生查询=new JMenuItem("查询信息 ");JMenuItem m5=new JMenuItem("系统退出");Font t=new Font ("sanerif",Font.PL
30、AIN,12);public Menu ()this.setTitle("学生选课管理系统");try UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName();catch(Exception e)System.err.println("不能设置外观: "+e);addMenu1();addMenu2();addMenu3();addMenu4();addJMenuBar();setJMenuBar(mb);label=new JLabel("选课管理系统",
31、JLabel.CENTER);label.setFont(new Font("宋体",Font.BOLD,36);label.setHorizontalTextPosition(SwingConstants.CENTER);label.setForeground(Color.red);add1.addActionListener(this);updata1.addActionListener(this);delete1.addActionListener(this);m5.addActionListener(this);add2.addActionListener(this
32、);delete2.addActionListener(this);updata2.addActionListener(this);add3.addActionListener(this);delete3.addActionListener(this);updata3.addActionListener(this);学生查询.addActionListener(this);card=new CardLayout();pCenter=new JPanel();pCenter.setLayout(card);增加学生界面=new Addstu();修改学生界面=new Updatastu(); 删
33、除学生界面=new Delstu();增加课程界面=new AddC();删除课程界面=new DelC();修改课程界面=new UpdateC();增加选课界面=new AddSC();删除选课界面=new DelSC();修改选课界面=new UpdateSC();学生查询界面=new Selstu();pCenter.add("欢迎界面",label);pCenter.add("增加学生界面",增加学生界面);pCenter.add("修改学生界面",修改学生界面);pCenter.add("删除学生界面"
34、,删除学生界面);pCenter.add("增加课程界面",增加课程界面);pCenter.add("删除课程界面",删除课程界面);pCenter.add("修改课程界面",修改课程界面);pCenter.add("增加选课界面",增加选课界面);pCenter.add("删除选课界面",删除选课界面);pCenter.add("修改选课界面",修改选课界面);pCenter.add("学生查询界面", 学生查询界面);add(pCenter,Borde
35、rLayout.CENTER);validate();setVisible(true);setBounds(400,150,400,280);setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); addWindowListener(new WindowAdapter()public void windowClosing(WindowEvent e)System.exit(0); );validate();private void addJMenuBar() mb.add(m1);mb.add(m2);mb.add(m3);mb.add(m4);mb.a
36、dd(m5);private void addMenu4() m4.add(学生查询);m4.setFont(t);private void addMenu3() m3.add(add3);m3.add(updata3);m3.add(delete3);m3.setFont(t);private void addMenu2() m2.add(add2);m2.add(updata2);m2.add(delete2);m2.setFont(t); private void addMenu1() m1.add(add1);m1.add(updata1);m1.add(delete1);m1.set
37、Font(t); public void actionPerformed(ActionEvent e)Object obj=e.getSource();if(obj=m5)System.exit(0);elseif(obj=add1)card.show(pCenter,"增加学生界面");elseif(obj=updata1) card.show(pCenter,"修改学生界面");elseif(obj=delete1) card.show(pCenter, "删除学生界面");elseif(obj=add2) card.show(p
38、Center, "增加课程界面");elseif(obj=delete2) card.show(pCenter, "删除课程界面");elseif(obj=updata2) card.show(pCenter, "修改课程界面");elseif(obj=add3) card.show(pCenter, "增加选课界面");elseif(obj=delete3) card.show(pCenter, "删除选课界面");elseif(obj=updata3) card.show(pCenter, "修改选课界面");elseif(obj
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 贵州师范大学《运动生物力学Ⅱ》2023-2024学年第二学期期末试卷
- 吉林电子信息职业技术学院《康复心理学》2023-2024学年第二学期期末试卷
- 石家庄铁道大学《病原生物学实验》2023-2024学年第二学期期末试卷
- 重庆文理学院《地下空间规划与设计》2023-2024学年第一学期期末试卷
- 云南理工职业学院《思想品德修养与法律基础》2023-2024学年第二学期期末试卷
- 武汉电力职业技术学院《建筑施工图设计》2023-2024学年第二学期期末试卷
- 售楼部主体施工合同
- 房屋装修木工合同
- 医疗器械代加工合同
- 商业住房买卖合同
- GB/T 3717-1983测长机
- GB/T 19189-2011压力容器用调质高强度钢板
- 【农业养殖技术】花鲈淡水池塘标准化养殖技术
- 政治学基础课件全部终稿
- 一园青菜成了精-课件
- 酒店运营管理课件
- 中国古代建筑理论知识考核试题与答案
- 山东省青岛市各县区乡镇行政村村庄村名居民村民委员会明细
- 注浆防水工程检验批质量验收记录
- 绿色建筑评价评分表
- 接触网工程施工方法及技术措施
评论
0/150
提交评论