2022年5月9日(月)

DXとアジャイル開発の関係性とは?

top
本記事は内製化支援を行っているプランニング部が、DXにおけるシステム開発手法について詳しく解説しています。DXにはどの開発手法が向いているのでしょうか?重要なポイントだけをわかりやすくまとめていますので、ぜひ最後まで読んでくださいね!
この記事はこんな人に向いてます
・DXを推進している
・アジャイル開発について知りたい
・システムの内製化を検討している
・開発スピードを上げたい

変更・改訂履歴

  • 改訂

    会社名を変更

DXとアジャイル開発の関係性

DX成功には、アジャイル開発を取り入れることがポイントになると考えています。
「DX」「アジャイル開発」一見関係性のないものだと思っていましたが、DXについて調べていくうちに強い関係性があることに気が付きました。
まずは「DX」「アジャイル開発」について説明していきます。
DX(デジタルトランスフォーメーション)
デジタルを活用する前提で変革を起こすという概念です。
プランニング部では「デジタルを活用して時代に合わせて業務スタイルを変化できる組織となり、その結果顧客へ提供するサービスをアップデートし続けることができる」ことだと考えています。
アジャイル開発
システム開発手法の一つです。
2001年アメリカで「アジャイルソフトウェア開発宣言」が提唱され生まれました。

 
プロセスやツールよりも個人と対話を、
包括的なドキュメントよりも動くソフトウェアを、
契約交渉よりも顧客との協調を、
計画に従うことよりも変化への対応を、
引用元:アジャイルソフトウェア開発宣言
具体的には、最初の要件定義は最小限にとどめて、小さな機能単位で「企画→設計→実装→テスト→レビュー→リリース」のサイクルを繰り返す開発手法です。
DXは常に新しい技術やトレンドを取り入れる体制が必要ですが、そのためにはシステム開発に「スピード」「柔軟性」が求められます。

IPAの「DX実践手引書 ITシステム構築編 暫定 第2.0版」ではこのように記載されています。

 
「アジャイルマインド」とは、従来のように、問題を分析して最初にゴールを決め、
そのゴールを固定して、そこに向けて論理的に解決していくという実践の仕方ではなく、
「現状を観察して」「失敗を恐れず」「問題を見つけ」「それに対して、仮説を立て」
「関係者と協力しながら」「実際に試して」「試した結果、得られた結果を検証して」
「それを元に問題や仮説の見直しを行う」ことを実践できるマインドとしている。
引用元:DX実践手引書 ITシステム構築編 暫定 第2.0版言
このことからも、「アジャイル開発」のコミュニケーションや柔軟性を重視する点はDXと関係性が強いと考えます。

4つのシステム開発手法を比較

現在主に採用されている4つの開発手法がDXに向いているかという観点で比較してみました。

開発手法 ウォーターフォール開発 アジャイル開発 スパイラル開発 プロトタイプ開発
開発中の仕様変更 不可 可能 可能 可能
(本番開発中は不可)
ユーザの意見 最初の要件定義フェーズのみ検討可能可能 各機能の企画・レビューフェーズで検討可能 各機能の企画・レビューフェーズで検討可能 企画・レビューフェーズで検討可能
リリースまでのスピード 全ての工程が終了してからリリース 機能単位でリリース 全ての工程が終了してからリリース 全ての工程が終了してからリリース
スケジュール管理 容易 困難 レビュー内容により困難になる可能性がある レビュー内容により困難になる可能性がある
DXとの親和性 ×
この図の通り、アジャイル開発はリリースまでの期間が短くユーザの要望を柔軟に取り入れることが容易です。

ウォーターフォール開発については最初に要件定義をしっかり行い、開発着手以降は変更がない前提で進めていきます。
リリースまでの期間が長く、追加要望が発生する場合は大幅に手戻りが発生するためDXには向いていません。
スパイラル開発とプロトタイプ開発については、最初から要件定義をしっかり行わない点や要望をレビューフェーズで検討することができる点はアジャイル開発と似ています。
しかし全ての工程が終了してからリリースとなるため、スピード感はアジャイル開発に劣る部分があります。
結論としてアジャイル開発は「今欲しいシステムを最速で作り上げる」ことが可能なため、DXにおける適切な開発手法と考えます。

アジャイル開発の注意点

・全体が見えにくくスケジュール管理が困難
・プロジェクトの方向性がぶれやすい
全体が見えにくくスケジュール管理が困難
アジャイル開発は考えながら開発を行うため、全体が見えない中でスケジュールを立てて進めていく必要があります。
上手くプロジェクトを進めていくには、経験豊富でコミュニケーション能力の高いプロジェクトマネージャーが必要ですが、そのような人材が不足しているという課題も多くあります。
プロジェクトの方向性がぶれやすい
レビューを繰り返していくうちに方向性が変わってくる場合があります。
納得のいくシステムを完成させることはできますが、想定していたよりも開発コストが膨らんでしまうということは少なくありません。

アジャイル開発で生産性をアップする方法

top
アジャイル開発を採用することでスピード感のある開発を行うことができますが、更に生産性を高める方法があります。 それはずばり「ローコード開発」です!

ローコード開発ならツール側に開発環境が予め用意されていることが多いため、サーバやネットワークなどのインフラ準備をしなくてもすぐに開発に着手できます。
クリック操作である程度の機能を作ることができるので開発工数もぐっと削減できます。
またセキュリティについてもツール側で対策がされているため企画や開発に専念することが可能です。
ローコード開発についてはローコード開発とは?スクラッチ開発との違いとメリット・デメリットで詳しく解説しているので読んでみてくださいね。
アジャイル開発におすすめのローコード開発ツール
アジャイル開発でローコード開発を検討するならSPIRAL® ver.2がおすすめです。
開発する中で生まれた要望を実現するためには柔軟に開発を行う必要があります。
SPIRAL® ver.2はPHP/JavaScriptの実行環境があり、もし欲しい機能が用意されていない場合でもある程度カスタマイズで実装することができるため、新しい要望にも柔軟に対応することが可能です。
内製する場合はエンジニアによる強力サポートも
DXではシステムを内製することが推奨されているため自社で開発を検討している場合もあるかと思います。
SPIRAL® ver.2では内製化支援による当社のSPIRALエンジニアが直接支援する強力な支援体制をご用意しています。
時間がかかりがちな実現可否の判断や実現方法をスピーディに解決しながら進めることが可能です。

まとめ

最後に本記事でお話しした内容をまとめると以下の通りです。
・DXに合う開発手法はアジャイル開発
・ローコード開発を取り入れると生産性向上に繋がる
いかがでしたか?今回お伝えした内容が少しでも参考になれば嬉しいです。
スパイラル株式会社では内製化支援を提供しております。
内製化の組織づくりから技術支援までまとめてサポートさせて頂きますのでお気軽にご相談ください。

この記事を書いた人

プランニング部