システム構築/プロジェクトマネジメント システム構築/プロジェクトマネジメント記事一覧へ

[最前線]

アジャイル開発を支える技術面の取り組み(最終回)

2010年10月28日(木)

Web連載の最終回となる本稿では、アジャイル開発を支える技術面の取り組みを取り上げる。また、よく質問される項目であるアジャイル開発における契約の考え方やIT部門の役割についても、説明を加えていく。

アジャイル開発における開発作業では、通常は2週間から1カ月程度のイテレーションの中でアプリケーションを実装することになる。したがって、短い開発期間でも必要な実装が終了するような取り組みを実施しなければならない。スキルの高い技術者を揃えれば可能かもしれないが、前回でも述べたように、それは現実にはなかなか難しい。さらにソフトウェアの品質にも気を配る必要がある。プログラムに不具合が多い場合、その修正作業に時間を要してしまい、新規開発や改善要望対応が進まないことになってしまう。

このような状況に対処するため、特に基幹系のシステム開発においては、アーキテクチャ基盤の整備を実施することをお勧めする。イテレーションごとの開発対象を絞り、高いスキルの技術者の能力を効率的に活用できるからである。

イテレーションでの開発対象を絞る

基幹系のシステム開発においては、データベースアクセスや他システムとの連携などを伴う機能を作り込んでいくことになる。イテレーションの期間が1カ月としても、仕様の説明を受けて設計し、開発してテストすることを考えると、正味の実装期間は2週間程度となる。当然ながらイテレーションの期間がもっと短ければ、実装期間はさらに短くなる。この期間の間に、あるユースケースの実装について、画面周りからビジネスロジック部分、データベースへのアクセス部分までをすべて独自に書き上げるのは、高いスキルの技術者であっても難しいことだ。

このような場合に有効な手だてとなるのが、アーキテクチャ基盤を用意することである(図1)。基幹系システムを複数のレイヤ構造に分け、フレームワークや部品を整備する。例えば、システムの基本機能となるデータベースアクセスやシステム間の連携、セキュリティ管理などの機能については、フレームワークを用意し、その中の機能によって処理するものとする。イテレーションで開発するアプリケーションからは、適切な場所でフレームワークを呼び出せばよい。また基幹系のシステムでよく使用される、取引先管理や製品マスター管理、通貨を含めた金額の計算といった機能についても、個別に実装するのではなく、共通ビジネス部品として提供する。これによって、同じような機能をいろいろなところで開発するという無駄を防ぎ、開発期間の短縮につなげることが可能だ。

この記事の続きをお読みいただくには、
会員登録(無料)が必要です
登録済みの方はこちら

IT Leaders 雑誌版、電子版をご購読の方、会員登録済みの方は下記ボタンよりログインして続きをお読みください

初めての方はこちら

IT Leaders 会員になると
会員限定公開の記事を読むことができます
IT Leadersのメルマガを購読できます

【次ページ】
  • 1
  • 2
バックナンバー
最前線一覧へ
関連記事

アジャイル開発を支える技術面の取り組み(最終回)Web連載の最終回となる本稿では、アジャイル開発を支える技術面の取り組みを取り上げる。また、よく質問される項目であるアジャイル開発における契約の考え方やIT部門の役割についても、説明を加えていく。

PAGE TOP