团队作业3--需求改进&系统设计

这个作业属于哪个课程 https://edu.cnblogs.com/campus/gdgy/CSGrade22-34/
作业要求 需求&原型改进、系统设计、Alpha任务分配计划、测试计划
团队项目仓库 https://github.com/bitpurleclude/GDUT-Goofish/issues
团队成员 李嘉锐 车峤锐 于海洋 林进光 黄健 钟启腾 钟月灿

一、需求&原型改进
1、对修改选题及需求进行修改
问题一 用户安全问题:二手交易存在欺诈风险。
修改一 可以通过引入实名认证、交易保障和举报系统来提高安全性。
问题二 商品质量和描述不一致。
修改二 提供详细的商品质量检查和用户反馈系统,让买家能够更真实地了解商品情况。
问题三 用户体验不佳:如果搜索、筛选功能不够完善,用户可能难以找到需要的商品。
修改三 可以优化搜索算法,提供个性化推荐和更清晰的界面设计。
问题四 售后支持不足:许多平台在交易完成后没有完善的售后服务,导致用户体验不佳。
修改四 可以增加售后支持选项,比如纠纷处理和退货政策。

向目标用户展示原型
Persona 1
名字:陈丽
年龄:35岁
收入:年收入15万人民币
市场占比和重要性:高端品牌的二手买家,较少但购买力强,影响力大。
典型使用场景:寻找低价的高端品牌包包
使用环境:手机应用为主,偶尔使用电脑查看大图
生活情况:单身,公司职员
知识层次和能力:本科以上学历,对电子商务熟悉
动机、目的和困难:希望便捷安全地购买二手奢侈品,担心假货问题
偏好:喜欢担保交易模式,有明确的质量认证标准

Persona 2
名字:张明
年龄:27岁
收入:年收入12万人民币
市场占比和重要性:普通卖家比例较大,交易量较高,活跃用户
典型使用场景:闲置电子设备快速出手
使用环境:手机应用
生活情况:自由职业者
知识层次和能力**:熟悉电子产品,电商交易经验丰富
动机、目的和困难:希望快速、安全地售出电子设备,减少与买家的沟通成本
偏好:喜欢订单管理简洁,物品发布流程简单

2、需求规格说明书改进
用户故事1

  1. 背景
    典型用户:陈丽,35岁,公司职员
    用户的需求/迫切需要解决的问题:陈丽希望在平台上以优惠的价格购买到一款轻微使用过的高端包包,但不想冒风险购买假货。
    假设:平台提供可靠的验证和担保服务,让用户对购买二手物品的真实性和质量有信心。
  2. 场景
    陈丽打开二手交易平台,查看轻微使用的高端包包列表。她浏览了多款包包的详细信息,包括图片、卖家信息和平台验证信息。她对一款价格合适的包包产生兴趣,平台的“质保认证”和“担保交易”功能让她感到放心。她点击购买后,选择担保交易模式并下单。买家支付完成后,卖家在3天内将物品寄出,陈丽在收到包包后进行验收,通过平台确认无误后,款项才会最终支付给卖家。这让她觉得这个流程非常安全和便捷。

亮点:
质保认证:平台提供高端物品的质保认证,帮助买家确认物品的真实性。
担保交易模式:让买家在验收商品前不用直接将款项支付给卖家,增强了交易安全性。

逻辑和界面设计注意事项:

  • 初次使用者需要简洁的流程引导,尤其在“担保交易”上增加详细说明。
  • 对于多次使用者,可提供快速交易入口,简化操作步骤。
  1. 其他资料
    提供平台担保流程图,帮助用户理解交易流程的保障机制。

用户故事2

  1. 背景
    典型用户:张明,27岁,自由职业者
    用户的需求/迫切需要解决的问题:张明希望快速售出手头上一些闲置的电子设备,如平板电脑和耳机,但希望交易过程简单且无纠纷。
    假设:平台提供简化的物品上传流程和退货/纠纷管理功能。
  2. 场景
    张明进入平台后,选择“发布闲置物品”功能。他填写基本信息并上传图片,界面会提示他选择类别,填写详细的物品描述,并选择是否接受退货。由于他急于售出,因此勾选“不接受退货”选项。物品发布后,张明很快接到了数位买家的询问。他选择了一个出价合适的买家达成交易,并通过平台沟通完成交接。平台的订单系统帮助张明简化了交易记录和流程,他的订单状态变更为“待买家确认”,并在买家确认后完成交易。

