Outfits——项目系统设计与数据库设计
作者:互联网
这个作业属于哪个课程 | 2021春软件工程实践W班(福州大学) |
---|---|
这个作业要求在哪里 | 团队作业4 |
这个作业的目标 | 将项目的设计落地,继续完善设计类图,并在正式开始开发之前设计好系统和数据库、制定好计划和分工 |
其它参考文献 |
目录
开发计划时间安排
前端里程碑 | 具体事项 | 时间 |
---|---|---|
拟定接口内容 | 和后端开发讨论接口内容、每个接口中的具体字段 | 4.20 |
搭建APP开发框架 | 确定要使用的开发框架、开源库,建立好基本的工具类,搭建好空APP框架 | 4.24 |
完成登陆注册界面 | 完成登录、注册、修改密码页 | 4.25 ~ 4.26 |
完成衣柜部分界面 | 包含衣柜主页、添加衣服页、修改衣服页面、切换视图页等 | 4.27 ~ 4.30 |
完成搭配部分界面 | 包含搭配主页、添加搭配、推荐搭配的页面 | 5.1 ~ 5.3 |
完成社区部分界面 | 包含社区主页、搜索页面、博客详情页、发布博客页等 | 5.1 ~ 5.4 |
完成我的部分界面 | 包含我的主页、修改信息页、关注/粉丝列表页、用户个人信息页 | 5.1 ~ 5.4 |
优化界面逻辑 | 进一步优化app的UI界面,优化各界面跳转交互 | 5.4 ~ 5.10 |
后端里程碑 | 具体事项 | 时间 |
---|---|---|
数据库设计 | 完成数据库表的建立以及数据库文档的编写 | 4.18 ~ 4.19 |
编写后端接口文档 | 讨论后端所需接口并编写接口文档 | 4.20 |
完成系统设计说明书的编写 | 分为系统分析、详细设计与安全权限设计三个模块编写 | 4.21 ~ 4.23 |
数据库测试 | 数据库的性能、合理性的测试 | 4.24 |
完成登陆注册接口的编写 | 完成登录、注册、忘记密码、发送验证码接口的编码 | 4.25 ~ 4.26 |
温度推荐算法的实现 | 建立气候分析模型,由每日气候特点计算出适宜的穿衣等级,从而给出推荐 | 4.25 ~ 4.28 |
完成衣柜部分接口的编写 | 完成导入衣物、修改衣物、组织抠图接口、删除衣物、获得所有类别下的衣物接口的编码 | 4.27 ~ 4.30 |
抠图算法的实现 | 比照论文构建模型,实现抠图算法 | 4.28 ~ 5.4 |
喜好推荐算法的实现 | 采用分析本地搭配和收藏的搭配来建立用户喜好模型 | 4.29 ~ 5.2 |
完成搭配部分接口的编写 | 完成添加搭配、删除搭配、获得所有场合下的搭配接口的编码 | 5.1 ~ 5.3 |
完成社区部分接口的编写 | 完成获得所有博客、获得该用户关注人的博客、搜索博客、发布博客接口的编码 | 5.1 ~ 5.4 |
完成我的部分接口的编写 | 完成修改个人信息、查看用户收藏的所有博客、查看用户所有关注者、查看所有粉丝接口的编码 | 5.1 ~ 5.4 |
算法接口 | 抠图算法、推荐算法、算法优化 | 5.4 ~ 5.5 |
接口测试和改进 | 与算法端建立连接后进行测试和改进 | 5.6 |
算法性能测评和微调 | 算法性能测评和微调 | 5.7 |
开发计划分工安排
前端开发内容 | 开发者 |
---|---|
拟定接口内容 | 凌铧钦 |
搭建APP开发框架 | 凌铧钦 |
完成登陆注册界面 | 凌铧钦 |
完成衣柜部分界面 | 凌铧钦 |
- 衣柜主页 | 凌铧钦 |
- 添加衣服页 | 凌铧钦 |
- 修改衣服页 | 凌铧钦 |
- 切换视图页 | 凌铧钦 |
完成搭配部分界面 | 凌铧钦 |
- 搭配主页 | 凌铧钦 |
- 添加搭配页 | 凌铧钦 |
- 推荐搭配页 | 凌铧钦 |
完成社区部分界面 | 林沧海、陈雨虹 |
- 社区主页 | 林沧海 |
- 搜索帖子页 | 林沧海 |
- 博客详情页 | 林沧海 |
- 发布博客页 | 陈雨虹 |
完成我的部分界面 | 陈雨虹、张海浪、张吴晗 |
- 我的主页 | 陈雨虹 |
- 修改信息页 | 张吴晗 |
- 关注/粉丝列表页 | 陈雨虹 |
- 用户个人信息页 | 张海浪 |
优化界面逻辑 | 凌铧钦 |
后端开发内容 | 开发者 |
---|---|
数据库设计 | 蔡瑞金、林龙星 |
编写后端接口文档 | 吴晗杰、蔡瑞金 |
完成系统设计说明书的编写 | 蔡瑞金、邱梓洛 |
数据库测试 | 林子鹏 |
完成登陆注册接口的编写 | |
- 用户登录 | 蔡瑞金 |
- 用户注册 | 蔡瑞金 |
- 忘记密码 | 林子鹏 |
- 发送验证码 | 蔡瑞金 |
完成衣柜部分接口的编写 | |
- 获得所有类别下的衣物 | 吴晗杰 |
- 导入衣物 | 吴晗杰 |
- 组织抠图接口 | 吴晗杰 |
- 删除衣物 | 吴晗杰 |
- 修改衣物 | 吴晗杰 |
完成搭配部分接口的编写 | |
- 添加搭配 | 蔡瑞金 |
- 删除搭配 | 蔡瑞金 |
- 获得所有场合下的搭配 | 蔡瑞金 |
完成社区部分接口的编写 | |
- 获得所有博客 | 林龙星 |
- 获得该用户关注人的博客 | 林龙星 |
- 搜索博客 | 林龙星 |
- 发布博客接口的编码 | 林龙星 |
完成我的部分接口的编写 | |
- 修改个人信息 | 林龙星 |
- 查看用户收藏的所有博客 | 林龙星 |
- 查看用户所有关注者 | 林龙星 |
- 查看所有粉丝 | 林子鹏 |
算法实现 | |
- 抠图算法 | 吴晗杰、邱梓洛 |
- 喜好推荐算法(协同过滤) | 林子鹏、邱梓洛 |
- 天气推荐算法 | 林子鹏、邱梓洛 |
- 算法性能优化 | 林子鹏、邱梓洛 |
算法接口 | |
- 抠图算法 | 吴晗杰、林子鹏、邱梓洛 |
- 推荐算法(协同过滤) | 林子鹏、邱梓洛 |
- 算法性能优化 | 林子鹏、邱梓洛 |
体系结构设计
功能模块层次图
- 将功能细分为上图五个模块,逐层分配。详情可见系统设计说明书。
ER分析
总体ER图
- 区分为四个板块 下文详细说明
我的与社区板块ER
- 用户有账号、密码、昵称、性别、头像、简介这六个字段。博客有文章、图片、标题和发布时间这四个字段。
- 用户与用户的关注关联是多对多的。
- 一个用户可以发布多个博客。
- 用户与博客的收藏关联是多对多的。
衣柜与搭配板块ER
- 一个用户可以上传多件衣服,管理多个搭配,管理多个场合。
- 一个场合对应多个搭配。
- 搭配和衣服是多对多的关系。
- 一个衣物属于一个子类别。
- 一个类别下分多个子类别。
- 一个衣物属于一个类别。
表结构设计
数据库表-用户部分
数据库表-博客部分
数据库表-衣物部分
数据库表-搭配部分
设计类图
类图一
类图二
系统安全和权限设计
系统安全
- 用户只能通过给定的外部接口操作数据库:外部接口向内部接口传递参数,然后进行预编译sql语句后才能操作数据库,这从根本上杜绝了用户直接操作数据库的可能。
同时,系统对用户发出的访问请求进行身份和授权认证,具有合法权限的用户才能进入系统操作环境,对数据库进行权限范围内的访问;同时将认证及访问情况记录在日志中,便于日志审计。 - 对用户的密码采用 MD5 加密后的散列值进行存储,一定程度上保护了用户密码信息。
- 后台设置拦截器防止同一IP在短时间内进行大量的恶意请求,造成服务器资源紧张,瘫痪的现象。
- 后端设置过滤机制,使用过滤器对没有注册登录用户的请求进行拦截,不予放行,防止非法用户恶意操作,只有经过常规途径注册并登录的用户才能使用系统
权限设计
- Android端与数据库部署再同一台服务器上,只有Android端有权对数据进行访问和进行数据的存取。
- 用户发布的博客只有本账号才有修改删除权限,其他用户只有访问权限。
- 用户信息只有本账号才有修改权限,衣物信息有修改删除增加权限。
健壮性
- 当参数错误时,系统会判断错误信息,然后返回状态码400.;当未找到资源,请求的路径错误时,会返回状态码404;如果系统接收请求但拒绝处理,就会返回状态码403;要是系统内部出错,会返回状态码500。即使出现错误,系统还是会继续进行,保证系统的健壮性。
Q&A
- 1.推荐穿搭时怎么识别哪些搭配被用户点击选取?
- 在搭配类中添加一个“是否需添加到搭配列表”属性,这样前端传值给后端以后,后端即可判断哪些搭配需要与该用户关联。
- 2.场合的方法?
- 由于将新建场合、删除场合方法放在搭配列表里破坏了封装性,所以应将这两个方法放置在场合类中。
-
- 推荐穿搭在类图中如何体现?
本次工作流程、分工及贡献度
本次工作流程
我们小组在上次答辩结束后开了一次全体总结大会,分析了之前在团队工作中遇到的问题,并试图寻找解决办法,故此次团队作业是我们小组一次新的尝试。
- 明确提交材料
- 数据库设计说明书
- 系统设计说明书
- 博客
- PPT
- 评审表
- 明确负责人,经由负责人制定标准,由负责人对接内部成员和组长
- 数据库设计说明书 负责人:蔡瑞金
- 系统设计说明书 负责人:凌铧钦
- 博客和PPT 负责人:陈雨虹
- 负责人指定标准后和组长协商工作流程,开全体会议发布任务
- 明确数据库设计说明书要在系统设计说明书前完成,明确任务完成时间线
- 数据库设计说明书 4.20 初版完成
- 系统设计说明书 4.22 初版完成
- 博客撰写 4.23
- PPT绘制 4.23
- 4.22晚开会:
- 数据库和系统设计说明书的一部分问题的提出与修改
- 数据库表的结构的讲解
- 系统设计说明书功能模块的讲解
- 4.23博客制作、PPT制作、说明书返工修改(系统说明书大幅修改)
- 4.24博客制作、PPT制作、贡献度计算
分工及贡献度
-
团队分工会议组织 陈雨虹(负责)
-
团队任务分配和组长职责履行 陈雨虹 2
-
数据库设计说明书 蔡瑞金(负责)
- 数据库说明书组长职责履行 蔡瑞金 3 100
- 数据库说明书撰写
- 数据库设计框架撰写 蔡瑞金 3 100
- 初版说明书撰写 蔡瑞金 2 90
- ER图绘制 邱梓洛 3 90 林龙星 4 90 林子鹏 1 100
- 数据库设计 蔡瑞金 2 90 林龙星 3 90 林子鹏 3 90 吴晗杰 2 90
- 说明书数据库表格填充 邱梓洛 3 100
- 数据库修改 林子鹏 2 100 吴晗杰 2 100 蔡瑞金 2 100
- 说明书修改 林龙星 5 100 林子鹏 3 100 吴晗杰 2 100 邱梓洛 2 100 蔡瑞金 2 100
-
系统设计说明书 凌铧钦(负责)
- 系统设计说明书组长职责履行 凌铧钦 3 90
- 系统设计说明书框架撰写 凌铧钦 3 100
- 设计概述整合、系统详细需求 陈雨虹 1 100
- 系统详细设计
- 功能描述 张海浪 2 100
- 输入输出数据项及格式 邱梓洛 2 80 张吴晗 3 80
- 顺序图绘制 邱梓洛 3 100 张吴晗 4 90
- 接口设计 吴晗杰 2 90 蔡瑞金 3 90 凌铧钦 2 90
- 所有模块的性能模块 吴晗杰 1 100
- 异常处理、注释设计、限制条件、验收标准 林龙星 4 100 林沧海 2 100
- 系统设计体系结构 凌铧钦 1 80
- 功能模块层次图 陈雨虹 1 100
- 系统设计说明书修改 陈雨虹 1 100 林子鹏 3 100 凌铧钦 1 90
- 系统设计说明书整订 凌铧钦 2 90
- 系统设计说明书返工
- 输入格式 邱梓洛 2 100
- 输出格式 吴晗杰 2 90
- 接口设计 林子鹏 2 100
- 整合 林子鹏 3 100
-
PPT 陈雨虹(负责)
- PPT模板初制 林沧海 2 90
- PPT逻辑修订 陈雨虹 林沧海 1 100
- PPT终版 林沧海 3 100
- PPT主讲 陈雨虹 2 100
-
博客 陈雨虹(负责)
- 博客模板初制 张海浪 2 100
- 博客内容修改 陈雨虹 2 100 吴晗杰 1 100 林子鹏 1 100
- 博客图片插入 张海浪 2 100
- 博客最终定稿 陈雨虹 1 100
-
评审表 林沧海(负责)1 100
-
评分工作 林子鹏(负责)
-
分数评定 林子鹏 2 100
-
分数计算 张吴晗 3 100
学号 | 贡献度 |
---|---|
221801336 陈雨虹 | 9.9 |
221801307 蔡瑞金 | 11.4 |
221801239 林龙星 | 11.1 |
221801210 林子鹏 | 11.9 |
131802125 邱梓洛 | 9.7 |
221801208 吴晗杰 | 10.7 |
221801227 林沧海 | 9.0 |
221801201 凌铧钦 | 9.4 |
221801425 张吴晗 | 8.7 |
221801401 张海浪 | 8.2 |
相关链接
标签:凌铧,数据库,接口,Outfits,博客,设计,100 来源: https://www.cnblogs.com/OUTFITS/p/14696396.html