デザインはシステムパフォーマンスという捉え方

ushironoko
·

TL;DR

  • システムパフォーマンスとデザインは不可分だよ

  • ユーザー体験もまた、パフォーマンスとデザインの双方から定義されるよ

  • デザインの更新を止めると、システムのパワーが落ちるよ

  • 落ちるところまで落ちると、手がつけられなくなるよ


デザイン、ここではUIともいうが、UIはユーザーとの界面であるため、直接システムとユーザーを繋ぐ。

そのシステムの能力がどれくらい引き出されるかをデザインは責務とし、これはシステムパフォーマンスに似ている。システムパフォーマンスとは速度であったり、可用性であったりする。パフォーマンスの高いシステムはよりユーザーの生産性を向上させ、これは俗にユーザー体験と呼ばれる。

デザインとユーザー体験は密接に語られることが多いことから、デザインとパフォーマンスもまた同じ領域に寄与するものと捉えられる。

もしデザインがシステムの持つパワーを100%引き出せるなら、そのデザインは完成していると言っても良いだろう(100%は何かというのはまた別の難しい話だが、一旦開発者が理想の利用像を定義すれば良い)。

しかし現実は常に変化するユーザー要望と、常に増え続けるシステム要件に合わせて理想状態が変化するため、よりパワーを引き出せるデザインを模索する必要がある。

また、デザインはパフォーマンスと密接に関係しており、例えば不要なfetchが発生しやすくなっていたり、不要なリソースがバンドルされてしまっていたり、ユーザー資源(メモリやCPU)を必要以上に食い潰していたり、そういった目に見えないロスにより、システムのパワーが落ちていることも考えられる。

少し逸れると、プログラミング言語そのものにもデザインという言葉は使われる。言語のデザインとは、それそのものの作られ方だったり、APIの仕様だったりする。優れたデザインを持つプログラミング言語は、他の言語に比べてパワーが高い。そして、ユーザーの要望(トレンド)によって日々、言語はデザインを更新する。

デザインの更新は売り上げに直接寄与するのか?というよくある問いに対し、もしデザインの積極的な改善をやめた場合のシナリオを用意しておくと良いと思う。

もしデザインの更新をやめた場合、これらはシステム要件が増えるたびに積み上がり、ある点を超えた時点でリファクタリングが不可能な規模に達するだろう。そして、その間デザインを磨き続けた競合と埋められない差が生まれ、売り上げは目減りするだろう。

デザインは機能であり、ユーザー接点であり、システムパフォーマンスである。そしてサービスが成長する限り永遠に更新を止めることはできない。止めた瞬間から、システムのパワーは落ちていく。