软件产品案例分析 ——华为软件开发云

产品:华为软件开发云的web端和移动端(Android端)

第一部分 调研,评测

测评:

第一上手体验:

  • 首先是web端(win10,Firefox浏览器)先说下正确找到这个网站的感受,通过百度搜索进入的华为软件云好像和软件demo文档里的网址不太一样= =,貌似是两款产品,通过百度收到的是华为提供的云服务器,而这次体验的是管理软件开发流程和代码的平台,不晓得为啥这个百度搜不到。。
    接着说下对web端的直观感受

首先大体上就是分为两大块:我的项目和我的工作项,工作项采用泳道图的形式,简洁明了,且在UI配色上相对活泼一点,很赏心悦目。

  • Android端(测试机型:小米5,Android7.0,MIUI9)
    说下下载体验,各大应用商店搜不到,百度也搜不到,最后还是去软件开发云官网里下载的,如果要扩大用户量的话建议要和各大应用商店合作一下。

Android端给我的第一印象也是简洁明了,底栏五个功能按键已经把能在手机上管理软件开发的功能都囊括了,包括查看和简单地办理事项。主要还是以web端为主,Android端为辅。

  • bug反馈:
    web端bug暂没发现
    Android端发现一个不知道是不是bug的bug,是和同学在模拟项目管理时发现的。假设A是owner,他新建了一个项目demo,然后他邀请B(不是owner)加入,给B安排了一个任务UI设计,即把处理人设为B,可是B竟然能修改处理人,也就是他可以不懂声色的修改处理人为别人。我觉得如果这不是bug而是刻意为之的话,那我感觉项目管理会出乱子吧,别的项目管理平台修改负责人都只能是owner。有点权限越界的感觉。

  • 假设你们团队需要开发这套系统,需要注意哪些方面?
    假设我们团队需要开发这套系统,需要注意架构方面的问题,因为一个架构的好坏,影响到整个软件系统运行的好坏,并且与以后的维护更新更是密切相关。

采访:

  • 背景和需求:
    采访对象:郑珍发同学
    背景:优秀的新时代大学生
    需求:正在被软工团队作业困惑,苦于寻找团队软件开发及管理平台
  • 采访对象使用华为软件开发云
  • 描述用户使用这个产品的过程, 用户的问题解决了么?软件在数据量/界面/功能/准确度上各有什么优缺点?用户体验方面有问题么?
    该软件很好地解决了团队项目分工组织管理和代码托管,并且可以模拟不同机型进行测试,很好用。只是稍微有点小bug,例如成员可以修改其所负责的任务的时间和成员,这有点不能理解,如果成员悄悄修改了deadline,那项目负责人不就麻烦多了吗?不过总体上还算好,交互也很不错,团队管理的需求都是可以满足的。
  • 用户对产品有什么改进意见?
    建议修改为团队成员(不是owner)不能修改任务的人员和时间。
  • 给这个软件下一个评价
    推荐

第二部分 分析

  • 使用此软件的大部分功能,联系第二部分的分析,估计这个项目做到这个程度大约需要多少时间(团队人数6人左右,计算机大学毕业生,并有专业UI 支持)。 分析这个软件目前的优劣(和类似软件相比),并推理出团队在软件工程方面可以提高的一个重要部分(具体建议)。
    我觉得大概需要3到4个月的时间。
    目前这个软件的优势在是一个一站式团队软件开发管理平台,所有和软件开发流程相关的都可以在这个平台上很好的实施,而且UI比较生动活泼,还是中文版,不是很专业的人士也可以快速入手。劣势在于还有些小bug,比如上面提到的权限越界问题,还听同学讲iOS端app经常卡死,还需要优化下。
    我觉得软件测试这部分要加强下,毕竟我没事使用多长时间都可以发现bug了。

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

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

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

第三部分 建议和规划

  • 如果你是项目经理,如何提高从而在竞争中胜出?
    首先我觉得身为项目经理,最重要的职责是关注如何执行计划以按期交付产品。如何探索定义有价值、可用的、可行的产品且让产品有竞争力的设计其实应该是产品经理的职责。不过如果让我也参与其中,我觉得应该要做到能一站式管理一个软件工程的开发,包括项目管理分配,成员沟通,代码文件托管,迭代记录,并且给代码提供测试,约束代码规范,并且可以在这个平台上通过模拟不同的设备来测试软件代码。我觉得这样的软件开发及管理平台就很完美了。接下来的任务就是用心做产品,用优质的产品质量在竞争中突出。

  • 目前市场上有什么样的产品了?
    类似的软件开发及管理平台,例如:Github、禅道项目管理软件、TeamLab、ProjectForge、Redmine、IBM Rational等等,各有特色,却很少能够提供一个基于服务、傻瓜式应用的平台。

  • 你要设计什么样的功能?

    项目管理,包括任务分配,日程安排,流程图等,并且有成员沟通,代码文件托管,迭代记录,并且给代码提供测试,约束代码规范,并且可以在这个平台上通过模拟不同的设备来测试软件代码。

  • 为何要做这个功能,而不是其他功能?
    因为我感觉这些功能都是优秀的软件开发及管理平台所应该拥有的,一站式托管项目,方便产品经理管理项目,催催成员,验收;也方便成员查看任务完成情况,方便提交代码,检验代码规范和测试。

  • 为什么用户会用你的产品/功能?
    一站式管理,很方便,在UI上我们也会下足功夫,包括每个细节的动画交互效果,不会让用户审美疲劳。

  • 你的创新在哪里?可以用 NABCD 分析。
    创新点在于我们项目管理变得简单,能够提供一个基于服务、傻瓜式应用的平台,非专业人士也可以很好的使用。

  • 如果你来领导这个团队,会有什么不一样?
    尽力吧,没领到过软工团队,尽量不要做得比现在这个差。

  • 如果你的团队有5个人, 4个月的时间,你作为项目经理,应该如何配置角色(开发,测试,美工等等)?
    第一个月,一起商讨项目细节,制定方案,分配人员,美工一个人,开发三个人(后端两个,前端一个),测试一个人。后面三个月,全力开发测试。

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

    • 第1~2周:项目规划,需求说明书
    • 第3~4周:软件原型设计,分配工作,前后端接口确定
    • 第5~12周:全力开发
    • 第13~16周:测试,修改bug,宣传推广方案设计
  • 项目发布后,有没有考虑过项目该怎么部署才能满足需求。依据下图(某校教务处系统的部署)作为参考,分析16周后你所完成的项目上线需要哪些配套设备(服务器、带宽、数据库需求数量与配置) 。

    • 应用服务器:8核16G*10
    • 后端服务器:16核32G*14
    • 关系型数据库:MySQL数量:8(读写分离6,备份2)
    • 缓存数据库:Redis数量:6(主备)
    • 网站安全性:WAF、DDOS
posted @ 2017-11-30 22:38  wujunyi  阅读(424)  评论(1编辑  收藏  举报