个人作业——软件产品案例分析

做这篇博客诚惶诚恐,有点关公面前耍大刀的感觉。谦虚使人进步。我下面所提出的观点纯属个人看法,请多多指教。

第一部分 调研,评测

  • 1.评测:

    • 1.软件的bug,功能评测,黑箱测试
      • 下载并使用,描述最简单直观的个人第一次上手体验。
        和teambition的界面功能类似,(安卓端类似),电脑端的功能感觉更强大,app端有的地方加载速度慢。比如新建工作项目的时候。我觉得变成透明的加载进度圈用户体验性会更好。

      • 按照描述的bug定义,找出几个功能性的比较严重的bug。至少两个。
        首先我先说可能我找的不算bug可能,但是个人感觉影响用户体验的我找出来。
        1.在待办事宜中,新建了一个工作项,点击进入工作项,这里我觉得有三处,
        第一人们容易把评论的那两项显示评论和新建评论的那两个搞混。我总会去点那个评论的TextView,因为引导性太强。

        第二在我新建评论后,当我点击查看更多之后,那个新建工作项的悬浮窗会遮挡住评论,导致查看评论会受影响。。

        第三当我添加评论的时候并没有提交评论按钮。而是用键盘下面的回车按钮。觉得很不人性化。有评论字眼的那个TestView(一中所说的)不是提交评论按钮,每次我都下意识点击那个框。 如果第一次的使用的用户我觉得不可能知道是用回车提交评论。是否可以有一个发送按钮?

        第四是界面Bug首先看项目这一栏,头上的系统显示栏没有,但是在我的这一栏,又出现了系统显示栏。这里是否是XML中背景颜色问题或者背景照片问题。


        第五状态这里选择已解决是否应该在首页的工作项目中显示其状态或者在项目名称上直接划一横表示已解决作为在待办这一栏中的区分。

        第六在项目里显示了已解决那么待办这里是否冲突呢?


        第七模块功能只能在web端进行操作,是否能够在app端加入新建模块功能。我如果是一开始接触到app端而没有对web端进行操作根本不知道是在web端进行操作app端才会显示。

      • 用专业的语言描述(每个bug 不少于 40字),如有必要,可以配图.
        我就写一个的专业的bug描述吧,模板是网上找的。知乎:怎样用简洁又清楚的语言将 bug 描述清楚?
        此处描述第四个bug
        1.标题:导航栏前三个碎片顶部系统通知变为白色,最后一个碎片恢复正常。
        2.测试人员姓名:杜实得
        3.缺陷报告提交的时间:2017.11.28
        4.缺陷的等级:轻级
        5.缺陷的优先级(等级表明缺陷的严重程度,优先级表明修复缺陷的优先程度):中级
        6.测试环境(包括但是不仅限于使用的设备名称,测试标的物的版本,操作系统的信息。等等一切相关信息):小米note,华为云3.12.2.8,Android7系统。
        7.缺陷发生的位置(模块):每一个fragment的顶部,就是导航栏的最顶部。发生在项目,待办,消息模块中。
        8.预期结果:正常显示系统显示栏。像附件中所显示的。
        9.实际结果:系统导航栏全部被遮挡为白色。
        10.重现步骤:打开app依次点击项目,待办,消息,我的,观察上方。
        11.备注:可能只有小米手机有此bug,或者我的手机有此bug。
        12.附件:

      • 你觉得为什么这个产品组的人没有发现这些bug?
        1.可能是开发时间匆忙。
        2.可能是UI审核人员没有注意这些细节。
        3.可能是他们想的和我想的不同,思路不同也就成了BUG。
        4.运用不同的手机测试的,可能开发团队的测试机没有bug,但是使用者的某款手机有bug。

      • 假设你们团队需要开发这套系统,需要注意哪些方面(架构、部署运维、微服务等)
        这方面不太懂,有些词汇还需要细细琢磨,正所谓不能不懂装懂。如果说网络上哪个词强调的最重要,那就是部署运维这个关键词里的自动化运维。

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

    • 介绍采访对象的背景和需求(他们有没有用过这个APP或类似的APP,除了现有的功能还有别的需求么)
      计算机专业2015级学生,对于大多数程序员来说确实需要一款适合的一个平台作为开发的规范化,人们需要这样并且需要规范,例如遵循软件工程的规则,而华为云正是遵循着这样的规则。

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

    • 描述用户使用这个产品的过程, 用户的问题解决了么?软件在数据量/界面/功能/准确度上各有什么优缺点?用户体验方面有问题么?
      解决了,他自己对于这部分熟悉了之后就可以推广给其他人,在一开始就进行需求分析原型设计代码维护测试都在上面进行。
      web端做的比较全面,但是app端还有待改进。有些功能只能在web端进行。但是对于测试这一块希望多多增加机型,有时候想在真机的同品牌的手机上测试结果发现只有那么几款,真的很不方便。还有对于一些功能太过深奥上手不易。

    • 用户对产品有什么改进意见?
      希望能优化一些web端功能,比如选择模块创建的时候,还要去上面找,及其不合理。

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

