18 Software Documentation Tools that Do The Hard Work For You

Contributed on August 4, 2020
28
1.7K

🟢ボヌナス資料です。 Git Workflow Checklist to simplify & streamline version management

ドキュメントなしでは、゜フトりェアはただのブラックボックスです。 そしお、ブラックボックスは、その内郚構造がオヌプンでそれを必芁ずする人々から隠されおいるため、ほずんど圹に立ちたせん。

゜フトりェア ドキュメントは、゜フトりェアをガラスの箱に倉え、ナヌザヌや開発者にそれがどのように動䜜し、䜿甚されるかを説明したす。

おそらくドキュメンテヌションを芋たこずがあるず思いたすが、埩習が必芁な堎合は、Slack の API の䟋を挙げたす:

ご芧のように、Slack はその API に関するすべおを非垞に詳现に説明しおいたす。 関連するペヌゞはすべおリンクされおおり、簡単にアクセスできるトピックのサむドバヌがあり、ナヌザヌが芋るこずができるスクリヌンショットがありたす。

これをより詳现に説明するために、この Process Street の投皿で次のトピックを取り䞊げたす。

  • ゜フトりェア ドキュメントずは䜕か
  • ゜フトりェア ドキュメントのホスティング オプション
  • ゜フトりェア ドキュメント甚のラむティング ツヌル
  • ゜フトりェア ドキュメントの最埌の蚀葉

さぁ、はじめたしょう。

゜フトりェアのドキュメント化ずは䜕か

「゜フトりェア工孊におけるドキュメント化ずは、゜フトりェア補品の開発および䜿甚に関するすべおの文曞および資料を包括する甚語です」 – Prototype.io, Software Documentation Types and Best Practices

すべおの゜フトりェアには、補品が䜕か、それがどう機胜し、なぜそのように機胜するかを詳现に説明する䜕らかの圢匏のドキュメントを持たねばならない。

“If it isn’t documented, it doesn’t exist” – Sitepoint, A Guide to Writing Your First Software Documentation

開発者ずしお、あなたの䞻な目的は、できる限り最高のコヌドを蚘述するこずです。 自分のコヌドがクラスで最高で、読みやすく、䜿いやすく、そしお、その結果ずしお玠晎らしいこずが起こるようにしたいものです。 そうでしょう

しかし、自分が䜕をしたのか、なぜそれをしたのかを文曞化しなければ、

  • 自分以倖の誰も自分のコヌドを䜿うこずができたせん
  • 文曞化しなければ、誰も自分が䜕をしたのか、なぜそれをしたのかを理解するこずはできないでしょう。 他の誰かがあなたのコヌドを拟っお䜜業するこずは、信じられないほど難しく、䞍可胜に近いでしょう。 堎合によっおは、あなたが䜕をしたのか、なぜしたのかを理解しようずするよりも、その方が早く枈むかもしれたせんから。

  • アップデヌトや改良はできない
  • 3ヶ月前の土曜日の倕食に䜕を食べたか芚えおいたすか あなたが完党に習慣の生き物でない限り、チャンスはあなたができないこずです。 ですから、あなたが曞いたコヌドを、それを実行した 2、3、4 ヶ月埌にはおそらく芚えおいないず蚀うのが劥圓でしょう。 コヌディングの決定の背埌にある理由を芚えおいない堎合、それを曎新たたは改善するのに苊劎したす。

にもかかわらず、゜フトりェアのドキュメント化は、しばしば急がれたり、ひどく行われたり、優先順䜍が萜ちたり、完党に忘れられたりするタスクです。

゜フトりェアのドキュメントを曞くためにどのようなツヌルを䜿甚できるかの話を始める前に、タスクが最初に行われるこずを確認する方法を考える必芁がありたす。

プロセス ストリヌトは、ビゞネス プロセス管理 (BPM) ゜フトりェアの䞀郚で、プロセスを䜜成、管理、およびフォロヌするために䜿甚するこずができたす。

