[Document workflow] プロトタイピングにおける Sketch のシンボル機能を利用した Atomic Design の実践と所感

下記のポストを見て Atomic Design というデザイン手法に興味を持ちました。
プロジェクトにプロトタイピングツールとして取り入れた時のポイントと所感をまとめてみました。

以下は、Sketch v43+ を Web アプリ・サイトのデザインに利用した際の個人的な意見になります。
みなさんの活用例も教えて頂けるとうれしく思います。

Atomic Design とは

Atomic Design とは、2013 年に Brad Frost さんにより提唱されたデザイン手法とのこと。

Atomic designとは、パーツを合体させて、繰り返し可能なエレメントやテンプレートが作成できるシステムを構築することをいいます。

珍しいワークフロー:Atomic Designの原則とSketchでデザインからプログラミングまで | デザイン | POSTD

その他、下記のポストが非常に参考になりました。

追記

このポストを書いているときに、下記を見つけました。
最初にこちらを参考にすれば、より理解が進んでいたかも知れません。

同じく実例が紹介されていて勉強になります。

Book

要約

Atomic Design とは、 パーツを合体させて繰り返し可能なエレメントやテンプレートが作成できるシステムを構築する ことをいいます。

Atomic Design は 5 つのレイヤー構造にわかれます。

  • Atoms(原子) … 絶対的な基本的エレメント(ex. カラーパレットやフォント、ボタンなど)
  • Molecules(分子) … 2つ以上の原子から構成されるエレメント(ex. ラベルのあるフォームフィールドやタイトル行など)
  • Organisms(有機体) … 具体化されたインターフェース(ex. ロゴを含むナビゲーションヘッダなど)
  • Templates(テンプレート) … ワイヤーフレーム・プロトタイプ
  • Pages(ページ) … 忠実度の高いテンプレート

各レイヤー定義によって、デザインコンポーネントが明確になり粒度も揃います。
これによって デザインの構造・設計が見える化される わけです。

実践 Sketch の Symbol を利用する

Sketch の Symbol 機能を利用すると、レイヤー構造の作成と管理がうまくいきます。

Template

一から起こすのは難しそうでしたので、Atomic Design Template 利用してプロトタイピングを進めました。

シンボルを作成する

エレメントを右クリックして、Create Symbol を選択します。

なお下記は過去バージョンの利用方法のようで、現在はチェック不要となっていました。

プロからのヒント:Sketchの素晴らしい機能として、テキスト付きのエレメントをモジュール化したシンボルにすることができます。そのためには、右側のツールセットにあるExclude Text Value from Symbolボックスのチェックも付けてください。

珍しいワークフロー:Atomic Designの原則とSketchでデザインからプログラミングまで | デザイン | POSTD

現行バージョンは、こちらのフローが参考になります。

シンボルの命名と分類をする

命名規則は無いそうですが、下記のようにすると扱いやすくなります。

  • Lv1 … Atoms(原子)
  • Lv2 … Molecules(分子)
  • Lv3 … Organisms(有機体)

Sketch ではスラッシュをシンボル名に入れることで、階層をもたせることができます(後述の「シンボルを利用する」の図も参照のこと)。
またシンボルを規則的に命名することで、Sketch プラグインの Symbol Organizer で階層ごとに並べ替えることができ、見通しが良くなります。

シンボルを利用する

作成したシンボルをテンプレートなどに配置するには、メニューの Insert > Symbols から選択します。

(こちらの図は、分類としては良い例ではなさそうですが、イメージはつかんで頂けると思います。)

CSS へ変換する

エレメントを右クリックして、Copy CSS Attributes を選択します。

エレメントに対するコードを得るには、エレメントが適切にグループ化されているか、またはシンボルとして登録されているかを、まず確かめる必要があります。以降の操作は簡単で、エレメントを右クリックしてドロップダウンメニューからCopy CSS Attributesを選択します。

珍しいワークフロー:Atomic Designの原則とSketchでデザインからプログラミングまで | デザイン | POSTD

下記の CSS を得ることができました。

/* Rectangle 28: */
background: #B2BAC4;
border-radius: 2px;
/* SUBSCRIBE: */
font-family: Helvetica-Bold;
font-size: 16px;
color: #FFFFFF;
letter-spacing: 0;
line-height: 16px;

所感

いままではプロジェクトの初期段階でペーパープロトタイピングを、設計段階では Twitter Bootstrap によるプロトタイプの作成を推してきました。

