第六次团队作业:项目系统设计与数据库设计

这个作业属于哪个课程 2018级计算机和综合实验班
这个作业要求在哪里 第六次团队作业:项目系统设计与数据库设计
这个作业的目标 完成系统设计说明书
完成数据库设计说明书
完成答辩PPT
预期开发计划规划
作业正文 见下文
其他参考文献 见文末参考文献
团队的github仓库链接 Github

一、系统设计

系统设计说明书

二、数据库设计

数据库设计说明书

三、预期开发计划

3.1 预期开发计划时间规划

时间 任务
4.28~5.9 1.编写系统设计说明书
2.编写数据库设计说明书
3.制作答辩PPT
4.编写blog
5.答辩
5.10~5.17 1.学习制作小程序有关知识
2.前端后端同时进行初步开发
5.18~5.25 1.前端后端同时进行开发
2.完成简易版本小程序
5.26~6.2 小程序调试及完善
6.3~6.10 1.页面优化
2.bug查找修复

3.2 预期开发计划组员分工

成员 分工 负责内容
姜睿喆 数据预处理
前端
前后端衔接
1.书籍数据预处理
2.前端代码编写
3.前后端衔接
朱嘉欣 前端 1.页面设计及页面布局
2.前端代码编写
陈可鑫 前端 1.协助页面设计及页面布局
2.前端代码编写
陈伟超 前后端衔接
后端
1.搭建服务器及数据库
2.后端代码编写
3.前后端衔接
江政 后端
测试
1.后端代码编写
2.项目测试
徐鑫泽 后端
测试
1.后端代码编写
2.项目测试

五、体系结构设计

5.1 设计思路

客户服务器架构适用于大部分系统,由于平常程序课经常使用,所以比较熟悉。客户服务器架构保证了系统调用的可靠性,通过分层保证模块分离,便于开发和后期更新、维护。

5.2 技术架构

将我们的应用分为两个逻辑独立的部分,即客户部分和服务器部分,不同的部分完成不同的功能。

5.3 具体实现

5.3.1 客户端:

包含前端和展示层,负责以可视化的方式提供给用户信息,并提供用户输入。

5.3.2 服务器端:

  • 接口层:

    为数据管理层抽象出接口方法,并提供给业务逻辑层进行调用,保证其完成客户端的需求。

  • 业务逻辑层:

    接收数据管理层的数据,通过实现接口层的方法,实现大部分对数据的具体操作方法,最后提供给客户端。

  • 数据管理层:

    负责实时更新数据库,并将原始数据进行提取和加工,提供给业务逻辑层。

5.4 系统架构图

系统架构图

六、功能模块层次图

6.1 设计思路

我们准备做一个图书馆系统便于师生查找图书馆里的书籍。

用户登录模块是登录需要的,根据学生的学号以及教师的工号进行登陆验证。只有登录之后才能使用小程序其他功能。

图书搜索模块用于搜索图书,用户可以手动选择输入的关键字为书名、作者或ISBN,根据输入的信息对书籍信息进行检索。查找失败会有对应报错信息,查找成功后会返回书籍的相关信息,如书名、作者、ISBN、索书号等。在初期未使用实时数据库时,图书状态信息更新会有一定的延迟。

6.2

功能模块层次图

七、设计类图

7.1 设计思路

根据表结构设计进绘制类图,以用户的基本信息、图书搜索并访问数据库、获取用户基本信息并登录为主来进行设计。

7.2

类图

八、ER分析

8.1 设计思路

根据所准备制作的小程序进行ER分析,考虑到目前功能仅支持登录和查询,可以判断出用户对图书信息的查询为一对多。

8.2

ER分析图

九、表结构设计

9.1 设计思路

建立三张表:学生表、教师表、图书表。学生表和教师表用于用户登录验证,并绑定微信号。图书表存储图书的相关信息,用于图书搜索功能,通过表内信息进行匹配。

9.2

学生表

学生表

教师表

教师表

图书表

图书表

十、系统安全和权限设计

10.1 设计思路

  1. 图书馆各类服务器中开设的账户和口令归特定用户所有,信息技术部负责队用户口令保密,不向任何其他个人提供有关信息。

  2. 信息技术部负责网络系统的日常维护工作,任何人未经信息技术部统一不得擅自安装、拆卸和改变网络设备。

  3. 数字签名是保护数据完整性和抗否认性的主要手段,目前主要通过HASH、MD5等算法提取文件的特征信息,并通过非对称算法如RSA对特征信息加密来完成数字签名。根据数字签名机制,可以对文件签发电子印章。

10.2

系统安全与权限设计

十一、针对需求分析作业的改进

11.1 Q&A

Q1:对于小程序开发中书籍信息如何获取?对借阅系统的编写该如何进行实现?

A1:书籍的信息将通过图书馆管理员对现在的数据库数据进行导出。在于图书馆管理员进行沟通以及小组讨论后,我们暂时不准备做图书馆的借阅系统,这涉及到实时数据库的连接,暂时难以实现。

Q2:对于数据库里的数据信息,如果不使用实时的数据库是否失去了意义?

A2:组长与技术部张老师进行过沟通,我们认为可以通过导出图书馆数据,再导入到我们的数据库里,进行定期更新,比如几天一次,或者在图书馆购入新的图书后进行更新都可以实现。在目前不做图书借阅功能的情况下,书籍的查询对于数据的实时性要求不高,我们认为以上方法足以满足日常查找书籍的需要。

11.2 改进部分及过程

1.根据老师的问题,我们与图书馆管理员和技术部老师进行了沟通,为需求报告提供了修改意见,并会根据之后进度进行合理调整。

十二、此次作业任务分配

12.1 工作流程

任务分配泳道图
第六次团队作业泳道图.jpg

12.2 成员分工及贡献度比例

学号 工作内容 贡献度
211804117 1.ER分析
2.系统设计说明书
18
211804203 1.系统安全和权限设计 10
211806107 1.体系结构设计
2.数据库设计说明书
20
211806199 1.答辩PPT制作 14
211808579 1.设计类图
2.系统设计说明书
18
211814315 1.功能模块层次设计
2.表结构设计
3.说明书审核整理
4.blog编写
5.GitHub管理
20

Github团队仓库链接

Github

参考文献

UML之类图

UML类图详解

详解设计模式六大原则

数据库表结构设计的几条准则

数据库表设计(一对多、多对多)

常见web攻击方法及防御手段总结

用户密码加密

JavaWeb项目前后端分离

RBAC用户、角色、权限、组设计方案

posted @ 2021-05-09 15:29  Team6  阅读(132)  评论(0编辑  收藏  举报