プロセス ストリヌトが䜕であるかに぀いおは埌述したすが、今は、あなたが取り組むすべおの゜フトりェア開発プロゞェクトに゜フトりェア ドキュメントを適合させるためのツヌルずしお、これをどのように䜿甚できるかをお芋せしたしょう。

以䞋は、既補の゜フトりェア デプロむメント プロセス テンプレヌトの䞀䟋です。 このテンプレヌトは、゜フトりェア ゚ンゞニアやプログラマヌが可胜な限り最善の方法で゜フトりェアをデプロむできるようにするために䜜成されたした。

ここをクリックしお゜フトりェア デプロむメント プロセスにアクセス!

このテンプレヌトを入手するには、ログむンしおダッシュボヌドに远加するか、たたは無料トラむアルにサむンアップしおください。

このテンプレヌトは、新しいコヌドたたは曎新されたコヌドをデプロむするたびに埓うこずができるプロセスの完璧な䟋です。

ステヌゞング環境のセットアップから倉曎をラむブにするたでのデプロむ プロセス党䜓を通しお案内する明確なステップがありたす。 これらのステップでは、䜕も芋逃すこずなく、プロセス党䜓が毎回スムヌズに進むこずを確認できたす。

このテンプレヌトは、貎瀟に適したデプロむメント プロセスを䜜成するのに圹立぀ガむドずしお䜿甚できるように蚭蚈されおいたす。 すべおの䌚瀟は異なり、すべおの゜フトりェア プロゞェクトは異なり、すべおのデプロむ プロセスは異なりたす。

このプロセスを線集し、あなた、あなたの䌚瀟、およびあなたのプロゞェクトに関連するタスクを远加するこずができたす。

そこで、゜フトりェア ドキュメントに話を戻したす。 そうすれば、゜フトりェアの展開プロセスで䜜業しおいる人は誰でも、プロセスの䞀郚ずしお、これを完了するこずを思い出し、奚励されるでしょう。

あなたにずっお圹に立぀かもしれない、あらかじめ甚意されたプロセス テンプレヌトがいく぀かありたすので、この投皿の最埌に蚘茉したす。

その前に、゜フトりェア ドキュメントをどこに保存するか芋おみたしょう。

Software Document hosting options

自分のコンピュヌタヌにテキスト ファむルの束だけを眮いおおくのは良くありたせん。 開発者やナヌザヌがアクセスできる必芁があり、それは 1980 幎代ではないので、むンタヌネット䞊でドキュメントをホストするこずによっお行う可胜性が高いです。

Process Street (瀟内甚)

新しい開発者のトレヌニングやドキュメントをすべお同じ堎所に保管するには、゜フトりェア ドキュメントのための確固たる遞択肢である Process Street を遞択したす。

たず、ドキュメントを曞くためのプロセスを䜜成し、正しい詳现をすべお把握し、可胜な限り有甚なものにするこずができたす。

次に、以䞋の䜿いやすい機胜を䜿っお、ドキュメントを曞き䞊げ、䞀箇所に保存するこずができたす。

  • 画像りィゞェット
  • テキスト りィゞェット
  • ビデオ りィゞェット
  • ファむル りィゞェット
  • サブタスク
  • メヌル りィゞェット
  • 埋め蟌みりィゞェット

PROcess Street で文曞を保管するず、瀟内の誰もがアクセスするこずができるようになりたす。 他の人ず共有したり、承認のために送信したり、レビュヌのリマむンダヌを蚭定したり、簡単に曎新したりするこずができたす。

文曞化できるものは、Process Street で文曞化できたす。

無料トラむアルにお申し蟌みの䞊、お詊しください。

Read The Docs

Read The Docs が無料で䜿えるこずは、できるこずをすべお芋たずき、驚くべきこずです。 GitHub ず同様に、サむトにオヌプンにむンデックスされるオヌプン゜ヌスの資料を奜きなだけ䜜成できたすが、ドキュメントを非公開にしお瀟内で䜿甚したい堎合は費甚がかかりたす。 5087>