亮点:
简易的物品发布流程:简化上传物品的步骤,减少填写内容,使卖家能快速发布物品。
清晰的订单流程和状态跟踪:订单状态明了,有效减少纠纷产生。

逻辑和界面设计注意事项:

  • 初次发布物品的用户需要引导上传流程并附上示例图。
  • 多次发布物品的用户可简化为一页式操作,减少不必要的填空项。
  1. 其他资料
    订单状态追踪图,展示从“物品上传”到“交易完成”的各个状态。

3、功能分析四象限
第一象限:重要且紧急
必须优先开发的关键功能,直接影响用户体验和平台基本运作。
1.用户注册和登录:确保用户能够顺利注册和登录是平台的入口功能,属于核心模块。
商品发布与管理:作为二手交易平台的核心功能,必须保证卖家可以流畅地上架商品,并进行管理。
2.商品浏览与搜索:买家能否便捷地找到商品决定了平台的实用性,搜索、筛选和排序功能需保证高效。
3.即时聊天:提供买卖双方直接沟通渠道,是C2C模式的关键。
数据安全与隐私保护:加密和隐私设置是平台的安全保障,需在上线前完成。

第二象限:重要但不紧急
提高用户体验和留存的功能,开发时优先级稍低于基础功能。
1.用户评价系统:完善的评价系统能够帮助用户建立信任,但该功能可以在平台初期上线后逐步完善。
2.商品收藏与卖家关注:此功能提升用户留存和互动,虽然不是平台的基础功能,但能提高用户黏性。
3.个人资料管理:允许用户自行管理个人资料增强了平台的便利性,但不影响交易流程。
通知提醒:可提高即时聊天的响应率,提升用户体验,优先级略低于核心交易功能。

第三象限:紧急但不重要
短期内可提升平台体验的附加功能,但不具备关键影响。
1.订单管理:展示交易记录和收藏、关注内容,这类信息的管理对提升用户体验有帮助。

第四象限:不重要且不紧急
对平台运作影响较小,可后期考虑。
1.高级统计分析功能(管理后台): 平台初期可以通过简单的数据报表进行基础管理,复杂的数据分析可后期优化。
2.更多的隐私设置:基础隐私设置可满足用户需求,更多个性化设置可在平台稳定后逐步添加。

4、任务分解WBS及相应的项目进度计划
4.1WBS图

4.2项目 WBS 优先级和时间表
1. 需求分析
任务 1.1:用户需求分析
o优先级:高
o预计时间:1周
o任务分配:业务分析师
o说明:Alpha 阶段的初步核心任务,帮助理解买家和卖家的核心需求。

任务 1.2:需求规格说明书撰写和评审
o优先级:高
o预计时间:1周
o任务分配:需求分析团队
o说明:在Alpha阶段需要完成,以确保后续开发任务明确。

2. 设计阶段
任务 2.1:数据库设计
o优先级:高
o预计时间:1周
o任务分配:数据库工程师
o说明:Alpha阶段核心任务,需确保数据库能够支持用户、商品、订单等功能。

任务 2.2:后端系统架构设计
o优先级:高
o预计时间:1周
o任务分配:后端开发团队
o说明:确保架构能够支持用户、商品管理、即时沟通等核心功能。

任务 2.3:前端界面设计
o优先级:高
o预计时间:2周
o任务分配:UI/UX设计师
o说明:设计直观、友好的界面,满足用户需求。

3. 功能模块开发
任务 3.1:用户模块开发
o任务 3.1.1:注册与登录功能
优先级:高
预计时间:2周
任务分配:后端开发团队
说明:Alpha阶段核心任务,确保用户能够顺利注册和登录平台。

o任务 3.1.2:个人中心功能
优先级:中
预计时间:1周
任务分配:前后端开发团队
说明:包括查看订单、修改个人信息等,提供基础的用户管理。

