软件工程--简单的选课系统
软件工程课程设计-学生信息管理系统

学年设计课程名称:学年设计(论文)(软件工程)实验项目:学生信息管理系统姓名:XXX专业:计算机科学与技术班级:XXX班学号:XXXX指导教师:XXX计算机科学与技术学院实验教学中心目录一、需求分析┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄ 1二、可行性分析┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄ 11.问题┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄ 12.项目目标┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄ 23.运行环境┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄ 24.开发风险┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄ 25. 经济可行性┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄ 26.技术可行性┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄ 27.法律可行性┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄ 28.总体分析┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄ 3三、系统功能分析┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄ 31.系统功能的划分┄┄┄┄┄┄┄┄┄┄┄┄┄┄ 32.系统模块┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄ 3四、数据描述┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄ 31.系统流程图┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄ 32.数据流程图┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄ 43.数据字典┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄ 54.E-R图┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄ 85.用例图┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄ 11五、总体设计┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄ 111、基本设计概念和处理流程┄┄┄┄┄┄┄┄┄ 112、软件结构┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄ 113、数据结构┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄ 13六、详细设计┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄ 141.模块设计┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄ 142.改密码┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄ 163.浏览┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄ 17七、功能介绍┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄ 17八、关键代码展示┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄ 20九、心得体会┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄ 25一、需求分析现在的大学中,老师和学生都注重理论与实际相结合,开设了很多与课程相配的课程设计。
软件工程课程设计高校教务管理系统

学生:选课、考试查询、成绩 查询、个人信息维护
教师:课程管理、成绩录入、 考试安排、学生管理
教务管理员:课程安排、考试 安排、学生管理、教师管理
系统管理员:系统维护、数据 备份、权限管理
数据来源:学生、教师、管理 员等不同用户的数据需求
数据处理:数据的存储、查询、 更新等操作
数据输出:各类报表、通知、 邮件等形式的输出
高校教务管理系统 实现
数据库:MySQL 5.7 操作系统:Windows 10
Web服务器:Apache 2.4 开发语言:Java
课程管理模块:实现课程信息 的录入、查询、修改和删除等 功能。
学生信息管理模块:实现学生 基本信息的录入、查询、修改 和删除等功能。
成绩管理模块:实现学生成绩 的录入、查询、修改和删除等
系统设计:根据需求分析结果,设 计系统的整体架构、数据库结构、 界面布局等。
系统测试:对系统进行测试,确保 系统功能和性能符合要求,及时发 现和修复问题。
需求分析: 明确系统 功能和用 户需求, 建立需求 文档
系统设计: 设计系统 的架构、 数据库、 界面等, 绘制设计 图纸
系统开发: 根据设计 图纸,使 用编程语 言和开发 工具进行 系统开发
软件工程课程设计高 校教务管理系统
汇报人:
目录Βιβλιοθήκη 添加目录标题软件工程课程设计 概述
高校教务管理系统 需求分析
高校教务管理系统 设计
高校教务管理系统 实现
高校教务管理系统 评估与总结
添加章节标题
软件工程课程设计 概述
掌握软件工程的基 本原理和方法
培养实际开发能力, 提高编程水平
学会使用项目管理 工具进行项目管理 和团队协作
软件工程课程设计-基于UML的学生选课系统的软件工程课程设计--精品推荐