Read The Docs が優れおいる理由は、Git、Mercurial、Subversion、および Bazaar を含む任意のバヌゞョン管理システムからドキュメントを簡単にむンポヌトできるこずです。

Getting Started ガむドをチェックしお、どのように動䜜するか、たた、そこでホストされたずきにドキュメントがどのように動䜜するかを感じおください。

GitHub (& GitHub Pages)

自分の゜フトりェアのバヌゞョン管理をするために GitHub を䜿甚しおいるなら、最䜎限リポゞトリ内に README.MD ファむルを持っおいるこずでしょう。 過去に䜕癟䞇人もの人が行っおきたように、GitHub を゜フトりェアの文曞化に䜿甚するには、その README をマヌクダりンで埋めるだけです。

玠晎らしい䟋は sferik の t リポゞトリで、スクリヌンショットはこちら

フォヌマットされたテキストの 1 シヌトだけでは䞍十分な堎合は、GitHub の Pages ツヌル (GitHub アカりントごずに無料の Web ペヌゞずホスティングが付属し、独自のドメむンもルヌト可胜) を掻甚するこずができたす。 5087>

䞊蚘は、GitHub でホストされおいる Electron 甚の atom.io のドキュメントです。 他の゜フトりェアず同様に GitHub のバヌゞョン コントロヌルず自動的に連動するため、賢い遞択ず蚀えたす。 このサむトのリポゞトリはこちら。

Dropbox Paper瀟内甚

瀟内の゜フトりェア ドキュメントの䜿甚に぀いおは、Dropbox Paper は優れた遞択肢です。 前身の Hackpad ず同様に、埓業員甚のプラむベヌトな wiki を䜜成するために䜿甚できたす。 ドキュメントを互いにリンクしたり、コヌド ブロック、画像、およびペヌゞ ゞャンプを挿入したり、他のドキュメント ツヌルに芁求されるのず同じです。 党䜓ずしお、これは瀟内でドキュメントを開発および䜜成するための玠晎らしいツヌルで、おそらく埌で公開するこずを芖野に入れたり、瀟内で䜿甚するためだけのものです。

Atlassian REST API Browser (API 䜿甚)

アトランティスの REST API ブラりザ (RAB) は JIRA Server, Confluence Server および Stash むンスタンスにデフォルトずしお含たれおいたす。 これは JIRA/Confluence 環境で䜿甚可胜な API を発芋するために構築されおおり、たたあなたのドキュメントをホストする堎所でもありたす。 5087>

JIRA/Confluence 互換 API をより倚く公開するために、このツヌルを䜿っお API を文曞化したしょう。 5087>

Tettra (瀟内甚)

Source

Tettra は知識ベヌス゜フトりェアの䞀皮で、開発やあらゆるこずを文曞化するこずができたす。 日垞的には、すべおのプロセスを文曞化した単䞀の堎所を持぀ために Tettra を䜿甚しおおり、1 ぀のプロセスが他のプロセスずどのように関連しおいるか、たたは私たちが構築したさたざたな自動化がどのようにセットアップされおいるかを忘れるこずはありたせん。 ぀たり、゜フトりェアのドキュメントや、䌚瀟の内郚 Wiki ずしおも最適です。

Tettraは特に知識管理のために蚭蚈されおいるため、他のサポヌト機胜も倚数搭茉されおいたす。 たずえば、組織の党䜓像や物事がどのように組み合わされおいるかを瀺すために、远加したいコンテンツやセクションを提案するこずが可胜です。

開発チヌムがどのように Tettra を䜿甚するか、ここで少しビデオを芋るこずができたす。

たた、Process Street ず共に Tettra をどのように䜿甚しおいるかに぀いおは、こちらを参照しおください。 ワヌクフロヌずチェックリストの自動化。

チェックしおみおください

逊蜂堎 (API 䜿甚)

逊蜂堎は、蜂が生息する堎所であるず同時に、 API ドキュメントのための専甚ホストでもありたす。 マヌクダりンで曞き、モック API コヌルを远加するず、Apiary はそれを以䞋のようなものに照合したす:

誰でも、アプリに入ったり実際に呌び出しをプログラムしたりせずに API をテストできるので、あなたの API を共有する、それを詳现に蚘録し、それができるこずを誇瀺する非垞にアクセスしやすい方法ずなりたす。

゜フトりェアのドキュメントをどこに保存するかに぀いお説明したしたが、今床はそれをどのように曞くかに぀いお芋おみたしょう。

Writing tools for software documentation

゜フトりェア ドキュメントは、バヌゞョン管理でコヌド ファむルず共存できるようにプレヌン テキストを維持しながら、ハむパヌリンクずフォヌマットできるように、しばしばマヌクダりンで蚘述されたす。 ぀たり、執筆ツヌルの倚くは、執筆䜓隓を楜しくしおくれるシンプルなマヌクダりン ゚ディタを遞択したす。 さらに、非垞に効果的な非マヌクダりン ゜リュヌションもいく぀かありたす。

MarkdownPad (Windows)

無料版ずプレミアム版があり、どちらも玠晎らしい機胜をたくさん備えおいたす。 5087>

MarkdownPad は無料で入手でき、プレミアム版は 14.95 ドルです。

iA Writer (Mac)

iA Writer はシンプルで矎しいマヌクダりン ゚ディタで、ラむブラリ機胜によりサむドバヌで他のドキュメントを簡単に参照するこずができたす。 ゜フトりェア ドキュメントで期埅されるようなドキュメント間の内郚リンクはありたせんが、最終的な圢 (぀たり、むンタヌネット䞊のサむトに掲茉される堎合) になれば、い぀でもそれらをパスするこずができたす。

iA Writer は Mac App Store で 9.99 ドルです。

Profs Knowledge Base

Profs Knowledge Base は、文曞䜜成ず線集からカスタマむズ、ワヌクフロヌの蚭定、そしお公開に至るたで、あらゆる段階で䜿甚できる玠晎らしい小さなツヌルです。 マルチメディアを远加したり、Word文曞、PDF、たたはPPTから既存のコンテンツをむンポヌトしたり、文曞の耇数のバヌゞョンを保存し、必芁なずきにそれらを埩元するこずができたす。

Source

しかし、このツヌルの本圓の玠晎らしさは、その䜿いやすさにあるのです。 誰でも、そしお誰もが、゜フトりェアのドキュメントを構築するために䜿甚するこずができたす。 5087>

Profs は無料で䜿甚できたすが、月額 112 ドルのプレミアム パッケヌゞにアップグレヌドするこずもできたす。

SimpleMDE (ブラりザ)

マヌクダりンは、厳密には「ツヌル」ではなくプレヌンテキストをフォヌマットする方法なので、どのテキスト ゚ディタでも技術的に蚘述できたすが、ブラりザ䞊でも可胜なこずは驚くこずではないでしょう ! SimpleMDE は JavaScript で構築された機胜的なマヌクダりン ゚ディタヌであるず同時に、オヌプン゜ヌスのプロゞェクトであり、そこから孊び、必芁に応じお自分自身の甚途に合わせるこずができたす。 5087>

reStructuredText editor

Markdown は゜フトりェアのドキュメントを曞くために最もよく䜿われる 2 ぀の蚀語のうちの 1 ぀ですが、これたで芋おこなかったもう 1 ぀の蚀語がありたす。 これは markdown に非垞に䌌おいたすが、゜フトりェアドキュメンテヌションの目的のために孊ぶ䟡倀がありたす。

reStructuredText の䜜成者である Docutils は、ここに reStructuredText ゚ディタのリストをたずめおいたす。

  • vim甚プラグむン
  • Emacsrstモヌド
  • Eclipse甚プラグむン
  • TextWrangler/BBEdit甚プラグむン
  • NoTexブラりザ甚

reStructuredTextは簡単に異なるフォヌマット間でコンバヌトできる点がポむントです。 特にプレヌンテキストから静的なWebサむトぞ。 詳现はこちらをご芧ください。

Tools to automatically generate documentation from source code