任务 3.2:商品管理模块开发
o任务 3.2.1:商品上架与管理功能
优先级:高
预计时间:2周
任务分配:前后端开发团队
说明:Alpha阶段核心任务,确保卖家可以上传商品,买家可浏览商品。

o任务 3.2.2:图片上传功能
优先级:高
预计时间:1周
任务分配:前端开发团队
说明:确保商品有良好的图片展示功能。

任务 3.3:交易模块开发
o任务 3.3.1:即时沟通功能
优先级:高
预计时间:2周
任务分配:后端开发团队
说明:Alpha阶段核心任务,支持买卖双方的沟通,促进交易达成。

o任务 3.3.2:订单管理功能
优先级:高
预计时间:1周
任务分配:后端开发团队
说明:买家和卖家可以查看和管理订单状态,Alpha阶段必备功能。

任务 3.4:支付系统初步集成
o优先级:中
o预计时间:2周
o任务分配:后端开发团队
o说明:支持交易支付,为 Alpha 阶段后的 Beta 版本做准备。

4. 系统测试与验证
任务 4.1:单元测试
o优先级:高
o预计时间:1周
o任务分配:测试团队
o说明:确保核心模块的功能稳定,是 Alpha 阶段的必要任务。

任务 4.2:集成测试
o优先级:高
o预计时间:1周
o任务分配:测试团队
o说明:确保模块之间的无缝集成,属于 Alpha 阶段的必要任务。

5. 上线准备
任务 5.1:部署环境搭建
o优先级:中
o预计时间:1周
o任务分配:运维团队
o说明:为正式上线打基础,是 Beta 阶段准备工作。

任务 5.2:数据库备份与恢复设置
o优先级:中
o预计时间:1周
o任务分配:运维团队
o说明:Alpha阶段后开始设置,保障数据安全。

任务 5.3:系统监控与告警配置
o优先级:中
o预计时间:1周
o任务分配:运维团队
o说明:Beta版本准备工作。

二、系统设计
1、系统架构设计概述
为了满足二手交易平台的功能需求和非功能需求,采用分层架构设计有助于提高系统的可维护性、可扩展性和可复用性。基于所使用的技术栈(前端:Vue,Element-UI,Axios;后端:Spring Boot,MySQL,MyBatis,HttpClient(微信支付),OSS)。

2、分层结构设计
分层架构 (Layered Architecture)
该模式将应用划分为多个独立层次(如表现层、业务逻辑层、数据访问层等),每一层都只与相邻的上下层进行交互。适合中小型项目,且对系统的可维护性和清晰度有很大帮助。
优点:
(1)清晰的模块分层,便于功能划分和职责分配。
(2)易于测试,且各层次可以独立开发和调试。
(3)在不同层次上实现功能后,可以平行扩展各个层次的功能。

3、系统整体分为以下四个层次:表示层(Presentation Layer)、业务逻辑层(Business Logic Layer)、数据访问层(Data Access Layer)、持久层(Persistence Layer)。

3.1 表示层(Presentation Layer)
职责:

  • 提供用户交互界面,包括网页和移动端界面。
  • 处理用户输入,展示后台传递的数据。
  • 实现前端的业务逻辑,如表单验证、页面路由等。
    技术栈:
  • Vue.js:构建用户界面。
  • Element-UI:提供UI组件库,提升开发效率。
  • Axios:用于与后端进行HTTP通信。
    接口:
  • 与业务逻辑层的API接口进行交互,通常是RESTful风格的HTTP接口。

3.2.业务逻辑层(Business Logic Layer)
职责:

  • 处理核心业务逻辑,如用户注册登录、商品发布、交易沟通等。
  • 实现系统的业务规则和流程控制。
  • 对请求进行验证和权限控制。
    技术栈:
  • Spring Boot:构建后端应用,提供RESTful API。
  • MyBatis:用于对象关系映射,简化数据库操作。
    接口:
  • 向表示层提供API接口。
  • 调用数据访问层的方法获取或更新数据。

