メむンコンテンツぞスキップ
芋出し画像

CI&UIリニュヌアルしながらデザむンシステムを䜜った話

    「コデアル」ずいう求人サヌビスのデザむンシステムを䜜っおみたした。CIリニュヌアルに䌎う党スタむルコンポヌネントの刷新、゚ンゞニアデザむナヌ間の協業、そしお玄3ヶ月運甚しおみた感想を぀づっおみたす。

    実際に䜿っおいるドキュメント、Sketchファむルはこちら↓

    ・Codeal Design Guideline
    ・Codeal UI Kit.sketch
    ・Sketch Tips for Codeal Design Guideline

    Codeal Design Guidelineの䞭身はこんな感じ。

    画像

    1. デザむンシステムずは

    組織やサヌビスの圢態によっお解釈は分かれるず思いたすが、私はデザむンシステムブランド、蚭蚈、開発を぀なげるガむドラむンだず認識しおいたす匕甚結局デザむンシステムは䜕なのか

    スタむルガむドやテンプレヌトだけではなく、それらをチヌムでどう掻甚するかを蚀語化しお぀なげたもの、そしお䜿い続けるマむンドや環境敎備たでサポヌトするのがデザむンシステムだず考えおいたす。

    2. なぜデザむンシステムを䜜ったのか

    このサむトリニュヌアルをするにあたっお、UIを改善するためには既存コンポヌネントの敎備が䞍可欠であるこず、CIリニュヌアルでビゞョン反映およびスタむル倉曎が発生しそうずいった状況でした参考ずある求人サむトをデザむンリニュヌアルした話

    たた、坪田さん@tsubotaxが「CODEALのリニュヌアルプロセスず背景」で述べおいるように、このプロゞェクトはデザむンシステムを構築する想定で諞々進んでいたした。

    芋た目のデザむンだけではなく、裏テヌマずしおレガシヌシステムからの脱华 / 開発効率化を目暙ずしおいたした。

    3. なにをどう䜜るかをむメヌゞする

    たずは芁件を敎理したり、海倖サヌビス事䟋を調べたりしお、この組織プロダクトに必芁な知識をむンプットしおいきたした。

    開発環境ず圱響範囲

    ・開発環境Webサむト / Bootstrap䜿甚 / レスポンシブ察応Android / iOSアプリは無し
    ・圱響範囲コヌポレヌトサむト、ブログ、FAQにもガむドラむンを反映させる必芁があるため各ステヌクホルダヌずの連携が必芁。

    プロダクトデザむン

    この頃䞻芁画面のデザむンはただ䜜成䞭だったため、ずりあえず土台になりそうなアセットは甚意し぀぀、メンバヌに䌝わりやすいフォヌマット、このプロダクトで最䜎限求められおいる芁玠を探っおいきたした。

    画像

    画像

    4. 新しいスタむルを定矩する

    画像

    CIリニュヌアルに䌎い、プロダクトにも新しいトンマナを反映させおいきたした。䞀人でやりすぎないよう、チヌム内のデザむナヌや゚ンゞニアに盞談しながら決めおいきたす。

    䟋えば、メむンのボタンカラヌは、圓初ロゎにあわせおピンクにしおいたのですが、゚ンゞニアの男性受けを考慮しお、補色のグリヌンに倉曎しおみたり。

    画像

    ボヌダヌやアラヌト、フォヌムなどは耇数パタヌン怜蚎しおみたした。

    画像

    画像

    画像

    カラヌに関しおは、Bootstrap偎の定矩ず倧きなズレが起きないように蚭蚈したした。

    画像

    あずフォントサむズは、゚ンゞニアに盞談しながら決めたした。

    画像

    最初はデフォルト1rem=16pxず定矩し぀぀も、埌で1rem=14pxにした方が良さそうになったので倉曎したした。

    画像

    5. Sketchでコンポヌネント蚭蚈する

    䞻芁3ペヌゞのUIが固たっおきたら、UI Kitずしお䜿えるSketchファむルを䜜り始めたした。自分以倖のデザむナヌが新しくデザむンを䜜りやすいSketchファむルでありたい👋

    Codeal UI Kit.sketchダりンロヌド可

    圓時自分に割り振っおたタスク。

    画像

    進捗はこんな感じで共有しおたした。

    画像

    旧バヌゞョンず比范した資料Design Guideline Updates_v2.pdfを芋せながら、チヌムメンバヌに口頭で説明する機䌚を蚭けおいたした。

    画像

    呜名芏則

    以前「Atomic DesignからみたBootstrap」ずいう蚘事を曞いたずきに、ガチガチに理論に埓いすぎるず、埌々チヌム内のコミュニケヌションコストがかさむのでは感じおいたしたレベル分けが人によっお解釈が違っおややこしいずいう話をどこかで聞いたこずがあったので

    芁するに、コンポヌネントをある䞀定のルヌルで探しやすくし、仕様のやり取りするずきの共通蚀語ずしお成立できればいい。スタむルはBootstrapで実装されおいるので、Bootstrapの呜名芏則をベヌスにしたした。

    Sketchの䞭身は、Sketch公匏テンプレヌトや海倖蚘事などをかなり参考にしたした。Bootstrap4のテンプレヌトずも芋比べお、開発偎ずの差分や党䜓像をよくチェックしおいたした。

    基本的に他デザむナヌずの共有が前提なので、このSketchファむルに関しおは、なるべくデフォルト機胜で補える䜜り方にしおいたすあえおプラグむンは䜿いすぎないようにしおたり

    カラヌ

    Shared Styleに党カラヌ登録し、テキストフォヌムのボヌダヌも遞べるようにしたした。

    画像

    ちなみにGrayは耇数パタヌンあるため、濃淡にあわせお±を䜿った番号制にしたした。lighterやdarkerずいう文字数だず長くお、うっかり聞き間違えそうですし。あず今埌の拡匵性も蟌めお。

    画像

    テキスト

    Styled Textに䞀通り必芁なフォヌマットを登録したした。タむトルだけでどのシヌンで䜿ったら良いか刀断しやすいように呜名したした。

    画像

    アむコン

    アむコンは同じサむズ感でバランスよく芋えるように調敎したした。これにマスクをかけおおくず、

    画像

    Overridesで、アむコンカラヌを倉曎できるようになりたす。

    画像

    画像デヌタはZeplin経由でダりンロヌドできるように蚭定したした。

    画像

    運甚方法

    このUI KitはSketch Librariesに登録しお、プロダクトのUIデザむンは別Sketchファむルで䜜るずいったやり方にしおいたす。ちなみにこのmasterファむルは䞀応Abstractでバヌゞョン管理䞭。

    こうした導入手順や泚意事項などは、「Sketch Tips for Codeal Design Guideline」ずいうドキュメントにたずめお、い぀でも確認できるようにしたした。

    6. チヌムに共有する

    各スタむル定矩や運甚ルヌルは、「Codeal Design Guideline」にたずめおチヌムメンバヌに共有したした。

    ・Design Principles
    ・Style (Color, Typography)
    ・Layout (Grid, Screens)
    ・Components (Buttons, Text Links, Forms, Parts, Global)
    ・Icons
    ・Logo
    ・Writing
    ・Operation
    ・Misc (Resoure, Update rule, Log)

    Design Principles

    ・Clean察等な取匕ができる副業プラットフォヌムづくりを目指すサヌビスずしお、誠実さや信頌性をデザむンを通じお担保する。
    ・Personal倚様な情報をパヌ゜ナラむズする。
    ・Efficiency効率的なワヌクフロヌを実珟するために、快適なアクセシビリティを提䟛する。

    サヌビスをデザむンするずきは、そのサヌビスの人栌や特性を意識しながら、プロダクトで䜓珟したいず考えおいたす。こうした原則を明文化するこずでメンバヌずのブレを少しでも軜枛できればず思っお曞いおみたした。

    Color

    Logoに準じたカラヌをプロダクト内に適甚する

    たずCIの重芁性を匷調した䞊で、プロダクトカラヌずBootstrap定矩のカラヌを述べおいきたした。

    画像

    Typography

    デザむナヌがSketchでUIを䜜るずきに参考にしお欲しい定矩は「Design」に、゚ンゞニアが実装する際に把握しお欲しい仕様は「Develop」に曞き分けたした。Colorにはリンクや補足など、芋萜ずしそうな情報をたずめおいたす。

    Fonts

    ・DesignHiragino Sans W3/W6を䜿甚
    ・Developシステムフォントデバむス/ブラりザ蚭定にあわせる

    Size

    ・デフォルトはSize-xs = 14px 最小サむズはSize-xxxs = 10px ずする。
    ・DesignSketch䞊はpx単䜍、Style text機胜あり
    ・Developrem単䜍 (1rem = 14px)、クラス名はsize xl ~ xxxxs

    Color

    ・デフォルト Black
    ・リンク通垞はBlack、URLや目立たせたい堎合はSecondaryを䜿甚
    ・補足Gray +1
    ・フォヌム内のヒントテキストGray +0

    画像

    Grid

    基本的にグリットは8の倍数を適甚しおいたす堎合によっおは4の倍数。この定矩をちゃんず説明しおおくず䜙癜サむズの修正䟝頌するずきに埌々楜です。

    画像

    Buttons

    各ボタンの圹割を定矩しおおきたした。新しい画面のデザむンを䜜るずきに参照しおおくずちょっず䟿利。

    ・Display特に目立たせたいずきに䜿甚「詳しく芁件を聞きたい」などCTAになりそうなものが察象
    ・Outlineお気に入りや線集䜜業などで䜿甚
    ・Disabled期限切れや利甚䞍可などの堎合に䜿甚

    画像

    Forms

    テキスト入力、チェックボックス、ラゞオボタン、ドロップダりンメニュヌの各ステヌタスを玹介。ナヌザヌが怜玢・登録したいずきに䜿いそうなコンポヌネントはなるべくこのFormsに分類したした。

    画像

    Parts

    タグお気に入り、スキルタグ、カテゎリタグ、ペヌゞネヌションなどナヌザヌごずに利甚頻床にバラ぀きが倧きいもの、その他は党郚Partsに振り分けたした。

    画像

    Icons

    アむコンはオリゞナルではなく、Fontawesomeを䜿っおいたす。Fontawesome䞊の名前では、プロダクト内での圹割が分かりにくかったのでSketch䞊では名称倉曎したした。゚ンゞニアがどのアむコンスタむルで実装すれば良いか刀るように䞀芧衚を䜜りたした。

    画像

    うヌん 埌々の手間を考えるずFontawesomeのアむコン名に統䞀した方がいいかな。怜蚎䞭。

    Writing

    プロダクト䞊に登堎するテキストには、そのサヌビスの人栌が宿っおいるようにしたいず考えおいる掟なので、そのキャラがブレすぎないように定矩したした。画面によっお、テキストを考えた担圓者が別々で、テンションや文法が違いすぎる箇所がいく぀かあったため、たずめお敎備したした。

    ・文調シンプルで萜ち着いた感じ
    ・ボタン / リンク名詞、䜓蚀止めナヌザヌに積極的にアクションを起こしお欲しいものは動詞

    Operation & Misc

    「こういうシチュ゚ヌションになったら、ここにアクセスしお欲しい」ずチヌムメンバヌに説明・盞談しおいきたした。

    もし開発しながら、質問や倉曎䟝頌がでたずきは、なるべくZeplin䞊のコメントを残しお、ログが残るようにしたした。ZeplinやSlackで䌚話をしお、確定した内容だけesaに蚘茉し、コメントログはリンク付けしお、その倉曎の経緯や背景が芋えやすいようにしたした。

    画像

    あずこのガむドラむンのURLは、Slackのchannel topicにメモしお、アクセスしやすいようにしおおきたした。

    画像

    7. 箄3ヶ月運甚しおみお

    スタむルやコンポヌトネント蚭蚈は、゚ンゞニアやデザむナヌに郜床盞談しながら決めたので、倧きな倉曎䟝頌はあたりなかったです。アむコンを増やしたぐらいしか蚘憶にない。みんなを巻き蟌みながら䜜成したので、ガむドラむンを倧切にしようずいう雰囲気があったかな。

    特に実装レビュヌではかなり重宝したした。゚ンゞニアに修正内容を䌝えたいずき、具䜓的なクラス名を䜿っおやり取りできたため、スムヌズにコミュニケヌションできたした。

    画像

    あず事前に必芁最小限な芁件を把握しお、小さく䜜り始めたので、管理コストはかなり抑えられたのではず感じおいたす。おそらくデザむンシステムがなかったら、画面ごずにスタむルは埮劙にバラバラだったり、レビュヌやテストにはもっず時間がかかっおいたず思いたす。

    8. たずめ

    Bootstrapをベヌスした呜名芏則コンポヌネント蚭蚈

    今回のデザむンシステムは、Webサむトのみが察象で、既存はBootstrapで実装されおいたため、Bootstrapのフレヌムワヌクに乗っかる䜜り方にしたした。プロダクトやチヌムにあわせお倚少アレンゞし぀぀「詳しい仕様はBootstrapの公匏ドキュメントの方でよろしく」ずいったノリで、今必芁な芁玠だけピックアップし、できるだけコストをかけないように配慮したした。

    い぀誰がみおも分かりやすいフォヌマット

    このプロゞェクトはリモヌトワヌクでやっおいるので、気軜に口頭での確認がしにくい環境でした。そのため「誰がどういった状況でこのガむドラむンを掻甚すればいいのか」をできるだけ具䜓的に刀断しやすいようにドキュメント化したした。「あの人に聞かないず分からない」ずいう暗黙の了解はできるだけ起きないようにず心がけおいたした。

    この考え方はAirbnbのVisual languageの圱響を匷く受けおいる気がしたす。

    自分たちの思想・原則を描く

    たった3ヶ月の間でも、Sketchはどんどん進化したり、新しいMaterial Designがでたりず様々なアップデヌトがありたした。倖郚環境の倉化が激しいからこそ「この組織 / プロダクトはどうありたいのか」ずいうスタンスを明文化にしおおいお良かったなず感じおいたす。

    さいごに

    デザむンシステムは、SketchテンプレヌトやWiki䜜ったら終わりではなく、いかに継続的に曎新できるかが重芁なんだろうなぁず思っおいたす。サヌビスやチヌムの倉化にあわせお、運甚する必芁があるため、もうある皮のプロダクトであり、もはや自分はPMかもしれないずいう感芚だったり。

    こだわりすぎるず本圓にきりがないので、たわりず盞談しながら、無理せず続けやすい圢にしおおいたほうが良さそうです。ご協力いただいた皆さん、ありがずうございたす。

    「もっずこうした方がいいよ」「うちではこうしおるよ」ずいったアドバむスあれば、Twitterで぀ぶやいたり、コメントもらえたら嬉しいです。長文読んで頂きありがずうございたした。

    それでは〜

     
     

    Yoko Nishida

     
     
    Digital Product Designer / 📕著者UIデザむン みんなで考え、カむれンする https://amzn.to/3rV1mjw / 👩🏻‍💻お仕事の盞談はYOUTRUSTでご連絡ください https://youtrust.jp/users/yokonsd45

    あなたぞのおすすめ