第一章系统的可行性分析报告 (3)引言 (3)课题题目 (3)设计目的和意义 (3)设计背景 (3)参考资料 (4)术语 (4)要求和目标 (4)【基本要求 (4)开发目标 (11)具备条件 (11)评价尺度 (12)所建议的系统 (12)对所建议系统的说明 (12)改进之处 (12)影响 (13)"社会因素方面的可行性 (13)法律方面的可行性 (13)使用方面的可行性 (13)结论 (13)第二章基于UML的需求说明书 (14)引言 (14)编写目的 (14)读者对象 (14)!软件项目描述 (14)文档概述 (15)定义 (15)参考资料 (15)一般性描述 (15)系统Use Case图及其说明 (16)用户特征 (17)限制与约束 (18))假设与前提条件 (18)功能需求描述 (18)系统用例事流表 (18)系统类图 (20)其它需求描述 (21)性能要求 (21)设计约束 (21)进度要求 (21)…交付要求 (21)第三章基于UML的面向对象软件设计文档 (22)引言 (22)系统概要及其运行环境 (22)系统的组成部分及其结构 (22)定义 (24)参考资料 (24)软件设计约束 (24),设计目标和原则 (24)设计约束 (24)软件设计描述 (24)总体结构设计 (25)用例顺序图 (25)协作图 (27)部署视图 (28)数据库子系统设计 (28)、数据库表描述 (28)数据表结构 (29)用户分类及描述 (31)第四章系统界面设计描述 (32)用户登录界面的实现 (32)用户登录界面实现代码 (32)用户登录界面实现效果 (35)学生选课信息界面的实现 (36)^学生选课信息界面实现代码 (36)学生选课界面实现效果 (37)第五章测试计划报告 (39)引言 (39)目的 (39)背景 (39)参考资料 (39)测试内容 (39){测试进度与过程 (39)测试人员 (39)第六章总结 (40)致谢 (41)参考文献 (41)|^第一章系统的可行性分析报告引言课题题目本次课程设计的课题为:学生选课系统(Students elective course system)设计目的和意义1、设计目的现在,随着各大高校的扩招及信息化社会的到来,学校为了合理规划人力资源的利用,保证学校信息的安全性,对信息化处理数据的要求也越来越高。
软件工程课程设计--学生选课系统

编号:《软件工程》课程设计学生选课系统目录1 可行性分析报告…………………………………………………………………………2 需求规格说明书3 总体设计说明书4 详细设计说明书5 源程序清单6 软件测试报告7 用户手册8 软件开发总结报告(插入分节符)1可行性分析报告1.引言1.1 编写目的明确说明系统需求,界定系统实现功能的范围,指导系统设计以及编码。
经过对此项目进行详细调查研究,初拟系统实现报告,对网站开发中将要面临的问题及其解决方案进行初步设计及合理安排。
明确开发风险及其所带来的经济效益。
1.2 背景在现代计算机技术、通信技术日益发展,Internet普及,现代网络生活已经遍布每个家庭,远程教育成了一种必然的趋势,但对于许多用户来说毕竟还是一件比较陌生的事,因此要使用户了解系统是一个重要的关键。
我们将实现通过网络对学生进行选课以及确定课程老师及方案。
1.3课题研究的意义学生选课系统是一个学校不可缺少的部分,它的内容对于学校的决策者和管理者来说都至关重要,所以学生选课系统应该能够为用户提供充足的信息和快捷的查询手段。
但一直以来人们使用传统人工的方式管理文件档案,这种管理方式存在着许多缺点,如:效率低、保密性差,另外时间一长,将产生大量的文件和数据,这对于查找、更新和维护都带来了不少的困难。
随着科学技术的不断提高,计算机科学日渐成熟,其强大的功能已为人们深刻认识,它已进入人类社会的各个领域并发挥着越来越重要的作用。
作为计算机应用的一部分,使用计算机对选课信息进行管理,有着手工管理所无法比拟的优点.例如:检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。
这些优点能够极大地提高人事劳资管理的效率,也是企业的科学化、正规化管理,与世界接轨的重要条件。
2.课题的可行性2.1 要求(1)与实践活动和相关的文件和资料由教师提供。
(2)本课题要求学生有熟练的ASP开发能力,有较强的自学能力以及一定的关系数据库理论开发功底。
《软件工程》课程设计——_学生选课系统

