一、摘要
随着产品的发展,稳定性和用户体验往往会成为团队的两大挑战,如何避免这两者之间的冲突,达成和谐共存,是提升产品质量的关键。本文将探讨如何通过有效的沟通和管理策略,避免稳定性和体验升级演变成无休止的拉锯战。
二、稳定性和体验简介
为了更好地理解后文内容,我们对什么是稳定性问题,什么是体验性问题,做下基础的简单介绍。稳定的使用体验就是用户体验的基础。
2.1 什么是稳定性问题
稳定性问题指的是产品在某些情况下无法正常运行, 例如突然的服务中断或者功能异常。突发的某段时间批量用户集中无法使用。这会影响到用户的基本使用需求。
举个例子:软件突然无法支付、博客突然无法访问、按钮点击无响应等等,这些都属于稳定性问题。 解决这类问题是保证产品基础功能正常运行的关键。
2.2 什么是体验问题
体验问题是指产品已经满足基本功能需求,但为了提升用户的使用感受(让用户使用起来更加舒适、沉浸、愉快等);需要改善界面交互、视觉设计和动效等方面。
举例来说,按钮的点击反馈、页面加载动画的优化以及整体界面设计的升级,这些都属于提升用户体验的范畴。良好的用户体验可以增强用户的满意度和忠诚度。
三、统一宗旨
在长期维护一个面向 C 端的产品时,稳定性和体验问题经常会同时出现。在处理这些问题时,团队需要共同努力,明确各自的职责和目标。
研发团队负责实现需求,保证系统运行的稳定性和性能;设计团队负责提升用户界面和交互体验;而产品团队则需要平衡业务需求和用户期待。
当产品逐渐成型,功能整体完善,视觉体验就变得更加重要;在保证稳定性的基础之上,完成业务诉求,提升用户体验。是所有角色的统一宗旨。
当团队变大角色变多,在加之团队成员一定的流动性、各角色之间形成一定的边界;若此时大家对于宗旨的认知达不成一致,各个角色对目标有所偏颇,那可能就造成拉锯战。
四、为什么会产生拉锯战
在实现体验升级时,设计团队通常希望通过增加动效、优化界面来提升用户体验,但这些改进往往会对系统性能产生挑战。研发团队则需要确保系统稳定性和性能不受影响,有时候双方的目标可能会产生冲突。
在这种情况下,团队成员之间需要进行有效的沟通和协调,以达成双方都能接受的最终方案。
具体来说:当动效足够多、列表足够长、全屏元素过多、色彩图片足够丰富等类似这一系列的体验升级,都会对性能造成一定的挑战。虽然本质都为了追求更好的结果。但性能和体验在一定程度上,有互斥的成分。
- 设计为体验更加好,上了很多炫酷的动效。
- 研发为了保证稳定性,对炫酷的动效说实现不了。
- 设计说已经减无可减,不能再小了;
- 研发说超了不行,再减点,内存 CPU 还超标。
- 好不容易内存、CPU 控制在一定范围内,设计说效果不行。
一来一回反复调整,最好的结局便是在反复调整过程中,调整到双方都能满意的结果。 但若一方无法让步,一方不寻求最优解,各自站在自己的立场上,互相觉着对方能力不行,这场拉锯战便会不停歇,问题也随之上升。
4.1 示例:动画资源大小的争议
例如,设计团队可能提议使用大型动画资源来增强用户体验,但研发团队则担心这会增加内存和 CPU 的负担,从而影响系统稳定性和性能。在这种情况下,需要进行合理的讨论和权衡,以确定最佳的资源使用策略,避免不必要的资源浪费和技术风险。
下面的对话相信部分人遇到过类似的。
- 研发:2M 动画资源,闹着玩呢,实现不了,上去也会返工,都不用试,效果肯定要打折
- 产品怎么一上来总是说实现不了,你试了吗就说实现不了
- 研发:这都不用试,这是常识你懂么?
- 产品:效果肯定不能打折扣 这是底线吧,效果若不及预期,体验这个事,还有啥可忙活的,对吧
- 研发:上了就崩,性能谁来保证?
随着参与人越多,七嘴八舌问题越来越没用眉目, 问题加深。
4.2 勉强妥协和反复尝试
面对问题的逐步加深,团队可能会进行多轮讨论和尝试,寻找平衡点。这可能包括设计团队逐步减少动效效果、研发团队优化代码和资源使用,或者甚至是重新评估技术方案和实施计划。
你可能面临各个领导层先确认问题,研发描述不行,那就拉着 QA 确认测试结果,证明给各个角色来看,确认问题。
寻求解决方案:为保证如期交付给业务,先尝试最快的方式解决问题,既然是资源的大小造成的稳定性问题,我们减效果再试,这就一天过去了。
一天(UI 修改设计稿) 过去,一天(研发修改)在测试,发现还不行,再减效果。 一天一天又一天,来来回回反复尝试了一周,耐心消磨殆尽。不得已更换技术方案,重新排期。
这种过程常常耗费大量时间和精力。
4.3 为何原技术方案搞不定
- 质问:“那为什么要用 Webview。”
- 回答:”原生带来的问题是开发和维护成本变高,需要双端。并且原生实现规范没变。” 本质内存过高会造成的部分机型的 Webview 容器挂掉。
4.4 研发资源投入多少
研发投入多少, 研发的 ROI 是否得以保证? 产品和研发需要进一步进行商讨,需要与领导确认,并达成一致。 既投入这么多研发资源做出来的效果,需要对 NPS 反馈指标是否在预期之内进行把控,别做完后,用户无感知。 当然最主要的是通过数据的反馈,指引到正确的方向。
五、如何避免
经过上面一系列的探讨,我们达成了共识,这段时间体验升级的确为重要的一环,研发可以投入部分资源去进行体验的升级。
在讨论如何避免之前,我们需要意识,彼此信任、彼此相辅相成,互惠互利,目标一致。若宗旨无法达成一致,那接下来的避免将无从谈起。
那如何避免成为一场拉锯战,让目标顺利实现呢,让问题不在发酵,矛盾不在激化,让合作更加愉快呢?
5.1 睁一只眼闭一只眼
研发睁一只眼闭一只眼,给我多大的资源就用多大的资源,不压缩不看数据,直接上线吧,实现效果嘛很简单、任务完成皆大欢喜。
这种方式虽然在短期内可能看起来有效,但实际上是极不可取的。研发团队如果仅仅听从设计团队的需求而放任不加限制地实现。
可能会导致以下问题:
首先,资源的无节制使用会直接影响系统的稳定性。设计团队可能会提出大型动画资源或复杂的视觉效果,但如果这些资源超出了系统的承载能力,会导致系统性能下降甚至崩溃。用户在实际使用中可能会遇到卡顿、崩溃等问题,从而造成严重的用户体验下降和用户流失。
其次,即使在开发阶段看似一切顺利,一旦产品上线,随着用户量和使用频率的增加,潜在的性能问题可能会迅速显现。这不仅会增加研发团队的后续工作量,还可能需要紧急修复,影响整体的开发进度和团队的工作效率。
最重要的是,这种做法忽略了数据驱动的决策过程。在产品开发和优化中,应该依据实际的性能数据和用户反馈做出决策。如果没有数据支持,盲目地追求视觉效果可能只是一种投机取巧的行为,不能为长期的产品发展和用户满意度提供实质性的帮助。
因此,团队在面对稳定性和体验升级的冲突时,应该建立起基于数据和标准的决策机制,避免简单粗暴地“睁一只眼闭一只眼”的做法。只有通过合理的资源规划和技术方案评估,才能实现稳定性和体验的双赢。
5.2 制定清晰的标准和规范
在稳定性和体验升级的过程中,制定清晰的标准和规范是非常重要的步骤。这些标准和规范不仅有助于明确团队的目标和要求,还能在决策时提供客观的依据和界定范围。
- 标准化资源输出: 设计团队和研发团队需要达成一致的资源输出标准。例如,动画资源的大小、界面元素的复杂度、视觉效果的帧率等都应该基于系统的性能数据和技术承载能力来确定。通过合理的标准化,可以避免因资源过大或效果过于复杂而导致的性能问题。
- 文档和宣讲: 将标准和规范制定成文档,并在团队内部进行宣讲和培训。这有助于避免信息孤岛和决策偏差,确保每个团队成员对标准的理解和执行一致。
5.3 使用工具支持
在处理稳定性和体验升级冲突时,使用合适的工具支持是提高效率和质量的关键。
- 性能数据度量工具: 配备团队所需的性能数据度量工具,用于评估体验升级所带来的影响。这些工具可以帮助团队在设计和开发过程中实时监测系统的性能表现,以确保在提升体验的同时不会超出系统的承载能力。从而及时调整和优化方案。
- 数据功能监测: 上线后需要实施数据功能的监测,以验证实际效果和稳定性。通过数据监控,团队可以及时发现和解决潜在问题,预防数据劣变,确保产品在长期运营中的稳定性和用户体验
5.4 数据驱动的决策
在处理稳定性和体验升级冲突时,采用数据驱动的决策方法可以帮助团队做出客观和可靠的选择,避免主观偏见和无效投入。
- NPS 数据追踪: 定期追踪用户满意度指标(如Net Promoter Score),并将结果分享给团队各成员。这些数据可以为团队提供明确的反馈,指导未来的优化和决策,确保团队在产品开发中的方向正确。
- 技术评估和实验: 在实施体验升级之前,进行系统性的技术评估和实验。这可以帮助预测潜在的稳定性问题,并通过小规模试验来验证新功能或设计的可行性。
5.5 制定优先级和权衡
在产品开发中,不同功能或改进通常有不同的优先级。制定明确的优先级和权衡标准是避免冲突的重要一环。例如,可以根据功能对用户体验的直接影响和稳定性风险,给出一个权衡列表。这样的表格可以帮助团队在决策时更有依据地选择是否推进某个特定的体验升级。
5.6 敏捷开发中的迭代优化
采用敏捷开发方法,将稳定性和体验升级作为持续迭代的一部分,而不是一次性的大改动。通过小步快走的方式,每次迭代中优化一小部分体验,同时持续监测系统的稳定性表现。这种方法可以在较小的范围内进行试验和调整,减少全面推进时的风险。
5.7 持续优化和学习
将持续改进和学习作为团队的文化和价值观。鼓励团队成员分享经验和教训,定期进行回顾和总结。通过记录和分析项目中的成功案例和挑战,可以不断优化工作流程和决策方式,提升团队的整体执行力和协作效率。
处理稳定性和体验升级冲突不仅是一次性的工作,更是一个持续优化和学习的过程。
- 经验总结和持续学习: 团队应当定期总结经验教训,记录项目中的成功案例和挑战,以及如何从中学习和改进。这种持续的优化和学习过程是确保团队在未来项目中更加高效和成功的关键。
六、最后
研发需要努力探索不同技术方案,承接更加复杂的设计元素,提升标准承载的阀值。
设计也需要有这种意识:体验效果升级,或许有时候,并非只是炫酷大屏动态效果的叠加。
当然,多站在对方立场考虑,目标一致,好好沟通,同样也很重要,指责命令方式沟通容易造成矛盾激化,也不可取。
在产品开发和维护过程中,稳定性和用户体验是相辅相成的重要因素。
通过团队的共同努力和有效的管理策略,可以避免稳定性和体验升级成为一场不必要的拉锯战,实现更好的产品和用户满意度。