在对“华为软件开发云”这个名字抱有极大指望的状况下,第一次使用这个产品的时候,说老实话,给个人感受其实并不太好。web
首先在web端,当我第一次点击“当即体验”的时候,忽然一片灰:数据库
拖动滑动条往下翻了半天终于找到了这个框竟然在这!后端
(当时使用的是火狐浏览器56.0,后来彷佛没有复现成功,可是由于第一次点开这网站因此印象很深,初体验是很懵逼的。)浏览器
而且登陆只能选择记住登陆名而不能记住密码。虽然说能够理解为出于公司项目的安全考虑,可是对于小团队或者是只在本身的PC机上使用,不能记住密码感受十分的不方便,至少能够是诸如“7天内记住密码”这样。缓存
不过web端的UI是真的精美啊~ 城市剪影、涂鸦画风、细节精致的动画效果,给人一种很年轻、颇有活力的感受,使人很愿意继续体验。这也是即便第一次试用不太顺利,但仍对这款产品抱有好感的缘由。安全
其次是Android端,我在11月10号左右从官网扫二维码下载了这个app。因为用的是手机注册,因而输入了手机号码和密码试图登陆,结果意外的弹出提示“请输入有效的用户名和密码”,反复折腾了半天才反应过来“输入帐号”是真的只能输入用户名来登陆,而只有web端才能够支持输入用户名/手机号/邮箱登陆,何况app登陆页面的文本框标签提示“输入帐号”和输错时弹出toast的提示“用户名”二者称呼不一致,很使人费解,而且和web端登陆方式不一致,也感到体验不太好。服务器
好不容易登陆进去了,结果展现在面前的是一片空白,而后弹窗提示“当前网络链接异常,请稍后重试”,不管点底部栏的哪个,都是同样的弹窗提示(确认了一下个人网络是正常的)。到这时候做为对这个产品还不是很了解的初体验用户,我已经很想卸载了。网络
后来隔了一周又点进去看了一眼仍是同样的状况,就果然卸 · 载 · 了orz。直到前几天(11月30左右)我忽然想起评测做业快要截止了,才又从官网扫二维码,从新下载了这个app(小米应用市场没有DevCloud),这时候发现可使用。架构
因而在这一个月,使用十分不畅的状况下,我仍然把它反复几回下载到手机上的缘由,是由于有个做业等我评测。而若是做为普通的用户而言,我想基本上恐怕就不会再想碰它了。何况相比起web端的精致完善,这款app仍是简陋太多了。app
测试主体:
- 华为软件开发云(web)
- DevCloud v3.12.2.8(Android)
测试工具:
- web端:Firefox 57.0.1(64)
- 移动端:MIUI 9.0 | Android 7.1.1
一些零零碎碎的Bug其实还挺很多,多是还在公测期的缘由。下面对web端和移动端各举出1个我认为相对严重的Bug。
Bug1(web端): 测试模块中,“移动应用测试”的“测试次数”错误
复现步骤:
前提:本帐号已建立了两个项目,一个项目中已创建了 3 个“移动应用测试”,此时在另外一个项目中创建 1 个“移动应用测试”以后:
- 打开“测试”页面(显示“移动应用测试”的“测试次数”为 3 );
- 点击“移动应用测试”(显示出的测试项有 1 个);
- 点击菜单“服务” -> “测试”(显示“移动应用测试”的“测试次数”为 0 );
- 点击“移动应用测试”(显示出的测试项有 1 个)。
gif动图:
出了这个Bug的缘由,个人猜想是:1. 当有多项目时,菜单栏“服务”的子菜单究竟是跳转到哪一个项目的具体服务没有判断清楚。2. 当新建一个测试项时,没有及时刷新“测试次数”。
为何这个产品组的人没有发现这个bug? 多是测试人员只测试了一个帐号一个项目的状况,而没有测试一个帐号多项目吧。
Bug2(移动端) : “新建工做项”的“重要程度”非单选
复现步骤:
- 点击底部栏“+”号;
- 选择“工做项”;
- 点击“重要程度”;
- 勾选任意项;
- 点击“重要程度”;
- 勾选与前一次不一样的任意项(有时会出现两个√同时存在的状况)。
gif动图:
出了这个Bug的缘由,我猜:给工做项标记“重要程度”的处理方式,是把该工做项的名字加入这一“重要程度列表”里,而不是工做项有一个“重要程度”字段(也更方便在漏斗中筛选)。这样就可能会在用户勾选另外一个“重要程度”时,还没来得及把以前那个“重要程度列表”里的该工做项删了。
为何这个产品组的人没有发现这个bug? 复现“修改 '重要程度' 出现多勾选”这个bug的概率大概是点击三四次出现一次,可能测试的时候没有去反复多修改几回。
首先要明确这套系统的用户是谁,要解决的是什么问题。我想用户群体实际上是比较明确的了,就是那些有项目管理需求的企业/团队。对于项目经理,但愿对项目有个可视化的进度把控;对于开发人员,使用方便和成熟的代码检查、测试、部署都是很是亟需的。但一样能看到,既然是SAAS,用户对这套系统的要求会是很是之高的,若是不能给团队带来切实收益,也就不会去付出高昂费用使用这套系统(若按需计费,21-100的团队估算费用是240元/人/30天)。
要完成这样一套模块多、功能完善且又质量高的产品,那必需要分为多组协同开发了,因而就涉及了微服务架构:业务拆分,服务治理,自动测试,自动运维。
在采访中我也询问了那位项目经理这个问题,然而他也只是简单的提到“注意版本管理和运维部署”。但其实我以为咱们这样的小团队怕是没办法开发这个项目,由于须要好多资源啊...orz
被采访人: 黄华强(建发房地产集团有限公司信息部项目经理)
采访过程:
华为软件开发云目前集成了项目管理、配置管理、代码检查、编译、构建、测试、部署、发布等功能,您做为项目经理,是否有这方面的需求?或者对于软件云现有的功能还有别的需求吗?
答:是有这方面需求的。这些基本已经够用了。
在使用这个产品的过程, 您的需求/问题解决了吗?
答:需求已经解决。
软件在数据量/界面/功能/准确度上各有什么优缺点?
答:我体验了一下项目管理工具,感受还不错,尤为在界面的数据展现方面让我印象深入,有燃尽图,趋势图,工做项完成率图等,项目状况一目了然,很是直观,有利于项目管理者对项目进度,质量,成本作总体的把控。
用户体验方面有问题么?
答:用户体验上感受还不错,功能比较完善,无需花太多时间研究,感受挺容易上手的。
您对产品有什么改进意见?
答:若是项目管理工具可以实现:项目中具体的某一个工做事项的状态发生变化的时候,能在第一时间及时的告知项目管理者,这样即是极高的。
若要给这个软件下一个评价,请选择一个结论:
a 很是不推荐
b 不推荐
c 通常
d 推荐
e 很是推荐
答: d
使用此软件的大部分功能,估计这个项目作到这个程度大约须要多少时间(团队人数6人左右,计算机大学毕业生,并有专业UI支持)。
(什么,要完成这么庞大的项目而个人团队只有 6名 本科毕业生(人少且极有可能0项目经验) !老板我辞职...)
时间:10个月发布初版稳定版本。感受已是极限了...
分析这个软件目前的优劣(和相似软件相比),并推理出团队在软件工程方面能够提升的一个重要部分(具体建议)。
同类竞品:软件开发云、Redmine、teamlab、DotProject的对比(转载)
具体建议:从上表中能够看出,华为软件开发云对于中小型、初创型的企业或团队的项目开发仍是有极大的优点和吸引力的。可是对于已有必定规模的企业来讲,极可能已早有本身的一套开发工具,想要使他们的目光转移到软件开发云上,可能会在性能方面提出更高的指望。
根据理解和体验,画出整个软件全部功能逻辑框图,根据重要度标识出各模块的重要度、完成度、出发点及效果
重要度标识(按“重要”、“较重要”、“通常重要”排序):
完成度标识(按“完善”、“较完善”、“不太完善”排序):
模块 | 出发点 | 效果 |
---|---|---|
项目总览 | 做为软开云的使用入口页,展现加入的项目、工做项、历程、消息 | 可以对大部分的需求状况一目了然 |
项目管理 | 展现项目看板、展现项目列表、新建项目的入口 | 经过柱状图的看板和卡片式列表,很好展现用户所参与的项目的整体状况 |
代码托管 | 相似Github的功能,将代码托管到云 | 在Github或其余托管平台使用习惯了的状况下,用户可能比较难适应 |
代码检查 | 实现一些简单的代码质量管理,帮助监测源代码质量 | 挺好的,精准定位代码缺陷,提供示例和修复建议,被很多用户赞过 |
编译构建 | 与代码托管无缝对接,提供云端编译构建服务 | 挺好,可以实时监控构建状态 |
测试管理 | 提供了一体化的测试功能,覆盖测试需求、用例管理、测试执行、缺陷管理 | 挺好,支持自定义用例,可以辅助高效的管理测试活动 |
部署 | 方便用户将项目部署到云服务器上 | 挺好,比较完善,并且也有引导性的介绍 |
发布 | 包括仓库初始化、软件发布、软件下载、软件查看 | 挺好,比较完善,并且也有引导性的介绍 |
流水线 | 自动执行一系列流水任务 | 彷佛是比较边缘的功能,也没有引导性介绍,不太明白是作什么用的 |
移动应用测试 | 移动应用的兼容性测试,测试各机型对此移动应用的安装、启动、使用、卸载的状况 | 总体还不错,报表也很清晰,可是当选择机型比较多的时候排队会至关久,并且对于有帐号的移动应用仅测试了成功登陆 |
企业帐户受权 | 支持子帐号登陆,方便企业项目开发人员的使用 | 挺好的,邮箱验证也很快捷方便 |
代码广场 | 做为代码仓库的开源共享和展现平台 | 完成度不高,看不太出效果 |
针对不一样的维度评分,对用户体验方面、UI界面美观度、核心功能,分别打分
web端:
用户体验:★★★☆☆
UI美观度:★★★★☆
核心功能:★★★★☆
移动端:
用户体验:★★☆☆☆
UI美观度:★★★☆☆
核心功能:★★☆☆☆
根据上文的阐述,对于web端和移动端的各维度评判已经很明确了。对移动端的核心功能只给了2星的缘由是,移动端的功能仅囊括了查看和编辑各项目的工做项和“消息”模块,且仍然十分不完善。
若是你是项目经理,如何提升从而在竞争中胜出?
答:我以为做为中国市场上立足云服务的、一整套功能相对齐全的管理软件的SAAS项目,自己就已具备至关高的竞争力。但是纵观之软开云的呼声和期待很高,而企业中真正的使用者却相对稀薄。因此若我是项目经理,首先要抓住用户痛点,在第一次开放稳定版时就把服务模块作到功能齐全、易用精致,特别是国内其余家项目管理工具所不具有的功能,提升用户黏性;其次就是提升宣传和推广力度,为何这么好用的产品大多数人都仍只停留在“据说过但没使用”的阶段呢?
目前市场上有什么样的产品了?
答:微软全家桶Visual Studio Team Services ,Redmine,DotProject,禅道
你要设计什么样的功能?
答:在“代码广场”版块里,对每一个仓库卡片都有一个“评价”的选项,但我点进去这个仓库也并没能找到评价模块在哪里...orz,猜想这估计是要放在后续实现的一个功能,但我认为还不如作个wiki,而去掉评价,由于这种评价感受意义不是太大:1. 如果须要评判优劣直接看这个仓库的收藏数就能一目了然;2. 如果为了实现用户之间的交互手段,只能在一个个的仓库下面去评论太受限,不如作wiki更方便开发人员之间的资源共享、开发遇到的常见问题整理等等。
为什么要作这个功能,而不是其余功能?
答:由于以为其余功能以及相对成熟完善了,在采访过程当中用户也对目前已有的项目管理服务评价说“可以知足需求”,可是“代码广场”版块就显得薄弱不少,若是能作好可能能成为中国的Github交友社区~(逃
为何用户会用你的产品/功能?
答: wiki为一种开放、自由的交流方式,在用户除去平常使用这种工具类的项目管理功能以外,能有个地方起到共同维护资料整理、或者是公司/团队内部或之间的交流,会让工做也不那么乏味。
描述你的团队在16 周期间每周都要作什么,才能在第16周如期发布软件,大小里程碑绩点设定。
答:
默认前提:团队人手和资源能保证在16周内能作完。
周数 | 具体分配 | 大小里程碑设定 |
---|---|---|
1周 | 需求分析,设计原型,撰写软件规格需求说明书、产品规格说明书 | 完成SPEC |
2~3周 | 搭建开发环境,肯定编码规范,架构设计,详细的开发设计,团队分工 | |
4~11周 | 编码开发阶段,完成第一版后进行测试 | 完成内测版本 |
12周 | 发布v1.0版本,交付用户试用,获取反馈,修复bug、完善已有功能 | |
13~15周 | 对用户提出的其余需求进行分析,选择合适的需求,投入此阶段进一步开发 | |
16周 | 进行严格的性能测试、压力测试、集成测试等 | 发布正式版本 |
项目发布后,有没有考虑过项目该怎么部署才能知足需求。依据下图(某校教务处系统的部署)做为参考,分析16周后你所完成的项目上线须要哪些配套设备(服务器、带宽、数据库需求数量与配置) 。
**答:**(经过采访已工做的同窗获知可能须要以下服务器部署) 前提: 服务器与数据库均在同一内网互通集群下, 内网带宽 1Gbps **数量** - 应用/后端服务器各 * 1 - MySQL * 4 (异地冷备 * 一、同地热备 * 一、读写分离 2 台) - Redis * 1 **配置** - 静态资源采用 CDN 就近分发, 减轻应用/资源服务器压力 - 全部请求采用 WAF 过滤, 防止 CC 攻击、SQL 注入、XSS 跨站、WebShell 上传、命令注入、非法 HTTP 协议请求、常见 Web 服务器 0day 攻击等 - 数据中心网络选择接入金盾、ChinaDDOS、傲盾、飞塔等硬件防火墙, 以便于清洗牵引 DDoS 攻击, 或采用电信云堤就近牵引清洗 - 请求进入应用层以前, 采用负载均衡平衡集群节点负载 (提早进行线上压力测试, 确认转发规模) - 应用服务器采用 4C8T 8G 配置, 并与后端服务器采用内网通信 后端服务器采用 8C16T 16G 配置, 并与数据库集群采用内网通信 - 数据库集群中有 MySQL 与 Redis 两种类型数据库, 分别对应存储与缓存, MySQL 硬盘采用 RAID10, Redis 内存不低于 32GB - MySQL 采用读写分离并同地主备, 异地冷备, 以保证数据可靠与一致性, 尽量下降一切由崩溃、掉电等带来的数据丢失、宕机问题 - Redis 自动从 MySQL 热一部分经常使用数据到缓存中, 以便于快速读取