《下厨房》软件系统需求分析报告(第三版)

《下厨房》软件系统

需求分析报告

项目名称         《下厨房》

所属课程          软件工程

项目组长           张军洪

项目成员    袁成杰、胡  俊、梅 庆

唐正奎、蒋利平、秦 超

2017 年 12 月

目录

 

一、需求规格说明……………………………………………………………………………………………………………….2

1.1、项目开发背景………………………………………………………………………………………………………2

1.2、开发目标………………………………………………………………………………………………………………2

1.3、参考资料………………………………………………………………………………………………………………2

1.4、设计原则………………………………………………………………………………………………………………2

二、需求分析…………………………………………………………………………………………………………………..….3

2.1、项目定义…………………………………………………………………………………………….……………….3

2.2、需求陈述…………………………………………………………………………………………………….……….3

2.3、操作用例……………………………………………………………………………………………….…………….4

2.3.1:操作用例表………………………………………………………………………………………….…………..4

2.3.1:操作用例图………………………………………………………………………………………….……….4

2.3.1.1、游客及用户……………………………………………………………………………….……….4

2.3.1.2:系统管理员……………………………………………………………………………….……….5

2.4、功能分析划分………………………………………………………………………………………….………….5

2.4.1、登录注册……………………………………………………………………………………….….………….5

2.4.3、社区模块……………………………………………………………………………………….….………….5

2.4.4、膳食计划…………………………………………………………………………………………..………….5

三、总体设计与实现………………………………………………………………………………………….……………….6

3.1、系统框架………………………………………………………………………………………….………………….6

3.1.1、总体功能模块划分…………………………………………………………………….………………...6

3.1.2、细分模块…………………………………………………………………………………….….…………….6

3.1.2.1、系统设置功能划分细致图……………………………………………….….…………….6

3.1.2.2、社区功能模块划分细致图……………………………………………….….…………….7

3.1.2.3、饮食计划功能模块划分细致图……………………………………….….…………….7

3.2、数据库………………………………………………………………………………………………….….………….7

3.2、数据流图……………………………………………………………………………………….…..……………….7

3.4、具体实现……………………………………………………………………………………….……..…………….8

3.4.1、登录界面设计………………………………………………………………………….…….…………….8

3.4.2、用户管理界面设计…………………………………………………………………….….…………….8

3.4.3、社区功能模块设9

3.4.4、饮食计划功能模块设计

四、测试

4.1、测试计划……………………………………………………………………………………….……..…………….9

4.2、测试说明书……………………………………………………………………………………….……..…………….9

4.3、测试用例……………………………………………………………………………………….……..…………….10

五:总结

一、        需求规格说明

1.1、        项目开发背景

《下厨房》是一款以合理膳食和社交分享为核心的移动应用。

在合理膳食方面,《下厨房》期望通过用户输入的近期身体指标作为参数,系统根据参数检索数据库为用户匹配合理的膳食计划。如此一来,用户可以根据系统提供的科学的饮食计划安排饮食,可以起到养生的功效。

其二,在当下的社会,网络已经成为了人们的生活必需品。人们借助于网络进行社交、工作、娱乐、购物。其中,社交功能变得越来越举足轻重。因此,《下厨房》期望借助网络的社交功能,以烹饪与美食作为切入点,构建一个以分享烹饪与美食为共同兴趣点的交流社区。通过社区所提供的平台,用户可以发布各种内容,包括但不限于自己对于美食与烹饪的理解,以及对自己烹饪过程的记录,或是烹饪的各种教程等等。通过社区的聚合作用,人们可以找到志趣相投的朋友,增进人与人之间的交流,从而获得心理上的满足感与存在感。

1.2、        开发目标

1.目标陈述

对于用户来说,《下厨房》是一个基于Internet的移动应用,该应用为用户提供膳食计划和发布与管理动态的功能,通过社区提供的这些功能,用户可以合理安排饮食以及分享动态。

2.主要功能特性

1:以多种方式注册或登录账号,包括:手机号,邮箱,第三方账号

2:用户输入自己近期身体指标,系统检索数据库匹配并输出膳食计划

3:发布、删除、管理动态

4:查看、收藏、屏蔽、删除他人动态

1.3、        参考资料

该系统核心功能之一是社区,基本模式可以参考知乎、豆瓣。具体模板可以参考网上各种论论坛提供的开源项目。核心功能之二是匹配膳食计划,参考GitHub开源项目。

1.4、        设计原则

运行环境:Android系统

平台开发:Android studio

数 据 库:MySQL

版本控制:GitHub

过程记录:博客园

任务发布:leangoo

二、        需求分析

2.1、  项目定义


序号


术语或缩写