《软件工程》课程设计手册 (3)1.1 开辟背景 (3)1.2 开辟目的 (3)1.3 开辟运行境 (3)1.4 系统功能 (3) (3)2.1 系统需求 (3)2.2 功能需求 (3)2.3 业务流图 (3) (4)3.1 基本设计概念和处理流程 (4)3.2 系统层次模图 (4)3.3 系统层次模块图 (4)3.4 模块设计 (5) (5)4.1 数据库的逻辑设计 (5)4.2 数据库的配置 (6) (8)5.1 学生登录模块的设计与实现 (8)5.2 学生注册模块的设计与实现 (9)5.3 学生查询模块的设计与实现 (9)5.4 学生选课模块的设计与实现 (10) (10) (10) (11)1.1 开辟背景Internet 的飞速发展深刻地影响了人们的日常生活和商业运作方式。
人们打开网页浏览当天的新闻,发电子邮件给远方的朋友,使用搜索引擎查找资料,进入网上商城购买商品——这一切都是在使用Internet。
社会的方方面面渗透着互连网的应用,使得一向烦琐的手工程序变得方便,快捷,而学校网上选课系统正是基于这一思想而发展起来的。
1.2 开辟目的传统的手工选课不仅复杂,也牵涉了不少的人力,对管理也造成为了诸多不变,而借助网上选课系统,学生在规定选课时间段内,可以不受地点和时间的限制完成选修课的申请,而学校也可以方便地对系统进行管理和控制,提高工作效率。
1.3 开辟运行环境:开辟工具:java 语言开辟环境:JDK1.4 系统功能:(1) 登录、注册功能.(2) 选课功能(3) 查询功能2.1 系统需求用户的需求具体体现在各种学习成绩的提供、保存、更新和查询方面,这就要求数据库结构能充分满足各种信息的输入和输出。
采集基本数据、数据结构及数据处理的流程,组成一份详尽数据字典,为后面的具体设计打下基础。
2.2 功能需求通过系统功能分析,针对普通的网上选课系统,总结出如下的需求信息:(1) 学生的需求:网上选课、选课情况查询;(2) 本系统主要实现学生信息管理和选课查询。
软件工程课程设计高校教务管理系统

