软件产品分析:华为软件开发云
整体用起来,网络好的时候web端也不是很流畅,点个栏目加载半天。这点令我不舒服。
1.1.2 功能性的比较严重的bug
- 测试下的测试管理,UI突变。并且,这个页面不知怎么的,特别难进,加载很久也不一定能进去。
加载的时候一闪而过的界面。可以看到这个页面是有风格一致版的界面的,但是不知怎的,最终打开的却是其他界面。
发现打开“部署”也是不同的UI界面,打开还挺快。另外,界面上面工具条的“部署”又是另一种风格的界面。看来风格不同是有意为之了? - 在工作->文档,上传文件,总是把连续的多个空格弄成一个空格。
- 左边工具栏,点击下拉框,总是会跳到下拉框里面的第一个子项。比如说点击“工作”旁边的箭头,总是跳转到“工作项”。
有趣的是,在第一个bug的UI里,点击“工作”旁边的箭头,是不会跳转到“工作项”的。这也证明了这是个bug,而不是“特性”。
没想到只是随便用用,1小时不到,就发现了一些严重bug。比严重bug更多的是大量的设计毛病。
1.1.3 产品组没有发现这些bug的原因猜想
- 估计是在“测试管理”下,风格一致版的界面出问题了,自动跳到以前版本的界面。每次都很难进入,估计是每次进入都要检查到界面出问题,然后设法跳到以前版本的界面,这个过程很花时间,甚至有点看运气。
- 产品组估计是想“空格去重”走火入魔了,哪里都要空格去重。但是在这里就出问题了。会出现这样的情况:
- 我不知道怎么解释了。。这已经相当严重了。
我想,估计这玩意压根就没人用,或者他们从来不维护免费版,或者从来不听建议,不然这些bug不该在这里的。
1.1.4 我们团队开发这套系统需要注意的方面
首先,数据的安全性是第一位的。我就遇到过一个事情,闲来无事打开手机端,唰的一下全平台的数据全没了,它后台都不带保存的。那次事情使我明白备份数据的重要性,也让我明白后台不安全的平台都不值得托付。对于企业来说,还要全力防止泄密。
其次,需求是开发组考虑的第一位。什么类型的用户需要什么,为将来可能出现的需求预留哪些东西,时刻都要明确。
最后,别想太多、做太多。软件开发云,谁都用明星产品,学生的软件免费都不会有人用,更别说收费了。说难听一点,这种东西做出来也就自己玩玩。所以了,别一开始就想搞高大全,先把几个核心功能做精了再说,别搞得最后一堆毛病华而不实。
1.2 采访
1.2.1 采访对象的背景和需求
软工实践学生。
为了做这个作业也用过此软件,同时开发作业中使用teambition。用过github。
需要使用此类软件来解决开发过程中的协调问题。
1.2.2 采访对象使用华为软件开发云
使用安卓app版:
1.2.3 采访对象需求与问题的解决情况
未解决。
1.2.4 软件在数据量/界面/功能/准确度上的优缺点
数据量:小。
界面:还行吧,app界面简洁。
功能:尚可。
准确度:尚可。
1.2.5 用户体验方面的问题
切换页面太慢了,比qq空间都慢。
1.2.6 用户对产品的改进意见
qq空间数据量比较大,切换页面慢情有可原。但是这个app只是个人的数据,切换都这么慢,真的很影响体验。首先先解决速度的问题再说其他的吧。
1.2.7 对该软件的总评
不推荐。
2. 分析
2.1 该项目在大学生团队里实现,大致需要的时间
大概6个月吧,当然咸鱼队另当别论。
2.2 和类似软件相比,该软件的优劣
优势:功能全面,扩展功能繁多,表格图表齐全。跨平台。
劣势:实际功能紊乱,响应速度慢,使用不稳定。
2.3 团队在软件工程方面可以提高的一个重要部分
培养软件维护意识。软件发布后,团队的工作才真正开始。确保总是有人能够相应用户发来的故障报告,并及时修复。
2.4 软件功能逻辑框图
高层用例图:
2.5 多维度评分
2.5.1 用户体验
我用起来不太好。可能是为了用户在多项目层次和单项目层次都能进行项目管理,软件对很多功能普遍提供了相同功能的两三套工具。比如说顶上的待办、单个项目里面左边工具栏的工作项、首页的工作项。但是这样接口就会显得臃肿,具体到用户就会给用户一种很繁琐的感觉。更何况很多情况下,这两种工具之间,UI都不一样,看起来就很难受。
另外,卡顿,严重影响用户体验。
2.5.2 UI界面
不好。瑕疵很多(参考1.1.1),还有UI不统一(参考1.1.2)的问题。
另外,这个渐变背景/控件看多了觉得很烦,还是白色的最好。
2.5.3 核心功能
好。核心功能完备可用。
3. 建议和规划
3.1 我是项目经理,如何提高从而在竞争中胜出?
多向前辈学习,多工作。
3.2 目前市场上有什么样的产品了?
Github:项目托管与管理。
Teambition:优秀的团队协作工具。
Worktile:企业协作平台。
此外还有明道、钉钉、Trello等产品。
3.3 要设计什么样的功能?
团队管理(任务管理、知识管理)、功能链接扩展、教学。
3.4 为何要做这个功能,而不是其他功能?
首先明确我们的目标用户:团队管理方面的初级用户(比如学生),以及一些团队管理意识还不强烈的领域。
- 核心层:
我认为在一个团队里面,管理效率决定一切。团队里面最高昂的成本肯定是管理成本,管理方面的功能肯定时时刻刻都在用。教学方面,当然是为了服务团队管理方面的初级用户。 - 中层:
通讯做不过很多专业的通讯软件,代码平台不如Github,时间管理不如Omni系……不如直接拿来用,用插件的形式。把这些已有的强大工具联合起来,最好做成像ifttt一样,岂不美哉。 - 外层:
其实很多细分的功能,我们是不应该开发的。首先,按照1.1.4所说,我们的产品一开始就不是面向专业/企业用户的,所以这些功能效益不高。再者,这些功能开发的难度不小,成本高。最后,对目标用户来说,很多高级功能并不是不能用基础的功能来实现。
3.5 为什么用户会用这个产品/功能?
见3.4。
3.6 创新在哪里?(NABCD 分析)
- 需求
对于团队管理方面的初级用户而言,各路团队软件有“不接地气”的问题,即便是软件专业的学生也得先学会必须的课程才能起手。
在一些团队管理意识还不强烈的领域,工作人员本可以通过更科学的团队管理来提高效率,但是由于没有这种传统而不了了之。 - 方法
团队管理工具注意可定制性,搭配教学能够做到功能循序渐进展开。完全功能做到足够满足80%团队的日常需求。
提供插件平台,满足特殊功能。
UI用中性色,耐看。
整体氛围注意去除“程序员气息”。 - 好处
核心功能做精,扩展可能留够,潜在用户广阔。 - 竞争
避开各领域的王者软件,吃长尾。 - 推广
上架app商店,主打低端教学,口碑宣传。
3.7 我来领导这个团队,会有什么不一样?
各方面功能用过相关的软件,所以对功能的把握会更好。教学方面,我们是学生,尺度把握会更好。
3.8 我的团队有5个人, 4个月的时间。作为项目经理,该如何配置角色(开发,测试,美工等等)?
才5人,根本没有固定角色的。
一个方法:一开始明确所有人所有技能的熟练度等级,量化;工作类型需要什么技能,量化。工作分配给熟练度最高的人,训练学习可以提高技能熟练度。这样配置角色就转换为一个数学问题了,写一个程序解决。计划驱动,疯狂派送任务。
3.9 我的团队在16 周期间每周都要做什么,才能在第16周如期发布软件?大小里程碑绩点如何设定?
1-5周需求分析+快速原型,全员试用竞品,学相关技术,界面设计,数据库设计,后端设计。6-10周开工打码,11-12周疯狂测试,13-15周完善,16周发布。
原型出来后全员每天都要用。
3.10 项目发布后,该怎么部署才能满足需求?项目上线需要哪些配套设备(服务器、带宽、数据库需求数量与配置) ?
就做web端,要联网。阿里云上买一个满足1000人同时使用的服务器,用户多了再升级。数据库用MySql,数量3。网站要确保防DDOS。