/ kyokomi note / blog

「エンジニアのためのドキュメントライティング」を読んだ

April 15, 2023 [読書 | blog]

感想とか個人的に良かった内容のメモなど。

ユーザーの問題解決とプロダクトの成功を導く エンジニアのためのドキュメントライティング - Amazon.co.jp

Chapter1 読み手の理解

ユーザー理解が大事という話。これはプロダクト開発一般にも言える話で、BABOKとかの話でも出てくるやつだと思う。

顧客のニーズや顧客のレベルに合わせたドキュメントを作らないと価値が無い的なやつ。

Chapter2 ドキュメントの計画

どんな種類のドキュメントを作るとよいか考えましょうというやつ。

コンセプトガイドなのか、ハウツーなのか、用語集なのか。

それぞれのドキュメントの特性を紹介してどういう目的が達成できるかを知り計画しようという感じ。

Chapter3 ドキュメントのドラフト

ドキュメントを書き始める難しさの話がメイン。

ツールとかは一応説明してるけど、ここではそれ自体が重要という話ではない。

一番大事なのは、「読み手の期待に答える」で書かれているようなことを意識して書く/書けること。

あとは、「読み手は書いてある内容をほとんど読まない」 というのが大事。

実際に読み手が1ページに費やした時間を基に考えると、読まれている単語数は1ページで多くて28%程度みたいな話。

これは実際自分が本とかドキュメントを読むときの感覚とも近く、全部の文章を一言一句逃さずに読まないと何を書いているのか理解できないドキュメントとかを渡されると「ウッ…」ってなるのはこれ。

見出しやコールアウトなどを見ながら、適宜気になる部分だけ読んで内容を把握し、詳細な議論や疑問があるときに周辺をしっかり読むという読み方が多いと思う。

なので、分量で圧倒してしまうと、議論が必要な重要な設計考慮漏れなどが隠れてしまう。

「流し読みできるようなドキュメントを書くことを心がけると良い」いわれてもピンとこないと思うので、とりあえずここまで話してるようなテクニックを使って書いてみればいいと思う。

どうしても量が多くなるなら、それは1つのドキュメントにまとめるべきでない可能性があるので分割を検討するとよい。

最後には、簡潔なドキュメントをどうやって書けばいいのか行き詰まったときにやるとよいことが紹介されていた。

基本的に同意という感じで特に自分がよくやってるのは、以下の3つ

Chapter4 ドキュメントの編集

編集つまり、レビューの話。 セルフレビューもだが他人にレビューしてもらう話もしている。

なぜレビューが必要か。

文法や読みやすさだけではなく、できるだけ明確に、早く、
役立つ方法でユーザーに情報を伝えられるようになる。

レビュー時には、改善したいドキュメントの要素の1つに集中するのが有効。 一度にたくさんの要素に集中しようとすると、扱う対象が多すぎて、進行が遅くなる。

一連の複数の周回に分解して、1つの周回で1つの編集観点に絞ったほうがより編集が早くなる。

以下など観点で周回

セルフレビュー

チェックリストの例
* タイトルが短くて具体的である
* 見出しは論理的に並べられており、一貫性がある
* ドキュメントの目的が最初の段落で説明されている
* 手順はテストされていて動作する
* 技術的なコンセプトが説明されている、もしくはリンクされている
* テンプレートの構成に従っている
* リンクがすべて有効である
* 誤字脱字・文法チェックツールが実行されている
* グラフィックスや画像が明確で有効である
* 前提条件や次のステップが定義されている

レビュー依頼するときはフィードバックの種類を伝えるのも有効っぽい。これは実際にこの本を読んだ後にやってみたら良かったという声を聞いた。

* 構成をレビューしてほしいのか?
* 技術面なのか?
* 明確さと簡潔さを見てほしいのか?
* etc...

Chapter5 サンプルコードの組み込み

わかりやすい、使いやすいとかを気をつけようといった内容。

省略記号とかも使って簡潔にしようなどなど。

Chapter6 ビジュアルコンテンツの追加

図とか使っていこうという話。

1枚の画像は、文章に比べて少ない認知処理で、複数のことがらを関連づけることを助けてくれ、
文章よりはるかにすばやく対象の理解を深められます。
効果的ではないビジュアルコンテンツは、情報の伝達を妨げます。
これは通常、次の点が欠けているため
* 理解容易性
* アクセシビリティ
* パフォーマンス

とはいえ図とか作るの難しいよね〜というのはある。

ドキュメントと同様に、効果的な図の作成は良い計画から始まります。
簡単な図を描くために、ホワイトボードや紙とペンを用意しましょう。

自分は、iPadとかにApple Pencilでガーッと書き始める事が多い。

特に登場人物(DB,API, ユーザー, 運用する人, Batch, etc…)を出し切って関連を線とかで表現していくのが重要だと思ってる。 そこから削っていったり、分割してより詳細化したりといった流れになる。

欧米人であれば、左から右に、上から下へ読み進める傾向があるらしい、かなり図のみやすさが変わるのでこれも重要。

色に一貫性をもたせるとか、ラベルを利用するとかも大事。 ただし要素が増えすぎるわけわからなくなるので、凡例を用意したりするのも忘れないように。

文章はすぐに時代遅れになりますが、画像はさらに早く時代遅れになります。
ユーザーインターフェース(UI)を1つでも変更すれば、スクリーンショットは古いものになります。

これはマジでそうで、図中に注釈で詳細なことを書きすぎると、ちょっとAPIのendpoint名を変えたりしたら図がもう古くなってしまうので、理解を助けるようにしつつ、ふわっとさせておくのも大事だと思う。

Chapter7〜11

ドキュメントの公開、フィードバック収集や運用保守に関する話がメイン。

今回、自分は社内でのdesign doc執筆に役立ちそうな情報を求めて本書を手にとったので、この章の内容は軽く流して読んだので「ほほーん」くらいの感想である。

ただ、品質の話で「簡潔な」のところに書いてあった、これはとても良かったので紹介しておく。

読み手の理解を妨げるものはすべて取り除き、
関連はしているもののすぐに必要でないものはリンクを張っておきましょう。

「図に不要な線は含めてはいけないように、また機械に不要な部品を入れてはいけないのと同じ理由で、
1つの文に不要な言葉は含めてはいけませんし、段落に不要な文章を含めてはいけません」

あとは、ドキュメントの責任は全員にあるというのはそうだが、逆に誰も責任を持ってないとも言えるため、実際は誰かがオーナーになったほうが良いといった内容も記載されてた。

メンテしない書き捨てのドキュメントみたいなのもあるが、そうでない場合はメンテの方針と責任を明確にするとドキュメントが古くなることを防止するのに役立つというのはまさにそうだなぁと思う。

last modified July 17, 2023