3.3.数据访问层(Data Access Layer)
职责:

  • 负责与数据库的交互,对数据库进行CRUD操作。
  • 将业务逻辑层的请求转换为数据库查询。
  • 对数据库操作进行封装,提供统一的接口。
    技术栈:
  • MyBatis:用于映射SQL语句和对象关系。
    接口:
  • 接受业务逻辑层的调用,执行数据库操作。
  • 返回数据给业务逻辑层。

3.4.持久层(Persistence Layer)
职责:

  • 实际存储数据的地方,包括关系型数据库和文件存储等。
  • 保存用户数据、商品信息、交易记录等。
    技术栈:
  • MySQL:关系型数据库,存储结构化数据。
  • OSS(对象存储服务):用于存储图片、文件等非结构化数据。
    接口:
  • 被数据访问层调用,执行具体的数据库和文件存储操作。

4、层次之间的接口定义
表示层 ↔ 业务逻辑层:

  • 使用HTTP/HTTPS协议,通过RESTful API进行通信。
  • 接口文档可使用Swagger等工具生成,定义请求路径、方法、参数和返回值。

业务逻辑层 ↔ 数据访问层:

  • 通过方法调用,传递参数对象。
  • 接口定义在Service和DAO(Data Access Object)层,明确输入输出。

数据访问层 ↔ 持久层:

  • 使用MyBatis映射XML或注解方式,将方法映射到SQL语句。
  • 对象与数据库表的映射关系明确。

5、开发人员分工
前端开发人员(表示层):

  • 负责页面设计、交互实现、接口调用。
  • 使用Vue.js、Element-UI构建用户界面。

后端开发人员(业务逻辑层、数据访问层):

  • 负责业务逻辑的实现、API接口的开发。
  • 编写Service层和Controller层代码。
  • 使用Spring Boot、MyBatis等技术。

数据库管理员(持久层):

  • 设计数据库结构,创建表和索引。
  • 优化数据库性能,管理数据存储。

全栈开发人员(可覆盖多个层次):

  • 在需要时,参与多个层次的开发,确保整体功能的实现和优化。

6、数据库设计
6.1数据库设计原则

  • 规范化:消除数据冗余,避免数据不一致。
  • 扩展性:易于添加新功能或扩展现有功能。
  • 性能:考虑查询效率,适当建立索引。

6.2主要实体和属性
用户表(User)

字段名 数据类型 描述
user_id INT 用户ID,主键
username VARCHAR 用户名/昵称
password VARCHAR 密码
email VARCHAR 邮箱
phone VARCHAR 手机号
avatar VARCHAR 头像URL
create_time DATETIME 注册时间
last_login DATETIME 最后登录时间
user_role INT 用户角色(0-普通用户,1-管理员)
status INT 用户状态(0-正常,1-禁用)

商品表(Product)

字段名 数据类型 描述
product_id INT 商品ID,主键
user_id INT 发布者用户ID
name VARCHAR 商品名称
category_id INT 商品类别ID
description TEXT 商品描述
price DECIMAL 商品价格
status INT 商品状态(0-上架,1-下架,2-已售)
create_time DATETIME 创建时间
update_time DATETIME 更新时间

商品图片表(Product_Image)

字段名 数据类型 描述
image_id INT 图片ID,主键
product_id INT 商品ID,外键
image_url VARCHAR 图片URL
create_time DATETIME 上传时间

类别表(Category)

字段名 数据类型 描述
category_id INT 类别ID,主键
category_name VARCHAR 类别名称
parent_id INT 父类别ID

聊天消息表(Message)

字段名 数据类型 描述
message_id INT 消息ID,主键
sender_id INT 发送者用户ID
receiver_id INT 接收者用户ID
content TEXT 消息内容
send_time DATETIME 发送时间
is_read INT 是否已读(0-未读,1-已读)

评价表(Review)

字段名 数据类型 描述
review_id INT 评价ID,主键
reviewer_id INT 评价者用户ID
reviewed_user_id INT 被评价的用户ID
rating INT 评分(1-5星)
content TEXT 评价内容
create_time DATETIME 评价时间

收藏表(Favorite)

字段名 数据类型 描述
favorite_id INT 收藏ID,主键
user_id INT 用户ID
product_id INT 商品ID
create_time DATETIME 收藏时间

关注表(Follow)

