你说的都队——项目系统设计与数据库设计

 

软件工程https://edu.cnblogs.com/campus/zswxy/software-engineering-2017-1
作业要求 https://edu.cnblogs.com/campus/zswxy/software-engineering-2017-1/homework/10829
团队名称 你说的都队
作业目标 系统设计与数据库设计
作业正文  https://www.cnblogs.com/nsddd/p/13124368.html
其他参考文献

 https://www.cnblogs.com/wyq178/p/8549715.html

https://blog.csdn.net/fighteryang/article/details/82848505

 

团队项目的预期开发计划时间和分工安排:

日期任务详细说明
6月14日 系统设计和数据库设计完成,博客撰写完成
6月15日-6月17日 完善UI界面,统一开发环境,确定项目规范,分配具体任务
6月18日-6月20日  前端 后端 数据库人员讨论具体方案
6月21日-6月23日 数据库设计,前端组开始进行界面的实现,后端组针对功能模块进行讨论研究,并实现各自负责的模块。
6月24日-6月26日 各自负责的模块开发,给出各组出现的问题,讨论解决方案
6月27日-7月1日 进行各模块的初步单元测试,同时后端组集中讨论组合各模块的方式和注意点,进行集成测试。
7月2日-7月3日 前端交接界面,并进行进一步的完善;后端交接集成的项目,进行进一步的测试,进行前后端的交互,团队集中讨论测试,及进一步的完善。
7月4日-7月5日

进行项目的最后完善,发布项目的正式版本

序号组员姓名在整个项目中的职责在本次任务中的职责本次任务的贡献度
1  马自强 前端开发  系统安全和权限设计 9%
2  易江明  数据库设计  功能模块层次图  10.5%
3  向彩云  界面设计  设计类图 9%
4  刘志  数据库设计 体系结构设计 《数据库设计说明书》博客园编写  12%
5  曾尧  后端开发 代码修改  10.5%
6  李纪荃  测试 文档编写 表结构设计  9%
7  林畅  后端开发 《系统设计说明书》  11%
8  胡金泽  界面设计  完善界面设计  10%
9  段清平  测试 文档编写  系统安全和权限设计  9%
10  王鸿鹄  前端开发

ER分析 

 10%

 

体系结构设计

本系统的设计主要是基于MVC设计模式,M代表模型Model,V代表视图View,C代表控制器Controller。MVC设计模式将系统分为三层,层与层之间又通过一定的模式联系,使数据实体、业务逻辑与呈现视图分离,同时降低耦合性、提高重用性和可维护性。

系统架构运行图:

 

功能模块层次图

系统分为前台和后台管理两大模块,其中前台功能有:用户浏览招领信息、寻物信息、感谢信息、登录注册,用户注册登录后可以发布招领信息、寻物信息、发表感谢信,还可以参与聊天室聊天,这里采用websocket的方式做了一个简单的聊天室,用户可以参与进去进行聊天。查看招领和寻物信息时用户也可以选择认领该物品。在用户中心里用户可以修改自己的基本信息、查看自己发布的信息、登录的日志信息等。后台管理功能有:用户管理(用户添加、编辑、删除、冻结、解冻、重置密码、批量导出到excel、批量从excel导入用户、查看用户登录日志等)、物品管理(招领物品管理、寻物信息管理)、菜单权限信息查看、系统设置(密码修改、日志查看、公告管理、感谢信管理等)

 

设计类图

 

 

 

ER分析

 

根据系统分析的主要实体有:用户(学生和管理员,用系统权限来区分)、招领、寻物、感谢留言、公告、系统日志和系统菜单。各个实体具体的描述属性图如下(实体属性在下图中并没有全部给出,因为属性过多的原因):

1. 用户实体

 

 

 

2. 招领实体

 

 

 

 

3. 寻物实体

 

 

 

 

4. 感谢留言实体

 

 

5. 公告实体

 

 

 

 

6. 系统日志实体

 

 

 

 

7. 系统菜单实体

 

 

 

 

 

 

 

