じめに

「はじめに」⁠チーム開発実践入門─⁠─共同作業を円滑に行うツール・メソッド』より転載

本書は「チーム開発実践入門」です。

読者のみなさんの中にはよくご存じの方も多いかとは思いますが、チーム開発というのは複雑で難しいものです。

2014年現在、チーム開発のための方法論やツールはさまざま存在しています。方法論的なものに目を向ければ、アジャイル開発、特にスクラム、XPといった方法論や、さらに具体的なTDDTest Driven Development:テスト駆動開発⁠⁠、BDDBehavior Driven Development:振舞駆動開発⁠⁠、TiDDTicket Driven Development:チケット駆動開発)などの設計開発の方法論、CIContinuous Integration:継続的インテグレーション⁠⁠、CDContinuousDelivery:継続的デリバリー)などのプラクティスがあります。これら方法論について解説した書籍や雑誌、Web上の記事は洋の東西を問わず大量にあり、何から手をつけてよいのかわからないほどです。

またこれらを技術的に支えるツールに目を向ければ、チケット管理システムやバージョン管理システム、自動テストや静的解析のツール、デプロイ自動化のツールなど、種類だけでも多種あり、それぞれを代表するツールを簡単に列挙するだけでもその種類と量の多さにめまいがするほどです。

数年前と比べてチーム開発は格段に便利になっています。ただし情報が多すぎかつ散逸していて、体系的に学ぶことも新人に効率的に教えることも難しい状況です。本書はそんな問題意識のもと、執筆を始めました。

そこで本書ではチーム開発に必要なツールを具体的な導入の仕方や使い方にフォーカスを当てて、俯瞰的に説明します。なぜそのツールを使うのか、なぜそのような使い方をするのかについて現場でよく起きる具体的な問題を例示しながら具体的に解説します。

ぜひ最後までお楽しみください。

池田尚史(いけだたかふみ)

ソフトウェア開発者。大学卒業後,ITコンサルタントとしてキャリアをスタート。その後コンサルタントからプログラマに転身し,パッケージソフトウェア開発,Webサービス開発を経て,2013年より株式会社ディー・エヌ・エーに所属している。数々の修羅場をくぐってきており,第2章のケーススタディの内容のほとんどは実体験をベースにして書かれていることは秘密である。JavaのWebアプリケーションフレームワークであるPlay Framework1のコミッターでもある。2児の父。第1章~第5章までの執筆と全体の監修を担当。
Twitter:@ikeike443

藤倉和明(ふじくらかずあき)

インフラストラクチャエンジニア。大学卒業後,株式会社シャノンでインフラストラクチャエンジニアとして従事。社内インフラからサービス本番環境まで「インフラ」と名の付くものとセキュリティ全般が守備範囲。数々のアプリケーションのデプロイの自動化を推進してきた実体験を元に第6章を執筆。OpenVZやLXCといったコンテナタイプの仮想化技術が大好物。
Twitter:@fujya

井上史彰(いのうえふみあき)

株式会社シャノンにてソフトウェアエンジニア,QAエンジニアを経て,同社子会社である中国法人の総経理(現職)。開発の経験を活かして効果的で効率的な自動テストの実践に従事。第7章を執筆。
E-mail:fu.inoue@gmail.com