今日洞见
文章作者来自ThoughtWorks:Natalie Hollier,译者来自:田萌。图片来自网络。
感谢ThoughtWorks校对小组:宋国强、杨宝儿、姚琪琳。欢迎联系我们加入小组。
本文所有内容,包括文字、图片和音视频资料,版权均属ThoughtWorks公司所有,任何媒体、网站或个人未经本网协议授权不得转载、链接、转贴或以其他方式复制发布/发表。已经本网协议授权的媒体、网站,在使用时必须注明"内容来源:ThoughtWorks洞见",并指定原文链接,违者本网将依法追究责任。
精益产品设计是一种软件开发流程,旨在开发出创新型的新产品。这种设计理念帮助企业尽快在市场上推出新产品、在与用户的沟通中进行产品验证,并持续地回应用户反馈。精益产品设计将轻便设计和用户调研贯通于整个敏捷开发过程,而不必事先做好大部分的设计和调研。
在精益产品设计中,从第一天起,产品经理、设计师和程序员就一起创造一个完整可用的产品。首先要有一个清晰的产品定位,团队可以根据这个定位集中开发一个核心功能,之后上市抢滩试水。通过连续的用户调研,共同设计和开发的迭送代,产品才可以基于最新的市场反馈不断更新。待达到用户愿意付费使用的版本时,这个产品已经具备了经过验证的需求,并且准备好推向市场了。鉴于当前各个行业的飞速创新,做一个可以满足当下需求的产品 (而不是六个月或一年前的需求 )是成功的关键。
精益过程:把精益产品设计带到团队中来
小型团队可以通过各种跨职能角色的合作来展开精益产品开发。以下是ThoughtWorks团队使用的几种开发最简可行产品(MVP - minimum viable product) 的方法:
- 合作紧密的小团队:小型团队的成员可同步共享最新状态,当问题出现时,在设计和技术上的决策也更快。
- 跨职能搭档:不同职能角色的参与有利于对话和做决策,这意味着整个流程会更快、反应更灵敏。传统的从分析到设计,再到开发的流程其实更易变且随机。
- 从草图到代码:当你的产品每周都需要很快更新的时候,从草图直接到代码是一个既加速又止损的好方法。设计师和程序员搭档,从画草图,码代码,不断迭代,直到建立起好的方案来创建界面,这保证了最终方案不仅可以迅速实施、而且具有较高的可用性。
- 设计墙:随着产品功能的增加和更迭, 把最新的设计草图、线图在一个大的墙上展示出来,可以起到很好的可视化信息和交流产品方向的作用。这样做使整个团队对接下来的任务以及产品的组成部分一望而知。
- 用户调研和测试: 新产品通过对很多影响因素的应变而逐步提升,其中最关键重要的是用户反馈。把现有的版本拿去给用户使用,频繁地收集用户反馈,是让产品更快适应用户需求的关键。
精益工具:跨团队实现精益
在设计和开发中,将开发人员分成多个团队或者将设计、开发分成不同的小组,会大幅度减慢精益流程。为了更快地推进和有效应变,我们在ThoughtWorks使用以下设计开发工具:
- 扁平化设计: 扁平设计不单单是一个潮流,它也使程序员能更快的地改变风格设计并在代码中轻松实现,整个过程并不需要设计师切图并上传。
- 图标字体:花些时间制作SVG图标并把它们含在CSS字体中是很值得的。这使改变图标大小和颜色变得无比快捷,并且不需要等设计师切图。
- 风格图块:设计师创建图块或版来展现贯通于整个产品的公用界面元素设计和交互形式,而不是为每一个网页/应用页创建一个视觉包。这样,设计一个新的功能只需要少量的草图或线图,因为视觉风格已经建立了。
- 实时的风格指南:这是一个大家共享(或放在本地)的网页,它显示当前网站的所有风格元素,程序员可以看到哪些元素已经完成,哪些元素还有待开发。实时的风格指南有效地防止了代码库有10种颜色有微妙差异的按钮,也减轻了改变这些颜色的痛苦。
- 专门控制风格的Gem:如果你有多个Ruby应用,可以把公用的设计风格放到一个ruby gem中,这样它就可以被用到不同的产品中了。这使得多个产品可以有统一的视觉效果,并且需要更改设计风格时,只要更改一个地方即可。
精益理念:把精益产品设计带到你的整个组织
如果想要在整个组织中使用精益过程,但你们有多个产品或者多个办公地点,那在决策链中应该尽早采取精益思维。这可以防止没用的产品构想带来无效工作。把精益产品设计带到整个组织意味着团队结构、文化和工作流程的改变,比如:
- 嵌入式用户体验设计师:孤立的设计团队会减慢整个开发过程。在团队中有一个设计师提供咨询,建议不同的实现方法,观察实时的更改,可以加快编程的速度,也可以提高设计质量。
- 目标导向性的团队:当目标清晰时,团队便可迅速对想法进行探讨并检验,对反馈做出及时的反应。这使得团队可以尽早摒除不成功的想法,并且更快地为用户找到更有价值的解决方案。
- 精益思维:把精益思维运用到整个产品策略中,而不是仅仅停滞于功能和任务的层面。这可以更早地减少没必要的工作。你可以在设计和开发开始前就检验想法。需要向别人展示以验证想法,可以使用纸上原型或仿制交互式原型。
- 科学的方法: 在开始的阶段多花些时间去定义问题,采用科学的方法去验证解决方案是否有效,可以保证团队开发“正确的”功能。这可以大量减少在编程、测试、维护和产品研发中的浪费。
- 信任,谦逊和勇气:在大型组织中实施精益开发方式是具有挑战性的,它需要持续的努力。作为产品负责人,虽然刚开始无法预测成型的产品,你也必须相信精益产品设计流程会成就优秀的产品。你还需要谦逊地意识到任何来自你自己,团队或组织的想法可能并不能正确满足客户需求。最终,保持信任和谦逊都是需要勇气的。
在有着不同规模的组织和不同经验的团队里,精益产品设计会面临不同的挑战。但是只要应用得当,便可将优秀的创新型产品迅速推向市场。