实现学生基本信息的增删改查, 包括姓名、学号、班级、专业等
。
教师信息管理
实现教师基本信息的增删改查,包 括姓名、工号、职称、所教课程等 。
课程信息管理
实现课程基本信息的增删改查,包 括课程名称、课程代码、学分、学 时等。
主要功能实现
01
02
03
04
成绩信息管理
实现学生成绩的录入、修改、 删除和查询,支持按学期、按
可定制性
提供灵活的界面定制功能,允许用户根据需求调整界面布局和元 素样式。
04
系统实现
开发环境搭建
操作系统
Windows 10 或 Linux
开发语言
Java
Web服务器
Tomcat 或 Jetty
开发工具
Eclipse 或 IntelliJ IDEA
数据库
MySQL 或 Oracle
主要功能实现
可维护性
要求系统具有良好的可维护性,方便 后期功能扩展和bug修复。
用户群体分析
学生
学生是教务管理系统的主要用户群体之一,他们需要通过系统查询个人信息、课程表、成绩等信息,同时也可以进行 选课、评教等操作。
教师
教师是教务管理系统的另一个重要用户群体,他们需要通过系统录入和查询教学任务、课程资料、学生成绩等信息, 同时也可以进行课程安排、发布教务通知等操作。
软件工程课程设计高校教务管理 系统
2024-01-25
• 引言 • 需求分析 • 系统设计 • 系统实现 • 系统测试与优化 • 课程设计总结与展望
01
引言
目的和背景
提高教务管理效率
随着高校规模扩大和课程多样化,传统的手工或半手工教 务管理方式已无法满足需求,急需引入高效的教务管理系 统来提高工作效率。
应用题1-20
软件工程与方法复习应用题(20题)1.假设一家工厂的采购部每天需要一张定货报表,报表按零件编号排序,表中列出所有需要再次定货的零件。
对于每个需要再次定货的零件应该列出下述数据:零件编号,零件名称,定货数量,当前价格,主要供应者,次要供应者。
零件入库或出库称为事务,通过放在仓库中的显示终端把事务报告给定货系统。
当某种零件的库存数量少于库存量临界值时就应该再次定货。
要求:(1)画出系统的数据流图(15分);(2)如果采用面向对象分析方法,请识别可能的类,画出类图,说明可能的属性和操作(15分)。
2.现在有一个医院病房监护系统,用户提出的系统功能要求如下:●在医院病房监护系统中,病症监视器安置在每个病房,将病人的病症信号实时传送到中央监视系统进行分析处理。
●在中心值班室里,值班护士使用中央监视系统对病员的情况进行监控,根据医生的要求随时打印病人的病情报告,系统会定期自动更新病历。
●当病症出现异常时,系统会立即自动报警,通知值班医生及时进行处理,同时立即打印病人的病情报告和更新病历。
要求:(1)请画出数据流图(10分),并采用UML建模语言画出用例图(10分)。
(2)以医院病房监护系统为例,分析比较结构化开发方法与面向对象的开发方法的主要特点,结合该实例说明,为什么面向对象的开发方法更加优越(10分)?3.连锁超市进货操作流程为:厂家持“定货单”及“厂家送货单”送货,库管科检查货物。
●如果来货相符,库管科做收货确认,(包括:在“定货单”之“点核数量”栏手工填写收货数量;在电脑中找出“定货单”,在“点核数量”栏输入收货数量;在“收货日报表”上记录该收货;在“定货单”、“厂家送货单”上加盖库管科公章),然后库管科打印商品条码,收送货组与卖场办理移交手续,卖场收货人在“定货单”上签名盖章,日末,库管可将单据汇总,连同“收货日报表”分别送卖场、财会,并自留一份,第二天电脑科打印“验收进货单”,分送卖场、采购、财会。
软件工程课程设计学生选课系统
软件工程课程设计学生选课系统一、介绍随着信息技术的不断发展,各行各业都离不开计算机的帮助。
学校也不例外。
学校的学科设置繁琐多样,如何让学生更快速、更准确地选到自己感兴趣的课程,是每一所学校都需要考虑的问题。
而软件工程作为一门较为实用的学科,应用在学生选课系统中,能够提高学生选课的效率,减少繁琐的流程、缩短时间,同时也能提高课程安排的科学性和精确度。
二、需求分析1、学生需求:能够根据自己的兴趣、时间等因素进行筛选,以快速查找自己需要的课程;同时也需要在选课过程中能够及时了解有无课程时间冲突,并进行相应的调整。
2、教师需求:能够快速、高效地了解学生的选课情况,以便于更好地进行教学计划安排、资源调配以及课程评估等。
3、管理需求:能够更好地监管选课流程,防止出现不当行为,确保选课过程的公开透明及合规性。
三、系统设计方案1、需求规定1.1 系统管理员可以对选课系统的相关参数进行设定,包括课程的基本信息数据、学生课程清单、选课时间和规则等。
1.2 学生登陆后可以查看课程、进行筛选,以及进行课程信息的查看、查询、课程化选。
1.3 教师可以查看选课情况以及管理自己的教学班级,包括布置作业、成绩录入等。
1.4 学生选课的时间节点可以在选课处理中获取,只有在设定时间内才可以进行选课。
2、数据库设计2.1 学生课程清单表:表中存储每个学生的已选课程信息。
2.2 学生信息表:存储所有注册学生的个人信息,为学生选课提供账号管理和基础信息库。
2.3 课程信息表:其中存储课程的全部信息,用于学生、教师查看、筛选和选课。
2.4 教师信息表:教师信息表中包含教师姓名、工号、授课班级信息以及相关授课要求等信息。
2.5 选课流水表:记录学生选课及其它可以影响选课结果的流水明细。
3、功能模块设计3.1 系统登录模块:设计系统的登录模块,分别支持学生、教师、管理员等三种用户类型。
3.2 课程分析模块:根据学生的兴趣和要求对课程进行筛选,以便于更快地找到符合自己要求的课程。
大学生选课系统课程设计
大学生选课系统课程设计一、课程目标知识目标:1. 学生能理解大学生选课系统的基本原理和功能需求,掌握系统的整体架构与模块划分。
2. 学生能掌握数据库设计的基本方法,学会使用SQL语句进行数据查询和管理。
3. 学生能了解软件工程的基本概念,运用面向对象编程思想进行系统设计与实现。
技能目标:1. 学生具备运用结构化分析方法进行需求分析的能力,能独立完成选课系统的需求规格说明书编写。
2. 学生能运用数据库设计工具进行数据库设计,实现选课系统中的数据存储与管理。
3. 学生能运用Java、C#等面向对象编程语言,结合软件工程原理,实现选课系统的核心功能模块。
情感态度价值观目标:1. 培养学生团队协作意识,提高沟通与协作能力,共同完成选课系统的设计与开发。
2. 增强学生解决问题的自信心,培养面对挑战时的积极态度和勇于尝试的精神。
3. 培养学生关注教育信息化发展,认识到信息技术在教育教学中的重要作用,激发为我国教育事业发展贡献力量的责任感。
课程性质:本课程为计算机科学与技术专业的一门实践性较强的专业课程,旨在让学生通过实际项目案例,掌握软件开发的基本方法和技能。
学生特点:大学生具备一定的计算机基础和编程能力,对实际项目开发有较高的兴趣,但可能缺乏项目实践经验。
教学要求:结合学生特点,注重理论与实践相结合,引导学生通过项目实践,逐步掌握软件开发的方法和技能。
在教学过程中,注重培养学生的团队协作能力和解决问题的能力。
通过课程学习,使学生能够独立完成选课系统的设计与开发,为未来从事软件开发工作奠定基础。
二、教学内容1. 需求分析:讲解需求分析的基本概念、方法与工具,结合大学生选课系统案例,分析系统功能需求、性能需求等,指导学生编写需求规格说明书。
2. 系统设计:介绍系统设计的基本原理与方法,包括系统架构设计、模块划分、界面设计等,使学生掌握选课系统的整体设计思路。
3. 数据库设计:讲解数据库设计的基本概念、原则与方法,结合选课系统案例,指导学生使用数据库设计工具进行数据库表结构设计,学会使用SQL语句进行数据查询和管理。
(完整word版)软件工程作业-学生选课系统报告
----软件工程--—-学生选课管理系统组长:071103428 张成林组员:071103418 马成龙组员:071103417 刘岩组员:071103429 张凯1 引言1.1 编写目的编写本文档的目的在于详细、准确和全面的定义本选课系统的功能和和用户需求,用以指导系统顺利地进行开发,并保证后续地开发能够保质保量的完成.本文档所描述的需求信息将作为该项目最终验收的标准和依据.1.2项目范围本项目名称为学生选课系统,主要是面向学校教师和学生的选课的主要管理平台,此外也是学生综合系统的重要组成部分,其中选课系统中的学生信息和教师信息来自学生信息管理系统和教师管理系统.2.任务概述2.1产品概述现在,随着各大高校的扩招及信息化社会的到来,学校为了合理规划人力资源的利用,保证学校信息的安全性,对信息化处理数据的要求也越来越高。
学生选课系统就是为了减少学校对信息管理的工作量,增强学生选课及成绩信息管理的安全性的双重要求下出现的。
本系统实现的主要功能是学生选课,成绩录入,成绩查询,课程信息管理,用户信息管理等。
采用的B/S架构,其作用范围为所有在校本科生和在校研究生和教师和系统管理员。
2.2用户特点本系统最终面向的用户主要分为三类:学生,教师,系统管理员.系统管理员主要任务是对数据库进行维护,并且保证信息的安全性。
教师和学生主要是对信息的输入和查询。
2。
3条件与限制本系统中涉及到大量的数据的录入和存储,开发人员要有一定的数据库操作技能,并且对于B/S架构和多任务多用户操作系统都有一定的认识,具有开发项目经验。
2。
4功能层次图3.数据描述3.1 一般性描述由于本系统的数据还算不上大型的。
所以数据库服务器与web服务器共用同一台计算机。
系统中的用户信息、系统信息和课程信息都放在数据库中。
3.2 System Use Case Diagram系统用例图下图所示。
各Use Case 说明如下:(1)选课:学生可以执行选课的操作.Step 1:成功登陆Step 2:查看所有可选课程Step 3:进行选课操作(2)查询:不管用户处于什么角色都可以使用查询Step 1:用户登陆Step 2:学生、老师和管理员分别使用的查询不一定全是相同的。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
学生选修课管理系统软件工程课程设计班级:09信息与计算科学学号:A********姓名:***学生选修课管理系统一、问题定义“选课”是现在高校行政管理工作中一项很重要的课题。
而且是每个学期都必须要面对的问题。
选课工作做不好,学生不知道自己将要学习的课程,老师也不知道自己将要讲授的课程,教务处的排课计划、教室安排等其他调度工作也无从做起。
因此,如何解决高校教务管理中的选课工作便成为了如今各大高校面临的很实际的问题。
随着近几年高校的持续扩招,学生人数逐年增加。
为了满足广大学生的求学需要,各个高校的师资力量、硬件配置也随之增强。
这样一来,日常行政部门的工作也就越来越繁重,这一点在选课这块显得尤为突出。
而传统的手工操作,即费时又费力,而且容易出错,工作效率较低。
因此,拥有一套实用、高效、完善的在线选课系统就显得尤为重要,它可以提升高校的教育质量和教学管理质量,提高工作效率,降低行政成本。
大学期间总会有很多公共选修课,以往的选课方法是随堂报名。
这种方法虽然直接,但是造成选课的盲目性,有些课堂选课时人满为患,有些课堂无人选课。
原因是传统的选课方法没有预见性,大家没有事先协调好。
并且学生选课存在这样的特点:公选课较多,学生人数众多,学生可根据自己的专业及兴趣选择公选课程进行学习,而且学生对课程的要求有较大差异。
使用了网上选课系统以后,可以在开课前就在网上选课,每个学生的课程在开课前就确定好,学生通过本系统可以了解课题相关信息,进行自主选题,能够满足不同学生对不同题目的不同要求,有利于发挥学生的长处,而且能够充分利用学校的各类教学资源。
使用本系统有三个角色,即管理员、学生和教师用户。
管理员的权限最高,包括设置系统登陆信息, 用户基本信息、选课信息的录入、查看、修改、删除等,同时还具有查询各个模块的功能。
老师和学生可以实现基本信息查询和进行选课的相关操作,如添加选课信息,退选等。
二、可行性研究1.1可行性研究的任务为了使高校学生选课、教师开课操作更加简单方便、提高效率,我们需要设计一个选修课管理系统来解决高校教务管理中的选课工作。
1.2可行性分析(1) 经济上的可行性系统界面友好,操作简单,系统的配置要求不高,实现可行,因此经济可行。
该系统可以容易实现学生、老师与学校之间的联系,在Internet上实现完成部分教务工作,提高办事效率。
(2) 技术上的可行性随着互联网的蓬勃发展,越来越多的机构将科研管理与Internet融合到一起,以方便个高校管理。
在这样一个社会背景下的学生网上选课系统,将学生、老师、管理员、有机地结合在一起,有效地提高管理水平和效率。
随着科学技术的不断提高,计算机科学日渐成熟,基于以上的技术在现今比较容易实现。
(3) 操作上的可行性该系统操作方便,简单。
1.3系统流程图1.4数据流图系统分为管理员用户登录、学生选课、教师开课、3个加工。
(1)管理员用户登录后,可进行以下一些操作:1、发布通知:即先对教师发出通知(教师得到通知后才可申请教课),然后对学生发出通知(此时已安排完有关选修课的所有信息)。
2、课程信息录入:课程信息录入:进入课程信息管理功能单元,输入课程号,课序号,课程名称,教师姓名,开设院系这些数据后提交数据,完成课程信息的录入操作,此时在选课表中将出现刚才添加的课程的有关信息。
3、课程信息更新:管理员用户登录后,进入课程信息管理功能单元,可根据教师开课情况进行课程删除(课程信息删除,进入课程信息管理功能单元,如果是已经登录,选择要删除的课程的课序号,提交后,就将选定课程删除了)。
5、关闭选课系统,即学生不得再进行选课活动。
(2)学生选课:1、收到系统的选课通知,通过学号密码登录选课系统,查看课程信息2、查询自己所属专业应修的课程3、查看课程信息,查看课程的开课时间、地点、课时、教师、学分3、在选课过程中会有课程信息的更新,学生可相应的修改或删除所选课程.3)教师开课:1、收到系统的开课通知,通过工号及密码登录学生选课系统。
2、根据系统要求教学信息,确定自己所开课程3、根据系统要求和课程限制,确定课程要求,课程编号、开课时间、地点、课时、开课人数、课程学分。
5、删除课程:由于主观或客观原因删除课程。
(不足规定人数取消该课程安排的信息,以及个人原因无法开课等)。
1.5数据字典三、需求分析2.1需求分析的任务1、功能需求:建立的学生选课系统用以满足高校对学生选课的高效细致的安排,同时录入学生和教师的信息,对于教师更好的安排课程,学生更好的了解课程变换动态,及时选课。
学生可进一步对课程的学时、性质、上课时间、授课教师的信息。
同时教师利用该系统进行开课、以及对学生信息的了解、学校课时安排、学生成绩录入。
2、性能需求:在系统能够容纳的学生人数以内,选课系统的反应时间必须在三秒之内完成一次选课。
3、可靠性和可用性需求:在选课期间,选课系统不能出现故障,在选课系统期间,选课系统必须是可用的,其余时间不可用。
4、出错处理需求:当系统出现故障,应及时发现自己所犯错误找出解决方案,可根据情况关闭系统以免影响学生选课和信息出错。
2.2实体联系图2.3状态转换图下图描述的是学生选课操作和教师开课操作的状态转换图。
学生从登录选课系统到选课完成需经历一系列过程。
首先输入学号和密码登录系统,系统给出提示,若登录成功则进行课程信息查询。
然后对信息进行详细查看,例如选课时间安排、教师安排、人数安排等,之后可点击选择课程并提交确认,此时系统也会给出提示,若成功选择给出课程详细信息,否则将提示人数已满的限制信息。
修改所选课程,也必须找到自己已选课程列表并进行删除,然后再按相同方法进行选课,最终完成选课。
修改课程过程中,要注意修改时间的限定,因为管理员也要统计学生及其所选课程的信息,所以必须在规定时间进行修改。
教师首先输入工号和密码登录系统,若登录成功则进行教学信息查询,然后确定课程要求,比如开课时间、地点、课时、学分、人数,可供学生查询。
最终完成开课。
修改课程,即学生人数为满足开课的最低要求,或者是教师个人因素而删除课程。
同样修改课程也要注意时间限定。
经过状态转换图的可视化效果,可更清楚了解此过程。
四、总体设计4.1模块化系统功能模块基本将本系统划分为三大模块,即学生选课模块、教师开课模块以及管理员管理模块。
4.2层次图该层次图反映了各个模块的层次结构及功能(1)学生选课模块:在这个模块中,允许学生浏览课程信息;并实现主要的选课功能,包括填写选定课程、查看已选课程、修改选课等。
(2)教师开课模块:这个模块主要是让教师开课,教师节到开课通知可查看教学信息,确定课程要求,申请开课、也可删除课程。
(3)管理员管理模块:这个模块的功能比较多,主要包括发布开课选课通知、发布教学课程信息、课程信息的录入、课程信息信息更新,关闭选课系统。
使用该选课系统有三个角色,即管理员、学生和教师用户。
管理员的权限最高,包括设置系统登陆信息, 用户基本信息、选课信息的录入、查看、修改、删除等,同时还具有查询各个模块的功能。
老师和学生可以实现基本信息查询和进行选课的相关操作4.3 IPO图五、详细设计5.1设计问题1、系统响应时间:选课系统的反应时间应在三秒钟之内。
2、用户帮助设施:(1)选课系统提供全部功能的帮助信息;(2)在选课系统中,用户请求帮助可选择帮助菜单;(3)用户请求帮助后,选课系统在反应时间内,会在屏幕某固定位置出现简短提示;(4)用户得到帮助后可由屏幕上的返回按钮回到正常的交互方式;(5)用户可通过帮助信息简短提示查找更详细的帮助信息(层次结构)。
3、出错信息处理:(1)选课系统会根据用户具体操作,而发出一些警告信息,如:该课程你已选过;(2)选课系统也会根据用户的具体操作发出一些建设性意见,如:密码错误!请重新输入!(3)选课系统会根据用户具体操作发出用户错误操作会导致的后果如:是否对更改的信息保存?如保存,原信息将无法恢复;(5)选课系统术语是友好的。
4、交互命令:(1)选课系统每个菜单项都有对应的命令;(2)选课系统的命令形式是功能键5.2盒图根据前面需求分析中,学生选课操作的状态转换图,制作盒图我们描述的是学生选课操作,首先进入系统,输入学号和密码,学号或密码错误系统出现错误信息要求重新进入,这是又回到进入系统阶段,这里运用了DO-UNTIL循环,由图可以看出。
学号和密码正确,学生进入课程信息查询,即该课程的授课教师、上课时间地点、课时等,同样要查看是否选择过该课程,如果已经选过该课程则根据自己的判断,考虑是否删除该课程,如果删除,则重新进入课程信息查询,这里同样也有DO-UNTIL循环,如果未选择该课程,则查看该课程是否人数已满,如果人数已满,则同样要回到课程查询阶段,这里仍旧是一个DO-UNTIL循环,如果人数未满,则点击该课程,提交选择课程,最后再次确认,完成选课。
同样操作仍可循环进行。
六、总结这次的软件工程课程设计,我做的是“学生选修课管理系统”,通过对其各阶段任务的分析实验操作(问题定义、可行性研究、需求分析、总体设计、详细设计),使我们对这门课程有了更深层次的了解,同时也学到了很多东西。
问题定义,弄清了当前老师开课与学生选课的诸多不方便,提出了解决选课问题的方案,以便后面可以按着这个方向进行设计。
可行性研究,可行性研究的主要任务不是具体解决系统中的问题,而是以最小的代价在尽可能短的时间内确定问题是否值得解决,是否能够解决,因此我考虑了经济、技术与操作上的可行性。
然后作图,系统流程图概括的描述了选课的物理系统,这个过程让我简洁的分析了问题,为下面的过程作了铺垫,数据流图描绘的是信息流和数据从输入移动到输出的过程中所经受的变换,是数据在软件中流动和被处理的逻辑过程,这个过程花费时间比较长,我改了好久,除了对系统自身的不断改正之外,也有和后面设计的冲突的内容的协调,数据字典只是简单的对数据进行了定义需求分析,先进行了需求任务的分析,包括功能需求、性能需求、可靠性和可用性需求、出错处理需求。
实体联系图描绘了教师、学生和课程各个数据对象之间的关系和他们各自的属性,状态转移图,这个也花了我好多时间,因为我要根据系统要求,以及和其他部分内容不冲突,做了许多改动,现在也不是很满意,但是我在不断改动过程中,对选课系统有了更深的认识,同时也知道了设计过程的艰辛。
总体设计,因为有了前面的可行性分析和需求分析,系统已经基本明确划了,总体设计就是帮助我们划分模块,更好的设计各个模块的功能,我的选课系统比较简单,只有老师、学生和管理员三个模块,而且层次方框图也让选课系统各个模块看着更加形象具体。
IPO图,我主要针对管理员的模块做的,因为老师和学生毕竟是系统的终端用户,管理员的操作更能体现系统功能。