スパイラル開発とは?メリット・デメリットやアジャイル開発・ウォーターフォール開発との違いや特徴を徹底解説
システム開発手法はいくつかありますが、それぞれ名前は聞いたことがあっても、具体的にどんな手法なのかわからない企業のご担当者もいるでしょう。本記事では、スパイラル開発を中心に特徴と開発の進め方を解説し、アジャイル型、プロトタイプ型、ウォーターフォール型との違いについても説明します。
スパイラル開発とは?
スパイラル開発とは、対象のシステムを機能ごとに分割して、重要な機能から構築している開発手法です。開発チームや案件により異なりますが、開発工程で機能ごとに、「要件定義→設計→開発→テスト→レビュー」を複数回繰り返し、改善しながら完成を目指していきます。1回のステップごとにプロトタイプ(試作品)をつくりますが、その際にクライアントユーザーのレビューにより得られたフィードバックを、その後の工程に活かしていくことが特徴です。こうして改善を繰り返して完成すると本番環境へと移り、運用・保守の段階に入ります。
スパイラル開発という名前は、工程を繰り返す形が螺旋状に見えることから名付けられました。ソフトウェア開発業界では開発手法の一つとして知られていますが、この用語は1986年にアメリカのソフトウェア開発者が発表した論文で初めて紹介されたものです。
スパイラル開発の進め方と流れ
スパイラル型の開発工程は、要件定義、設計、開発・テスト、評価・改善と進み、このステップを何回か繰り返していきます。以下で、各開発工程について説明します。
①要件定義
設計、開発の前工程で行われる要件定義では、開発するシステムの目的から、必要な機能を洗い出し、それらを仕様書にまとめていきます。目的や用途、システムやソフトウェアに求めるもの、システムに期待する役割を明確にし、それらを実現させるために必要な機能や性能などの条件を定義していく、非常に重要な工程です。
②基本設計
要件定義で決定された事項と調査結果に基づき、システムに実装する機能を選び、設計要件を明確化・具体化して設計仕様書を作成します。スパイラル開発では、基本設計の段階ですべての機能を設計せずに、優先度が高い機能のみで大枠を作成することがポイントです。機能や構成の基本的な仕様を策定する工程のため、発注者にもわかりやすいように、開発会社がシステムのアウトラインを決めます。このリリース前に作成するソフトは「プロトタイプ」と呼ばれるもので、試作品のことです。
③詳細設計
基本設計のあとに行う詳細設計では、実際に手を動かすプログラマへ向けて「どのように機能を実装するのか」細部までを設計する工程です。詳細設計書を見ただけでプログラマがスムーズにプログラムを組めるように粒度で設計します。必要な要件などをチェックしながら、システムの全体像を構築する基本設計に対し、詳細設計は開発者側がプログラムで具体的な設計を行う工程といえるでしょう。
④開発・テスト
作成した設計をもとに、プログラムの開発に入ります。一般的なソフトウェア開発と同様に、チームごとにシステムをさらに細分化して開発を進めていきます。その後に各プログラムを統合する流れになることが多いです。機能を実装したあとにテストを行い、不具合がないか、問題なく動作するかをチェックし、不具合や問題点があれば修正します。問題なくシステムを使用するためにテストは必須です。
⑤評価・改善
作成したプロトタイプの評価を行います。このフェーズではクライアントにも共有し、フィードバックを受けることが大切です。プロトタイプは、サブシステムごとに作成し、「開発イメージとズレがないか」「使いにくい内容がないか」などの評価・レビューを受けます。認識のズレやエラーなどがあれば改善し、次のサブシステムに移ります。レビューで受けた要望を反映して、同じようにスパイラル開発を進め、プロトタイプを作成し、評価を受けるという流れです。
開発会社側とクライアント側で完成品のイメージが違っていると、満足のいかない納品物に仕上がるリスクがあるため、開発工程における無駄をなくす意味でも、プロトタイプは重要な存在です。プロトタイプを開発・共有し、擦り合わせを行うことでスムーズな開発が可能です。
スパイラル開発のメリット
理想のシステムを開発するには、適切な開発手法の採用がポイントになります。まず、スパイラル開発にはどんなメリットがあるか見ていきましょう。
スパイラル開発のメリットは、主に以下の2点です。
- 仕様・スケジュール変更に対応しやすい
- プロダクトの品質を保ちやすい
それぞれのメリットについて詳しく見ていきましょう。
仕様やスケジュールの変更がしやすい
まず、仕様やスケジュール変更へ柔軟に対応できることがメリットです。スパイラル型は、最初からプロダクト全体を設計しません。つまり機能ごとに開発計画を立てていくため、比較的開発スケジュールの変更が容易にできることがメリットです。
これはスパイラル開発には、サブシステムごとに計画を立て、設計と試作品の開発が繰り返されていることと、その都度評価・レビューを行っているという特徴があるためです。
設計とプロトタイプ開発が何回か繰り返され、その都度評価・レビューが行われるため、必要な仕様変更や追加すべき要件が見つかった場合も、次のステップで受け入れやすいといえます。改善すべき点を踏まえて次の計画を立てることができるため、スケジュールの変更が必要な場合も調整しやすいのです。
後述するウォーターフォール開発では、最初にプロダクト全体の設計を行うため、スパイラル開発のような柔軟性はありません。仕様やスケジュールの変更は、前の段階に戻ってやり直しになります。最初の段階の要件定義まで戻らざるをえない場合もあり、下流工程になるほど仕様やスケジュールの変更による影響は広がってしまうでしょう。
プロダクトの品質を保ちやすい
スパイラル開発では、完成品に近い機能のプロトタイプが早い段階で作られるため、成果物のイメージを共有しやすいことがメリットです。その結果、プロダクトに関して開発者側とクライアント側の間に生じやすい認識のズレを防ぐことができます。
このように、スパイラル型は、開発の初期段階からプロトタイプを使って実際に動作させ、評価・レビューすることができるのです。クライアントがプロトタイプを実際に見て触れることができれば、開発側は具体的なフィードバックを得やすいでしょう。良いフィードバックがあれば、改善点として次のステップに活かすことで、クライアントのニーズを満たす品質を確保することが可能です。
クライアントが最終段階の受け入れテストまでプロダクトを確認できない開発手法では、仕様などを改善するには、どうしても手戻りが大幅に必要になるリスクがあります。そうなると、追加予算も当然のしかかってくるため、品質に妥協せざるをえなくなるケースも考えられます。その点、クライアントから適宜フィードバックが得られるスパイラル開発は、プロダクトの品質を保ちやすい手法といえるでしょう。
スパイラル開発のデメリット
スパイラル型システム開発のメリットについて解説してきましたが、スパイラル型には
デメリットも存在します。以下の2点を注意しておきましょう。
- プロジェクトの全体像が見えにくい
- 開発コストが肥大化するケースがある
では、それぞれについて詳しく解説します。
プロジェクトの全体像を把握しにくい
スパイラル開発は、機能を分割し、サブシステムごとに設計、試作品の開発、評価を繰り返していくモデルのため、プロジェクトの全体像がつかみにくいことがデメリットです。時間や開発コストが最終的にどのくらい必要になるのかがわかりにくいのです。評価を繰り返し、その都度仕様変更を続けるとその分作業量が増えてしまうでしょう。結果的にリリースするまでに予想以上時間がかかり、リリースの遅延につながるケースもあります。
規模の大きいシステム開発のように、開発に関わるステークホルダーが多いプロジェクトでは長期化するリスクがあります。プロジェクトに関わる人が多いほど、クライアントがチェックで時間をとってしまうことと、予想外に多くのフィードバックを受けることで作業量が増加することなどが挙げられます。
スパイラル開発では、仕様やスケジュール変更に対応しやすいというメリットがありますが、全体像を把握しづらいというデメリットにもなるといえるでしょう。全体像を把握できないままの状態で計画変更が続くと、本来プロジェクトが目指している方向性からずれてしまうことが懸念されます。開発中は、仕様変更が繰り返される都度、しっかりキャッチアップして管理することが大切です。
開発コストがかさむケースもある
機能ごとに評価・改善するスパイラル開発では、開発コストが膨らむことがあることもデメリットです。スパイラルを繰り返すことで、プロダクトの品質が高められることはメリットですが、評価・レビューの結果、想定を超える改善や仕様の変更あるいは追加が必要と判断された場合、スパイラルの回数を増やさざるを得ません。その結果コストがかさんでしまうことが考えられます。さらに、ステークホルダーが多かったり、要件が明確でなかったりした場合、この傾向はより強まることが懸念される点です。
そもそも、プロトタイプの開発コストが大きくなることもスパイラル型のデメリットといえます。試作品とはいえ、クライアントから良い評価を受けるには、当然のことですが、クライアントのニーズを満たす実装を施さなければなりません。その開発にかかる工数は決して小さくはありません。クライアントの要望内容によっては、改善するごとに作り直しの負担が生じます。
スパイラルごとに課題の修正を行うスパイラル開発では、案件によっては何度も修正を行うことで、開発コストは想定を超えて膨らむ可能性があります。その結果、限られた予算内で開発するプロジェクトが多い現状では、普及率が低いといえるでしょう。
スパイラル開発とアジャイル開発の違いとは
品質を重視するのはどの開発手法でも同様であることを前提として、両者の違いを見ていきましょう。
アジャイル開発は、計画、設計、実装、テストを繰り返しながら開発を進めていく手法で、変化することを前提としているため、急な変更にも柔軟に対応することができます。仕様変更はもちろん、テスト段階で問題が生じた場合でも、一つ前の段階に戻るだけで済むのです。コミュニケーションを取りつつフィードバックを行うことで、クライアントも確認ができ、その時点で要望と合わなければ仕様変更や追加に対応できるため、クライアントにとって満足度の高い成果物となるでしょう。また、優先度の高い要件から開発していくことで、開発期間も短縮でき、現在ではアジャイル開発がシステムやソフトウェア開発で主流となっています。
アジャイル開発の機能ごとに開発を進めるという点はスパイラル開発と共通する点ですが、アジャイル型は初期に定めた期間ごとにクライアントからのレビューをもらいます。つまり、プログラムを都度リリースすることが最大の特徴です。一方、スパイラル型は、一定の開発物が初期に設定したマイルストーン(機能や品質)に達した段階でクライアントからのレビューをもらいます。すなわち、完成するまでリリースされないことが、スパイラル型がアジャイル型と異なる点といえるでしょう。
現状ではスパイラル型はあまり普及していません。先述した通り、コストがかさみやすく、リリースまでに予想以上に時間がかかり、遅延するケースもあるからです。一方、アジャイル開発は仕様変更しやすいだけでなく、リリースまでの期間も短縮できるため、国内でもアジャイル型が次第に広まり、現在は主流となっています。
アジャイル(Agile)型開発とは?メリット・デメリット・向いているプロジェクトを簡単に解説!
スパイラル開発とプロトタイプ開発の違い
つぎにプロトタイプ型との違いについて見ていきましょう。どちらも試作品を活用するという点は共通していますが、何が違うのでしょうか。
プロトタイプ開発では、最初から改善を前提として、プロダクトの全体が網羅されているプロトタイプを制作します。つまり、プロトタイプ制作→レビュー・テスト→プロトタイプの修正→本開発・リリースというステップで開発が進みます。詳細にいたるまで設計を詰めずに開発を開始することが特徴です。その点が、段階ごとにプロトタイプを製作するスパイラル開発との大きな違いといえます。
どちらの開発手法もプロダクトの品質を高めることを重視していますが、プロトタイプ型の場合は、どちらかというと、プロダクトの方向性を絞るためにプロトタイプを活用しているといえるかもしれません。
スパイラル開発とウォーターフォール開発の違い
ウォーターフォール開発とは、主流となっているシステム開発手法です。Waterfall(ウォーターフォール)は、「滝」という意味を表すように、上流工程から下流工程へと滝の水が落ちるように、各開発工程を順に行う手法です。そのため工程を後戻りすることはありません。スパイラル型では、工程を繰り返し、その都度レビューすることが大きな違いといえます。
では各工程を比較しながら見ていきましょう。
要件定義
ウォーターフォール型は要件定義の段階で細部まで仕様を作り込んでいきます。スパイラル型ではそれほど細かいところまでは詰めず、システム全体を機能ごとに分割し、優先度の高い順に並べておきます。
設計
ウォーターフォール型では、システム全体の機能を最初から設計します。スパイラル型の設計段階では、実際に開発する機能・サブシステムに限り設計するのが特徴です。すなわち、重要度の高いものから設計作業が行われます。
開発・テスト
完成形を開発するウォーターフォール型は、プロトタイプを製作することはありません。一方、スパイラル型の場合はプロトタイプを制作します。
評価・レビュー
ウォーターフォール型では、完成形の評価・レビューを行います。スパイラル型では、プロトタイプをクライアントと共有し、バグがないか、認識のズレはないかなどをチェックし、フィードバックは次の設計に活かされます。
各開発が向いているプロジェクトの特徴
ここでは、代表的な4つの開発手法について、それぞれに適しているプロジェクトの特徴を表にまとめました。
4つの手法のうち、ウォーターフォール型やアジャイル型は広く知られていますが、スパイラル型はそれほどメジャーではありません。しかし、スパイラル型の特徴、メリットとデメリットに注目すると、スパイラル型が適している案件があるかもしれません。
同じように各開発手法の特徴やメリット・デメリットを踏まえると、それぞれ適した手法が見つかります。プロジェクトの特徴を踏まえて、どのような開発手法が適しているかについて理解しておきましょう。
開発手法 | 向いているプロジェクト |
---|---|
スパイラル型 | ・品質重視の大規模なプロジェクト ・仕様が変更する可能性がある案件 |
アジャイル型 | ・要件の全体像が固まっていない案件 ・Webサービス、アプリケーション、モバイルアプリなど |
ウォーターフォール型 | ・機能・予算・納期が確定している案件 ・大規模な業務システムを構築するプロジェクトなど |
プロトタイプ型 | ・まだ世に出ていないシステムの開発、UIを重視する開発 ・小・中規模の開発プロジェクト |
スパイラル開発が向いている開発プロジェクトの特徴
比較的規模の大きいプロジェクト
スパイラル開発は、ある程度時間はかかっても品質をできるだけ担保したい大規模なシステム開発の場合に向いています。ただし、プロジェクトの規模が大きいほど、全体像が把握しにくいため、開発期間がはっきりしないという問題が生じるリスクがあるので、十分検討する必要があるでしょう。
仕様変更の可能性が高い案件
スパイラル型は、先述したように、機能の開発ごとにクライアントがレビューするため、仕様変更に対応しやすいことがメリットです。そのため、システムが複雑で、少しずつ確認を取ったほうが効率的に進められるような案件に向いているといえます。
クライアント側がシステムの発注に慣れていない
クライアントの担当者がシステム発注に慣れていないケースは、スパイラル開発が適しています。プロトタイプを共有しながら開発を進めることができるからです。成果物のイメージをクライアントに持ってもらえば、要件を引き出しやすくなるでしょう。ただし、クライアントが慣れていない分、追加的な要件が増えてしまい、プロトタイプの開発コストがかさむ可能性も考えられます。
アジャイル開発が向いている開発プロジェクトの特徴
スモールスタートから検証を重ねてプロダクトを成長させる案件
アジャイル型は、スモールスタートさせて検証を行い、反応をチェックしながらプロダクトを成長させる案件に向いています。具体的には、Webサービス、アプリケーション、モバイルアプリ、ゲームといった方向性は見えているけれど、要件や仕様が明確でないプロジェクトなどに適した手法と考えられます。全体像が不透明な場合でも、アジャイル型は開発の進行に合わせて固めていくので、特に大きな支障はないでしょう。
仕様変更の可能性がある案件
柔軟に対応できるアジャイル開発は、ニーズが変わりやすい業種の案件に向いています。特に、IT業界は市場の動きが読みづらくニーズの変化を事前に予測できにくいため、機能の優先順位が変わることが考えられます。
クライアント自身も積極的に開発に参画する案件
ウォーターフォール型の場合は、クライアントの担当者がシステムの最終チェックなどに参加しますが、アジャイル型はその必要性がより高まります。そのため、プロジェクトを成功させるというクライアント自身の強い意志と、メンバーとして開発チームに積極的に関わることが求められます。
ウォーターフォール開発が向いている開発プロジェクトの特徴
機能・予算・納期が明確な案件
ウォーターフォール型は、仕様書通りにコーディングするため、機能・予算・納期などの要件が明確で、仕様変更や追加による手戻りが起きない案件に適した手法です。具体的には、要件が確定している業務アプリケーションや汎用系システムなどが挙げられます。
大規模な業務システム構築などの案件
エンジニアの動きが把握しやすい手法のため、銀行や公的機関などの規模の大きいシステム開発に向いている手法です。大型システムの開発では、多数の開発者が業務分担して進めるため、ウォーターフォール型を活用すれば、事前に決められた方針で開発者全員が同じ目標に向かって開発作業を進められます。ただし、開発途中での仕様変更や追加が発生しないことが前提です。
ウォーターフォール型は柔軟性が低いため、工程が一つでも遅れると、後の工程にかなり影響が出るリスクがあります。市場やニーズの変化が変わりやすく、仕様変更が生じやすいIT関連などのプロジェクトには適さないでしょう。
プロトタイプ開発が向いている開発プロジェクトの特徴
新規立ち上げのプロジェクトなど実現性が不透明なサービスの開発
新規プロジェクトや独自システムの開発など、参考となる前例が少ない場合に適しています。クライアントが具体的なシステム開発をイメージできていないケースでは、とりあえずプロトタイプを確認することで、完成形をイメージしやすくなるでしょう。プロトタイプ開発は、プロジェクトのニーズや仕様が不透明な場合など、不確定要素がある場合に有効な手法といえます。
UIなどの操作性やデザインを重視する案件
ユーザーインターフェースなどの使いやすさや見た目などを重視する案件の場合には、プロトタイプ型を活用する意味があります。UIの操作性やデザインの基準は人それぞれなので、形になったものを見て実際に操作して、その都度調整していけば間違いがないからです。見せ方にこだわりたいECサイトの構築や、扱いやすさが求められる業務用システムなどは、プロトタイプ開発を採用するとよいでしょう。
コントロールしやすい小・中規模の案件
プロトタイプ型は大規模な案件に向かない手法です。要件や機能が固まらないうちにプロトタイプを作るため、多数の人が関わる大規模な案件では収拾がつかなくなったり、コストがかさむリスクがあります。そのため、システム開発に慣れていない小・中規模のクライアントが主導するプロジェクトに適した手法と言えます。
最適な開発手法を選択する際のポイント
システム開発にはこの手法を使うというルールなどはありませんが、開発するシステムの最適化を図るには、その開発に合う適切な手法を選択することが大切です。そのためには、複数ある開発手法それぞれにどんな特徴があるか、メリットやデメリットが開発予定のプロジェクトにどう影響するかを見極めましょう。
しかし、ひと口にシステム開発といっても、その目的やニーズ、必要な要件や仕様、予算はさまざまです。そのため、最適な開発手法を選定する際には、プロジェクトの目的に応じて開発手法を決めることが重要なポイントといえます。何を開発するのか、システムの規模はどのくらいか、市場の動きはどうか、などシステム全体のバランスを見ることが重要です。
システム開発の手法は、それぞれ特徴があり、メリット・デメリットも異なるため、予算、期間、システムで導入すべき手法が変わります。そのため、どんなシステム開発を望んでいるのかを明確にすることが重要です。方向性がぶれていなければ、適切なシステム開発手法を選定することはそれほど大変なことではないでしょう。
それでもどの開発手法がよいか迷っている方は、専門会社に相談することをおすすめします。自社の開発プロジェクトにはどの手法が合うかを見極めてもらい、開発会社とプロジェクトを進めると効率的です。
ハイブリッドテクノロジーズの提供サービス
ハイブリッドテクノロジーズでは、ビジネスデザイン、UIUXデザイン、設計、実装、テスト、リリース、運用、保守まで一気通貫してサービスを提供しております。500名以上の経験豊富なエンジニアにより、迅速かつ高品質なシステム開発が可能です。 アジャイル開発、ウォーターウォール開発、ハイブリッド開発と言った様々な開発手法に対応しており、契約形態に関しましてもラボ型契約と受託型契約の2つから選択いただけます。お客様の状況や開発内容に応じて、開発手法と契約形態を柔軟にご指定いただけますが、それぞれの開発手法、契約形態の特徴の親和性から、アジャイル開発ではラボ型契約が、ウォーターウォール開発とハイブリッド開発では受託型契約を選択されるクライアント様が多数を占めます。
ラボ型開発について: ラボ型開発 サービス
受託型開発について: 受託開発 サービス
ハイブリッドテクノロジーズが選ばれる理由
弊社ではクライアント企業様及びエンドユーザー様の声を聞き、UIUXを意識したビジネスデザインを行なっております。 テーマを決めて分析し、仮説を立ててビジネスデザインを行い、プロトタイピング、検証、フィードバックを受け、再度分析から始める。 この一連の流れを、アジャイルスクラム開発に精通した500名以上のエンジニアが高速で回していくことにより、最速でより良いものを実現していきます。 ハイブリッドテクノロジーズには市場の声を現実にするための仕組みとメンバーが揃っています。
システム開発の成功事例
システム開発での成功事例をご紹介します。
OfferGate(株式会社リフト)
サービス内容
⼈材紹介会社、派遣会社を通さずに、⾃社の条件や要件に合った外国⼈材求職者へ直接アプローチできる外国⼈材の採⽤マッチングプラットフォーム
サービス上の課題/目指したいサービス
課題
外国⼈材の採⽤には、求⼈ポータル形式や⼈材紹介会社を通して⾏われるケースが多く、互いにコミュニケーションが困難なため、外国⼈求職者と企業側のミスマッチが起こるケースがあること
目指したいサービス
今回構築する採⽤マッチングプラットフォームを介することで、外国⼈求職者と直接コミュニケーションを取れようになり、ミスマッチを減らして企業の外国⼈材受け⼊れを促進すること
当社を選択していただいた理由
サービス対象が外国人であるため、当社のベトナム人を織り交ぜた開発体制はユーザー視点を取り入れることが可能になるという点と開発体制をリフト様では内製で保持しておらずサービス開発の体制が組めないため、サービス開発知見の多い当社をパートナーに選択していただいた。
当社ご提案内容
ターゲット層であるベトナム⼈視点のUI/UX設計から保守改修までのワンストップでのハイブリッド型サービスの提供
補助金クラウド(株式会社Stayway) サービスURL:https://www.hojyokincloud.jp/
サービス内容
補助金活用を検討する企業が、専門家に採択可能性や申請できる補助金の種別などの相談をすることができるWEBプラットフォーム
サービス上の課題/目指したいサービス
課題
コロナ発生以降、既存事業の立て直し、新規事業の創出が重要になった世の中に対して、行政が支援している補助金活用のニーズが増加している。 エンドユーザー側は多くの企業に行政書士などの専門家が不在のため各企業のニーズが満たされる補助金の種類や可能性が相談できる場面がなく、一から探すのもかなりの工数がかかっている状態が発生している。 金融機関/士業/事業会社おいても、補助金活用ニーズのある顧客との商談を円滑に進めるのが難しいという課題も存在している。
目指したいサービス
今回提供する補助金クラウドにより、エンドユーザー、士業事業経営をしている企業において以下の価値を提供が可能に。 エンドユーザーは、気軽にどの補助金が活用できるか、支援してくれる士業者とのマッチング、補助金採択の可能性を上げる申請相談が可能になります。 金融機関/士業/事業会社は、有効顧客の発掘、最新の補助金情報の入手、申請サポートによる採択率の増加が可能になり、売上増加が見込めます。
クライアント課題/要望
・新規事業の立ち上げ体制のリソースが不足
・UI/UX、システムの要件定義などの上流工程から体制構築したい
・自社の開発チームと組み合わせながら、擬似内製チームを構築したい
・事業状況に応じて柔軟にリソースを調整したい
当社ご提案内容
日本人によるUI/UXデザイナーの設計から運用保守まで一気通貫で対応できるハイブリッド型サービス ストックサービス
大手物流会社
サービス内容
窓口相談を事前に予約できるWebアプリ
窓口での相談日時を利用者が事前に予約できるようにし、企業と顧客双方にとって利便性を向上するWebアプリの開発案件です。
サービス上の課題/目指したいサービス
課題
利用者からの問い合わせは、常に窓口で対応している背景があり、
窓口で順に受け付けていたが、待ち時間が長く、顧客から不満の声が上がっていた。
目指したいサービス
・顧客の利便性(満足度)を向上すること。
・システム導入の周知により金融相談業務の認知度を向上させること
・システム導入による効率的な要員配置を目的として、顧客がWeb 上で事前に金融商品に関する相談日時を予約できるシステムを新たに構築すること
クライアントの課題/要望
・社内で開発体制を保持していないこと
・Salesforceを業務の基幹システムとして利用されているため、Saleforceでの機能開発が必須
・金額をミニマムに抑えながら安定的な運用を実現したい
当社を選択していただいた理由
・日本国内での開発より大きな価格メリットがあったこと
当社ご提案内容
受託型開発(フロー)にて提案
1.Salesforceを活用し、ミニマムコストでスピード感を持った機能開発
Salesforceを活用することで0からインフラを構築せずに素早く開発環境を作成することが出来ます。Salesforceの標準機能を基に必要な機能をカスタマイズして開発することで、スピーディな開発〜実装を可能としました。
2.プログラム実装前にプロトタイプ作成し、スピードを保ちつつ認識ギャップを防止
プログラム実装前にプロトタイプを作成することで、リリースというゴールまでスピード感を保ち、的確にコミュニケーションをおこないながら、認識ずれが生じないよう努めました。
3.Salesforce準拠のセキュリティ基準を担保
開発と合わせ、Salesforce準拠のテストコードを作成し、テストを実施することで、リリース後の不具合が発生しにくく、運用保守コストも抑えることができます。またすでにクライアント様が使用されているSalesforceの機能拡張のため、セキュリティー面は今までと同様のものが担保されます。安心感を持ってシステムをご使用いただき、クライアント様、エンドユーザー様双方からご好評いただいています。
まぐまぐ!リーダーアプリ (株式会社まぐまぐ) https://www.mag2.com/app/reader/
サービス内容
まぐまぐ!で登録したメルマガコンテンツとまぐまぐ社が運営するメディアを手軽かつシームレスに閲覧できるスマートフォンアプリ「まぐまぐリーダー」
サービス上の課題/目指したいサービス
課題
メルマガはメールのみ、メディアもそれぞれ独自のWebを持っているためユーザービリティが良くない点
目指したいサービス
まぐまぐ!で登録したメルマガコンテンツとまぐまぐ社が提供する4つのニュースメディアを横断して手軽かつシームレスに閲覧できるサービス
クライアントの課題/要望
・新規アプリ開発リソースの不足
当社を選択していただいた理由
内製での開発リソースを保持されていないことと、当社の幅広いリソースとスピード感を持った開発体制が、まぐまぐ様の開発ニーズに合致したため、当社を選ばれました。
当社ご提案内容
ラボ型(ストック)開発+保守にて提案
1.メルマガやニュースメディアといった多様なユースケースに、細やかに対応する開発体制
メールマガジン配信プラットフォーム事業の理解と学習から始まり、要件定義・設計・開発までをアジャイルスクラム開発で担当し、1週間ごとにクライアント様と成果物のレビュー会を行うことで、フィードバックを早いサイクルで受けることで、ユーザーの期待を超える価値体験を追求いたしました。 記事を読むという観点ではニュースサイトなどのメディアに分類されるサービスではありますが、既存の媒体がメールであるためにユースケースには多様性がありました。
2.毎日読む情報収集アプリとしてのファインダビリティとユーザービリティを考慮したUX・UI設計
メールアプリで閲覧するものだったメルマガをスマートフォンアプリで軽快に閲覧できる機能と、まぐまぐ社が提供する4つのニュースメディアを横断して閲覧できる機能を両立しつつ、スムーズに情報収集を行えるUX・UI設計を行いました。メインペルソナである多忙なサラリーマンの方の情報収集アプリとして、短時間での閲覧でも読みやすい視認性や可読性を重視した白基調の配色とタイポグラフィの設定を行い、ボタン類のアクション要素は見落とされない配色設計や、押しやすいサイズ設計、リアルタイムデータベースを使用した同期的な処理、まとめ読みや読み返しが快適にできるようにローカルデータベースを使用したオフラインファーストな設計をすることで既存サービスのユーザー体験をスマートフォンアプリでも損なわないように配慮しました。
まとめ
システム開発は、それぞれの手法の特徴を理解して、プロジェクトに最適の方法を選択して開発する必要があります。
ウォーターフォール型は管理しやすく、手戻りを最小限におさえることが可能ですが、柔軟性には欠ける手法です。アジャイル型は柔軟性があり、開発スピードが速いことで、近年注目されています。プロトタイプ型は試作品を作成するのでクライアントがイメージしやすく、中・小企業の新規事業のプロジェクトなどに適しているでしょう。スパイラル型は仕様変更に対応しやすいですが、全体像が見えにくいというデメリットがあります。
どの手法が良いかはプロジェクトによって異なります。それぞれの開発手法の特徴を把握して、自社に最適な方法を選んでください。