字段名 数据类型 描述
follow_id INT 关注ID,主键
follower_id INT 关注者用户ID
followed_user_id INT 被关注的用户ID
create_time DATETIME 关注时间

订单表(Order)

字段名 数据类型 描述
order_id INT 订单ID,主键
buyer_id INT 买家用户ID
seller_id INT 卖家用户ID
product_id INT 商品ID
order_status INT 订单状态(0-待支付,1-已支付,2-已完成,3-已取消)
create_time DATETIME 下单时间
update_time DATETIME 更新时间

管理员操作日志表(Admin_Log)

| 字段名          | 数据类型     | 描述           |
| -------------- | ----------- | --------------- |
| log_id         | INT         | 日志ID,主键     |
| admin_id       | INT         | 管理员用户ID     |
| operation      | VARCHAR     | 操作内容         |
| target_id      | INT         | 操作对象ID       |
| create_time    | DATETIME    | 操作时间         |

6.3实体关系描述

  • 用户(User)和商品(Product):一对多关系。一个用户可以发布多个商品。
  • 商品(Product)和商品图片(Product_Image):一对多关系。一个商品可以有多张图片。
  • 用户(User)和聊天消息(Message):一对多关系。用户作为发送者和接收者,与消息存在关联。
  • 用户(User)和评价(Review):一对多关系。一个用户可以给多个用户评价,也可以收到多个评价。
  • 用户(User)和收藏(Favorite):一对多关系。一个用户可以收藏多个商品。
  • 用户(User)和关注(Follow):一对多关系。一个用户可以关注多个用户。
  • 订单(Order)与用户(User)和商品(Product):订单关联买家、卖家和商品。
  • 管理员(User,user_role=1)和操作日志(Admin_Log):一对多关系。

6.4ER图描述
由于无法在文本中直接绘制ER图,以下对ER图进行文字描述。

  1. User表

    • 主键:user_id
    • 与Product表:一对多关系(user_id)
    • 与Message表:一对多关系(sender_id,receiver_id)
    • 与Review表:一对多关系(reviewer_id,reviewed_user_id)
    • 与Favorite表:一对多关系(user_id)
    • 与Follow表:一对多关系(follower_id,followed_user_id)
    • 与Order表:一对多关系(buyer_id,seller_id)
    • 与Admin_Log表(当user_role=1时):一对多关系(admin_id)
  2. Product表

    • 主键:product_id
    • 外键:user_id(关联User表)
    • 与Product_Image表:一对多关系(product_id)
    • 与Favorite表:一对多关系(product_id)
    • 与Order表:一对一关系(product_id)
    • 外键:category_id(关联Category表)
  3. Product_Image表

    • 主键:image_id
    • 外键:product_id(关联Product表)
  4. Category表

    • 主键:category_id
    • 自关联:parent_id(父类别)
  5. Message表

    • 主键:message_id
    • 外键:sender_id、receiver_id(关联User表)
  6. Review表

    • 主键:review_id
    • 外键:reviewer_id、reviewed_user_id(关联User表)
  7. Favorite表

    • 主键:favorite_id
    • 外键:user_id(关联User表)
    • 外键:product_id(关联Product表)
  8. Follow表

    • 主键:follow_id
    • 外键:follower_id、followed_user_id(关联User表)
  9. Order表

    • 主键:order_id
    • 外键:buyer_id、seller_id(关联User表)
    • 外键:product_id(关联Product表)
  10. Admin_Log表

    • 主键:log_id
    • 外键:admin_id(关联User表,当user_role=1时)

6.5数据库设计示意
plaintext
[User] 1 —— [Product]
[User] 1 —— [Message] —— 1 [User]
[User] 1 —— [Review] —— 1 [User]
[User] 1 —— [Favorite] —— 1 [Product]
[User] 1 —— [Follow] —— 1 [User]
[Product] 1 —— [Product_Image]
[Product] 1 —— 1 [Order]
[Product] —— 1 [Category]
[User] 1 —— [Order]

6.6注意事项

  • 索引设计:对经常用于查询的字段,如user_idproduct_idcategory_id等建立索引,提高查询性能。
  • 数据安全:对敏感信息,如密码,使用加密方式存储。
  • 字段规范:字段命名遵循统一的命名规范,便于维护。

