非デザイナーと共に推進するデザイン思考:エンジニアがサービス開発で貢献する実践的なアプローチ
はじめに
サービス開発の現場において、ユーザー中心のアプローチを取り入れる重要性は広く認識されてきています。デザイン思考は、ユーザーへの共感を通じて課題を発見し、革新的な解決策を生み出すための有効なフレームワークとして注目されています。しかし、エンジニアリングチームが日々の開発業務を進める中で、非デザイナーのチームメンバーと共にデザイン思考を実践し、共通理解を深め、具体的な成果に結びつけることには、時間的制約やコミュニケーションの壁など、様々な課題が伴います。
本記事では、サービス開発に携わるエンジニアの皆様が、非デザイナーのチームメンバーとデザイン思考を共に推進する上で、どのように貢献できるか、どのような実践的なアプローチが可能かについてご紹介します。エンジニアならではの強みを活かし、チーム全体のデザイン思考の実践レベルを高めるためのヒントを提供いたします。
デザイン思考におけるエンジニアのユニークな強み
デザイン思考は、一般的に共感、定義、アイデア、プロトタイプ、テストの5つのフェーズを経て進められます。これらの各フェーズにおいて、エンジニアは非デザイナーとは異なる視点やスキルセットをもって貢献することが可能です。
- 技術的実現性の洞察: アイデアやコンセプトが技術的に実現可能か、どの程度のコスト(時間、リソース)がかかるかを早期に評価できます。これにより、実現性の低いアイデアに時間を費やしすぎるリスクを軽減できます。
- 論理的思考と構造化能力: 複雑な課題や大量の情報を論理的に整理し、構造化することに長けています。これは、共感フェーズで収集したインサイトを分析したり、アイデアフェーズで発想を整理・分類したりする際に役立ちます。
- 具体的なシステム思考: サービスやプロダクトを要素分解し、それぞれの関連性や仕組みをシステムとして捉えることができます。これは、ユーザーの課題がシステム全体のどこに起因するのかを分析したり、提案する解決策が既存システムに与える影響を評価したりする際に重要です。
- プロトタイピングと検証への貢献: 概念実証(PoC)や技術検証を伴うプロトタイプの構築、自動化されたテスト環境の整備など、技術的な側面からプロトタイピングと検証をサポートできます。
これらの強みを活かすことで、エンジニアはデザイン思考のプロセスにおいて、単なる技術的な実装担当者としてではなく、積極的に課題発見や解決策創出に関わる重要な推進者となり得ます。
非デザイナーとの効果的な協働アプローチ
非デザイナーのチームメンバー(企画担当、ビジネスサイド、デザイナーなど)とデザイン思考を共に進める際には、以下のような実践的なアプローチが考えられます。
1. 共通言語の確立と視覚的なコミュニケーション
デザイン思考のワークショップや議論では、異なるバックグラウンドを持つメンバーが集まります。エンジニアが専門用語を多用したり、逆に非デザイナーの使うデザイン関連用語を理解できなかったりすると、コミュニケーションに齟齬が生じます。
- 平易な言葉で説明する: 技術的な制約や可能性について説明する際は、専門用語を避け、具体的な例や比喩を用いて分かりやすく伝えましょう。
- 相手の言葉に耳を傾け、意図を確認する: 非デザイナーが使う用語や表現で不明な点があれば、臆せず質問し、彼らが伝えたい本質的な意図を理解しようと努めましょう。
- 視覚ツールを積極的に活用する: ホワイトボード、付箋、MiroやFigJamのようなオンライン共同作業ツールを使い、アイデア、課題、ユーザーフローなどを視覚的に共有します。コードや専門的な図ではなく、共通理解を助けるための図やイラスト、テキストを組み合わせた表現を心がけましょう。
2. アイデア創出フェーズでの実現性フィードバック
アイデア創出フェーズでは、非デザイナーから多様なアイデアが出されます。エンジニアは、単に「それはできません」と否定するのではなく、建設的なフィードバックを提供することが重要です。
- 技術的な可能性と制約を具体的に示す: アイデアのどこが技術的に難しく、どのような代替案や段階的な実現方法があるかを具体的に説明します。
- コストとメリットを提示する: そのアイデアを実現するために必要な開発コスト(時間、人的リソース)と、実現した場合のユーザーやビジネスへのメリットを比較検討するための情報を提供します。
- 「How Might We (HMW)」の問いを技術視点で再構築する: ユーザー課題を「どのように〜できるか?」という問い(HMW)に落とし込む際に、技術的な可能性を踏まえた問いを提案することで、より実現性の高い、あるいは技術の強みを活かせるアイデアの発想を促せます。
3. プロトタイピングにおける技術的サポートと検証設計
プロトタイピングは、アイデアを具体的な形にし、ユーザーからフィードバックを得る重要なステップです。エンジニアは、様々なレベルのプロトタイピングに貢献できます。
- 迅速なMVP(Minimum Viable Product)開発: コードを書いて動くプロトタイプが必要な場合、要件を最小限に絞り、迅速に開発することで検証サイクルを加速できます。
- 技術スタックの知識を活かしたツール選定: 目的とする検証内容に対し、どのような技術やツール(ノーコード/ローコードツール、特定のAPI、既存ライブラリなど)がプロトタイプ構築に適しているかを提案できます。
- 検証指標の設定とデータ収集: プロトタイプを用いたユーザーテストで、どのような技術的なログやデータを収集すれば、ユーザー行動やプロトタイプの有効性を検証できるかを設計段階から検討し、実装をサポートします。
4. ユーザーテストでの技術的観点からの観察
ユーザーテストの実施中やその後の分析において、エンジニアの観察眼は非常に役立ちます。
- ユーザーの「なぜ」を技術視点で深掘り: ユーザーが特定の操作でつまずいたり、予期しない行動をとったりした場合、それがUI/UXの問題だけでなく、システムの挙動やパフォーマンスに起因する可能性はないか、技術的な側面から分析できます。
- ログデータと定性的なフィードバックの紐付け: ユーザーの定性的なコメントや行動観察の結果を、同時に収集したシステムログや操作データと照らし合わせることで、より客観的で深いインサイトを得られます。
チーム全体での共通理解を深めるために
エンジニアが個人的にデザイン思考を理解・実践するだけでなく、チーム全体、特に非デザイナーとの共通理解を深めるためには、意識的な取り組みが必要です。
- デザイン思考プロセスの可視化: 現在チームがデザイン思考のどのフェーズにいるのか、各フェーズの目的やアウトプットは何かを、分かりやすい図やジャーニーマップなどでチーム全体に共有します。
- 定期的な知識共有会: デザイン思考の基本的な概念、特定のツールや手法(例: ペルソナ、カスタマージャーニーマップ、HMW、プロトタイピングの種類)について、エンジニア側から技術的な視点を交えつつ解説する場を設けることも有効です。
- 成功事例と学びの共有: デザイン思考を実践してユーザー課題の解決に繋がった事例や、逆にうまくいかなかったがそこから学びを得た経験などを、具体的な開発のエピソードと合わせてチーム内で共有します。これにより、デザイン思考が「自分たちの業務とどう関連しているか」をより実感しやすくなります。
- 共同での課題発見・定義: ユーザーインタビューへの同席、収集したインサイトの共同分析、課題定義に関する議論に積極的に参加し、エンジニアリングの観点から質問や意見を提示します。これにより、チーム全体でユーザー課題への共感を深めることができます。
よくある課題と乗り越え方
- 時間の確保: 忙しい開発スケジュールの合間にデザイン思考の活動時間を確保することは大きな課題です。
- 対策: 短時間の定例ミーティングにデザイン思考のエッセンスを取り入れる(例: 15分でユーザー課題に関する最近の気づきを共有)。スプリント計画やレビューの場で、ユーザー視点での議論の時間を設ける。デザイン思考関連のタスクをスプリントバックログに明示的に含める。
- 成果の見えにくさ: デザイン思考の初期段階の活動は、具体的なコードや機能として現れないため、成果が見えにくいと感じることがあります。
- 対策: 発見したインサイト、生まれたアイデアの数、作成したプロトタイプの種類と数、ユーザーテストで得られた学び、そしてそれがその後の開発判断にどう影響したかを記録・可視化します。小さな成功(例: プロトタイプによってユーザーの特定の課題が解決できる確証が得られた)も積極的に共有します。
- 非デザイナーとの意見の対立: ユーザー中心の視点と技術的な制約や効率性がぶつかることがあります。
- 対策: 感情的にならず、常に「ユーザーにとって最善か」「ビジネスとして持続可能か」「技術的に実現可能か」という共通の目的・基準に立ち返って議論します。ファクト(ユーザーデータ、技術調査の結果)に基づいて冷静に話し合い、歩み寄りや代替案の模索を行います。
まとめ
サービス開発におけるデザイン思考の実践は、デザイナーだけが行うものではありません。特にエンジニアは、その技術的な知見、論理的思考力、システム思考能力を活かすことで、ユーザーへの深い共感に基づいた革新的なサービス開発を強力に推進する役割を担うことができます。
非デザイナーのチームメンバーと効果的に協働し、共通理解を深めるためには、共通言語の確立、建設的なフィードバック、技術的なサポート、そして定期的な知識・学びの共有が鍵となります。これらの実践的なアプローチを通じて、エンジニアはデザイン思考のプロセスに深く関与し、チーム全体の創造性、課題解決能力、そして最終的に開発するサービスの質を高めることに貢献できるでしょう。デザイン思考を「他人事」ではなく「自分事」として捉え、日々の業務の中で非デザイナーと共に積極的に実践していくことが、より価値のあるサービス開発への道を開きます。