「ソフトウェア開発」カテゴリーアーカイブ

ソフトウェア開発の技法やオフショア開発について書いていきます。

ドキュメント化

ドキュメント1

恐らく、開発プロジェクト上でもっとも困難でメンドクサイ作業はドキュメント化かと思います。

私もドキュメントを書くのは大嫌いで、できれば避けて通りたい作業です。特にプログラミングにおけるドキュメントは随時更新しておかなければすぐに陳腐化してしまい、書いてある内容と実際の動作が違う事もしばしば。。。

ドキュメント化には、『知識の共有化』という重要な役割があります。どのような作業も結果がコストを上回らなければ企業にとって意味がありませんので、顧客に提出するドキュメント以外はドキュメントを書くのにあまりに多くの時間(コスト)をかけるのは本末転倒です。

弊社では、PukiWikiというウェブアプリを社内ネットワークに導入しており、外注スタッフやバイトを含む全従業員が簡単にドキュメントを更新できるようになっております。

このWikiは、簡単な構文でそこそこ綺麗にレイアウトができるので、時間をかけずにノウハウをドキュメント化する事ができます。

おもしろいオンラインゲーム集など、明らかに効率落ちるだろ!という突っ込みどころ満載なドキュメントがあったりしますが、そこはご愛嬌という事で。

ドキュメント2

私も日々、率先してドキュメントを残すように心がけています。

MySQL Cluster

 MySQLには、MySQL Clusterというクラスタリング技術があり、弊社でも導入を検討していたのですが、調べてみると、この技術はオンメモリでしか使えない技術である事が分かり、ダメじゃん!という事になりました。

 今回、導入を検討していたシステムはWebシステムだったので、DNSラウンドロビンとマルチマスタレプリケーションの合わせわざで、高可用性を実現しました。