イテレーションの意味とは?スプリントとの違いも解説
イテレーションの意味とは?
システム開発におけるイテレーションとは「設計・開発・テスト・リリース」といった各工程を繰り返すサイクルを指します。イテレーションは通常1週間〜2ヶ月ほどで設定します。1つのイテレーションが終われば、結果や課題について振り返り、次のイテレーションに活かします。また、複数のイテレーションが同時に進行していることもあります。 イテレーションは、開発しながらシステムを改善していく「アジャイル開発」における考え方の1つです。アジャイル開発については、こちらの記事で詳しく解説しています。 スクラム開発とは?アジャイルとの違いやメリット・デメリットを解説
近年イテレーションが必要とされている背景
アジャイル開発やイテレーションが必要とされている理由として、改善点や顧客からの要望を反映しやすい点があります。 イテレーションが活用される前は「ウォーターフォール開発」が多く使われていました。ウォーターフォール開発とは、滝が上流から下流に流れ落ちるように、スケジュールや流れに沿って開発を進めていく手法です。この開発手法は、開発途中で問題点や新たな要望が出てもやり直しが効かないというデメリットがあります。 アジャイル開発は、そのデメリットを補うために生まれた開発手法です。イテレーション期間を設定して何回かに分けてリリースを行い、顧客からの要望を取り入れるなど、より柔軟な「システム開発」を目指すようになったという背景があります。
イテレーションとスプリントの違いとは?
イテレーションと似た意味の用語として「スプリント」があります。2つの言葉の意味や、使う場面などについて解説します。
XPのイテレーション
XPとは「Extreme Programing」を略したもので、過去の開発から得たノウハウや運営指針を活かして実践することを表します。「Extreme (エクストリーム)」は「極端、過激」などの意味のある言葉です。XPでは、これまでの成功事例と同じ取り組みを徹底的に実践することで成功を目指します。 XPでは次回の開発のためにノウハウを蓄積していくことを重要視します。また、イテレーションでは各サイクルごとに振り返りを設けることから改善点などを見つけやすいという特徴があります。これらの理由からXPではイテレーション期間を設定し、効果的に使われています。
スクラムのイテレーション
「スクラム開発」とは、開発チームで協力しながら生産性を高めることを目指す開発手法です。ラグビーのフォーメーションから名付けられました。スクラム開発では「スプリント」と呼ばれるサイクルを使います。設計から改善までの一連の流れを繰り返し、顧客の意見を反映していきます。 短期間で工程を繰り返すことが似ていることから、スプリントとイテレーションが混同して使われるケースもあります。一般的には、スクラム開発においてはスプリントと呼ばれることが多い傾向にあります。「sprint(スプリント)」とは、短距離走という意味を持つ言葉です。ゴールが近く明確な位置にあることから、適切なペース配分でプロジェクトに取り組めます。
アジャイル・スクラム
開発手法
アジャイルスクラム開発手法とは、開発期間を「スプリント」と呼ばれる短いサイクルに分けて開発を行うこと。 仕様変更や機能追加に柔軟に対応できることが特徴です。
イテレーションが使われるプロセス
イテレーションの考え方がどのように使われるのか、実際の流れに沿って見ていきましょう。
イテレーション計画の作成・目標設定
イテレーションの期間は短いため、顧客が要望した全ての内容を一度で開発することはできません。期間内に収まるように、開発する内容を絞ることが一般的です。顧客とよく話し合った上で優先すべき項目を選び、計画を作成していきます。また、この時に「どの程度の品質を目指すのか」といった目標も決めておきます。
開発の設計・実行
イテレーションの計画や目標が定まったら、設計や実行のプロセスに入ります。イテレーションは少人数・短期間で取り組むため、各自の進捗状況をこまめに共有しながらスケジュールの管理を行います。
成果物のリリース・振り返り
イテレーションの終了時には成果物を一旦リリースし、顧客に動作を確認してもらうなどの時間を設けます。また、開発チーム内でも振り返りを行い、改善点をまとめておくことも重要です。 振り返りが終われば、さっそく次回のイテレーションに向けて動き出します。振り返りの内容や、顧客の要望・開発の難易度といった面から決定した優先度に従い、次に着手することの選定をしていきます。
理想的なイテレーション期間
アジャイル開発ではイテレーション期間を適切に定め、プロジェクトにリズムや緊張感を持たせることが重要です。一般的には、イテレーションは1週間〜2ヶ月程度の期間に設定する傾向があります。 弊社ハイブリッドテクノロジーズでは、これまでの経験やスピード感といった面から「1スプリント2週間」の原則を採用しています。
イテレーション期間の決め方
イテレーション期間は「長ければ長いほど質の良いものを作れる」というわけではありません。イテレーションの期間を決定するには、以下の要素を考慮します。 ・プロジェクトの期間 ・顧客の要求が変更する可能性 ・開発者のスキル ・各要求の重要度 「開発者に豊富な経験があるため短めに設定する」「顧客の要求が変更する可能性が高いため、早めにリリースして一旦チェックする」など、その時の状況に応じてイテレーション期間を決定することが重要です。
ハイブリッドテクノロジーズの提供サービス
ハイブリッドテクノロジーズは、高い品質管理のもと、アプリケーション開発、システム開発の設計、デザインなどの上流工程から開発、運用、保守に至る全ての工程をトータルでご提供することで、クライアント企業のデジタルトランスフォーメーション(DX)推進をサポートいたします。 お客様の要望に合わせて、アジャイル開発やウォーターフォール開発等の開発手法やラボ(ストック)型サービスや受託(フロー)型サービスを柔軟に組み合わせて対応させていただきます。
【アジャイル開発ご希望のお客様】
【ウォーターフォール開発ご希望のお客様】
【ラボ(ストック)型開発サービスご希望のお客様】
【受託(フロー)型開発サービスご希望のお客様】
ハイブリッドテクノロジーズが選ばれる理由
01 ビジネス設計〜実装・保守までワンストップで提供できるサービス体制
既存サービスの変革や新規サービスを成功を導くための顧客体験発想による設計からプロジェクトをスタートし、MVP開発を通して顧客のビジネスグロースを一緒に共創していくサービスを提供します。
02 UCS(ユーザー中心設計)によるUI/UXデザイン
実際にそのサービスを使うユーザーを調査、分析しながら、人間中心設計を元にデザインを行なっていきます。
03 スピード感をもった開発体制の構築
要件定義で定めた機能の中から優先度の高い重要なものから、アジャイル・スクラム開発を用いて開発することでサービスインまでの期間を短縮。素早いリリースを実現し、機能の追加などのブラッシュアップを行います。 ベトナムにおける日系No1*1という知名度の高さと20,000人以上*2の候補者リスト*2を元に必要な人員リソースの確保が可能なため、スピード感をもった開発の実行が可能です。
04 累計290社の顧客のプロダクト開発実績
当社が創業以来、豊富なシステム開発・アプリ制作の実績があり、それらを通じて蓄積した知見やノウハウを持ち合わせています。企画段階から要件定義・デザイン・開発まで担当し、プロジェクトを成功に導きます。
05 低コストかつ自由度の高い開発
フルスクラッチ開発とパッケージ開発のいいところどりを実現。 フルスクラッチ開発だとコストが上がる傾向にありますが、当社はベトナムのリソースを活用することでコストを抑えられます。 また、パッケージ開発だと自由度が失われる傾向がありますが、当社はスクラッチ開発で顧客予算に合わせて、スコープを見定めながら、進めることができるので、低コストで自由度の高い開発が実現できます。
06 国際標準規格に則った品質管理体制
情報セキュリティマネジメントシステムの国際規格「ISO9001」、「ISMS(ISO/IEC270001)」、ソフトウェア・テストの国際規「ISTQB Platinum Partner」の認証を取得しており、国際標準規格に則った品質管理体制を提供しています。
- 株式会社マイナビが運営するベトナムITエンジニア専門の求人サイトITviecは、給与・教育・マネージメント・企業文化・オフィス環境の観点から、Best Companyを選定。Hbrid technologies Vietnam Co., Ltdは、2019年と2020年に、日系企業で最高位に選出されました。
- 過去の当社へ応募頂いた開発候補者のリストです。応募のタイミングでリクルートシステムに登録し、常にそのリストから候補者へのリサーチできる体制を持っています。
システム開発の成功事例
システム開発での成功事例をご紹介します。
外国人の方の利用に特化した就職・進学ポータルサイト(株式会社GIG)
サービス内容
外国人の方の利用に特化した就職・進学ポータルサイト
サービス上の課題/目指したいサービス
課題
今まで運用していたサイトが古く、メンテナンスが困難な状況だったことに加え、手作業で行っている部分が多くあるという背景からフルリニューアルで刷新することが課題であった。
目指したいサービス
今回開発する外国人向け就職・進学ポータルサイトにより、管理側および利用ユーザーにおいて以下の価値の提供を可能にすること。
・管理側は、アカウント情報の管理をシステム化し業務効率化を図ることができること。
・利用ユーザーは、多言語に対応した的確な情報をもとに就職・進学の手厚いサポートが受けられること。
クライアントの課題/要望
・開発部分のリソースが不足している
・予算やスケジュールに柔軟に対応していきたい
当社を選択していただいた理由
当社の幅広いリソースとスピード感を持った開発体制を評価いただいたこと
当社ご提案内容
外国人向け就職・進学ポータルサイトの開発
デザインや設計といった上流部分は、GIG社を中心に担当し、実装フェーズに移った際、円滑なスタートができるよう要件定義フェーズの一部において、日本人PMをアサインし、サポートしました。
実装フェーズではGIG社のライブラリを活用しつつ、ベトナムBrSEを中心にバックエンド、フロントエンドの開発を行いました。
まぐまぐ!リーダーアプリ (株式会社まぐまぐ)
https://www.mag2.com/app/reader/
サービス内容
まぐまぐ!で登録したメルマガコンテンツとまぐまぐ社が運営するメディアを手軽かつシームレスに閲覧できるスマートフォンアプリ「まぐまぐリーダー」
サービス上の課題/目指したいサービス
課題
メルマガはメールのみ、メディアもそれぞれ独自のWebを持っているためユーザービリティが良くない点
目指したいサービス
まぐまぐ!で登録したメルマガコンテンツとまぐまぐ社が提供する4つのニュースメディアを横断して手軽かつシームレスに閲覧できるサービス
クライアントの課題/要望
・新規アプリ開発リソースの不足
当社を選択していただいた理由
内製での開発リソースを保持されていないことと、当社の幅広いリソースとスピード感を持った開発体制が、まぐまぐ様の開発ニーズに合致したため、当社を選ばれました。
当社ご提案内容
ラボ型(ストック)開発+保守にて提案
1.メルマガやニュースメディアといった多様なユースケースに、細やかに対応する開発体制
メールマガジン配信プラットフォーム事業の理解と学習から始まり、要件定義・設計・開発までをアジャイルスクラム開発で担当し、1週間ごとにクライアント様と成果物のレビュー会を行うことで、フィードバックを早いサイクルで受けることで、ユーザーの期待を超える価値体験を追求いたしました。 記事を読むという観点ではニュースサイトなどのメディアに分類されるサービスではありますが、既存の媒体がメールであるためにユースケースには多様性がありました。
2.毎日読む情報収集アプリとしてのファインダビリティとユーザービリティを考慮したUX・UI設計
メールアプリで閲覧するものだったメルマガをスマートフォンアプリで軽快に閲覧できる機能と、まぐまぐ社が提供する4つのニュースメディアを横断して閲覧できる機能を両立しつつ、スムーズに情報収集を行えるUX・UI設計を行いました。メインペルソナである多忙なサラリーマンの方の情報収集アプリとして、短時間での閲覧でも読みやすい視認性や可読性を重視した白基調の配色とタイポグラフィの設定を行い、ボタン類のアクション要素は見落とされない配色設計や、押しやすいサイズ設計、リアルタイムデータベースを使用した同期的な処理、まとめ読みや読み返しが快適にできるようにローカルデータベースを使用したオフラインファーストな設計をすることで既存サービスのユーザー体験をスマートフォンアプリでも損なわないように配慮しました。
Fimple Credit (H.I.F.株式会社)
https://www.hifcorp.co.jp/fimple-credit/
サービス内容
与信における企業信頼度を可視化するWEBサービス
サービス上の課題/目指したいサービス
課題
難解な債権回収リスクの与信判断を、AIを活用して効率化・高精度化できるかという点
目指したいサービス
H.I.F社が独自に収集したデータを元に各企業の与信における信頼度をスコア化し、Web上で手軽に検索・確認することを可能にするサービスを目指しました。
クライアントの課題/要望
・開発リソースの不足
当社を選択していただいた理由
別案件での提案の際のデザイン案が非常に良かったことがあり、短納期の中でも充分に任せられるスピードとクオリティと判断頂き、当社を選ばれました。
当社ご提案内容
ラボ型(ストック)開発にて提案
密なコミニケーションで最適な上流設計を提案
デザイン作成と合わせて画面遷移図と、各画面の要件定義資料の作成を実施。開発フェーズを担当するベンダーへの詳細説明まで弊社が行うことでお客様のシステム開発全体が滞りなく進むよう配慮いたしました。 また短納期ということもあり、お客様からフィードバックをいただく機会を通常以上に密に設けました。早い段階での問題発見・方向修正を心がけ、最適なユーザー体験をクライアント企業様と一緒に、練り上げることができました。
Web 相談予約システムの新規構築(大手物流会社)
サービス内容
窓口相談を事前に予約できるWebアプリ
窓口での相談日時を利用者が事前に予約できるようにし、企業と顧客双方にとって利便性を向上するWebアプリの開発案件です。
サービス上の課題/目指したいサービス
課題
利用者からの問い合わせは、常に窓口で対応している背景があり、
窓口で順に受け付けていたが、待ち時間が長く、顧客から不満の声が上がっていた。
目指したいサービス
・顧客の利便性(満足度)を向上すること。
・システム導入の周知により金融相談業務の認知度を向上させること
・システム導入による効率的な要員配置を目的として、顧客がWeb 上で事前に金融商品に関する相談日時を予約できるシステムを新たに構築すること
クライアントの課題/要望
・社内で開発体制を保持していないこと
・Salesforceを業務の基幹システムとして利用されているため、Saleforceでの機能開発が必須
・金額をミニマムに抑えながら安定的な運用を実現したい
当社を選択していただいた理由
・日本国内での開発より大きな価格メリットがあったこと
当社ご提案内容
受託型開発(フロー)にて提案
1.Salesforceを活用し、ミニマムコストでスピード感を持った機能開発
Salesforceを活用することで0からインフラを構築せずに素早く開発環境を作成することが出来ます。Salesforceの標準機能を基に必要な機能をカスタマイズして開発することで、スピーディな開発〜実装を可能としました。
2.プログラム実装前にプロトタイプ作成し、スピードを保ちつつ認識ギャップを防止
プログラム実装前にプロトタイプを作成することで、リリースというゴールまでスピード感を保ち、的確にコミュニケーションをおこないながら、認識ずれが生じないよう努めました。
3.Salesforce準拠のセキュリティ基準を担保
開発と合わせ、Salesforce準拠のテストコードを作成し、テストを実施することで、リリース後の不具合が発生しにくく、運用保守コストも抑えることができます。またすでにクライアント様が使用されているSalesforceの機能拡張のため、セキュリティー面は今までと同様のものが担保されます。安心感を持ってシステムをご使用いただき、クライアント様、エンドユーザー様双方からご好評いただいています。
まとめ
イテレーションのサイクルをうまく回すことができれば、プロジェクトがテンポよく進行し、効率的なシステム開発を目指せます。 顧客が必要としているシステムの順に開発したり、開発途中で顧客の意見を取り入れたりすることで、柔軟で満足度の高いシステム開発につながるメリットもあります。 まずは開発すべき内容の優先度を明確にし、イテレーションを適切に設定することが大切です。本記事の内容を参考に、イテレーションやアジャイル開発へのイメージが膨らみましたら幸いです。