软件工程课程设计报告模板.doc
软件工程课程设计报告20142015年度第一学期课程名称软件工程课程设计题目学生选课系统院系计算机与信息技术学院班级软件工程组号XXXX组长XXXXXX组员XXXXX指导教师郭虎升设计周数6周小组成绩日期2013年月日软件工程课程设计任务书一、目的、要求通过软件开发的实践训练,进一步掌握软件工程的方法和技术,提高软件开发的实际能力,培养工程设计能力和综合分析、解决问题的能力。具体如下学习和实践在分析和设计计算机应用系统所需要的知识,包括面向对象的系统分析与设计,编码和测试方面的知识;熟悉自动化的软件开发工具RATIONALROSE2003等,并将其运用于软件开发的全过程;进一步加强和提高软件工程文档的编写能力;培养协作能力和团队精神。二、任务分配任务负责人参与人备注需求分析总体设计详细设计系统实现与测试三、设计成果要求建立系统分析与设计模型;初步建立系统原型,实现关键的功能;编写课程设计报告。指导教师日期2013年月日软件工程课程设计成绩评定一、指导教师评语二、成绩指导教师日期年月日学号姓名成绩备注软件工程课程设计报告1摘要本系统实现学生选课的基本功能,包括学生退选课,查看自己的选课信息;教师查看选课学生的信息,提交成绩;管理员添加学生、管理学生、管理成绩、添加教师、管理教师和管理课程等。系统利用NET平台技术进行开发,实现学生选课的动态管理,使得对信息的管理更加及时、高效,提高了效率。同时还对系统的开发原理、功能特点和设计方案进行了介绍。关键词学生选课数据库管理ASPNET1课程设计的目的与要求通过软件开发的实践训练,进一步掌握软件工程的方法和技术,提高软件开发的实际能力,培养工程设计能力和综合分析、解决问题的能力。具体如下(1)学习和实践在分析和设计计算机应用系统所需要的知识,包括面向对象的系统分析与设计,编码和测试方面的知识;(2)熟悉自动化的软件开发工具RATIONALROSE2003,并将其运用于软件开发的全过程;(3)进一步加强和提高软件工程文档的编写能力;(4)培养协作能力和团队精神。2设计正文21概述211课题题目学生选课系统212系统的主要目标本系统目标是实现选课系统所需的各种基本功能,包括学生选课、退课功能和教师查看选修课程、提交课程成绩功能以及管理员添加学生、维护学生信息、成绩管理、添加教师、维护教师信息、维护选修课程,还有公用的修改密码等功能。213系统的开发环境及运行环境操作系统WINDOWSXPPROSP2建模工具RATIONALROSE2003数据库系统SQLSERVER2000开发工具VISUALSTUDIO2005WEB服务器IISASPNET20平台22系统需求分析学生选课系统主要满足来自三方面的需求,这三个方面分别是学生用户、教师用户和管理员用户,也即是三类用户角色。(1)学生用户是主要的需求者,主要需求功能是查询可选课程、查看自己选课情况及进行选课、退课操作等;(2)教师用户主要需求功能是查看自己所教授的课程、课程有哪些学生选修、以及利用本系统提交学生的成绩;(3)管理员用户的功能需求较为复杂,包括对学生信息、教师信息、课程信息进行管理。在学生信息管理子模块中,实现对学生信息的添加、修改、删除操作,还可以输入查询条件进行查询操作。在教师管理子模块中,实现对教师信息的添加、修改、删除、查询等操作。在课程管理子模块中,实现对课程信息的添加,添加时为其分配任课教师、上课时间和地点,实现对课程的修改、删除、查看某个课程的详细信息等。本系统将管理员用户、教师用户、学生用户的身份及权限进行严格的划分,让管理员拥有最高软件工程课程设计报告2权限,可以查看、维护系统中的所有信息,如添加学生,添加课程,修改课程信息等;让教师拥有查看自己开设的课程的信息,以及提交所开设课程成绩的权限;让学生拥有选课和退选的权限;而修改密码模块的权限每个用户都可拥有,用以修改自己的密码信息。通过进行严格的权限划分,可以更好地进行管理,也可更好地保护用户信息安全。221用例图图21学生选课系统用例图用例图说明(1)系统的外部角色有学生用户、教师用户和管理员。(2)系统主要用例的文档描述①学生管理用例学生用户可见的功能,包含了选课、退课和查看选课三个用例功能。②教师管理用例教师用户可见的功能,包含了查看学生选课和提交成绩两个用例功能。③信息管理用例管理员可见的功能,这个用例进一步分为三个用例学生信息管理用例、教师信息管理用例和课程信息管理用例。④学生信息管理用例信息管理用例可见的功能,实现学生信息的管理功能,包含了添加学生、修改学生信息和删除学生三个用例。⑤教师信息管理用例信息管理用例可见的功能,实现教师信息的管理功能,包含了添加教师、修改教师信息和删除教师三个用例。⑥课程信息管理用例信息管理用例可见的功能,实现课程信息的管理功能,包含了添加、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、软件工程课程设计报告3课程、修改课程信息和删除课程三个用例。⑦修改密码用例所有用户都可见的功能,用于修改用户的密码信息。(3)系统用例之间的关系①学生管理用例与选课、查看选课、退课三用例之间是包含关系。②教师管理用例与查看学生选课、提交成绩两用例之间是包含关系。③信息管理用例与学生信息管理用例、教师信息管理用例和课程信息管理用例之间是包含关系。④学生信息管理用例与添加学生、修改学生信息和删除学生三个用例之间是包含关系。⑤教师信息管理用例与添加教师、修改教师信息和删除教师三个用例之间是包含关系。⑥课程信息管理用例与添加课程、修改课程信息和删除课程三个用例之间是包含关系。(4)系统关键用例的正常事件流图和异常事件流图表21修改密码用例的正常事件流图和异常事件流图用例名称修改密码参与者管理员、教师、学生描述管理员、教师、学生用户进行密码修改启动单击“修改密码”链接前置条件用户成功登录主事件流用户系统1进入用户修改密码界面,输入旧密码一次,新密码两次2系统检查密码格式是否相符3系统检查旧密码是否正确4如果正确,进行密码修改,转入密码修改成功界面异常流异常流密码检查未通过系统返回密码修改界面,提示旧密码不正确,新密码格式不符,两次不同等密码异常用户旧密码错误软件工程课程设计报告4表22提交成绩用例的正常事件流图和异常事件流图用例名称提交成绩用例参与者教师用户描述提交选自己开设课程的学生的成绩启动进入提交成绩界面前置条件用户成功登录后置条件尚未提交过成绩主事件流用户系统1单击提交成绩2系统提交成绩页面3填写学生成绩,单击提交成绩5更新学生成绩,提示提交成功异常流异常流用户已经提交过该门课程成绩系统提示该课程成绩已提交,不能再次提交222类图图22学生选课系统类图软件工程课程设计报告5类图说明(1)BASEUSER类是一个系统角色用户的基类,主要方法有两个MODIFYPWD用于修改用户的密码;LOGINCHECK用于用户登录验证。(2)ADMIN类继承自BASEUSER类。(3)STUDENT类继承自BASEUSER类,主要方法有STUDENTADD用于添加学生;STUDENTDEL用于删除学生;STUDENTUPDATE用于更新学生信息;GETS