TOP
>
プロジェクト管理
> 開発者ごとに独立した開発環境を用意する
PHP開発手法
第1回:複数人による開発の要所を押さえる
著者:
ウノウ 尾藤 正人
2006/11/30
前のページ
1
2
3
開発者ごとに独立した開発環境を用意する
プログラムを開発する時は、開発者ごとに完全に独立した環境で作業します。同じソースコードを同時に編集しているとお互いの修正に影響されて思うように作業が進みません。
例えば、誰かがソースコードをいじって「syntax error」が発生した場合は、他の開発者の作業が止まってしまいます。人間の集中力は一度切れると集中できるようになるまで時間がかかりますので、開発者には独立した開発環境を与えて、集中して開発できるようにしましょう。
本番環境へのアップデートはSubversion経由で
本番環境へアップデートする時は、Subversionを使用してアップデートします。Subversionは前述したように元の状態に戻すことが簡単にできるため、テスターが本番環境で重大な問題を発見した場合でも、すぐに元の状態に戻すことができます。
テストはテスト環境と本番環境で2回行う
テストはバグの発生を事前に防ぐ大変重要な作業です。ウノウではテスト専門のテスターが入念にチェックを行っています。
ウノウでは開発者ごとに独立した開発環境が与えられています。そこにテスト用の環境を用意しています。開発者がソースコードを変更してSubversionにコミットすると、テスト環境のソースコードが自動的にアップデートされます。このようにすることで、テスト環境では常に最新の環境でテストが行われるようになります。
また案件をすべてBTSで管理していますので、テスターはどのような変更が行われたのか簡単に把握することが可能です。プログラマはBTS上で状態を「確認待ち」にすることで、半自動的にテスターがテストを行ってくれるようになっています。
テスト環境と本番環境で2回テストが行われるため、大きな問題が発生することはほとんどありません。
図3:バグの修正の流れ
SubversionのコミットログをMLに流す
Subversionのコミットログを開発者全員が購読しているMLに流すようにします。こうすることで、他の開発者がどのような変更を行っているかという情報を共有することが可能です。お互いのソースコードを見せ合うことで全体的な技術力の底上げにもつながります。
開発サーバのファイルはSambaで共有する
開発サーバにSambaを導入することで、WindowsやMac OS Xを実装したクライアント側からサーバ上のファイルにシームレスにアクセスできるようになります。
開発者にとってエディタを含む開発ツールは開発効率に大きく影響する大変重要なソフトウェアで、開発者ごとに使いやすいツールは異なります。sshでログインして作業するのでは、効率的な環境で作業することができません。そこでSambaでファイルを共有し、自分の好きなツールを使ってもらい、効率よく開発を進めてもらうことができます。
まとめ
今回は複数人で行うPHPの開発手法について、全体的な概要を解説しました。開発手法の確立が、効率的な開発の重要な要素であることが理解していただけたと思います。
具体的なツールの設定や使い方については、以降の連載で紹介しますので、読んでいただけたら幸いです。
前のページ
1
2
3
著者プロフィール
ウノウ株式会社 尾藤 正人
CTO
広島市立大学大学院在学中にVine Linux SPARC版の開発を行う。2002年4月、HDEに入社。2003年度未踏ユースプロジェクトに採択され、「みかん - サーバ自動選択型FTPサーバの開発」を行う。退職後、シリコンバレーに語学留学のため渡米。2004年12月、帰国してウノウに参画。写真共有サイト「フォト蔵」を開発中。
ブログ:ベイエリア情報局
http://blog.bz2.jp/
INDEX
第1回:複数人による開発の要所を押さえる
はじめに
ソースコード管理ツール(Subversion)でソースコードを共有する
開発者ごとに独立した開発環境を用意する