吉林建筑大学软件工程专业UML课程设计网上选课报告.doc

UML网上学生选课系统程序设计 摘要 本系统实现学生选课的基本功能,包括学生退选课,查看自己的选课信息;
教师查看选课学生的信息,提交成绩;
管理员添加学生、管理学生、管理成绩、添加教师、管理教师和管理课程等。系统发实现了学生选课的动态管理,使得对信息的管理更加及时、高效,提高了效率。

关键词学生选课 管理 网上选课 一、课程设计的目的与要求 UML统一建模课程是一门面向对象开发方法的设计语言。UML统一建模课程设计实验课,着重加强面向对象建模技术。使用UML统一建模语言,用需求模型简化业务领域;
用分析模型验证用例的正确性,一致性,完备性,可行性;
用设计模型标识解决方案。通过模型实现了从业务领域到软件领域的映射。通过建模,使问题可视化,形式化。通过以序列的建模和迭代活动,对于提高学生综合素质十分必要。

通过软件开发的实践训练,进一步掌握软件工程的方法和技术,提高软件开发的实际能力,培养工程设计能力和综合分析、解决问题的能力。

1. 概述 1课题题目网上学生选课系统 2系统的主要目标 本系统目标是实现选课系统所需的各种基本功能,包括学生选课、查看已修课程、查看已选课程、退课功能和教师查看选修课程、提交课程成绩功能以及管理员添加学生、维护学生信息、成绩管理、添加教师、维护教师信息、维护选修课程,还有公用的修改密码等功能。

3系统的开发环境及运行环境 操作系统 window7 建模工具 Rational Rose 2007 二、系统需求分析 学生选课系统主要满足来自三方面的需求,这三个方面分别是学生用户(Student)、教师用户(Teacher)和管理员用户(Administrator),也即是三类用户角色。

(1)学生用户是主要的需求者,主要需求功能是查询可选课程、查看自己选课情况及进行选课、、查看已修课程、退课操作等;

(2)教师用户主要需求功能是查看自己所教授的课程、课程有哪些学生选修、以及利用本系统提交学生的成绩;

(3)管理员用户的功能需求较为复杂,包括对学生信息、教师信息、课程信息进行管理。在学生信息管理子模块中,实现对学生信息的添加、修改、删除操作,还可以输入查询条件进行查询操作。在教师管理子模块中,实现对教师信息的添加、修改、删除、查询等操作。在课程管理子模块中,实现对课程信息的添加,添加时为其分配任课教师、上课时间和地点,实现对课程的修改、删除、查看某个课程的详细信息等。

本系统将管理员用户、教师用户、学生用户的身份及权限进行严格的划分,让管理员拥有最高权限,可以查看、维护系统中的所有信息,如添加学生,添加课程,修改课程信息等;
让教师拥有查看自己开设的课程的信息,以及提交所开设课程成绩的权限;
让学生拥有选课和退选的权限;
而修改密码模块的权限每个用户都可拥有,用以修改自己的密码信息。通过进行严格的权限划分,可以更好地进行管理,也可更好地保护用户信息安全。

图1、系统框架图 三、系统用例图 图2、 系统用例图 用例图说明 (1)系统的外部角色有学生用户、教师用户和管理员。

(2)系统主要用例的文档描述 ①学生管理用例学生用户可见的功能,包含了选课、退课和查看选课三个用例功能。

②教师管理用例教师用户可见的功能,包含了查看学生选课和提交成绩两个用例功能。

③信息管理用例管理员可见的功能,这个用例进一步分为三个用例学生信息管理用例、教师信息管理用例和课程信息管理用例。

④学生信息管理用例信息管理用例可见的功能,实现学生信息的管理功能,包含了添加学生、修改学生信息和删除学生三个用例。

⑤教师信息管理用例信息管理用例可见的功能,实现教师信息的管理功能,包含了添加教师、修改教师信息和删除教师三个用例。

⑥课程信息管理用例信息管理用例可见的功能,实现课程信息的管理功能,包含了添加课程、修改课程信息和删除课程三个用例。

⑦修改密码用例所有用户都可见的功能,用于修改用户的密码信息。

(3)系统用例之间的关系 ①学生管理用例与选课、查看选课、退课三用例之间是包含关系。

②教师管理用例与查看学生选课、提交成绩两用例之间是包含关系。

③信息管理用例与学生信息管理用例、教师信息管理用例和课程信息管理用例之间是包含关系。

④学生信息管理用例与添加学生、修改学生信息和删除学生三个用例之间是包含关系。

⑤教师信息管理用例与添加教师、修改教师信息和删除教师三个用例之间是包含关系。

⑥课程信息管理用例与添加课程、修改课程信息和删除课程三个用例之间是包含关系。

四、系统类图 图3、系统类图 类图说明 (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 获取选课信息;

have 检测是否已提交过成绩;

Score 提交成绩。

五、系统顺序图和协作图 1.顺序图 1管理员修改课程信息顺序图 图4、 管理员修改课程信息顺序图 2 学生用户退选课的顺序图 图5、学生用户退选课的顺序图 3 教师提交成绩顺序图 图6、教师提交成绩顺序图 2.协作图 1 学生用户选课协作图 图7、学生用户选课协作图 2 教师提交成绩协作图 图8、教师提交成绩协作图 六、系统活动图 1. 学生查询活动图 图9、学生查询活动图 2. 选课活动图 图10、选课活动图 3. 修改选课活动图 图11、修改选课活动图 4. 用户登录活动图 图12、用户登录活动图 5. 教师提交成绩活动图 图13、教师提交成绩活动图 七、系统状态图 1. 管理员状态图 图14、管理员状态图 2. 教师状态图 图15、教师状态图 3. 学生状态图 图16、学生状态图 八、系统构件图 图17、系统构件图 九、系统部署图 图18、系统部署图 十、小组成员分工情况 邵珠旭完成了图1到图6的绘制。

孙海涛完成了图7到图12的绘制。

孙浩完成了图13到图18的绘制。

报告的文字部分由邵珠旭,孙海涛和孙浩共同完成。

十 一、参考资料 [1] 刁成嘉.UML系统建模与分析设计.北京机械工业出版社,2007 [2] UML基础与Rose建模案例.北京人民邮电出版社,2004 12