定义


1


游客


未登录者进入系统的默认身份,可以查看软件的基本功能。


2


用户


注册用户可以进行系统提供的对动态的一切操作


3


AS


Android Studio(软件开发环境)


4


MySQL


数据库存储系统


5


Leangoo


提交阶段成果

2.2、 需求陈述

应用主要包括两大功能模块和系统设置:

1、  膳食计划

匹配膳食计划功能概述:后台预先向数据库存入相关数据,系统从键盘接收用户键入的相关身体指标参数,然后根据用户键入的相关参数调用算法为用户匹配并输出科学健康的膳食计划。

2、  动态发布

动态发布与管理功能概述:用户根据系统提供的注册方式(任何一种皆可)进行注册获取用户权限,然后登录系统,进入“社区”界面。在“社区”界面中,用户可以发布动态,并且可以对要发布的动态进行相应的权限设置。对于已经发布的动态,系统仍然为用户提供了相应的操作权限,包括修改、删除、设置其他用户(部分或全部)是否可见,以及关闭评论等。同时,在“社区”界面中,用户可以对他人的动态进行浏览(在该动态对此用户为可见权限的情况下)、收藏、评论(在该动态对此用户为可评论权限的情况下)、屏蔽、举报等操作。

3、  系统设置

系统设置方面,用户可以通过系统提供的权限对账户的相关信息进行管理。其二,用户可以通过系统私信就软件有关的问题向管理员提出改进建议。

2.3、操作用例:

2.3.1:操作用例表:


主要参与者


用例


游客


1:浏览用户动态

2:查看基本健康常识


用户


1:注册账户

2:登录账户

3:修改我的信息

4:发布、删除动态

5:修改已发布的动态

6:浏览、评论(点赞)、收藏、屏蔽他人动态

7:举报违规动态

8:查看基本健康常识

9:输入近期身体状况指标,匹配膳食计划


系统管理员


1:用户管理

2:数据备份

3:动态审核管理

2.3.2:操作用例图:

2.3.1.1、游客及用户:

2.3.1.2:系统管理员

2.4、功能分析划分

2.4.1:注册登录

当用户为非注册用户,即游客身份时,以默认身份进入系统,系统仅为其提供浏览其他注册用户所发布的动态及系统本身所提供的基本的健康常识的权限。游客可以以多种方式注册登录系统,包括手机号注册、邮箱注册、第三方账号注册。注册登录后的用户拥有系统所提供的针对所有普通用户的权限。

2.4.2:用户管理

用户管理是指系统提供的用户对自己账户信息的管理权限,包括修改用户名、修改绑定手机号、修改邮箱、注销账户等操作。

2.4.3:社区模块

社区模块是应用的核心之一,注册用户可以通过社区平台进行对动态的一切操作,包括发布动态、删除动态以及对已发布的动态进行修改等操作,还可以评论、收藏、屏蔽他人的动态,也可以为他人的动态点赞。系统提供了举报功能,用户有权也有义务举报发布不符合国际法律法规以及平台规范的动态的用户。

2.4.4:膳食计划

膳食计划是指在用户输入自己的身体指标之后,系统根据算法为用户检索匹配并输出适合用户的科学的饮食规划。这是《下厨房》应用的核心也是其特色。

三、           总体设计与实现

 

3.1、系统框架

本系统采用C/S-----客户机/服务端-----模式。

客户服务器模式(Client–server model)简称C/S结构,是一种网络架构,它把客户端 (Client) 与服务器 (Server) 区分开来。每一个客户端软件的实例都可以向一个服务器或应用程序服务器发出请求。

3.1.1、总体功能模块划分:

3.1.2、细分模块:

3.1.2.1、系统设置功能划分细致图:

此图显示了系统设置功能模块儿的各个细分模块儿,系统展示相关功能模块儿之间的联系,提供一个详细而全面的视角。

3.1.2.2、社区功能模块划分细致图:

社区模块儿是系统的重要组成部分,该图显示的是组成社区模块儿的各个具体模块儿及其相互之间的关系。

3.1.2.3、饮食计划功能模块划分细致图:

3.2、数据库(略)

3.3、数据流图

数据流图是对软件系统处理过程的一种描述。数据流图以两个因素为制图依据:一、信息处理系统中数据信息的流动过程;二、系统对发生事件的处理过程。数据流图以此二者为依据,使用图表化的方式描述此二者的具体变化过程。规范的数据流图是系统的具体实现的依据,是软件设计过程中必不可少的环节。

在本系统中,使用的软件架构模式为:客户端-服务器。即:一个服务器和多个客户端。服务器组件将为多个客户端组件提供服务。客户端从服务器请求服务,服务器为这些客户端提供相关服务。此外,服务器持续侦听客户机请求。软件的核心功能主要有服务器端完成,在客户端主要完成数据的输入输出。