ペーパープロトタイピングは、紙とペンがあれば誰でも扱える手法であり、試行錯誤がしやすいため問題点や課題の洗い出し、整理がしやすい利点があります。

Bootstrap は、デザイナーやエンジニア、場合によってはクライアントとも説明不要で利用できるフレームワークであり、デバイスでの確認がしやすいでしょう。
そのまま CSS を追加して、デザインをフィニッシュすることもできます。

また中間ドキュメントが欲しいプロジェクトであれば、OmniGraffle による作図を推してきました。
stencil を利用することで、課題の解決に集中できます。

予算と時間の限られるプロジェクトにおいて、これらのツールの活用は非常にオススメです。

プロトタイピングツールとしての役割・立ち位置

では Sketch は、プロトタイピングツールとしてどのようなポジションをなすでしょうか。
Sketch は OmniGraffle の役割と重なる部分もありそうですが、私はこのように捉えています。

紙をベースとする OmniGraffle と比較して、 画面をベースとする Sketch は、より精度の高いプロトタイプを作成する事ができる という特性があるように思えます。
具体的には、文字や画像などの要素がどの程度レイアウトできるのか、といった部分がよりリアルになりました。
逆に、デザインまで完結できるツールが故に、粒度が細かくなりすぎるきらいもあります。
プロトタイピングツールとしては、割り切って使うことも重要そうです。

OmniGraffle は Stencil というひな型を利用して、よりラフに描けるでしょう。
プロジェクトのある局面においては、ラフに描いてまとめられることも重要です。

他にも Sketch には、優秀な extension や Sketch のアートボードを iOS でプレビューできる Sketch Mirror もありますよね。
このあたりは、いろいろと研究の余地がありそうです。

Sketch Mirror
カテゴリ: ユーティリティ, 仕事効率化

シンボル機能の有用性

Sketch では、シンボル機能によりマークアップを自然に意識させる枠組みが提供されています。

HTML/CSS 文書の作成にあたっては、その構造を意識することは避けられません。
目的に沿ったユーザー体験を実現するには、そのデザインがマークアップ時に破綻しないかを考慮できることも重要になります。
「レイヤー32のコピーのコピー」といった謎の PSD ファイルに悩んでいるエンジニア目線からいえば、シンボルを利用する Atomic Design のボトムアップの考え方には素直に納得ができました。

この機能を利用することで「ルールから逸脱した要素が混入」することをあらかじめ防ぐことができるので、 成果物にも一貫したデザインが反映される はずです。
デザイナー・エンジニア双方ともにメリットが大きく、他のソフトウェアと Sketch との設計思想の違いを強く感じる部分です。

その他の情報

Style Guide Generator?

ここで紹介されている「Pattern Lab | Build Atomic Design Systems」は、PHP 製のスタイルガイドジェネレーターのようなものらしいですが要調査。

Pattern LabのBrad FrostとDave Olsenが素晴らしい見本を作成していますので、参考にしてみてください。

珍しいワークフロー:Atomic Designの原則とSketchでデザインからプログラミングまで | デザイン | POSTD

CSS Architecture

APB CSS – Atomic Parts Base CSS –」という Atomic Design をベースに設計された「CSS アーキテクチャ」もあるそうです。

Book

書籍「UIデザイナーのためのSketch入門&実践ガイド」内で Atomic Design にも触れられているそうです。

特にシンボルのセクションでは、Atomic Designを解説しながら、吉竹さんなりに使いやすくアレンジしたフレームワークを紹介されています。Sketchは特にAtomic Designを取り入れて制作しやすいアプリですが、それなりに経験も必要でスムーズな導入はできないことも事実です。Atomic Designに挫折した方は、これで再チャレンジしてみてはどうでしょうか?

「UIデザイナーのためのSketch入門&実践ガイド」を読んで | creative tweet.

UIデザイナーのための Sketch入門&実践ガイド
ビー・エヌ・エヌ新社 (2017-05-23)
売り上げランキング: 35,860

当初、ページ数が予想を遥かに超えていたこともあり、Atomic Designについての節はまるごと削除してもいいんじゃないかと考えていたのですが、編集の村田さんのリクエストもあり残すことにしました。こんな考え方もあるんだ、と少しでも参考になればと思います。

執筆した「UIデザイナーのためのSketch入門&実践ガイド」が発売されました | UXデザイン会社Standardのブログ

Screencast

また Sketch の基本操作については、ドットインストールにレッスンが最近追加されたようです。

補遺