当前位置:文档之家› 学生选课管理系统

学生选课管理系统

软件项目管理学生选课管理系统项目名称:组长组员提交时间: 2015年6月15日学生选课管理系统项目任务书一、目的、要求通过软件开发的实践训练,进一步掌握软件项目管理的方法和技术,提高软件开发的实际能力,培养工程设计能力和综合分析、解决问题的能力。

具体如下:1.学习和实践在分析和设计计算机应用系统所需要的知识,包括面向对象的系统分析与设计,软件项目管理,编码和测试方面的知识;2.熟悉自动化的软件开发工具Rational Rose 2003,并将其运用于软件开发的全过程;3.进一步加强和提高软件工程文档的编写能力;4.培养协作能力和团队精神。

二、主要内容1.课题题目:学生选课系统,本系统要实现学生选课的基本功能,包括学生退选课,查看自己的选课信息;教师查看选课学生的信息,提交成绩;管理员添加学生、管理学生、管理成绩、添加教师、管理教师和管理课程等。

2.运用面向对象技术、UML及可视化的建模工具完成系统的需求分析与设计。

3.使用Rational Rose作为需求分析与设计的建模工具,包括静态建模和动态建模,并利用对象模型自动生成数据模型,自动建立数据库。

4.采用分层模式的应用设计模式进行系统的设计实现。

5.系统要实现四个模块功能:教师模块、学生模块、管理员模块和公用模块。

6.初步建立系统原型,实现关键的功能,并对系统进行测试。

三、任务分配学生选课管理系统任务分解书(WBS)一.学生选课管理系统任务分解1.1.1 项目规划1.1.2 计划评审1.2 需求开发1.2.1 用户界面设计1.2.2 用户需求评审1.2.3 修改需求、修改用户界面1.2.4 需求规格说明书1.2.5 编写需求获取方法1.2.6 编写需求跟踪矩阵1.3 设计1.3.1 概要设计1.3.2 详细设计1.3.3 设计评审1.4 实施1.4.1用户管理功能1.4.1.1 添加用户1.4.1.2 修改密码1.4.1.3 删除用户1.4.1.4 系统退出1.4.2 设备管理功能1.4.2.1 添加设备号1.4.2.2 设备信息二.系统功能分解表三.项目进度时间表(甘特图)学生选课管理系统学生管理子系统 教师管理子系统管理员子系统个人信息管理模块选课,退课管理模块查询选课结果及成绩模块个人信息管理模块查看选课结果模块上传及修改学生成绩模块添加及删除学生模块添加及删除教师模块添加及删除课程信息模块五.项目日历学生选课管理系统项目范围说明书一、项目基本信息项目名称:学生选课系统项目类型:网站开发项目经理:编写日期:2015年6月13日二、项目范围说明1、登陆界面进入网站的第一个页面,只有登录才能进入并使用系统,保证网站系统的用户的小范围性。

以简洁的界面展现本系统的简单易用。

2 、系统界面首页,根据用户权限不同显示系统的功能。

学生:显示该学生的姓名、年龄、性别、所选课程等基本信息。

教师:显示教师的姓名、性别、年龄、所授课程等基本信息。

管理员:显示管理员姓名、年龄、性别等信息,以及学生管理、教师管理、课程管理的功能选项。

3、子界面学生:点击课程即可显示课程的上课时间地点任课教师、成绩等信息。

教师:点击课程即可显示选修这门课程的人数上课时间地点等信息。

并显示录入成绩功能选型。

管理员:①学生管理:显示所有学生的基本信息,并显示添加、修改、删除功能选项。

②教师管理:显示所有教师的基本信息,并显示添加、修改、删除功能选项。

③课程管理:显示所有课程的基本信息,并显示添加、修改、删除功能选项。

三、项目可交付成功1、系统管理2、登录功能3、系统主功能4、系统子功能四、约束条件1、项目开发周期自项目明确之日起三个月为开发周期,开发周期过后进入一个月的测试周期,测试完成后正式上线运行。