第二部分 分析

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

  • 1.使用此软件的大部分功能,联系第二部分的分析,估计这个项目做到这个程度大约需要多少时间(团队人数6人左右,计算机大学毕业生,并有专业UI 支持)。 分析这个软件目前的优劣(和类似软件相比),并推理出团队在软件工程方面可以提高的一个重要部分(具体建议)。

    • 1.对工作的估计:
      • 1.人员的因素
        我觉得如果按我们软工实践的阿尔法版本和贝塔版本的进度,根据田忌赛马,可能会有好马,一般马,不好的马。如果6个人都很熟练都有开发经验,那么我想两个月之内应该能完成。给它的系数为1,如果都是毕业生并没有什么开发经验,但是基础很好,那么我想要三个月吧,系数为5,如果是都是不怎么熟练且什么都不行,那么根本就可能开发不出来。系数为10。
      • 2.产品的因素
        我觉得华为云作为一个华为公司的子项目,那么它的用户量是非常大的。它通过web端和app端结合实现对整个软件工程流程的实现,从需求分析到系统设计,编程测试及维护。差不多实现了整个流程。可以说是很复杂的。而且肯定是一年365天都要运行的,所以系数为5。
      • 3.项目的因素
        大家都在一起办公,我们做的其实有一点其他项目管理工具的影子,并不是全新的领域,而且其他项目管理工具使用简单,大家在开发期间每天一个站立式会议,进行交流,时间不紧张,所以综合起来系数为4.
      • 4.平台的因素
        如果做起来的话,应该是分布式存储,并且编译工具语言不能改变,这样才能保证稳定。这样的系数为6。
        所以,如果我们把人员的因素作为基础时间y0,那么y0的范围是(y0,y0f1f2....fn)也就是9---18个月。如果我领导,到时候是不是黄花菜都凉了。
    • 2.优劣势
      个人觉得好处就是它web平台功能强大,包含了teambition这种专业项目管理的软件,又有它所不具备的测试规划代码检查等功能
      劣势就是app端和teambition界面功能相似,而且由于功能太强大web和app结合对于新手来说熟悉这一套流程要花费一点时间,短时间内上手有一点难度,但是难度不大。
    • 3.建议
      我觉得华为作为大公司里面的学长们也是很厉害的了,已经做得很好了,就像前面的bug似的根本已经找不出来什么大的bug了。如果说建议的话希望整个团队可以尝试在测试的时候多注意细小的地方多用几款机子测试不能只局限于自己平台上的有代表性的机子。测试要认真。
  • 2.根据理解和体验,画出整个软件所有功能逻辑框图,根据重要度标识出各模块的重要度、完成度、出发点及效果;

    重要等级、完成程度分为1-5:1为最低,5为最高
    那么项目模块重要等级为5,完成度为5,出发点是新建项目,效果是在首页显示创建好的项目。
    待办模块重要等级为4,完成度为4,出发点是新建父工作项,效果是在相对应的栏里显示未办父工作项。
    消息模块重要等级为2,完成度为5,出发点是点击聊天发送消息,效果是显示聊天消息
    我的模块重要等级为1,完成度为4,出发点事点击我的导航栏,效果是显示并出现四个选项。

  • 3.针对不同的维度评分,对用户体验方面、UI界面美观度、核心功能,分别打分。
    用户体验方面、UI界面美观度、核心功能分为1-5:1为最低,5为最高

用户体验方面 UI界面美观度 核心功能
3 4 5

第三部分 建议和规划

