跳到内容
本文已通过AI从日语翻译
阅读日语原文
本文属于公共领域(CC0)。请随意自由使用。 CC0 1.0 Universal

体验与行为

软件开发通常旨在使规范实现保持一致。

为此,系统被设计为满足规范,然后基于这些设计进行实现。随后,测试确认实现是否符合规范;如果存在差异,则修正实现,如果规范模糊不清,则进行澄清。

这可以称为基于规范和实现的工程

相比之下,当今讨论软件时,用户体验日益受到重视。

此外,真正塑造用户体验的,是软件的行为,而非其单纯的实现

因此,在规范与实现的框架之外,还存在着体验行为

因此,我认为有必要探索体验与行为工程这一概念,它正是以体验和行为为基础。

流体软件

体验与行为工程在传统的软件开发方法中是一种不切实际的方案。

这是因为它需要在规范中没有 rigid 的边界或功能划分的情况下,持续改进用户体验。甚至可能出现这样的情况:用户一个随意提出的体验改进需求,却可能需要废弃所有已开发的软件才能实现。

另一方面,在生成式AI实现代理型软件开发自动化司空见惯的时代,整个软件系统的重构将变得可以接受。

此外,在这样的时代,我们可以预见将进入流体软件时代,即开发者发布的软件将配备AI工程师聊天机器人,允许用户根据个人偏好修改UI。

流体软件意味着软件比传统软件更具灵活性,能完美契合每个用户。

随着自动化开发流体软件时代的到来,基于规范和实现的工程范式将变得过时。

取而代之的,我们将范式创新体验与行为工程的范式。

什么是行为?

简而言之,行为是随时间变化的状态。

测试行为无非就是测试这种随时间变化的状态。

此外,测试行为并非确认其与定义状态如何转换的规范是否一致。相反,行为是通过用户体验的质量来测试的。

当然,如果存在导致系统执行用户或开发者不预期操作的缺陷,这会严重损害用户体验。因此,测试行为也包括验证功能的符合性有效性

因此,在满足这些基本的功能需求之后,将从用户体验的角度测试行为是否具备高质量

终极体验

对人类而言,终极的用户体验是身体健康时的身体控制

试想一下:我们每天都在控制着一个重达几十公斤、复杂且充满限制与约束的身体,用它来从事有目的的活动。

如果我们要尝试控制这样一个沉重、复杂且高度受限的系统来执行预期的活动,通常体验会相当糟糕。

然而,只要我们身体健康,我们就能毫不费力地移动这个沉重、复杂且受限的身体,仿佛它没有任何重量。我们毫不犹豫地操作它,如同一个非常简单的机制,几乎不注意它的限制或约束,仿佛它们不存在一样。

这就是终极体验

通过追求高质量的行为,我们有可能提供与控制自身身体同等水平的体验

换句话说,即使一个系统处理速度慢、功能复杂且受限于诸多限制,它也能成为完全无压力的流体软件

结论

终极流体软件将提供与我们自身身体相似的体验

这种流体软件对我们而言,将成为我们身体的一部分。

每当终极流体软件数量增加或其能力增强时,我们都会感觉仿佛身体得到了扩展