2、服务器运行环境操作系统:Windows2003或linuxWebServer:apache以上,并配置php5.2以上的运行环境数据库:mysql5.0以以上学生选课管理系统资源计划一,概述项目名称:网上选课系统项目经理:项目发起人:起草人:日期:2015-6-13二,资源描述主要资源描述人员资金根据资金估算确定设备五台装有相关软件的微型计算机材料学校选课相关资源设施学校相应测试工具等信息技术掌握相关的软件基本知识三,资源数量学生选课管理系统项目成本管理计划(1)直接成本(包括开发成本和管理成本)因开发成本 = 内部的开发成本(159人天 * 400元/天) + 外包外购的本软件成本(10200元) = 73800元;项目的管理和质量成本 = 开发成本(73800) * 20% =14760元;所以直接成本 = 项目的管理和质量成本(14760) + 开发成本(73800) = 88560元;(2)间接成本间接成本包括前期合同费用、房租水电、培训、员工福利、客户服务等项。

则可得:间接成本 = 直接成本(88560) * 25% =22140元;(3)项目总成本项目总成本 = 直接成本(88560) + 间接成本(22140) = 110700元。

最后,项目的总报价 = 项目总成本 + 项目总成本 * (风险基金(10%) + 利润(15%) +税费(5%)) = 132975* 1.3 = 143910元。

学生选课管理系统风险计划学生选课管理系统需求分析1.系统需求分析学生选课系统主要满足来自三方面的需求,这三个方面分别是学生用户、教师用户和管理员用户,也即是三类用户角色。

(1)学生用户是主要的需求者,主要需求功能是查询可选课程、查看自己选课情况及进行选课、退课操作等;(2)教师用户主要需求功能是查看自己所教授的课程、课程有哪些学生选修、以及利用本系统提交学生的成绩;(3)管理员用户的功能需求较为复杂,包括对学生信息、教师信息、课程信息进行管理。

在学生信息管理子模块中,实现对学生信息的添加、修改、删除操作,还可以输入查询条件进行查询操作。

在教师管理子模块中,实现对教师信息的添加、修改、删除、查询等操作。

在课程管理子模块中,实现对课程信息的添加,添加时为其分配任课教师、上课时间和地点,实现对课程的修改、删除、查看某个课程的详细信息等。

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

通过进行严格的权限划分,可以更好地进行管理,也可更好地保护用户信息安全。

2.1用例图图2-1 学生选课系统用例图用例图说明:(1)系统的外部角色有:学生用户、教师用户和管理员。

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

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

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

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

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

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

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

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

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

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

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

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

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

(4)系统关键用例的正常事件流图和异常事件流图表2-1 修改密码用例的正常事件流图和异常事件流图表2-2 提交成绩用例的正常事件流图和异常事件流图2.系统提交成绩页面3.填写学生成绩,单击提交成绩5.更新学生成绩,提示提交成功异常流异常流用户已经提交过该门课程成绩系统提示该课程成绩已提交,不能再次提交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) 学生用户退选课的顺序图(3) 教师提交成绩顺序图: 教师用户(1) 学生用户选课协作图(2) 教师提交成绩协作图图2-7教师提交成绩协作图学生选课管理系统概要设计系统总体设计3.1 设计问题域子系统学生选课系统是实现学生选课退课、教师提交成绩以及学校教务管理员维护信息的一个平台,整个学生选课系统有前台和后台两部分,共分为4个模块:管理员模块,教师模块,学生模块和公有模块,分别用于完成各自的功能。

以下为学生选课系统总体设计图和各功能模块说明:(1)总体设计图(2)各模块功能表3-1 学生选课系统功能模块表3.2 设计数据管理子系统(1)数据库表表3-2 数据库表4 Elect 存储选课的信息5 Cource 存储课程的信息6 Depart 存储学校系院信息(2)数据表之间的关系图3-2数据表之间的关系图(3)数据库表结构①学生表Student的详细数据字段:表3-3 Student学生用户表序号字段名字段类型说明备注1 stuID nvarchar(20)not学生学号关键字null②教师表Teacher的详细数据字段:③课程表Course的详细数据字段:④选课表Elect的详细数据字段:⑤系统管理员表Users的详细数据字段:⑥系院表Depart的详细数据字段:3.3 设计人机交互子系统(1)用户分类本系统的用户可分为三类:①管理员用户;②教师用户;③学生用户。

相关主题