7、总结
通过上述系统架构设计和数据库设计,明确了系统的分层结构、各层的职责和接口,以及数据库的实体和关系。这有助于开发人员理解系统的整体架构,明确各自的开发任务,提高开发效率。

  • 前端开发人员专注于表示层的开发,负责用户界面和交互。
  • 后端开发人员负责业务逻辑层和数据访问层,处理核心业务和数据操作。
  • 数据库管理员确保数据库结构合理,高效可靠。

三、Alpha任务分配计划
Product Backlog
该项目的目标是创建一个用户友好的在线平台,让用户能够轻松地买卖二手商品,同时确保交易的安全性和透明度,Product Backlog如下:
1.用户模块
1.1 用户注册和登录
1.1.1 需求:用户希望能够创建账户并登录,以便能够买卖商品。
1.1.2 功能:用户可以注册、登录、找回忘记的密码以及管理个人信息。

1.2 用户个人资料管理
1.2.1 需求:用户希望能够编辑个人资料,包括头像、联系方式和交易偏好。
1.2.2 功能:用户可以上传头像、编辑联系信息、设置交易偏好。

2.商品模块
2.1 发布商品
2.1.1 需求:用户希望能够发布要出售的商品,包括图片、描述和价格。
2.1.2 功能:用户可以上传商品图片、填写商品描述、设置商品价格。

2.2 搜索商品
2.2.1 需求:用户希望能够搜索商品,根据类别、价格、地区等条件。
2.2.2 功能:用户可以通过关键词搜索商品、可以筛选搜索结果,可以按价格、新旧程度排序。

  1. 交易模块
    3.1 购买商品
    3.1.1 需求:用户希望能够购买商品,并通过安全的支付方式完成交易。
    3.1.2 功能:用户可以将商品添加到购物车并完成购买,可以通过第三方支付平台完成支付。

3.2 订单管理
3.2.1 需求:用户希望能够查看和管理我的订单状态。
3.2.2 功能:用户可以查看订单详情、可以取消未发货的订单。

4.反馈模块
4.1用户评价系统
4.1.1 需求:用户希望能够评价商品,以建立信任和提高安全性。
4.1.2 功能:用户可以对交易进行评价,可以是星级评分和文字评论。

4.2交易争议解决
4.2.1 需求:用户希望能够解决交易中的争议,并获得平台的支持。
4.2.2 功能:用户可以报告交易问题,平台提供争议解决流程。

5、选取待实现功能项
依据项目组能提供的总时间、功能模块的优先级以及模块之间的依赖关系,在Product Backlog中选取待实现的功能项,如下表:

功能项 时间 优先级
用户功能模块 一周
商品功能模块 一周
交易功能模块 一周
反馈功能模块 一周

Sprint Backlog

功能项 具体功能 功能分解 时间/h 功能总耗时
用户功能模块 注册和登录 设计用户注册和登录界面 1
创建用户数据库模型 0.5
编写注册和登录逻辑 2
个人资料管理 设计个人资料编辑页面 1
头像上传功能实现 2
编写用户数据更新逻辑 2 9
商品模块 发布商品 设计发布商品页面 1
创建商品数据库模型 0.5
实现图片上传功能 1
编写发布商品逻辑 1
搜索商品 设计商品展示页面 1
设计前端搜索条件组件 1
编写商品搜索逻辑 2 7.5
交易模块 购买商品 设计购物车页面 2
创建购物车、订单数据库模型 1
编写购物车状态变更逻辑 2
集成第三方平台支付 2
编写支付逻辑 1
订单管理 设计订单展示页面 1
编写订单状态变更逻辑 1 10
反馈模块 评价系统 设计商品评价展示页面 1
创建评价数据库模型 0.5
编写评价产生逻辑 1
争议解决 设计订单投诉页面 1
创建冲突订单数据库模型 1
编写争议订单处理逻辑 2
设计管理端处理争议订单的页面 2 7.5
34

