第4章 系统设计

4.1 系统设计的原则

在系统设计过程中,也需要遵循相应的设计原则,这些设计原则可以帮助设计者在短时间内设计出符合设计规范的设计方案。设计原则主要有可靠性,安全性,可定制化,可扩展性,可维护性,可升级性以及客户体验等原则。下面就对这些原则进行简要阐述。

可靠性:一个软件是否可靠决定了其是否被用户使用,设计不可靠的软件,用户很容易就遗弃;

安全性:程序软件承担了信息的保存与管理等事务,安全性不足的软件会导致使用者承担巨大的损失;所以系统安全也是需要考虑进入的;

可定制化:市场环境从来都不是一直固定不变,面对客户群体的改变,以及使用环境的改变,市场需求的改变等因素,程序软件也要易于调整以适应各种变化;

可扩展性:程序软件在运行使用期间,也需要及时引进当下的新技术来进行系统优化,主要就是在系统功能层面,系统性能层面上进行相应的扩展,只有这样才能让系统在实际生活中继续占有市场;

可维护性:程序软件的维护需要一定量的资金,不管是排除现有程序错误,还是变更软件的现有需求,都需要在软件技术上投入一定资金,所以易于维护的软件程序就可以降低技术层面的资金消耗;

可升级性:程序软件的投入使用,会面临用户数量增多的情况,用户对软件的使用率也会提升,所以系统面临这种情况,仍然需要通过升级保持性能的合理,这样才能够适应市场;

客户体验:设计出来的程序软件在界面上不能够太复杂,要遵循界面设计的原理设计出简单,方便操作的功能操作界面,让用户易于接受软件,并乐于使用软件提供的功能。

4.2 功能结构设计

在管理员功能模块确定下来的基础上,对管理员各个功能进行设计,确定管理员功能的详细模块。绘制的管理员功能结构见下图。

图4-2 管理员功能结构图

4.3 数据库设计

与功能结构设计一样,数据库设计也是程序开发不可避免的设计环节,数据库设计最主要的目的就是帮助运行程序存储相应的数据信息。数据库设计包含的内容有数据表结构的设计,也包含了数据库E-R图的设计。

4.3.1 数据库E-R图

在绘制E-R图之前,先要找出数据库的实体,明确各个实体具有的属性,比如用户信息这个实体,它具备的属性包括了用户的姓名属性,用户的密码属性,用户的创建时间属性等,所以明确了用户这个实体,以及用户实体具备的属性之后,就需要根据这些信息绘制用户实体对应的实体属性图了。绘制软件选用当下认可度高,使用范围广,操作便利的微软旗下的Visio工具。

(1)管理员实体属性图通过Visio工具绘制,绘制结果展示如下:

图4-4 管理员实体属性图

(2)学生实体属性图通过Visio工具绘制,绘制结果展示如下:

图4-5 学生实体属性图

(3)公告实体属性图通过Visio工具绘制,绘制结果展示如下:

图4-6 公告实体属性图

4.3.2 数据库表结构

在进行这部分设计之前,需要明白和掌握数据类型以及各个数据类型的长度范围等知识,因为在一张具体的数据表中,为了方便理解,这里就举个简单的例子。比如用户信息表,这个表格的字段就是用户这个实体具备的属性,这时就需要对字段进行数据类型,以及字段长度的设置,也要设置一个主键来作为用户信息表的唯一标识。这些都是数据库表结构设计需要完成的内容。根据基于微信小程序的生签到系统的功能设计以及数据库设计要求,展示该系统的数据表结构。

1通知公告表

序号

列名

数据类型

说明

允许空

1

Id

Int

id

否

2

addtime

Date

创建时间

是

3

title

String

标题

是

4

introduction

String

简介

是

5

picture

String

图片

是

6

content

String

内容

是

2学生表

序号

列名

数据类型

说明

允许空

1

Id

Int

id

否

2

addtime

Date

创建时间

是

3

xueshengzhanghao

String

学生账号

是

4

xueshengxingming

String

学生姓名

是

5

mima

String

密码

是

6

xingbie

String

性别

是

7

touxiang

String

头像

是

8

nianling

Integer

年龄

是

9

dianhuahaoma

String

电话号码

是

10

banji

String

班级

是

11

zhuanye

String

专业

是

3班课信息表

序号

列名

数据类型

说明

允许空

1

Id

Int

id

否

2

addtime

Date

创建时间

是

3

bankebianhao

String

班课编号

是

4

kechengmingcheng

String

课程名称

是

5

tupian

String

图片

是

6

shangkeshijian

String

上课时间

是

7

shangkedidian

String

上课地点

是

8

banji

String

班级

是

9

zhuanye

String

专业

是

10

jiaoshigonghao

String

教师工号

是

11

jiaoshixingming

String

教师姓名

是

12

xueshengzhanghao

String

学生账号

是

13

xueshengxingming

String

学生姓名

是

4加入班课表

序号

列名

数据类型

说明

允许空

1

Id

Int

id

否

2

addtime

Date

创建时间

是

3

jiarubianhao

String

加入编号

是

4

kechengmingcheng

String

课程名称

是

5

tupian

String

图片

是

6

jiarushijian

date

加入时间

是

7

xueshengzhanghao

String

学生账号

是

8

xueshengxingming

String

学生姓名

是

9

jiaoshigonghao

String

教师工号

是

10

jiaoshixingming

String

教师姓名

是

11

userid

Integer

用户id

是

5教师表

序号

列名

数据类型

说明

允许空

1

Id

Int

id

否

2

addtime

Date

创建时间

是

3

jiaoshigonghao

