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


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

项目 内容
这个作业属于哪个课程 软件工程
这个作业要求在哪里 作业要求
这个作业的目标 需求改进+系统设计

PART 01 需求&原型改进(20分)

1.1 课堂启发

  1. ? 课堂讨论问题

    1. 问题:项目进展较慢

      ? 停止基础知识的深入学习,加快动手进度。

    2. 问题:目前软件功能比较单一

      ? 通过用户调查,添加些功能提升用户体验。

    3. 问题:软件使用流程说明不足

      ? 进一步改善需求说明书并构建典型场景阐明使用流程。

  2. 与目标用户沟通之后的改进

    1. 典型用户调查

      信息 描述
      性别 男
      年龄 21
      职业 学生
      收入 暂无
      身份 广工计算机学院大三学生
      知识层次和能力 本科在读,对软件应用比较熟悉
      使用目的 查找喜欢的电影
      用户偏好 电影库存多,介绍详细
      典型场景 无聊时查找电影观看
      典型描述 根据电影推荐查找电影观看
      信息 描述
      性别 女
      年龄 19
      职业 学生
      收入 暂无
      身份 广工外国语学院大二学生
      知识层次和能力 本科在读,对软件应用比较熟悉
      使用目的 观看一些电影介绍
      用户偏好 电影介绍生动多元
      典型场景 老师要求写影评作业
      典型描述 观看电影影评以及查找类似电影
      信息 描述
      性别 女
      年龄 45
      职业 某公司部门主管
      收入 1.5w/月
      身份 上班族
      知识层次和能力 本科学历,较少网上冲浪
      使用目的 找电影看
      用户偏好 操作方便且简单
      典型场景 下班无聊看电影
      典型描述 根据电影推荐查找电影观看

      调查过程图片:

    2. 用户需求分析

      需求 方案
      用户在使用电影推荐软件的过程中,希望能够更看到电影更多元化的展示。 1. 增加一些专业影评:
      增加这部分主要出于让用户可以更加全面了解某一部电影的目的,同时使得用户能够从多个角度去了解某一部电影。
      2. 增加查看电影截图功能:
      原本只能查看电影封面不足以让用户大致了解某一部电影视觉风格。所以通过截取一些电影的图片来完善这部分。
      大多数用户在使用电影推荐软件的最终目的都是观看电影 提供电影在线观看或者下载链接:
      出于提高用户体验感的目的。如果用户对某一部电影感兴趣,可以直接点击提供的链接进行观看或下载,节省了用户获取电影资源的时间。

1.2 完善需求规格说明书

  1. 改进说明

    • 修改部分 修改内容
      一、总体概述→2. 软件功能 根据用户需求增加了软件功能。
      一、总体概述→3. 用户分析 根据调查加入了用户画像
      一、总体概述→4. 模块构成 添加了各个模块的说明,使模块功能及意义更加清晰
      三、系统设计→1. 系统架构设计 添加了系统架构设计图,使需求说明更加清晰
      三、系统设计→1. 数据库设计 添加了数据库设计ER图
  2. 完善后需求规格说明书

  3. 用户场景构建

    • 背景
      • 典型用户:学生小宋
      • 用户需求:闲暇时间想要找一些电影看。
    • 场景
      • 小宋打开电影推荐网页准备查找电影,首先她输入了账号和密码注册了一个账号,接着输入账号和密码,登录了账号。
      • 小宋点开电影推荐板块,系统提示选择几个小宋喜欢的电影,小宋点击选好了自己喜欢的电影,系统根据小宋的偏好推荐了一些电影。
      • 小宋点击浏览了系统推荐电影的影评以及电影截图,选取了自己感兴趣的电影,点击系统提供的电影链接开始观看。

1.3 功能分析

外围功能 杀手功能
必要需求 第二象限:电影搜索功能 第一象限:登录注册系统;电影信息存储以及展示;电影推荐系统实现
辅助需求 第三象限:用户个人信息的增删改查 第四象限:界面优化,应该简单易用

1.4 项目进度计划

  1. 任务分解WBS

  2. 项目进度计划

    时间 安排
    10.25-10.31 组队、选题、团队博客
    11.1-11.7 需求规格说明书初步设定原型队员任务安排
    11.8-11.14 团队讨论——最佳原型改进架构设计,WBS,团队成员估计各自任务所需时间测试计划
    11.15-11.28 团队项目Alpha任务分配计划连续7天的Alpha敏捷冲刺,7篇每日Scrum Meeting博客+代码提交
    11.29-12.5 用户反馈+测试计划改进团队Alpha阶段个人总结团队项目Alpha博客:发布说明、测试报告、展示博客、项目管理
    12.6-12.12 团队项目Alpha博客:事后分析

PART 02 系统设计

2.1 系统架构设计

? 本项目需要实现的是基于协同过滤算法的爬虫电影推荐系统,需要解决电影信息的收集,推荐算法的实现和更加简洁的图形化界面。

? 根据组内成员对需求的分析,得出下图系统架构图。当中各个模块分别对应本系统的各个需求。

2.2 数据库设计

E-R图如下所示

PART 03 Alpha任务分配计划

3.1 Product Backlog & Sprint Backlog

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

Product Backlog Sprint Backlog
爬虫模块 爬取电影的类别、页面停留的时长、影评参与程度以及对电影的评分等数据
推荐算法模块 基于推荐算法给用户推荐其可能喜欢的电影。
数据存储模块 把爬虫爬取的数据导入到本地文件夹和数据库
用户登陆模块 跟数据库交互实现用户登录功能
ui界面模块 呈现用户的个人信息、修改密码选项以及按推送算法结果呈现该用户可能喜欢的电影

3.2 功能项任务分配

? 对已选择的功能项再做进一步分解,分解为1-10小时左右的任务,构成Sprint Backlog。在PM的协助下,编码的同学对任务进行认领。

任务 负责人 预计耗时
爬虫 徐国涛、潘百林、林俊斌 4h
爬虫数据存储 徐国涛、潘百林、林俊斌 2h
数据清洗 潘百林 4h
推荐算法相似度模块 潘百林 2h
推荐算法推荐模块 潘百林 6h
用户登录API 徐国涛、谭清允 1h
UI设计 马悦 2h
测试 曾聿昊 -
总结 - -

3.3 迭代冲刺计划(甘特图)

PART 04 测试计划(10分)

任务 负责人 预计耗时
测试程序功能是否正常 曾聿昊 1天
测试程序健壮性 曾聿昊 1天
测试系统稳定性 曾聿昊 1天
测试程序与文档之间是否有差异 曾聿昊 1天
测试任务 测试标准
功能测试 程序是否能按照预期完成正常的功能
健壮性测试 程序是否能对异常情况做出正确的处理
稳定性测试 程序是否能在各种各样的情况下正常运行
文档测试 程序的具体操作与文档是否有不符

相关