软件工程课程设计报告(学生选课系统)
发布时间:2024-10-12
发布时间:2024-10-12
软件工程课程设计报告(学生选课系统)
《软件工程》课程设计
任 务 书
一、 目的、要求
通过软件开发的实践训练,进一步掌握软件工程的方法和技术,提高软件开发的实际能力,培养工程设计能力和综合分析、解决问题的能力。
具体如下:
1. 学习和实践在分析和设计计算机应用系统所需要的知识,包括面向对象的系统分析与设计,编
码和测试方面的知识;
2. 熟悉自动化的软件开发工具Rational Rose 2003,并将其运用于软件开发的全过程; 3. 进一步加强和提高软件工程文档的编写能力; 4. 培养协作能力和团队精神。
二、 主要内容
1. 课题题目:学生选课系统,本系统要实现学生选课的基本功能,包括学生退选课,查看自己的
选课信息;教师查看选课学生的信息,提交成绩;管理员添加学生、管理学生、管理成绩、添加教师、管理教师和管理课程等。
2. 运用面向对象技术、UML及可视化的建模工具完成系统的需求分析与设计。
3. 使用Rational Rose作为需求分析与设计的建模工具,包括静态建模和动态建模,并利用对象
模型自动生成数据模型,自动建立数据库。
4. 采用分层模式的应用设计模式进行系统的设计实现。
5. 系统要实现四个模块功能:教师模块、学生模块、管理员模块和公用模块。 6. 初步建立系统原型,实现关键的功能,并对系统进行测试。 7. 编写课程设计报告。
三、任务分配
软件工程课程设计报告(学生选课系统)
四、 进度计划
五、 设计成果要求
1. 建立系统分析与设计模型;
2. 初步建立系统原型,实现关键的功能; 3. 编写课程设计报告。
六、 考核方式
1. 模型及代码检查
占50%。 2. 设计报告
占50%。
指导教师: 马素霞
日 期: 2008 年 6 月 23 日
软件工程课程设计报告(学生选课系统)
《软件工程》课程设计
成 绩 评定
一、 指导教师评语
二、 成绩
指导教师:
日 期: 年 月 日
软件工程课程设计报告(学生选课系统)
摘要:
本系统实现学生选课的基本功能,包括学生退选课,查看自己的选课信息;教师查看选课学生的信息,提交成绩;管理员添加学生、管理学生、管理成绩、添加教师、管理教师和管理课程等。系统利用.Net平台技术进行开发,实现学生选课的动态管理,使得对信息的管理更加及时、高效,提高了效率。同时还对系统的开发原理、功能特点和设计方案进行了介绍。 关键词:学生选课 数据库 管理 http://www.77cn.com.cn
一、课程设计的目的与要求
通过软件开发的实践训练,进一步掌握软件工程的方法和技术,提高软件开发的实际能力,培养工程设计能力和综合分析、解决问题的能力。
具体如下:
1. 学习和实践在分析和设计计算机应用系统所需要的知识,包括面向对象的系统分析与设计,编
码和测试方面的知识;
2. 熟悉自动化的软件开发工具Rational Rose 2003,并将其运用于软件开发的全过程; 3. 进一步加强和提高软件工程文档的编写能力; 4. 培养协作能力和团队精神。
二、设计正文
1. 概述
1.1课题题目:学生选课系统 1.2系统的主要目标:
本系统目标是实现选课系统所需的各种基本功能,包括学生选课、退课功能和教师查看选修课程、提交课程成绩功能以及管理员添加学生、维护学生信息、成绩管理、添加教师、维护教师信息、维护选修课程,还有公用的修改密码等功能。 1.3 系统的开发环境及运行环境:
操作系统: Windows XP Pro SP2 建模工具: Rational Rose 2003 数据库系统:SQL Server2000 开发工具: Visual Studio 2005 Web服务器:IIS+http://www.77cn.com.cn 2.0平台
2. 系统需求分析
学生选课系统主要满足来自三方面的需求,这三个方面分别是学生用户、教师用户和管理员用户,也即是三类用户角色。
(1)学生用户是主要的需求者,主要需求功能是查询可选课程、查看自己选课情况及进行选课、退课操作等;
(2)教师用户主要需求功能是查看自己所教授的课程、课程有哪些学生选修、以及利用本系统提交学生的成绩;
(3)管理员用户的功能需求较为复杂,包括对学生信息、教师信息、课程信息进行管理。在学生信息管理子模块中,实现对学生信息的添加、修改、删除操作,还可以输入查询条件进行查询操作。在教师管理子模块中,实现对教师信息的添加、修改、删除、查询等操作。在课程管理子模块中,实
软件工程课程设计报告(学生选课系统)
现对课程信息的添加,添加时为其分配任课教师、上课时间和地点,实现对课程的修改、删除、查看某个课程的详细信息等。
本系统将管理员用户、教师用户、学生用户的身份及权限进行严格的划分,让管理员拥有最高权限,可以查看、维护系统中的所有信息,如添加学生,添加课程,修改课程信息等;让教师拥有查看自己开设的课程的信息,以及提交所开设课程成绩的权限;让学生拥有选课和退选的权限;而修改密码模块的权限每个用户都可拥有,用以修改自己的密码信息。通过进行严格的权限划分,可以更好地进行管理,也可更好地保护用户信息安全。
2.1 用例图
图2-1 学生选课系统用例图
用例图说明:
(1)系统的外部角色有:学生用户、教师用户和管理员。 (2)系统主要用例的文档描述:
①学生管理用例:学生用户可见的功能,包含了选课、退课和查看选课三个用例功能。 ②教师管理用例:教师用户可见的功能,包含了查看学生选课和提交成绩两个用例功能。 ③信息管理用例:管理员可见的功能,这个用例进一步分为三个用例:学生信息管理用例、教师信息管理用例和课程信息管理用例。
软件工程课程设计报告(学生选课系统)
④学生信息管理用例:信息管理用例可见的功能,实现学生信息的管理功能,包含了添加学生、修改学生信息和删除学生三个用例。
⑤教师信息管理用例:信息管理用例可见的功能,实现教师信息的管理功能,包含了添加教师、修改教师信息和删除教师三个用例。
⑥课程信息管理用例:信息管理用例可见的功能,实现课程信息的管理功能,包含了添加课程、修改课程信息和删除课程三个用例。
⑦修改密码用例:所有用户都可见的功能,用于修改用户的密码信息。 (3)系统用例之间的关系:
①学生管理用例与选课、查看选课、退课三用例之间是包含关系。 ②教师管理用例与查看学生选课、提交成绩两用例之间是包含关系。
③信息管理用例与学生信息管理用例、教师信息管理用例和课程信息管理用例之间是包含关系。
④学生信息管理用例与添加学生、修改学生信息和删除学生三个用例之间是包含关系。 ⑤教师信息管理用例与添加教师、修改教师信息和删除教师三个用例之间是包含关系。 ⑥课程信息管理用例与添加课程、修改课程信息和删除课程三个用例之间是包含关系。 (4)系统关键用例的正常事件流图和异常事件流图
表2-1 修改密码用例的正常事件流图和异常事件流图
软件工程课程设计报告(学生选课系统)
表2-2 提交成绩用例的正常事件流图和异常事件流图
2.2 类图
图2-2 学生选课系统类图
软件工程课程设计报告(学生选课系统)
类图说明:
(1)BaseUser类是一个系统角色用户的基类,主要方法有两个:
modifyPWD() 用于修改用户的密码; loginCheck() 用于用户登录验证。 (2)Admin类继承自BaseUser类。
(3)Student类继承自BaseUser类,主要方法有:
studentAdd() 用于添加学生; studentDel() 用于删除学生;
studentUpdate() 用于更新学生信息; getStudents() 用于获取学生列表。 (4)Teacher类继承自BaseUser类,主要方法有:
teacherAdd() 用于添加教师; teacherDel() 用于删除教师;
teacherUpdate() 用于更新教师信息; getTeachers() 用于获取教师列表。 (5)Course类是一个课程类,主要方法有:
courseAdd() 用于添加课程; courseDel() 用于删除课程;
courseUpdate() 用于修改课程信息; getCourses() 用于获取课程列表。 (6)Elect类是一个选课表类,主要方法有:
elect() 选修课程; electDel() 退选课程;
getElectInfo() 获取选课信息;
haveSubmit() 检测是否已提交过成绩; submitScore() 提交成绩。
2.3 顺序图
(1) 管理员修改课程信息顺序图
: 管理员
软件工程课程设计报告(学生选课系统)
(2) 学生用户退选课的顺序图
图2-4 学生用户退选课的顺序图
:
(3) 教师提交成绩顺序图
图2-5 教师提交成绩顺序图
: 教师用户
软件工程课程设计报告(学生选课系统)
2.4 协作图(可选)
(1) 学生用户选课协作图
图2-6 学生用户选课协作图
(2) 教师提交成绩协作图
图2-7 教师提交成绩协作图
软件工程课程设计报告(学生选课系统)
3. 系统总体设计 3.1 设计问题域子系统
学生选课系统是实现学生选课退课、教师提交成绩以及学校教务管理员维护信息的一个平台,整个学生选课系统有前台和后台两部分,共分为4个模块:管理员模块,教师模块,学生模块和公有模块,分别用于完成各自的功能。以下为学生选课系统总体设计图和各功能模块说明:
(1)总体设计图
(2)各模块功能
表3-1 学生选课系统功能模块表
软件工程课程设计报告(学生选课系统)
3.2 设计数据管理子系统
(1)数据库表
表3-2 数据库表
(2)数据表之间的关系
图3-2 数据表之间的关系图
软件工程课程设计报告(学生选课系统)
(3)数据库表结构
①学生表Student的详细数据字段:
②教师表Teacher的详细数据字段:
③课程表Course的详细数据字段:
软件工程课程设计报告(学生选课系统)
④选课表Elect的详细数据字段:
⑤系统管理员表Users的详细数据字段:
⑥系院表Depart的详细数据字段:
3.3 设计人机交互子系统
(1)用户分类
本系统的用户可分为三类: ①管理员用户; ②教师用户; ③学生用户。 (2)用户描述
①管理员用户的描述:
管理员用户在整个选课系统中起到管理和维护的作用,对学生和教师的信息进行管理和维护以及开设课设等职责。 ②教师用户的描述:
教师用户在本系统中具有管理选修了自己开设的课程的学生的权限,查看选修了自己开设课程的学生信息有及提交学生成绩。 ③学生用户的描述:
选课系统主要是针对管理学生的,学生在本系统中具有修改自己的信息,以及选课和退选的功能。
软件工程课程设计报告(学生选课系统)
(3)设计命令层次
①系统的人机交互子系统的内容和准则:
本学生选课系统的人机交互子系统在根据不同的用户身份登陆到不同的页面,然后按照不同的用户只能进行用户权限内的操作,其结构图如下:
②通过采用树形结构,细化命令的组织方式,如下:
软件工程课程设计报告(学生选课系统)
4. 详细设计
学生选课系统是实现学生网上选课、教师提交成绩以及学校教务管理员维护信息的一个平台,整个学生选课系统共分为4个大模块:管理员模块,教师模块,学生模块和公有模块,其中复杂的方法和模块的详细设计流程图如下。
4.1系统用户登录流程图
图4-1 系统用户登录流程图
上一篇:扇形统计图评课稿