zoukankan      html  css  js  c++  java
  • 个人作业——软件产品案例分析

    软件产品案例分析

    第一部分 调研,评测

    评测:

    软件的bug,功能评测,黑箱测试

    1.下载并使用,描述最简单直观的个人第一次上手体验。

    注册时候用户名试了很多个才通过,为什么不用手机号登陆呢,用户名为了避开重复的而试出来的容易忘记- -得记小本子。
    登录后,网页版觉得UI不错,简洁清楚不花哨,就是功能有点多,不知道从何下手。

    2.按照描述的bug定义,找出几个功能性的比较严重的bug。用专业的语言描述(每个bug 不少于 40字),如有必要,可以配图.

    bug软件的缺陷,可以分解为:症状(用户角度看软件出什么问题了),程序错误(代码角度看代码什么错误导致了软件问题),根本原因(导致代码错误的根本原因)。
    5个bug如下

    • 登录时输入手机号密码,发现手机号+密码不能登录,只能用用户名+密码,且并没有明确提示只能用户名登录。

    • 分组类型不对应,工作项分组页面中有feature、story、task、bug共4种,工作项详情中选择类型却只有2种。

    • 项目点击右边的爱心(关注)没问题,进入项目后,对其工作项点击关注却出现闪退,试了多次都是闪退。

    • 在app建了两个项目,打开web端,发现并没有新增的项目,同样web端建的项目app也没更新,web端和app信息不同步

    • 登录后,看到了默认头像,刚开始以为可以修改,可是发现点击无效,设置中只有清除存储空间,并没有更换头像的设计

    3.你觉得为什么这个产品组的人没有发现这些bug?

    • 可能是产品组的人员还没开发完全,比如:web和app信息不同步和出现了闪退情况
    • 测试人员没测试全面,比如:分组种类和设置类型种类不对应
    • 开发时候未考虑周全,比如:手机号登录比用户名方便,更换用户喜欢的头像之类的问题

    4.假设你们团队需要开发这套系统,需要注意哪些方面(架构、部署运维、微服务等)

    如果我们团队需要开发这套系统,可以采用微服务架构模式

    • 将这个庞大的整体应用分解成一组服务。整体功能没有改变的同时,将应用程序分解成可管理的模块或服务。每个服务可以由几个人独立开发,然后各自专注于某个服务。注意遵守API约定即可。
    • 微服务的部署需要注意:1)能够独立于其他微服务部署;2)必须能在每个微服务级别做扩展;3)能快速构建和部署;4)一个微服务的故障不得影响任何其他服务。
    • 同时也要注意安全方面的保护

    采访:

    第8章 用户调研,12 章 软件的用户体验,相信每个同学的朋友中一定有人需要用这样的软件,记载你对这位用户的采访。例如使用下面的采访提要:

    1.介绍采访对象的背景和需求(他们有没有用过这个APP或类似的APP,除了现有的功能还有别的需求么)
    用过github。有参与团队项目开发的需求。

    2.让采访对象使用华为软件开发云(请上传照片证明用户的确正在使用,远程采访的同学请让别人帮忙照相)

    3.描述用户使用这个产品的过程, 用户的问题解决了么?软件在数据量/界面/功能/准确度上各有什么优缺点?用户体验方面有问题么?
    基本满足需求。觉得软件数据量丰富,界面简洁大方,功能强大但寻找费时,app较web端弱些,比较卡。中英切换,使用起来方便、亲切,体验感还行。

    4.用户对产品有什么改进意见?
    app界面切换更流畅些,布局设计上希望能让用户更方便找到所需的功能。

    5.结论:经过这么多工作,你一定有充分的理由给这个软件下一个评价,请选择一个结论:
    一般

    第二部分 分析

    参考 8.6 节 对工作的估计, 和14.1 节 软件工程的质量

    使用此软件的大部分功能,联系第二部分的分析,

    1.估计这个项目做到这个程度大约需要多少时间(团队人数6人左右,计算机大学毕业生,并有专业UI 支持)。
    功能较多,不断完善,应该需要6个月

    2.分析这个软件目前的优劣(和类似软件相比),并推理出团队在软件工程方面可以提高的一个重要部分(具体建议)。
    和类似软件相比,

    • 优点:功能齐全,中英切换。
    • 缺点:页面切换不流畅,没有划分服务群体。
    • 具体建议:提高用户体验流畅性,针对不同群体进行划分,配套教程视频。

    3.根据理解和体验,画出整个软件所有功能逻辑框图,根据重要度标识出各模块的重要度、完成度、出发点及效果

    4.针对不同的维度评分,对用户体验方面、UI界面美观度、核心功能,分别打分。

    • 用户体验方面:7分
    • UI界面美观度:8分
    • 核心功能:7分

    第三部分 建议和规划

    参考《构建之法》第8章 功能的定位和优先级;第9章 项目经理

    这个软件有很多可以提高的部分。

    1.如果你是项目经理,如何提高从而在竞争中胜出?
    提升页面加载的速度,专注于核心功能,针对不同用户群体,增加宣传。

    2.目前市场上有什么样的产品了?
    github
    teambition

    3.你要设计什么样的功能?
    受模拟校园生活的游戏app的启发,我想设计给新手指导的模拟游戏功能。

    4.为何要做这个功能,而不是其他功能?
    初次使用,功能繁杂,上手慢。如果有个游戏功能,模拟这个使用流程,既有趣又上手快。

    5.为什么用户会用你的产品/功能?
    在模拟游戏上花费时间少于自己摸索百度的时间,效率高。

    6.你的创新在哪里?可以用 NABCD 分析。

    • N:新手用户不熟悉该软件,功能较多,使用起来不方便。
    • A:设计一个模拟使用该软件的游戏功能。
    • B:新手用户可以更快上手,不需要每次都去百度功能使用方法。
    • C:相比于其他的软件,易上手,可以留住更多想尝试刚接触的新用户。
    • D:做广告,将生活中的好友拉入。

    7.如果你来领导这个团队,会有什么不一样?
    我会更注重反馈,通过用户的体验感不断完善改进。

    8.如果你的团队有5个人, 4个月的时间,你作为项目经理,应该如何配置角色(开发,测试,美工等等)?

    • 开发:3人,1人前端,2人后台。
    • 测试:1人,测试人员前期可以参与开发设计,熟悉项目。
    • 美工:1人,要求有美工功底,体现产品独特风格。

    9.描述你的团队在16 周期间每周都要做什么,才能在第16周如期发布软件,大小里程碑绩点设定。

    时间 内容
    第1周 撰写需求规格说明书
    第2周 UI设计
    第3周 编码规范完成,平台环境搭建
    第4-6周 编码,测试,项目管理同步推进,发布alpha版本
    第7-10周 项目完善,用户使用反馈,测试计划改进
    第11-13周 测试,项目管理推进,发布beta版本
    第14-15周 正式版本完善,用户手册
    第16周 正式版本发布,撰写宣传文案推广

    10.项目发布后,有没有考虑过项目该怎么部署才能满足需求。依据下图(某校教务处系统的部署)作为参考,分析16周后你所完成的项目上线需要哪些配套设备(服务器、带宽、数据库需求数量与配置) 。

    • 应用服务器配置:4核8G * 4
    • 后端服务器配置:8核16G * 4
    • 数据库服务器: SQL Server/ Oracle/MySqI 数量:5(备份2)
    • 缓存数据库:Redis数量:3(主备)
    • 网站安全性:WAF. DDOS
  • 相关阅读:
    【流量劫持】SSLStrip 终极版 —— location 瞒天过海
    【流量劫持】沉默中的狂怒 —— Cookie 大喷发
    【流量劫持】SSLStrip 的未来 —— HTTPS 前端劫持
    Web 前端攻防(2014版)
    流量劫持 —— 浮层登录框的隐患
    流量劫持能有多大危害?
    流量劫持是如何产生的?
    XSS 前端防火墙 —— 整装待发
    XSS 前端防火墙 —— 天衣无缝的防护
    XSS 前端防火墙 —— 无懈可击的钩子
  • 原文地址:https://www.cnblogs.com/jiuling/p/7953797.html
Copyright © 2011-2022 走看看