デザインSDKの可能性を探る
SDKから学べること
SDK(Software Development Kit – ソフトウェア開発キット)とは、ソフトウェアを開発するために必要な文書、関連ファイル、ツールが揃ったバンドルのようなものです。例えば Android SDK には、Android アプリを開発するために必要なライブラリだけでなく、プレビューをするためのエミューレータや、開発を効率良くおこなうためのユティリティが含まれています。
良い SDK には、以下の 4 つの特徴があります。
- コアライブラリが安定していて、主張通りに動作していること。
- ドキュメンテーションはもちろん Issue Tracking が維持・管理されていること。ソースを読んで学習せよでは十分ではない。
- どのように書けば動作するのか分かる例が用意されていること 。コンポーネントの互換性など、ドキュメンテーションだけでは説明しきれないことが分かるもの。
- 拡張性、柔軟性があること。別の言語で書かれたプログラムを組み合わせたるなど、ある程度のカスタマイズを可能にしている。
もちろん私は SDK 開発者ではありませんし知識も浅いですが、SDK の基本的な考え方はデザインにも適応できるのではないでしょうか。特にインハウスでデザインを維持・管理していく際には欠かせないツールになると思います。外注をしなければいけない場合、急いで何かを作らなければならない場合、新人への教育が必要な場合に SDK のようなものが必要になります。
デザインSDKの可能性と課題
CSSフレームワークをはじめとしたスタイルガイドは、デザイン SDK の一部に含まれているツールですが、これだけでは十分ではありません。Web サイト構築、特にフロントエンド寄りのツールなので他にも必要になります
- ロゴ利用規約と素材
- ムードボードやインスピレーション
- 写真の選び方、扱い方
- 利用書体
- テンプートやアセット
こうしたデザインに必要な素材は、きちんと組織の中で共有されていることが多いですが、ひとまとめになっていなかったり、社外への配布が難しくなっている場合があります。SDK のように「ここを見れば、だいたい揃っている」という状態を作るのが理想的です。
課題になるのが一番最後に挙げた「テンプレートとアセット」。SDK だと開発するためのソフトウェアも一緒に提供する場合がありますが、デザインの場合そうはいきません。特に最近だと Web デザインに絞ったとしても Photoshop, Illustrator, Sketch とデザイナーが好むツールが幾つかありますし、アプリデザインや印刷物も含めるとその数はさらに増えます。互換性もあまりないので、ソフトウェア間で使い回しができないのもデメリットです。
まず社内で使うツールに集中して、必要に応じてツールセットの幅を少しずつ広げていくことになるでしょう。例えば Sketch の場合、以下のようにしてアセットを用意することができます。
- シンボルやテキストスタイルなど、何度も使うデザイン要素をまとめた Sketch ファイルを作成する。
- シンボルやテキストスタイルをはじめとした要素が集まった配布可能なテンプレートの作成。「Save as Template」を使えば可能です。
- カラーパレットの配布。テンプレートでもできますが、色だけ配布というのも手段です。Sketch Palettes のようなプラグインを使えば Document Colors の共有も簡単です。
シンボルやテキストスタイルの名前に「スラッシュ(/)」を加えることで、階層で整理することが可能になります。こうしたちょっとした整理も配布のしやすさにつながります。
まとめ
受託でこうしたデザイン SDK を作る機会はなかなかありませんが、制作項目のひとつとして入れることができるかもしれません。デザイン納品後に何かしらの変化は必ず発生します。そのとき受注元の制作会社が手を出せないことがありますし、デザインを担当した人もいなくなっている場合があります。デザインの大きな崩れを未然に防ぐためにも配布可能なデザイン SDK を開発するためのリソースをつくっておきたいところです。