软件工程实验项目(三)

(一)总体设计

(1)运行环境

硬件环境:Windows 7 及以上,处理器:Intel Pentium及以上,内存:2G以上
浏览器:IE9 以上及Chrome,FireFox,Safari等现代浏览器

(2)基本处理流程

用户登录流程图

软件工程实验项目(三)

子模块操作处理流程图

软件工程实验项目(三)

(3)模块结构

系统结构图

软件工程实验项目(三)

功能模块简介

用户管理模块:对用户的信息进行增删改查
院系管理模块:对院系的信息进行增删改查
班级管理模块:对班级的信息进行增删改查
学生管理模块:对学生的基本信息进行增删改查
课程管理模块:对课程进行增删改查,并能查看平均分,不及格率,成绩排名

(二)详细设计

(1)子管理模块设计

程序流程图

软件工程实验项目(三)

算法描述

(1)用户在前台操作,向后台发送带参数的GET请求
(2)AdminDao.java捕捉到请求,根据类型分发到不同处理方法中
(3)处理方法中实例化XXXDao对象并调用DBUtils.java提供的方法连接和操作数据库
用ajax向前台user.jsp或者admin.jsp发送操作后的数据

(2)关键类说明

LoginServlet.java:负责处理用户登录操作
RegisterServlet.java:负责处理用户注册操作
AdminDao.java:一个Servlet文件,接收前台发送的操作指令
XXXDao.java:封装了关于该信息在数据库中增删改查的方法
DBUtils.java:封装了获取数据库连接和释放数据库连接的方法
Admin.jsp:管理员操作界面
User.jsp:用户操作界面

(三)数据库设计

(1)概念结构设计

E-R图:
软件工程实验项目(三)
本数据库有实体集:User(用户),Department(院系),Class(班级),Student(学生),Course(课程)
它们之间的联系有:1对1:Student和User
1对多:Department和Class,Class和Studen
多对多:Course和Student

(2)逻辑结构设计

关系模式(下划线为主键,#表示外键)
User(Username,Password,Level)
Department(Dno,Dname)
Class(Clno,Clname,#Dno)
Student(Sno,Sname,Ssex,Sage,#Clno)
Course(Cno,Cname,Cteacher,Ccredit)
SC(#Sno,#Cno,Grade)

(3)物理结构设计

软件工程实验项目(三)
软件工程实验项目(三)