个人作业——软件产品案例分析(华为软件开发云评测)
第一部分 调研评测
评测:
上手体验
- 看到这次评测作业是评测"华为开发云",觉得肯定很高大上,毕竟是华为开发的软件。于是去酷安上搜索,Er...居然找不到,好吧~那就去百度上搜搜看
- 这。。。。为啥没找到下载链接??????好吧~换个关键词“华为软件开发云Android下载”再点击了3,4个结果后,终于找到了,这隐藏的有点深啊
- 安装之后打开,界面给人的第一感觉是很清爽
- 然后注册登录,Er。。。。感觉有点空空的,而且为什么在“区域”界面的右下角要有“新建工作项的工作图标”????不是很懂
- 为什么项目不能删除的???
- 总结:首先吧,我认为这个APP应该在各大应用商店上上架,这样比较方便用户下载,同时也能带来用户量的提升。设计方面:整个界面UI感觉挺不错的,就是内容给人一种空空的感觉,而且有些地方的设计使我非常不能理解,比如就像上面所说的,我想更改帐户区域,为什么下面会有一个“新建工作项"的按钮?流畅性方面:整个软件用起来我认为有点儿卡顿,各个功能模块之间的切换都有一点延迟。总的来说,还是略有点小失望的。
寻找bug
- 第一个bug: 进入“用户登录”界面,点击“注册”,然后点击左下角的系统返回键,会卡顿一会,然后直接退出,不会返回到“用户登录”界面。(以下是复现bug的gif图链接)
看复现bug的GIF图戳我
-第一个bug可能是开发人员疏忽造成的,应该来说这是一个修改起来非常简单但是却非常影响用户体验的功能性bug. - 第二个bug:将工作项的领域修改为"网络安全",并将筛选模块设置为其他非网络安全,点击完成,工作项没有被筛选掉。推测帅选功能有问题。(以下是复现bug的gif图链接)
看复现bug的GIF图戳我
-第二个我认为应该是“筛选”功能的代码写的有问题。
我们应该注意什么
这个软件以我们目前的代码水平应该还是挺复杂的。我认为要开发这款软件的话,首先前期的架构一定要设计的比较妥当,要考虑到软件的可拓展性,不然如果等到后期出现了问题修改起来将是非常麻烦的一件事。部署运维要考虑到多人并发性,想清楚软件面向的是多大的人群,合理配置服务器,并设置一些技术方面的预备方案,防止意外情况的发生。微服务方面则要根据我们的业务能力来配置,能力模型粒度的设计要比较完善,否则后期将会付出很大的代价。
采访
采访对象的背景和需求
采访对象:一位不愿透露姓名的邹某
背景:资深游戏玩家,经常活跃Steam平台以及LOL平台,长期的竞技游戏使他的思维异常敏捷;学习能力强,有着深厚的代码功底,是我们班的代码小王子。
需求:需要一款能进行代码规范检查,提供一体化的测试功能,查错,有中文界面,能够进行分布式团队项目开发的平台。
采访对象照片
受访对象的体验
用户的问题部分得到了解决。邹某认为数据量方面是足够的;界面不怎么符合他的审美标准,一些设计也有问题;功能方面,华为软件开发云提供了六大云工具,大大提升了程序员的开发管理效率,但是与其它测试管理软件相比的话,功能特性不是非常明显,还有就是缺少一些用户自定义功能报表模块。用户体验方面就是速度稍慢,软件界面切换的时候卡顿感还是比较明显的。
用户的改进意见
邹某希望软件先能够把已有的功能进行完善,增加一些用户工作日报,周报模块;在软件的界面设计方面进行小幅度的修改,修改那些反人类的操作;优化软件的性能,使其更加流畅。
结论
一般
第二部分 分析
考虑到计算机大学毕业生大都没有软件开发实践的经验,所以我认为开发出这个软件至少需要半年时间,这还是假设这6个人的代码能力比较强的情况下。
劣势:和Github相比的话,用户量不够多,导致平台上开源代码较少。
优势:有中文界面,并且功能比Github多,界面比Github友好。
建议:可以提高团队在软件工程方面的实践能力。
功能逻辑框图
功能模块 | 重要度 | 完成度 | 完成度说明 | 出发点 | 效果 |
---|---|---|---|---|---|
项目模块 | 1级 | 75% | 没有项目删除功能 | 管理项目 | 80% |
待办模块 | 3级 | 75% | 标价为已解决的工作项依然在待办工作项中 | 展现出未完成的工作项 | 70% |
添加模块 | 1级 | 87% | “新建工作项”这一子功能模块在不该出现的界面出现 | 添加反馈,项目,工作项 | 90% |
消息模块 | 2级 | 75% | 不能查看具体修改了哪些内容,消息不支持删除 | 查看有哪些人改动了项目 | 70% |
个人设置模块 | 3级 | 50% | 不支持修改个人信息以及更换头像 | 设置自己的个人信息 | 60% |
(备注:重要度1级最高,3级最低)
评分
维度 | 评分 |
---|---|
用户体验 | 70分 |
UI美观度 | 75分 |
核心功能 | 80分 |
第三部分 建议和规划
如果你是项目经理,如何提高从而在竞争中胜出?
如果我是PM,首先肯定要增加一些对程序员来说非常便捷的功能,软件的稳定性是也我比较看重的,UI方面的话倒是可以不用费太多心思,但也不能太丑,因为对于程序员来说,一款开发云平台软件首先就是要方便,稳定;程序员往往不是特别看重软件的UI。
目前市场上有什么样的产品了?
主要有JIRA,Github,腾讯云,Cloud Foundry,禅道、BUGFREE等产品。
你要设计什么样的功能?
通过我这几天对华为软件开发云的使用,我发现它好像没有插件扩展的功能,所以我想增加一个“插件扩展”功能。
为何要做这个功能,而不是其他功能?
因为插件这东西就像积木一样,当你需要这个功能的时候,可以把它插进软件中,不需要的时候可以删除掉,这样既可以增加软件的功能,又可以防止软件变的过于臃肿。而且,全球任何人都可以开发功能插件,我们所要做的就是进行插件审核。
为什么用户会用你的产品/功能?
插件扩展带来了极大地方便性,提高了程序员的效率,使之成为广大程序员的福音。使“插件扩展”成为我们的杀手锏级功能,自然就会有用户来使用我们的产品。
你的创新在哪里?可以用 NABCD 分析。
Need:通过网上搜索可以发现,大家对于有插件扩展功能的中文DevOPs平台的需求还是非常大的。
Approach:增加“插件扩展”功能,同时要考虑安装插件之后软件的稳定性以及要考虑到各插件之间是否会发生冲突的问题。
Benefit:增加了"插件扩展"功能可以让程序员根据自己的需求来扩展功能,而不会使软件变的臃肿卡慢。
Competitors:市场竞争还是相当的激烈的,部分国外的DevOPs平台已经有“插件扩展”的功能了,但是他们并没有推出中文版的软件。因此,我们主要是与国内的DevOPs平台进行竞争,根据我们的调查,目前国内的平台还没有支持"插件扩展"。
Delivery:在互联网上投放广告,主要宣传点是“免费”“插件扩展”“中文”,免费主要是为了增加用户基数,等到用户基数足够庞大,且对我们的软件形成一定的粘性之后,再增加一些高级功能来收费。
如果你来领导这个团队,会有什么不一样?
如果我来领导这个团队的话,我将在我们的团队中引入一些优秀的团队文化,以促进开发人员更好地去开发这款软件。
如果你的团队有5个人, 4个月的时间,你作为项目经理,应该如何配置角色(开发,测试,美工等等)?
开发方面分配3个人,然后1人负责测试(开发人员开发完了也可以去测试~),美工分配1人(毕竟我们的软件不是主打界面方面的,所以界面只要跟的上主流就OK)。
描述你的团队在16 周期间每周都要做什么,才能在第16周如期发布软件,大小里程碑绩点设定。
第1周主要进行需求分析,以及界面原型的设计;第2周进行架构设计;第3周第10周进行软件开发;第11周Alpha版本的提交以及测试;第11周第15周进行Beta阶段的开发,修复之前的bug及优化性能;16周提交Beta版本,验收,发布。