深圳建网站_制作官网_合川网站建设_商丘网站制作
系统设计 - 系统架构设计
软件系统的功能是多样的,在软件设计的过程中分层进行的思维是极为重要的,这样的思维可以在软件开发的过程中很大程度降低层之间的耦合度,这一点是符合“低耦合、高内聚”的软件设计原则的。因此,可以把高校考勤小程序划分为显示层、数据层和业务层。在系统的架构中,为了方便上层调用完成相应的功能,每个层次都会为其对应的上层提供相应的接口。
系统架构图如下所示。
图4-1系统架构图
1.显示层
此层主要是为用户提供计算机交互的UI界面,它根据用户的相应操作来提供相应的逻辑处理。
2.数据库层
数据库不仅是对软件所涉及的实体映射,而且也是系统读取和处理数据的关键所在。本系统的整个操作流程设计都是围绕着数据库里面的数据所展开的。
3.业务层
主要是通过系统的业务层中的业务逻辑来实现业务需求,依据相应的需求,剖析实现的策略和对应的业务逻辑,其优劣,在很大程度上决定了软件的质量,所以,整个系统成败的主要原因在于业务的逻辑实现。
-
- 功能模块设计
通过软件的需求分析已经获得了系统的基本功能需求。根据各大功能模块的不同,将系统分为各种功能大块。系统功能结构如下图所示。
图4-2系统功能结构图
注册/登录
游客(未进行注册或登陆的用户)可以浏览搜索校园资讯。用户注册首先需要进行表单验证,来验证用户名和手机号码是否合法,然后验证用户名和手机号是否已经存在,验证通过即可注册。
注册成功后,用户可以通过输入用户名来登录系统,输入密码后进行验证。登录成功后,用户可以使用考勤、签到、个人资料修改、个人信息管理等功能。
个人信息管理
用户登录系统后,在账户设置中,可以修改昵称、头像、手机号、登陆密码、收货地址等个人基本信息。
考勤信息
系统首页展示了用户在系统完成考勤记录,系统通过模糊查询搜索到用户的考勤记录。
查看个人信息详情
用户在查看我的个人信息列表时,可以点击个人资料,人后对个人资料进行修改保存等。
考勤打卡列表
管理员可以在“考勤打卡列表”中展示用户考勤打卡信息记录,包含考勤打卡时间,考勤打卡属性以及类目等考勤打卡信息。管理员可以对考勤打卡信息进行搜索。
考勤信息添加
添加考勤打卡首先需要输入教师考勤打卡基本信息,如考勤打卡内容、教师职位、教师姓名等;然后需要编辑考勤打卡信息详情,如考勤打卡具体时间,考勤打卡内容等。管理员也可以删除已添加的考勤打卡。
-
- 数据库设计
- 概念模型设计
概念设计包括实体和联系两部分,如该系统中,用户是一个实体,其属性包括用户 ID 标识、用户名、密码、电话、地址等属性。联系是指实体之间有意义的关联,包括一对一、一对多、多对多三种类型。
系统E-R图如下所示。
图4-3系统E-R图
在图中,用户考勤信息,关系为1:N,管理员审核用户考勤,关系为1:N,用户和课程的关系为1:1,用户和点名签到的关系为1:N。
-
-
- 数据库逻辑设计
针对系统的实体和属性,结合数据设计思想,对系统的逻辑设计的内容进行如下描述。
考勤信息(考勤编号、打卡时间、考勤信息)。
课程管理(课程管理编号、课程名称、类型、上课地点、上课时间、授课老师、课程介绍)。
校园资讯管理(校园资讯编号、标题、内容)。
-
-
- 数据库表设计
数据库表是设计和实现系统的一个重要基础。以下列出了该购物系统几个重要的数据库表。
名称 | 类型 | 长度 | 不是null | 主键 | 注释 |
student_id | int | 11 | 是 | 是 | 学生ID |
student_number | varchar | 64 | 是 | 否 | 学号 |
gender | varchar | 64 | 否 | 否 | 性别 |
age | varchar | 64 | 否 | 否 | 年龄 |
examine_state | varchar | 16 | 是 | 否 | 审核状态 |
recommend | int | 11 | 是 | 否 | 智能推荐 |
user_id | int | 11 | 是 | 否 | 用户ID |
create_time | datetime | 0 | 是 | 否 | 创建时间 |
update_time | timestamp | 0 | 是 | 否 | 更新时间 |
名称 | 类型 | 长度 | 不是null | 主键 | 注释 |
teacher_id | int | 11 | 是 | 是 | 教师ID |
job_number | varchar | 64 | 是 | 否 | 工号 |
gender | varchar | 64 | 否 | 否 | 性别 |
age | varchar | 64 | 否 | 否 | 年龄 |
examine_state | varchar | 16 | 是 | 否 | 审核状态 |
recommend | int | 11 | 是 | 否 | 智能推荐 |
user_id | int | 11 | 是 | 否 | 用户ID |
create_time | datetime | 0 | 是 | 否 | 创建时间 |
update_time | timestamp | 0 | 是 | 否 | 更新时间 |
名称 | 类型 | 长度 | 不是null | 主键 | 注释 |
roll_call_id | int | 11 | 是 | 是 | 点名签到ID |
course_name | varchar | 64 | 否 | 否 | 课程名称 |
class_time | varchar | 64 | 否 | 否 | 上课时间 |
class_place | varchar | 64 | 否 | 否 | 上课地点 |
instructor | int | 11 | 否 | 否 | 授课教师 |
check_in_time_limit | varchar | 64 | 否 | 否 | 签到限时 |
hits | int | 11 | 是 | 否 | 点击数 |
recommend | int | 11 | 是 | 否 | 智能推荐 |
timer_title | varchar | 64 | 否 | 否 | 计时器标题 |
timing_start_time | datetime | 0 | 否 | 否 | 计时开始时间 |
timing_end_time | datetime | 0 | 否 | 否 | 计时结束时间 |
create_time | datetime | 0 | 是 | 否 | 创建时间 |
update_time | timestamp | 0 | 是 | 否 | 更新时间 |
名称 | 类型 | 长度 | 不是null | 主键 | 注释 |
my_course_id | int | 11 | 是 | 是 | 我的课程ID |
course_name | varchar | 64 | 否 | 否 | 课程名称 |
course_type | varchar | 64 | 否 | 否 | 课程类型 |
course_cycle | varchar | 64 | 否 | 否 | 课程周期 |
class_place | varchar | 64 | 否 | 否 | 上课地点 |
class_time | varchar | 64 | 否 | 否 | 上课时间 |
instructor | int | 11 | 否 | 否 | 授课教师 |
student_number | int | 11 | 否 | 否 | 学号 |
recommend | int | 11 | 是 | 否 | 智能推荐 |
create_time | datetime | 0 | 是 | 否 | 创建时间 |
update_time | timestamp | 0 | 是 | 否 | 更新时间 |
名称 | 类型 | 长度 | 不是null | 主键 | 注释 |
course_information_id | int | 11 | 是 | 是 | 课程信息ID |
course_name | varchar | 64 | 否 | 否 | 课程名称 |
course_type | varchar | 64 | 否 | 否 | 课程类型 |
course_cycle | varchar | 64 | 否 | 否 | 课程周期 |
class_place | varchar | 64 | 否 | 否 | 上课地点 |
class_time | varchar | 64 | 否 | 否 | 上课时间 |
instructor | int | 11 | 否 | 否 | 授课教师 |
course_introduction | text | 0 | 否 | 否 | 课程介绍 |
hits | int | 11 | 是 | 否 | 点击数 |
recommend | int | 11 | 是 | 否 | 智能推荐 |
create_time | datetime | 0 | 是 | 否 | 创建时间 |
update_time | timestamp | 0 | 是 | 否 | 更新时间 |
名称 | 类型 | 长度 | 不是null | 主键 | 注释 |
course_category_id | int | 11 | 是 | 是 | 课程类别ID |
course_type | varchar | 64 | 否 | 否 | 课程类型 |
recommend | int | 11 | 是 | 否 | 智能推荐 |
create_time | datetime | 0 | 是 | 否 | 创建时间 |
update_time | timestamp | 0 | 是 | 否 | 更新时间 |
名称 | 类型 | 长度 | 不是null | 主键 | 注释 |
attendance_information_id | int | 11 | 是 | 是 | 考勤信息ID |
course_name | varchar | 64 | 否 | 否 | 课程名称 |
class_time | varchar | 64 | 否 | 否 | 上课时间 |
class_place | varchar | 64 | 否 | 否 | 上课地点 |
instructor | int | 11 | 否 | 否 | 授课教师 |
check_in_date | date | 0 | 否 | 否 | 签到日期 |
check_in_status | varchar | 64 | 否 | 否 | 签到状态 |
check_in_student | int | 11 | 否 | 否 | 签到学生 |
recommend | int | 11 | 是 | 否 | 智能推荐 |
create_time | datetime | 0 | 是 | 否 | 创建时间 |
update_time | timestamp | 0 | 是 | 否 | 更新时间 |
">