表结构

 

  1. 数据库逻辑设计主要是把数据库概念设计时设计好的基本E-R图转换为与选用DBMS产品所支持的数据模型相符合的逻辑结构。它包括数据项、记录及记录间的联系、安全性和一致性约束等等。导出的逻辑结构是否与概念模式一致,从功能和性能上是否满足用户的要求,要进行模式评价。

    本系统数据库名称为lostandfound,数据库中包括:1)用户表(user2)招领表(pickthings3)寻物表(lostthings4)感谢留言表(expressthanks5)公告表(notice6)系统日志表(systemlog7)系统菜单表(menuitem)。各表数据结构如下:

    1)用户表(user),存储用户信息

    字段名称

    数据类型

    主键

    是否空

    说明

    ID

    bigint(20)

    Y

    N

    用户ID

    UserName

    varchar(20)

    N

    N

    用户名

    Password

    varchar(50)

    N

    N

    密码

    Grade

    varchar(10)

    N

    N

    年级

    Name

    varchar(20)

    N

    Y

    姓名

    NickName

    varchar(20)

    N

    Y

    昵称

    TelPhone

    varchar(12)

    N

    N

    联系电话

    Email

    varchar(30)

    N

    Y

    邮箱

    QQ

    varchar(15)

    N

    Y

    qq

    State

    int(11)

    N

    N

    状态

    CreateTime

    date

    N

    N

    创建时间

    LastLoginTime

    datetime

    N

    Y

    最后一次登录时间

     

    2)招领表(pickthings),存储招领信息

    字段名称

    数据类型

    主键

    是否空

    说明

    ID

    bigint(11)

    Y

    N

    招领ID

    ThingsName

    varchar(30)

    N

    N

    物品名称

    PickPlace

    varchar(30)

    N

    N

    捡到地点

    PickTime

    date

    N

    N

    捡到时间

    ThingsType

    varchar(15)

    N

    N

    物品类型

    ThingsNo

    varchar(10)

    N

    Y

    物品编号

    ThingsImg

    text

    N

    Y

    物品图片

    ThingsDes

    text

    N

    N

    物品描述

    StoragePlace

    text

    N

    N

    暂存地点

    TelPhone

    varchar(30)

    N

    Y

    联系电话

    PublishTime

    datetime

    N

    Y

    发布时间

    Status

    int(11)

    N

    N

    状态

    UserName

    varchar(20)

    N

    N

    用户名

     

    3)寻物(lostthings)存储寻物信息

    字段名称

    数据类型

    主键

    是否空

    说明

    ID

    bigint(11)

    Y

    N

    寻物ID

    ThingsName

    varchar(30)

    N

    N

    物品名称

    LostPlace

    varchar(30)

    N

    N

    丢失地点

    LostTime

    date

    N

    N

    丢失时间

    ThingsType

    varchar(15)

    N

    N

    物品类型

    ThingsNo

    varchar(10)

    N

    Y

    物品编号

    ThingsImg

    text

    N

    Y

    物品图片

    ThingsDes

    text

    N

    N

    物品描述

    PublishTime

    datetime

    N

    Y

    发布时间

    Status

    int(11)

    N

    N

    状态

    UserName

    varchar(20)

    N

    N

    用户名

     

    4)感谢留言(expressthanks)存储感谢留言信息

    字段名称

    数据类型

    主键

    是否空

    说明

    ID

    bigint(20)

    Y

    N

    感谢留言ID

    Title

    varchar(30)

    N

    N

    感谢标题

    Substance

    text

    N

    N

    感谢内容

    Status

    int(11)

    N

    N

    状态

    UserName

    varchar(20)

    N

    N

    感谢人

    LeaveTime

    datetime

    N

    N

    感谢时间

     

    5)公告表(notice),存储系统公告信息

    字段名称

    数据类型

    主键

    是否空

    说明

    ID

    int(11)

    Y

    N

    公告ID

    title

    varchar(50

    N

    Y

    标题

    Substance

    longtext

    N

    N

    公告内容

    Status

    int(11)

    N

    N

    状态

    PublishTime

    datetime

    N

    Y

    发布时间

     

    6)系统日志表(systemlog),存储系统日志比信息

    字段名称

    数据类型

    主键

    是否空

    说明

    ID

    bigint(20)

    Y

    N

    系统日志ID

    Description

    longtext

    N

    N

    描述

    ExceptionCode

    longtext

    N

    N

    异常代码

    Type

    varchar(10)

    N

    Y

    类型

    RequestIp

    varchar(50)

    N

    N

    请求人IP

    ExceptionDetail

    longtext

    N

    N

    异常详细信息

    Method

    longtext

    N

    N

    请求方法

    Params

    longtext

    N

    N

    请求参数

    CreateBy

    longtext

    N

    N

    操作人

    CreateDate

    datetime

    N

    N

    操作时间

     

    7)系统菜单表(menuitem),存储系统菜单信息

    字段名称

    数据类型

    主键

    是否空

    说明

    ID

    int(20)

    Y

    N

    系统菜单ID

    MenuItemName

    varchar(20)

    N

    N

    菜单名称

    MenuItemUrl

    varchar(30)

    N

    Y

    菜单url地址

    ParentId

    varchar(20)

    N

    Y

    父菜单ID

    Status

    int(11)

    N

    N

    状态

    MenuItemDes

    varchar(30)

    N

    Y

    菜单描述

    Authority

    int(11)

    N

    N

    菜单访问权限

    Sort

    int(11)

    N

    Y

    菜单排序

 

系统安全和权限设计

 

1.用户登录和身份认证:每次用户登录系统时,用户必须标识自己的名字和身份,由系统核对,通过审核后提供系统使用权。
2.记录日志:本系统应该能够记录系统运行时发生的所有错误,包括本机错误和网络错误。这些错误便于查找错误的原因。同时日志应该记录用户的关键性操作信息。
3.通过用户权限定义和合法权检查确保只有合法权限的人访问数据库,未经授权的人无法存储或读取数据。

 

本系统有两个管理用户级别,分别拥有不同的管理权限,具体如下:

 

一般用户

系统管理员

用户信息管理

招领信息管理

 

寻物信息管理

 

评论信息管理

 

公告信息管理

 

系统信息管理

 

 

数据库设计说明书地址  https://github.com/drinkmorehotshui/Team

系统设计说明书地址  https://github.com/drinkmorehotshui/Team

 

 

 

 

 

 

posted on 2020-06-14 18:28  你说的都队  阅读(409)  评论(0编辑  收藏  举报