Alpha 阶段的核心任务汇总
核心任务 预计完成时间
需求分析(任务 1.1 和 1.2) 第1周
数据库设计(任务 2.1) 第2周
后端系统架构设计(任务 2.2) 第2周
前端界面设计(任务 2.3) 第2-3周
用户注册与登录(任务 3.1.1) 第4-5周
商品上架与管理(任务 3.2.1) 第5-6周
图片上传功能(任务 3.2.2) 第6周
即时沟通功能(任务 3.3.1) 第7-8周
订单管理(任务 3.3.2) 第8周
单元测试(任务 4.1) 第9周
集成测试(任务 4.2) 第10周

时间安排总览
1.第1-2周:需求分析和数据库、架构设计
2.第3-6周:用户、商品、沟通等核心模块开发
3.第7-8周:即时沟通、订单管理开发
4.第9-10周:系统测试与集成

甘特图:

四、测试计划
1、测试策略概述
目标:通过系统化的测试,发现并修复平台的功能性、性能和安全性问题,确保高质量的用户体验和稳定的系统性能。
测试类型:
1.功能测试:验证每个功能模块是否按照需求正常工作。
2.安全性测试:保障用户数据的安全和平台的隐私保护措施。
3.用户体验测试:收集用户反馈,优化界面交互和流程设计。
4.性能测试:测试系统的响应速度、负载承受能力,确保在高并发情况下的稳定性。
2、测试内容
2.1功能测试
用户注册和登录:验证注册和登录流程,找回密码功能的可用性。
商品发布与管理:确保商品发布、编辑、上架、下架等操作正确执行。
商品浏览与搜索:验证商品搜索、筛选、排序的准确性。
即时聊天:测试聊天消息的发送和接收功能,确保及时通知到达。
用户评价系统:验证买家评价、评分展示的准确性。
收藏和关注:测试商品收藏和卖家关注的功能,确保信息的正确保存和展示。
个人中心和数据管理:验证订单管理、个人信息修改、隐私设置等功能。
管理后台:测试管理员的用户、商品管理和统计分析功能。

2.2安全性测试
数据加密:验证用户信息和密码的加密存储。
权限控制:检查用户隐私设置和后台权限管理,确保没有未授权访问。
防止攻击:进行SQL注入、XSS攻击、CSRF攻击的模拟测试,确保系统抗攻击能力。

2.3用户体验测试
界面测试:验证页面布局、按钮、文本等设计的用户友好性。
交互流程:观察用户在注册、发布商品、聊天等核心流程的操作,确保流畅性。

2.4性能测试
加载速度测试:验证页面加载时间和资源加载速度,尤其是商品搜索结果和图片。
并发测试:模拟高并发访问,尤其是即时聊天、商品发布和搜索功能,确保系统承载能力。
数据库性能:测试高频数据库操作,检查查询、插入、更新的速度,保证数据访问效率。

3、测试流程
测试计划制定:根据项目进度制定详细的测试计划,包括每个模块的测试时间、目标、内容等。
单元测试:由开发团队编写并执行单元测试,确保各个模块的基本功能实现。
集成测试:对多个模块的集成功能进行测试,确保各个功能模块能够正确协作。
系统测试:全面测试所有功能模块,验证平台的完整性和业务逻辑的正确性。
用户体验测试:邀请部分真实用户或内部团队使用产品,收集反馈以优化界面和操作流程。
回归测试:在发现并修复问题后,进行回归测试确保修复未引入新问题。
验收测试:在系统上线前进行最后的验收测试,确认所有核心功能按预期工作。
性能与压力测试:使用自动化测试工具模拟高并发场景,测试系统的负载能力和稳定性。

4、工具与环境
测试工:可使用Postman、JMeter等工具进行API、性能等测试。
测试环境:搭建与生产环境相似的测试环境,包括数据库和服务器配置,确保测试结果的准确性。
5、测试报告与反馈
报告生成:每轮测试结束后生成测试报告,包括测试的成功率、失败的用例、性能数据等。
问题跟踪:使用Bug管理系统(如JIRA)记录、跟踪和分配问题。
反馈与改进:基于测试结果,安排修复、优化和重新测试,确保在下个版本中提高产品的质量和稳定性。

posted @ 2024-11-06 16:59  littleyue  阅读(47)  评论(0编辑  收藏  举报