饮食计划模块流图:

3.4、编码实现

3.3.1、登录界面设计

3.3.2、用户管理界面设计

3.4.3、社区功能模块设计

3.4.4、饮食计划功能模块设计

四、测试

一、测试计划

1. 功能测试

1.1 用户登录界面测试

1.2 用户注册界面测试

1.3 用户查看信息功能测试

1.4 用户修改信息功能测试

1.5 动态显示功能测试

1.6   地图定位功能测试

2.验收测试

测试报告表:


场景ID


场景名


测试结果


Bug ID


1001


用户登录


2001


1002


用户注册


2002


1003


用户查看个人信息


2003


1004


用户修改个人信息


2004

1.1 用户登录

1.2 用户注册

1.3 用户查看个人信息

1.4 用户修改个人信息

1.5 进入社区

1.6 评论动态

3.效能测试

3.1 负载测试

3.1.1 负载每秒钟承受10次客户请求,发生频率分类:

·查看某菜品详情(20%)

·查看个人信息(20%)

·进入社区(30%)

·查看其他人动态(20%)

·所有其他请求(10%)

4.增加用户后的压力测试

正常为每秒钟10次客户请求。

压力测试表:


客户请求次数(单位:次)


软件反应结果


10


20


50


100

二、测试说明书

1、用户登录界面测试

1.1 登录功能

a. 用户名是否有非法字符(支持数字、字母、中文),及用户名是否存在

b. 用户登录“记得我的账户和密码”功能

c. 用户登录密码错误后的提示

1.2 以上测试通过登录“厨娘”app手动测试,并查看系统是否通过,不通过则记录bug。

1.3 测试是否通过:系统验证登录与注册时的密码、登录名是否符合;“记得”功能通过反复登录验证。

2、用户注册界面测试

2.1 注册功能

a. 用户名是否有非法字符(支持数字、字母、中文)

b. 密码是否有非法字符(支持数字、字母)

c. 验证码错误提示

2.2 以上测试通过注册“厨娘”app手动测试,并查看系统是否通过,不通过则记录bug。

2.3 测试是否通过:注册时的密码、登录名、验证码是否符合要求。

三、测试用例

1. 登录功能

1) 正确输入密码及用户名,预期用户正常登录账号并进入页面。

a. 提示用户名合法且存在此用户名

b. “记得账户及密码”功能可以正常使用

c. 验证码通过

d. 系统验证用户名存在且密码、验证码正确后成功登录“厨娘”

2) 错误输入,且系统给出相应的提示

a. 提示用户名不合法,含有除中文、数字、字母外其他的字符,或者“用户名不存在”

b. “记得账户及密码”功能不能正常使用,这个主要是用户下次登录时系统没有保存用户名或密码、或者都未能保存

c. 验证码未通过,因此系统提示用户重新输入并重新更新一个验证码

2. 注册功能

1) 正确输入

a. 注册时用户名没有非法字符(支持数字、字母)

b. 密码没有非法字符(支持数字、字母)

c. 验证码提示,正确后进入app

2)错误输入

a. 用户名过长(超过30个字符)或者过短(低于6个字符)则停止键盘输入并提示用户名过长或者过短

b. 密码过长(超过30个字符)则停止键盘输入并提示密码超过输入限制

c. 验证码提示,错误则重新更新一个验证码

五:维护

原文地址:https://www.cnblogs.com/meiqing/p/8126209.html

时间: 2024-11-07 15:54:31

《下厨房》软件系统需求分析报告(第三版)的相关文章

第03组 团队项目-需求分析报告

一.组队后的团队项目的整体计划安排 项目阶段 阶段时间 主要阶段任务 完成情况 前期准备 9.22-10.11 确定选题及成员分工.完成基础学习及前期准备工作 已完成 10.12-10.18 进一步细化分工.设计项目logo.完成选题报告 已完成 10.19-10.25 通过别组提问改进项目功能计划.完成原型设计及界面设计初稿 已完成 团队编程 10.26-11.2 团队编程及前期准备工作 待完成 alpha冲刺 11.3-11.11 实现基础功能.改进界面.完成alpha冲刺前期准备 待完成

第3组 团队项目-需求分析报告

一.组队后的团队项目的整体计划安排 项目阶段 阶段时间 主要阶段任务 完成情况 前期准备 9.22-10.11 确定选题及成员分工.完成基础学习及前期准备工作 已完成 10.12-10.18 进一步细化分工.设计项目logo.完成选题报告 已完成 10.19-10.25 通过别组提问改进项目功能计划.完成原型设计及界面设计初稿 已完成 团队编程 10.26-11.2 团队编程及前期准备工作 待完成 alpha冲刺 11.3-11.11 实现基础功能.改进界面.完成alpha冲刺前期准备 待完成