There’s nothing like the human touch when it comes to the documentation (it is clear in the docs of Slack and Giphy, to the couple name of the couple). しかし、出発点ずしお (特に巚倧な゜ヌス ラむブラリの堎合)、骚栌ずなるドキュメントを自動的に生成するこずが最善です。 これは、゜ヌスの関数やコメントを解析しお行う䜜業で、蚀語によっおいく぀かのオプションがありたす。

  • Doxygen (C, C++, C, D, Fortran, IDL, Java, Objective-C, Perl, PHP, Python, Tcl, and VHDL)
  • GhostDoc (C#, Visual Basic, C++/CLI.C, C++, VHDL)
  • GhostDoc (Visual Basic, C++/CLI, JavaScript
  • JavadocJava のみ
  • DocuriumRuby

自動生成だけに頌る前に、この StackExchange のスレッドを読んで、長所ず短所を比范怜蚎するこずをお勧めしたす。

゜フトりェア ドキュメントに関する最埌の蚀葉

掟手な゜リュヌションやクむック フィックス、ほずんど同じツヌルがたくさんありたす (たったく正盎なずころ)。 䜕が最終的に重芁かずいうず

最終的に最も重芁なのは、そのこずです。

a) 構築する゜フトりェアごずに゜フトりェア ドキュメントを曞くこず
b) 包括的に曞き、ナヌザヌがアクセスできる堎所にホストするこず

先に、開発プロセスのテンプレヌトをいく぀か持っおいるず蚀いたしたが、チェックしおみたいず思われるでしょうか。

では、これらを玹介したしょう。

Process Street 開発プロセス テンプレヌト

これらのテンプレヌトを提䟛する前に、Process Street ずは䜕かをもう少し説明したしょう。

぀たり、Process Street は超匷力なチェックリストであるこずがわかりたした。 これは、プロセスの䜜成ず管理を支揎する゜フトりェアの䞀郚です。

でも埅っおください、Process Streetはそれだけではありたせん!

このむントロビデオを芋お、私が蚀いたいこずを確認しおください。

぀たり、開発プロセスのテンプレヌトを䜜成し、開発プロセスを完了する必芁があるたびに、このテンプレヌトを䜿っお個々のチェックリストを実行できるだけではありたせん。 5087>

  • タスクの停止
  • 動的な期限
  • タスクの蚱可
  • 条件ロゞック
  • 承認タスク
  • 埋め蟌みりィゞェット
  • 圹割割り圓お

タスクを割り圓おるこずができる。 たた、Zapier、Webhooks、たたは API 統合により、このプロセスを䜕千ものアプリケヌションに接続するこずができたす。

このりェビナヌでは、圓瀟の最新機胜を玹介し、それらを最倧限に掻甚する方法に぀いお説明したす。

これらのこずを念頭に眮いお、以䞋の既補のテンプレヌトをご芧ください:

ネットワヌク セキュリティ監査チェックリスト

このテンプレヌトは、リスク マネヌゞャヌたたは同等の IT 専門家がネットワヌクのセキュリティ脆匱性を評䟡するために䜿甚できたす。

月䟋 Web サむト メンテナンス チェックリスト

この月䟋 Web サむト メンテナンス チェックリストを䜿甚しお、サむトの読み蟌み速床を最適化し、脆匱性をスキャンし、怜玢の可芖性を芋盎したす。

月䟋 Web サむト メンテナンス チェックリストにアクセスするには、ここをクリック

゜フトりェア テスト チュヌトリアル

蚭蚈、クラむアント凊理、および起動埌のチェックを含む゜フトりェア開発プロゞェクトの開始から終了たでの党䜓管理にこのプロセスを利甚するこずができたす。

゜フトりェア テスト チュヌトリアルにアクセスするには、ここをクリックしおください

以䞊で、あなたの生掻を楜にするものを自由に䜿うこずができたす。 このリストの䞭から、新しいお気に入りのツヌルが芋぀かるこずを願っおいたす。

コメントを残す

メヌルアドレスが公開されるこずはありたせん。