参考《构建之法》第8章 功能的定位和优先级;第9章 项目经理 这个软件有很多可以提高的部分。

  • 1.如果你是项目经理,如何提高从而在竞争中胜出?
    如果我是PM那么我们来分析一下,这个东西刚做出来,如果借助华为的品牌那是可以的。如果不是品牌呢,那么就要在年轻人身上下功夫,推荐给高校的学生老师,尤其是老师,先推荐给老师,之后老师会在圈子里慢慢传,一个一个老师知道,后来企业也知道了,那么你的目的就达到了,至于如何认识老师,那就看你的人脉和交际能力了,这也只是一种推广方法,还有也可以用专业的人士来评测给我们的软件造势,当然这也是要花钱的。总结起来就是通过口口相传。再加上互联网公示宣传,在加上一会可能会是一个特色功能的与其他软件的不同,让我从竞争中脱颖而出。
  • 2.目前市场上有什么样的产品了?
    teambition、Tower.im、Worktile、trello他们都是专业的团队合作的软件,咱们的华为云与他们不同的就是加入了软件工程的思想,是专门迎合程序员的平台。
  • 3.你要设计什么样的功能?
    我想可能就是在app上加一栏类似CSDN的功能,也不要做太大,就是一个辅助功能,不要掩盖主要功能,但是加入这个功能我觉得会很多人用的,就冲华为的牌子。这个功能就是每个人可以通过发各种贴类似博客园或者CDSN那样的文章,发一些求助或者经验贴技术贴。上面有标签是某团队某项目的人所发的贴。类似这种交流的一个栏。
  • 4.为何要做这个功能,而不是其他功能?
    因为我觉得用CSDN也是用,如果华为云也有这个功能那为什么不用,在哪找经验都一样,而且最显著的特点是可以通过标签找到自己对应项目或者类似项目的经验或者求助帖,以便遇到类似问题的人进行交流。
  • 5.为什么用户会用你的产品/功能?
    可以解决他们的痛点,当分配的任务找不到目标的时候在其他博客网站找不到的时候,在这个功能里搜一搜,那么你就可能找到和你有同样经历的人或者经验。
  • 6.你的创新在哪里?可以用 NABCD 分析。
    传统的类似团队合作的软件或者博客园类似的平台并没有真正结合起来,他们相互独立,但是程序员们又都需要,所以我们为什么不把他们结合起来呢,但是这并不是主要功能,我们主要功能还是已有的功能,这个小功能可以和博客园合作开发一个接口加进去。或者导航栏加一行,说起来简单,这可能会牵扯到很多利益方面的事,这就不是我能考虑的了。
    用NABCD来梳理一下:
    • 1.N需求:我也不能算是创意,只是整合了两个功能。可以解决他们的痛点,当分配的任务找不到目标的时候在其他博客网站找不到的时候,在这个功能里搜一搜,那么你就可能找到和你有同样经历的人或者经验。
    • 2.A做法:就是在app上加一栏类似CSDN的功能,也不要做太大,就是一个辅助功能,不要掩盖主要功能,但是加入这个功能我觉得会很多人用的,就冲华为的牌子。这个功能就是每个人可以通过发各种贴类似博客园或者CDSN那样的文章,发一些求助或者经验贴技术贴。上面有标签是某团队某项目的人所发的贴。类似这种交流的一个栏。
    • 3.B好处:可以在一个地方边做项目规划边写博客。规划到哪想不起来了不知道怎么实现,请翻翻找找搜搜。
    • 4.C竞争:分两方面竞争,我们的已有功能是针对软件工程按照软件工程的流程来的团队合作,那么我觉得已经和其他合作软件一样甚至超过他们了。而新加入功能,虽然我们可能是新加入这个功能这个圈子的人,但我们的用户在使用我们的主功能的时候,这个小功能也就顺便用了。
  • 7.如果你来领导这个团队,会有什么不一样?
    我领导的话按上面第二部分的预计,我估计不同可能就是项目gg了。
  • 8.如果你的团队有5个人, 4个月的时间,你作为项目经理,应该如何配置角色(开发,测试,美工等等)?
    两个人前端分别是IOS端和Android端,一个人负责后端服务器的编写,一个人负责美工及测试,最后一个人负责web端。
  • 9.描述你的团队在16 周期间每周都要做什么,才能在第16周如期发布软件,大小里程碑绩点设定。
    第一周进行需求分析和原型设计,做出原型图,各自模块的划分和任务的分配,后端数据库的设计。及项目需求分析书。
    第二到第五周进行前端和后端的版本冲刺。每周进行站立式会议,说出这一周做了什么下一周做了什么,遇到什么问题,是否需要上级支援等。每天准时上传Git由我查看进度。在第五周设计出单机版的前端的功能总体app。第一阶段冲刺成功。
    第六到第十周进行前端与后端的对接,第七周服务器应该部署好,接下来进行对接,我自己感觉虽然按项目需求进行对接会好一点,但是前后端对接总会出现很多问题,所以我用一个月时间来搞。对接好了一个基本的app基本成型。
    最后第十一到十六周,就负责进行测试,前三个月都休息的UI设计师就要出来进行app的美化。测试等,剩下几个人就等待bug解决bug。最后第十六周成型交付使用。
    这里的前提用到第二部分,就是这些人都有丰富的编码开发经验。这是前提。
  • 10.项目发布后,有没有考虑过项目该怎么部署才能满足需求。依据下图(某校教务处系统的部署)作为参考,分析16周后你所完成的项目上线需要哪些配套设备(服务器、带宽、数据库需求数量与配置) 。
    这个还是不太懂啊。
posted @ 2017-11-30 22:45  zhendeaini  阅读(371)  评论(2编辑  收藏  举报