String

教师工号

是

4

jiaoshixingming

String

教师姓名

是

5

mima

String

密码

是

6

xingbie

String

性别

是

7

touxiang

String

头像

是

8

dianhuahaoma

String

电话号码

是

6学生用户表

序号

列名

数据类型

说明

允许空

1

Id

Int

id

否

2

username

String

用户名

是

3

password

String

密码

是

4

role

String

角色

是

5

addtime

Date

新增时间

是

7token表

序号

列名

数据类型

说明

允许空

1

Id

Int

id

否

2

userid

Integer

用户id

是

3

username

String

用户名

是

4

tablename

String

表名

是

5

role

String

角色

是

6

token

String

密码

是

7

addtime

Date

新增时间

是

8

expiratedtime

Date

过期时间

是

8审批信息表

序号

列名

数据类型

说明

允许空

1

Id

Int

id

否

2

addtime

Date

创建时间

是

3

shenpibianhao

String

审批编号

是

4

biaoti

String

标题

是

5

tupian

String

图片

是

6

shenpizhuangtai

String

审批状态

是

7

shenpishijian

date

审批时间

是

8

jiaoshigonghao

String

教师工号

是

9

jiaoshixingming

String

教师姓名

是

10

xueshengzhanghao

String

学生账号

是

11

xueshengxingming

String

学生姓名

是

12

crossuserid

Integer

跨表用户id

是

13

crossrefid

Integer

跨表主键id

是

14

userid

Integer

用户id

是

9请假信息表

序号

列名

数据类型

说明

允许空

1

Id

Int

id

否

2

addtime

Date

创建时间

是

3

qingjiabianhao

String

请假编号

是

4

biaoti

String

标题

是

5

qingjiayuanyin

String

请假原因

是

6

qingjiashizhang

String

请假时长

是

7

tupian

String

图片

是

8

qingjiashijian

date

请假时间

是

9

xueshengzhanghao

String

学生账号

是

10

xueshengxingming

String

学生姓名

是

11

jiaoshigonghao

String

教师工号

是

12

jiaoshixingming

String

教师姓名

是

13

userid

Integer

用户id

是

10签到表

序号

列名

数据类型

说明

允许空

1

Id

Int

id

否

2

addtime

Date

创建时间

是

3

banji

String

班级

是

4

qiandaodidian

String

签到地点

是

5

qiandaoshijian

String

签到时间

是

6

tupian

String

图片

是

7

fabushijian

date

发布时间

是

8

jiaoshigonghao

String

教师工号

是

9

jiaoshixingming

String

教师姓名

是

10

xueshengzhanghao

String

学生账号

是

11

xueshengxingming

String

学生姓名

是

12

userid

Integer

用户id

是

11销假信息表

序号

列名

数据类型

说明

允许空

1

Id

Int

id

否

2

addtime

Date

创建时间

是

3

xiaojiabianhao

String

销假编号

是

4

xiaojiabiaoti

String

销假标题

是

5

tupian

String

图片

是

6

zhuangtai

String

状态

是

7

guixiaoshijian

datetime

归校时间

是

8

xiaojiashijian

date

销假时间

是

9

xueshengzhanghao

String

学生账号

是

10

xueshengxingming

String

学生姓名

是

11

jiaoshigonghao

String

教师工号

是

12

jiaoshixingming

String

教师姓名

是

13

crossuserid

Integer

跨表用户id

是

14

crossrefid

Integer

跨表主键id

是

15

userid

Integer

用户id

是

12学生签到表

序号

列名

数据类型

说明

允许空

1

Id

Int

id

否

2

addtime

Date

创建时间

是

3

qiandaobianhao

String

签到编号

是

4

qiandaoleixing

String

签到类型

是

5

tupian

String

图片

是

6

shijian

date

时间

是

7

xueshengzhanghao

String

学生账号

是

8

xueshengxingming

String

学生姓名

是

9

jiaoshigonghao

String

教师工号

是

10

jiaoshixingming

String

教师姓名

是

11

userid

Integer

用户id

是


第5章 系统实现

系统实现这个章节的内容主要还是展示系统的功能界面设计效果,在实现系统基本功能,比如修改,比如添加,比如删除等管理功能的同时,也显示出系统各个功能的界面实现效果,该部分内容一方面与前面提到的系统分析,系统设计的内容相呼应,另一方面也是一个实际成果的展示。

5.1管理员后台功能实现

5.1.1 学生管理

管理员可以对学生信息进行添加,修改,删除,查询操作。

图5-1 学生信息管理页面

5.1.2 教师信息管理

此页面管理员可以对教师信息进行添加,修改,删除,查询操作。

图5-2 教师信息管理页面

5.1.3 公告信息管理

此页面管理员可以对公告信息进行添加,修改,删除,查询操作。

图5-3 公告信息页面

5.1.4 签到信息管理

此页面管理员可以对签到信息进行修改,删除,查询操作。

图5-4 签到信息页面

5.2 微信小程序功能实现

5.2.1 首页

微信小程序输入正确的账号密码后就会默认进入首页显示界面。首页主要有轮播图,班级信息,以及下面的导航为主要组成部分。

图5-5 首页

5.2.2 公告信息展示

用户可以在公告展示界面对公告进行搜索和查看。

图5-6 公告展示信息页面

5.2.3 班课信息

学生登录后可以查看班课信息,可以选择立即加入。

图5-7 班课信息展示页面

5.2.4 我的

我的里面主要是可以进行退出,点击小齿轮就可以选择退出当前账户,也可以点击其他信息进行操作。

图5-8 我的页面

更多推荐