怎样做好需求评审?
Bug对于软件来说是显而易见的,程序员犯了一丝毫的错误就会带来Bug。
需求则不同,不适当的需求往往并不是那么明显,而且暴露的很晚。错误的需求往往不会责备需求的提出方,因为互联网时代需要快速试错,而纠正需求所产生的工作却落到了工程师头上。
显然,这似乎不太公平。错误的需求难以被质疑,这也带来了需求的肆意膨胀,是软件设计不加以克制的原因。
下面是一个检查清单,用于软件工程师在接受需求时来评审需求是否合理。
原则
屁股决定脑袋,产品经理和软件开发者之间的立场不同,则关注点不同,这是需求产品经理和开发之间的矛盾的主要原因。好的产品经理思考的是软件的市场和背后的生意而不是用户交互;好的软件工程师思考的是软件模型和整体设计,而不是某项技术的偏好。
如果软件开发和建筑行业一样,产品经理就是设计院,设计院输出的图纸,如果在施工方无法实施时,设计院会承担巨大的责任。
互联网时代,软件和建筑一样随处可见。
软件给人一种容易修改的错觉。产品经理随意调整需求被质疑后感到无辜,不就是改一点代码的事情吗,为啥说的那么难,这人肯定是技术不行。
简单的软件确实容易修改,同理,在农村搭一个窝棚也是,但复杂的软件和摩天大厦不在此列。
复杂的软件因为承载了大量的业务模型,以及各种存量的用户数据,修改运行中的软件,数据迁移的工作往往比预想要大很多,同时还要考虑已经发布出去的软件兼容性。
需求变更应该是一个严肃和慎重的事情,这是原则。提前
《一本小小的红色写作书》是我最喜欢的一本关于写作的入门书籍,作者布兰登罗伊尔给新手提供了一个写作建议:当你想到一个绝妙的主题,完成写作并发布出去等待人们的赞美时,不妨先放一放。当一个好点子蹦出来时,人们往往把所有的美好都寄托在这个点子上,而丝毫看不到不合理之处,其实需要时间让人冷静下来。
产品经理往往会蹦出一些绝妙idea,自我美妙的上头。实际上在落地时,会遇到各种问题。
提前准备需求就显得非常重要,提前三五个星期设计好的需求,随着时间的推移,实际上每周都能有优化的点,到开始实施时也想的八九不离十了。
软件工程师应该建议产品经理提前准备需求,如果是23天内的需求,就需要警觉起来。
虽然互联网时代变化很快,但不是慌张的理由。系统性
刚入行的人,多少可能对系统这个词感到奇怪,我们明明只是做了一个软件、网站或者小程序,但是为什么会被称作为系统。
我们之所以称这些软件为系统,是因为现代软件不像单机桌面软件,它们有很多组成部分。Web、APP、管理后台、开放API、定时任务等各种组件构成。
系统性,带来的就是牵一发而动全身。
一次产品经理提出需要收集用户的公司信息,因此在注册表单增加了一个字段,但是在管理后台创建用户时,并没有相应的字段,造成数据的混乱。
当产品经理提出一个web端的需求时,参考检查项:对应的后台是否有相应管理功能?APP、小程序等其他端是否有类似需求?开放出去的API是否受到影响?已有数据是否需要迁移?是否和其他功能冲突造成逻辑矛盾?
产品经理或BA需要知道当前系统的运行状态,一个将软件系统视为黑盒的产品经理,不太能提出严密的需求来,只能用创新作为托词。遵守惯例
不遵守业界操作惯例的软件使用起来让人非常难受,索尼微单的软件操作方式比主流相机显得怪异,即使很多人认可它的拍摄性能,也不愿意买单。
不遵守业界操作惯例,而美其名曰创新的需求,往往都会经历来回改的结果。
按照惯例,信息系统的列表页都会有分页、搜索、筛选、排序等组成部分。如果设计上列表页没有分页,在可以预见的情况之下,性能会非常差。
对于表单控件来说,每一种控件元素都有它背后的交互逻辑,刻意改变用途,不仅不能带来创意效果,反而会让用户感到困惑。表单有四种基本元素,缺少了说明需求不合理,需要调整:标签表单域提示信息操作按钮
另外表单设计还需要考虑数据回填视图,这种视图下可能交互和UI有所不同。一致性
需求的一致性体现一个软件是否专业,影响用户的主观感受。
一致性有几个维度:操作逻辑上的一致性组件UI一致性文案的一致性
同类的交互使用同一个控件,避免出现多种组件。比如上传文件的逻辑,文件大小、交互方式、允许的文件类型,都应该保持一致。
在之前一个产品中,领导要求UI的设计稿还原接近100,我们采用将设计稿叠加在浏览器中实现的。然而,中途设计师离职,新的设计师无法做到和原来的设计师保持完全一样的设计尺寸、颜色。
这种情况继续坚持100的还原度,后果是前端代码中所有的页面都有自己的样式文件,组件几乎无法复用。
大的团队往往有自己的设计规范、设计系统等,这样也减少了高保真的输出,使用设计系统,不必输出高保真。开发人员使用原型图设计系统中的组件即可做出统一美观的软件界面来。
使用原型图表达整个系统的交互逻辑,不用关系UI细节,UI细节交给设计系统来完成。
文案的一致性,要求系统所有的地方使用同样的名词概念、表述方式,避免给用户带来困惑。非功能性需求
评审需求时,非功能需求是最容易遗漏的需求,也是需求的冰山。下图是一个添加文章的需求,背后有交互、性能、UI等多方面的非功能性需求。
有大量的文章叙述非功能需求,这里简单给出一个清单:交互体验相关Loading表单的二次提交输出格式化请求用户确认和提示安全相关身份校验和权限表单验证性能相关响应时间生效时间(比如,权限相关允许重新登录生效)可用性相关兼容性特殊设备适用性本地化和国际化升级策略性价比
最后一项是性价比。
有一些需求不符合当前的软件模型,改动成本极其高昂。但是如果产品经理做出一些取舍,根据当前的技术模型和架构进行调整,可以维持现在技术模型的一致性,降低开发成本。
比如,用户的会员信息是存放在session中,这样每一次请求的权限检查可以非常高效的完成。但是,代价是用户的会员过期后,需要重新登录才会生效,大多数系统都这样处理,因为会员过期是一个极其低频的事件。
如果产品经理要求,会员过期及时的告诉用户,并进行续费,而不是在重新登录时触发这个行为。即使在技术上能完成,但是付出的代价非常大,也应该在评审时对此类需求进行质疑。
文Thoughtworks林宁
更多精彩洞见,请关注公众号Thoughtworks洞见!
川西又发现两处即将爆火的小众秘境,媲美鱼子西的360观景平台川西藏着太多的美景位于康定市塔公镇的八郎生都村被誉为是离天空最近的牧场有人说这里仿佛看到了新疆的样子到处都是好风景图源八郎生都村景区你体验过……
有的凉皮里为什么放麻酱?这里有几个基本规律。首先凉皮本身没什么味道,你顶多也就是在面浆里放点盐有点儿咸味,还不敢放太多。没有味道的凉皮在吃的时候就需要放味道厚重的调料,比如辣椒油,比如蒜汁,比如醋,等……
下一个黄金赛道企业数字化转型对于绝大多数传统企业来说,数字化转型主要包括三个方面:基础设施物联网化、经营管理数智化、客户关系数字化。数字化转型是传统企业的必经之路,可以说不进行数字化转型的企业……
十一月的第一天,指未来的四个金句头条创作挑战赛疫情再一次席卷而来,我们停下了匆匆前行的脚步,静下心来,思考工作与养生、生命与质量的问题,这几个词语浮现眼前中年少女中年少女,是一个特别美好的词汇。它……
贵州茅台有收藏价值吗,最多可以存放几年?谢邀,酒哥来解答酱香型白酒的酿造工艺特殊,迥然不同于浓香和清香,体现在酱香型酒易挥发物质少,酱香型酒的酸度高,是其它酒的3至5倍,而且主要以乙酸和乳酸为主,酱香酒的酚类化……
大家每天在家都做什么饭菜吃?你好,我每天在家做早餐一般是以面食为主,一般是吃西红柿鸡蛋面,百吃不厌,有的时候也吃扁米粉,偶尔吃炒粉,有时也包,包子做锅饺,包饺子包馄饨。中餐,一荤两素,辣椒炒鸡肉,辣……
王鸥爱包贝尔强撩靳东,夜会刘恺威后被何九华接盘?2016年的时候,王鸥和包贝尔参加一档综艺节目,两人互送礼物,结果王鸥回赠包贝尔一个香吻,随后毫无尊严地依偎着包贝尔,难道就不怕被包文婧骂吗?想当年的王鸥还是包文婧的伴娘……
东北农村腌制酸菜怎么那么好吃?有什么秘方吗?都知道东北人爱吃酸菜,说到酸菜只有东北这边可以腌制,因为酸菜对气温有要求,所以南方天气热不适合腌制,酸菜腌制的时间是在白菜成熟开始腌制,天气慢慢变冷,酸菜可以储存,不会变质。……
这才是病毒突然消失的真实原因,原来是这3件事造成的为什么在春节期间病毒就这么莫名其妙的消失了呢?或许病毒的突然消失和这几件事有关。全民免疫已经形成,没有了传染源,自然就不会有下一波感染高峰期了。今年这个春节具有特别……
新能源车又要降价潮了?锂材料暴跌,电池价格战即将打响!日前,根据相关数据显示,目前锂电原材料的价格正在持续下跌,跌破了40万元吨。很多行业外的朋友可能不太了解,对锂电池原材料的价格也没太大的概念。这么说吧,从前年开始,造动力……
猪周期接近尾声,便宜的猪肉还能吃多久?民间俗语谷贱伤农,中国农民都懂!同样,猪肉价格低贱,只能让养殖户破产改嫁,对居民菜篮子工程没有一点好处!前两年猪肉价格直线上涨,养殖户满心狂喜。然物极必反,物以稀为贵,太……
安卓下代旗舰芯稳了,采用台积电3nm工艺,网友三星给点力吧骁龙888和骁龙8Gen1时代,因为高通采用三星工艺,产品的能效比很差,搭载这两款芯片的手机存在发热高,续航差的问题,引起了很多用户的不满。到了骁龙8的时候,高通终于换成了台积……