《下厨房》移动应用开发需求分析

一.概述 1.1.开发背景 1.2.开发目标 1.3.参考资料 1.4.设计原则 二.需求分析 2.1.项目定义 2.2.需求陈述 2.3.操作用例 2.4.功能分析划分 2.4.1.登录注册 2.4.2.用户管理 2.4.3.社区模块 2.4.4.膳食计划 三.总体设计与实现 3.1.系统建模 3.2.数据库 3.3.编码实现 3.3.1.登录界面设计 3.3.2.用户管理界面设计 四.测试 略 五:维护 一.        概述 1.1.        开发背景 <下厨房>是一款以合理膳食

OS X下UNIX环境高级编程(第三版)学习日志-第一章ChapterI,编译apue包与第一个例程

1.从网络上获取代码,地址如下apue最新官方下载地址 2.解压到本地 由于最新版本是第三版(3rd Edition),apue.3e,就是我们要的源代码 3.编译源代码 编译过程中笔者并未遇到任何问题,所以建议大家也下载最新版本的代码来学习,贴一下笔者的环境信息 Configured with: --prefix=/Library/Developer/CommandLineTools/usr --with-gxx-include-dir=/usr/include/c++/4.2.1 Apple

南理工14级第四组 需求分析报告

软件需求分析报告 题目:<离散数学>课程测验系统 编写人员:高明 914106840518 刘建平 914106840526 王琪栋 914106840235 王金 914106840234 雷杨 914106840618 指导教师:叶庆生 1引言2 1.1编写目的 2 1.2背景 2 1.3定义 2 1.4参考资料 2 2任务概述2 2.1目标 2 2.2用户的特点 3 2.3假定和约束 3 3需求规定3 3.1对功能的规定 3 3.2对性能的规定 3 3.2.1精度3 3.2.2时间特性要

软件系统需求分析策划方案

软件需求分析(Software Reguirement Analysis)是研究用户需求得到的东西,完全理解用户对软件需求的完整功能,确认用户软件功能需求,建立可确认的.可验证的一个基本依据. 软件需求分析是一个项目的开端,也是项目实施最重要的关键点.据有关的机构分析结果表明,我们设计的软件产品存在不完整性.不正确性等问题80%以上是需求分析错误所导致的,而且由于需求分析错误造成根本性的功能问题尤为突出.因此,一个项目的成功软件需求分析是关键的一步. A.软件需求分析人员组织 软件需求分析其根本

《图书管理系统》—需求分析报告

目录 一.引言 1 1.2项目背景 1 二.任务概述 2 2.2用户特点 2 2.3需求概述 2 2.4功能的规定 3 三.功能需求 3 3.1功能划分 3 3.2功能描述 4 四.性能需求 4 4.1数据精确度 4 4.2系统响应时间 4 4.3适应性 4 4.4.输入输出要求 5 4.5.数据管理 5 4.6.故障处理要求 5 4.7.其他专门要求 5 五.运行需求 5 5.1.设备 5 5.2支持软件 6 5.3接口 6 5.3.1用户接口 6 5.4控制 6 六.数据描述 7 6.1静态

下厨房——唯美食与爱不可辜负

下厨房 --唯美食与爱不可辜负 我想,"今天煮什么?"对于很多要做爱心美食的厨友来说,确实是一个非常头痛难题.而现在有一个解决这个问题的APP出来了,而且里面的美食方案都娇香欲艳,让人按捺不住.嘿嘿,没错,就是本周apple store总排行榜上的排名第三的<下厨房>啦.    相对比很多同类app,下厨房界面非常简洁清新,更重要是直入主题,一进去就是满篇的垂涎美食写真,让人马上说很有饿感,直入主题真的是一个非常明智的选择,毕竟大部分进来的客官都是想马上找到"今天

《构建之法(第三版)》速读提问

<构建之法(第三版)>速读提问 1.什么是软件工程 软件工程学科诞生后,人们为软件工程给出了不同的定义,例如最早的定义是由F.L. Bauer给出的,即"软件工程是为了经济地获得能够在实际机器上高效运行的.可靠的软件而建立和应用一系列坚实的软件工程原则". 软件工程学科包含为完成软件需求.设计.构建.测试和维护所需的知识.方法和工具. 软件工程是一门交叉性的工程学科,它是将计算机科学.数学.工程学和管理学等基本原理应用于软件的开发与维护中,其重点在于大型软件的分析与评价.规