目次
スクラッチ開発
システム導入には、大きく分けてふたつの方法があります。ひとつが「パッケージ導入」もうひとつが「スクラッチ開発」です。
パッケージ導入は、すでに完成しているシステムをそのまま、もしくは可能な範囲でカスタマイズして導入するやり方です。これに対して、スクラッチ開発は一からシステムを作り上げていく手法で、「独自開発」とも呼ばれています。「既存システムやパッケージにない機能が必要」など明確なビジョンがある際に用いられることが多いです。
スクラッチ開発には、従来から使われる「ウォーターフォール開発」と、新たに注目されている「アジャイル開発」の2つの手法があります。
ウォーターフォール開発
ウォーターフォール開発は、システム開発手順を1つずつ確認しながら工程を進めていく手法のことです。開発を各工程に分けて進めることで、進捗を把握しやすくなります。次のフェーズに進んでしまうと後戻りができない手法でもあります。
開発担当者や責任者、ユーザーが各工程の成果物を共に確認し、双方の合意を得たうえで各工程を完了と見なしていきます。ウォーターフォール型開発の特徴は、ひとつひとつの工程に抜け漏れがないかどうか厳重に管理しながら進めていくことです。
ユーザーに細かくヒアリングを行い、要件定義が完了次第、基本設計を土台にして詳細設計のフェーズへと進んでいくため、前の工程に欠陥があっては次へと進めません。
ウォーターフォール開発におけるプロジェクト体制
ユーザー企業とシステム開発ベンダーでタッグを組み、各社で合同のプロジェクトチームを作ります。
以下の図は、主にウォーターフォール開発の際に組まれるプロジェクト体制の一例です。
開発の規模や内容により、役割や人数は変動します。
アジャイル開発
アジャイル開発は、ユーザーの要望に応えるシステムをできる限り素早くリリースしようという考えの開発手法です。ユーザーのビジネスの始動を早めようという目的があります。
リリースを早くするには、搭載する機能を最低限の状態にする方法が取られるケースが多いです。アジャイル開発では、開発メンバーがシステムにおける優先度に順位をつけ、短期間での納品に向けて開発を進めます。
システムの優先順位を決めるためにミーティングを毎日行い、チーム内でスムーズに連携をとる「スクラム」という手法が主に取られます。
アジャイル開発におけるプロジェクト体制
アジャイル開発においては、プロダクトの方向性及び内容に対して責任を持つ「プロダクトオーナー」の役割が非常に重要であり、プロジェクトの成否を決める要の一つとなります。
ユーザー企業がプロダクトオーナーを選任することとし、開発チームが必要とする情報や意思決定を適時に提供することや、ステークホルダーとの調整など、迅速な開発を進めるためにプロダクトオーナーが果たすべき役割を明確化します。
開発側は、ITの専門家として、プロダクトの価値向上に向けて担当業務を行うとともに、タスク管理に関する助言やプロダクトの技術的なリスクに関する説明等を行うこととしています。開発を進めるにあたってはスクラムチームを形成し、スクラムマスターを中心にスプリント開発を進めます。スクラムマスターは、スクラムチーム全体の活動が円滑になるよう支援します。
以下はプロジェクト体制のイメージです。開発の規模や内容により、役割や人数は変動します。
※IPA Webサイト掲載記事「アジャイル開発版「情報システム・モデル取引・契約書(アジャイル開発版)」より引用
https://www.ipa.go.jp/digital/model/agile20200331.html
開発時のコミュニケーション
スクラッチ開発成功のカギとなるものが「コミュニケーション計画」です。プロジェクト立ち上げの際に、体制やスケジュールと併せて十分に定めておくことが重要です。いつでもどこでも情報共有ができる状態にし、より建設的な議論に時間を割く体制を作ります。
▼コミュニケーション計画に関するブログはこちら!
プロジェクト管理 悲喜こもごも⑤ ~コミュニケーション計画~
弊社ではプロジェクト立ち上げの際に以下のポイントを押さえて、お客様とのプロジェクトチームを構築させていただきます。
課題管理・状況報告にプロジェクト管理ツールを使用
WBSを作成し、開発におけるタスクは全てプロジェクト管理ツールで常時共有して進めます。各タスクの期限を明確にし、プロジェクト関係者に対して進捗を見える化します。
ドキュメント類は共有ストレージを利用
プロジェクト管理ツールに機能として付いている共有フォルダを使って、開発に必要なドキュメント、業務に関する資料などを共有します。関係者であれば、いつでもどこでも必要なファイルを確認できる状態を作ります。
気になった箇所はチャットやWeb会議ですぐに確認
基本はプロジェクト管理ツール上のチャット機能で随時連絡をします。必要な際はWeb会議を実施します。気になることはすぐに確認し、取り返しがつかない状態を防ぎます。
定例会の実施
定期的に時間を取り、進捗や課題状況の確認を行います。打合せの頻度や場所(オンラインor現地訪問)はお客様とご相談の上、決定させていただきます。
アジャイル開発の場合は毎朝のスタンドアップミーティングを開催し、日ごとのタスクを細かく確認しながら進めます。
システム開発プロジェクトの心構え
システム開発は、経営そのもののビジネス基盤の構築となります。ユーザーサイドはビジネスデザインのオーナーシップを持ち、ベンダーサイドはITテクノロジーのプロフェッショナルとして、お互いの信頼をベースとしたデジタルビジネスの『共創』意識を持つことこそが、プロジェクト成功の要諦となります。
システムの発注側としては、最低限のITシステムに関する知識、失敗しないベンダー選定、社内での協力を得る活動、リスク管理など、多くのことを考える必要があります。弊社では、システム開発ベンダーとしての実績や経験を元にご支援させていただきますが、最終的にシステムのオーナーとなりビジネスに繋げていくのは、発注者側であるユーザー企業様となります。
是非、お打合せにてご相談の上、システム開発成功のためのプロジェクト体制を持って、ビジネス共創に取り組ませていただければと思います。
弊社のスクラッチ開発事例
弊社のスクラッチ開発事例は、下記よりご覧いただけます。
お問い合わせ
スクラッチ開発のご相談につきましては、下記リンク先のお問い合わせフォームよりお気軽にご連絡ください。