What to wear today需求分析文档
成员:
身份 | 姓名 | 分工 |
组长 | 陶清然 | 负责文档编写、ppt,测试 |
组员 | 张娜 | 负责前端 |
组员 | 代丽芳 | 负责后台 |
组员 | 江雪 | 负责数据库 |
组员 | 伊穆兰 | 负责后台 |
小组成员在本次迭代中的贡献:
姓名 | 贡献 |
陶清然 | 完成了文档博客和ppt的编写 |
张娜 | 完成了需求规格说明书和概要设计 |
代丽芳 | 确定了需求规格说明书和概要设计,并搭建了源代码管理环境 |
江雪 | 展示ppt内容 |
伊穆兰 | 搭建源代码管理环境 |
前言:
本次项目是一个基于网页的智能化衣橱,面向对衣橱整理和搭配已有衣服推荐功能有需求的所有人群,尤其是在快节奏的生活下,具有选择综合症或者健忘症的上班一族和部分女性以及对形象有要求的男性群体。结合调查问卷总结出的实际需求信息,参照传统的衣橱类app和网站的已有功能,我们设计了一款智能虚拟衣橱:今天穿什么。
一、需求分析
1.1 内部分析
在综合的考虑了目标人群的真实需求之上,结合了对不同性别、不同年龄结构的调查者进行了问卷调查,对样本的调查结果和数据作深入分析,总结出如下:
图1.1客户分析图
由上图可分析出以下需求信息:
(1)目标群体:对衣橱整理和搭配已有衣服推荐功能有需求的所有人群,特别是大部分年轻女性和部分对外表有要求的年轻男性。
(2)主要功能:整理衣橱、推荐已有衣服的穿衣搭配等。
今天穿什么主要针对两个方面进行功能设计,分别是个人衣物管理、推荐穿衣。
个人衣物管理方面:将现实中衣橱的所有衣物搬到移动端,通过导入图片或淘宝链接,根据衣物类型完成分类,打造用户个人私有衣柜;设计的具体功能模块包括:衣物分类、上传、淘宝订单或相册导入、删除等。
推荐穿衣方面: 针对服装图像对多个属性同时进行分类和识别的要求,构建了基于多任务学习的卷积神经网络结构。最后决定使用了效率更高的开源代码基于深度学习框架Tensorflow搭建的衣服图片识别服务。
1.2 竞品分析
根据市面已有的智能化衣橱,我们进行了相关测试和分析,得出结果列出如下表格:
图1.2竞品分析图
二、概要设计
2.1 总体架构
在本设计的智能虚拟衣橱web中,客户端与服务器的通信采用http协议,
客户端与服务器之间所有的数据交互通过http协议的HttpServld类实现,服务器端通过Servlet接口接收客户端的请求,Servlet容器解析客户端的http请求,把请求封装成一个HttpServletRequest对象,将对象传给HttpServld的service方法,信息反馈给数据库后生成的响应数据传给客户端,Servlet只用来扩展基于http协议的Web服务器。
图2.12系统的网络结构图
2.2 功能框架
智能虚拟衣橱应用主要由客户端和后台服务器构成针对智能虚拟衣橱应用的实际需求,在客户端和服务端分别进行了功能框架设计。图2.21是客户端功能框架,图2.22是服务端功能框架。
图2.21客户端框架
图2.22服务端框架
2.3 功能模块
2.3.1用户注册功能
用户第一次使用本应用时需要进行账号注册和密码设置,所有注册的用户信息将会传到服务器以用户信息表的形式储存,使注册过的用户下次可以直接登录。
2.3.2用户登录功能
用户注册后就可以输入账号以及密码登录系统,服务器接收到登录请求后,判断与数据库里的该用户的信息表是否吻合,并将请求的响应数据返回给客户端,信息若一致,客户端将登录成功,否则无法登录。
2.3.3衣橱分类功能
衣橱分类功能是整个应用的基础功能,在对衣橱进行衣物分类的基础上,通过拍照或相册导入的方式加入用户的衣物,所有的图片信息从客户端上传并储存在服务端的数据库。用户通过此功能可以把现实中的衣橱搬到移动终端,打造个人的专属衣柜。
2.3.4我的搭配功能
和衣橱分类功能类似,所有搭配图片都上传到服务端。我的搭配分为己有搭配和收藏搭配两部分,用户可以通过相册导入或拍照将搭配图片保存己有搭配里,操作上同样要输入衣服的属性信息。
2.3.5智能推荐穿衣功能
用户选择已上传的衣服图片,服务端针对服装图像对多个属性同时进行分类和识别的要求,构建了基于多任务学习的卷积神经网络结构。采用了结合度量学习的卷积神经网络结构,克服了背景、光照、变形等因素的影响。根据训练好的卷积神经网络进行图像检索,进而推送搭配给用户。
2.4模块调用:
登录模块提供用户登录的信息,验证登陆状态,并相应的提交给数据库,链接数据库导入衣橱和搭配信息。搭配中的“增加搭配”功能调用衣橱的中单品。
2.5.模块接口:
- userLogin(String UserName,String PassWord),用户登陆。登陆时传入用户帐号和密码。同时将用户的信息放到数据库中。
- addClothes(),添加衣物。用户通过该函数上传自己的衣物。同时将衣服的信息导入数库中。
- Clothes(),衣物管理。管理用户上传的单品以及用户的自定义搭配。
- Match(),实现单品的搭配。用户通过选择各种单品,进行自定义搭配。
- Recommend(),推荐搭配。通过识别用户的单品,与数据库中的衣服搭配进行匹配,从而获取推荐的搭配。
2019-11-22
What to wear today需求分析文档的更多相关文章
- PSP需求分析文档
PSP软件需求分析文档 刘杰 1. 引言 1.1 背景 开发项目经常延期不能按时提交,甚至不能给出明确的延迟时间 1.2 术语 PSP,数据库 2. 任务概述 2.1 目 ...
- ChengDu University Mental Health Test 需求分析文档
ChengDu University Mental Health Website 需求分析文档 V4.0 编制人:刘雷,黄凯 日期:2019/4/28 版本修订历史记录: 版本 日期 修改内容 作者 ...
- PSP个人软件开发工具需求分析文档
第一部分:前景与范围 1.业务需求 1.1 背景 在目前的软件项目开发过程中,进度计划总是非常不准确,经常出现延期,而且大多数都无法给出一个相对比较准确的延迟时间.即使使用用例包.用例的方式组织需求, ...
- 【软件project】 文档 - 银行业务管理 - 需求分析
---------------------------------------------------------------------------------------------------- ...
- Violet音乐社区设计文档
目录 Violet音乐社区设计文档 一.引言 1.1 编写目的 1.2 开发背景 二.用例图设计 2.1游客实例设计 2.2 管理员实例设计 2.3 普通用户实例设计 三.类图设计 3.1 歌手类 3 ...
- 测试文档(final)
1 引言 1.1编写目的 编写本测试计划的目的是: (1) 为整个测试阶段的管理工作和技术工作提供指南同时确定测试的内容和范围,为评价系统提供依据: (2) 此外还帮助安排测试活动,说 ...
- springboot 集成 docsify 实现随身文档
需求分析 文档可以和项目一起进行版本管理 文档可以在线访问 文档可以与springboot项目集成,不需要分开部署 MarkDown支持 文档跟随,打包jar也可以访问 技术选型 对于网上已有的方案, ...
- PSP个人软件开发系统面向对象需求分析与设计文档
1.引言 1.1编写的目的 编写该文档的目的是,对产品进行定义,详尽说明该产品的软件需求,简述我们对 PSP个人软件开发系统的初步设想,及划分的各功能模块以及各模块的实体图和数据流图. 1.2预期的读 ...
- 第二阶段:2.商业需求分析及BRD:5.商业需求文档1
三大文档 FSD一般包含在PRD 1.BRD一般是去向决策层汇报 2.产品介绍的各项是可选的 不是必备的 产品线路图就是roodmap.团队一般是偏技术的团队. BRD案例. 痛点.定性的描述.不会非 ...
随机推荐
- DNS资源记录的七类
在Microsoft产品系列中,ADDS是一个很出色的设计平台,说到AD,那么我们就不得不提起他的合作伙伴--DNS,相信大家都知道,DNS在AD中的重要地位,就如男人和女人一样,要想有所作为,他们2 ...
- django ListView
context_object_name = 'posts'. The template default name is ListView 'object_list' from .models impo ...
- Linux高级命令-sort、uniq、 cut、sed、grep、find、awk
sort(参考学习网站:http://www.cnblogs.com/dong008259/archive/2011/12/08/2281214.html) 功能:根据不同的数据类型进行排序 格式:s ...
- apache虚拟主机配置的3种方式
Apache的虚拟主机功能 (Virtual Host) 是可以让一台服务器基于IP.主机名或端口号实现提供多个网站服务的技术. 下面我介绍一下这3种方式具体的配置流程: 一.基于ip地址 首先我们需 ...
- Python开发GUI工具介绍,实战:将图片转化为素描画!
欢迎添加华为云小助手微信(微信号:HWCloud002 或 HWCloud003),输入关键字"加群",加入华为云线上技术讨论群:输入关键字"最新活动",获取华 ...
- NoSql中的CAP原则
C:一致性 .A:可用性.P:分区容错性 Partition tolerance(分区容错性): 大多数分布式系统都分布在多个子网络.每个子网络就叫做一个区(partition).分区容错的意思是,区 ...
- 在 Xcode9 中自定义文件头部注释和其他文本宏
在 Xcode9 中自定义文件头部注释和其他文本宏 . 参考链接 注意生成的plist文件的名称为IDETemplateMacros.plist 在plist文件里设置自己想要的模板 注意plist存 ...
- vmware虚拟机扩大硬盘
记录一下对vmware虚拟机扩大硬盘的过程.操作有风险,重要数据请先进行备份. 1.首先在vcenter中将虚拟机下电,然后编辑虚拟机,将虚拟机硬盘扩大.具体操作见下图 2.打开虚拟机电源,利用fdi ...
- Java修炼——String类_常用方法_常量池
String类的定义:String 是不可变字符序列 String 类的常用方法(全部都是不能改变String本身的值,都是在常量池里输出,没有改变其值) String string="ab ...
- MyBatis_多表关联查询_resultMap_单个对象_N+1方式实现
mapper 层 提供 StudentMapper 和 ClazzMapper, StudentMapper 查询所有学生信息, ClazzMapper 根据编号查询班级信息. 再 StudentMa ...