DXについて調べていると「DX推進にはアジャイル開発が必要」のような文言出てきたりしませんか?
近年「アジャイル開発」「アジャイル型組織」「アジャイル思考」など「アジャイル」という言葉をよく耳にします。
DX推進とアジャイル開発には深い関りがあるんです!
東洋電装も新工場を「DX工場」と位置付けるにあたって「アジャイル」を浸透させる機会がありました。
今回の記事では「アジャイルとは」から、アジャイルに関係する用語や実際の事例を話していきますね!
アジャイル開発の「アジャイル(Agile)」の意味は「機敏」「俊敏」「素早い」といった言葉でシステムやサービスをスピーディーにリリースするためのソフトウェア開発の手法の一つなんです!
2001年にアメリカのユタ州スノーバードに集まった専門家17人が提唱した「アジャイルソフトウェア開発宣言」によって誕生しました。
専門家17人が提唱した、アジャイルソフトウェア開発宣言の内容は以下の通り
私たちは、ソフトウェア開発の実践、あるいは実践を手助けをする活動を通じて、よりよい開発方法を見つけだそうとしている。この活動を通して、私たちは以下の価値に至った。
プロセスやツールよりも個人と対話を、
包括的なドキュメントよりも動くソフトウェアを、
契約交渉よりも顧客との協調を、
計画に従うことよりも変化への対応を、
価値とする。すなわち、左記のことがらに価値があることを
認めながらも、私たちは右記のことがらにより価値をおく。
それまでの開発フローは指揮統制され、プロジェクトマネージャーがタスクを開発者に引渡し、その日のうちにすべてのタスクが完了するかを確認する体制でした。
そのため開発者はビジネス全体や顧客のニーズへの理解が不十分な状態に陥ってしまいます。このようになってしまうとプロジェクト全体の方向性やビジネス上の視点に欠けることが多くなってしまい「この開発者は何も考えられない低次元の開発者なのか」とみなされることが多いのが今までの開発フローにおいて起きていた問題です。
そこで求められたのが「アジャイルソフトウェア開発宣言」によって明記された内容です。
その内容を要約する※と、この4つになります。
※ 独立行政法人情報処理推進機構による要約
ここではアジャイルに関わる用語を説明していきます。
アジャイルと対比でよく使われるウォーターフォールモデルは知っていますか?
ウォータフォール開発とはシステムやソフトウェア開発で用いられる開発の一つで全開発作業をいくつかの工程に分けてその工程ごとに作業の管理をする開発手法の一種です。ウォーターフォールという名が示す通り、「滝(Waterfall)」のように落下するが如く開発が進む」ことから、その名が付けられています。
ウォーターフォールモデルは「開発手順が極めてシンプルで分かりやすい」という特徴があります。下表の通り、システムやソフトウェア開発には多くの工程(プロセス)が存在しますが、この工程を上から順番に行っていきます。
ウォーターフォールモデルの流れ
工程 | 詳細 |
---|---|
1.要件定義 | システムの機能や、開発に必要となる予算や人員を決める。 |
2.外部設計 | ユーザーインターフェース(外見的な見た目のこと)を設計する。 |
3.内部設計 | システム内部の動作や機能、物理データ部分を設計する。 |
4.コーディング | 外部と内部設計に基づき、実際にプログラムを作成する。 |
5.単体テスト | 作成したプログラムが、正しく機能するかテストをする。 |
6.結合テスト | 複数のプログラムを組み合わせ、正しく機能するかテストをする。 |
7.運用テスト | 完成したシステムが、実際の業務に使用できるかテストをする。 |
8.リリース | テストが完了したシステムをリリースする。 |
スクラム開発とは上記に挙げたアジャイルの亜種とも呼べる開発手法です。
スクラム開発はチーム全員で開発を進める手法のため、アジャイル開発の中でも、チーム間のコミュニケーションがより大切です。スクラムという言葉はラグビーの「スクラム」から名付けられた小さなチームからきています。
チームとして「何が必要か?」「いつまでに必要か?」「誰が何をやるべきか?」という視点からチームメンバーにタスクを振り分け、それぞれがそのタスクを達成することでプロダクトの完成を目指すのです。
それぞれの作業が、他の人の作業を支えている形になるので、チームワークやコミュニケーションが重要になってきます。
スクラム開発に必要な人材
役割 | 詳細 |
---|---|
プロダクトオーナー(PO) | 開発プロジェクトにおけるオーナーで意思決定を行う存在 スクラムマスター(SM)やステークホルダーとの連携によってプロジェクトを成功に導くのが役目 |
スクラムマスター(SM) | 開発プロジェクトにおけるマネージャーのポジション システム開発の指揮やスケジュール管理などが主な役目 トラブルが発生した際に解決役を担うことも多い |
ステークホルダー | 開発プロジェクトに資金提供を行うスポンサーの立場 直接的に開発に携わることは少ないが、POやSMに対する発言権を持つ存在 |
開発エンジニア | 開発プロジェクトで実際にシステム開発を行うスタッフ 開発に必要なスキルを備えたエンジニアやデザイナーが採用される 開発エンジニアのスタッフ間の上下関係はなく平等であることがほとんど |
スプリントという最長1ヶ月の開発単位の中で「計画」「日々の開発」「レビュー」を行い振り返りまでを行います。
振り返りの中で多方面の改善点を洗い出し次のスプリントに活かしていくのがスクラム開発の流れとなっています。
変化が激しいビジネスの世界で優位に立つには、DXへの取り組みが欠かせない世の中となってきています。
それに伴い市場環境も急速に変化しているため、素早い対応が求められます。アジャイル開発は、小さな段階的な開発サイクルを繰り返す開発方法のため、顧客ニーズを優先し、開発の方向性を柔軟に変更できます。
これにより、最終的には顧客満足度の高い製品を開発でき、様々な変化に急速に対応することが可能だからです。
ここでは東洋電装が取り組んだアジャイルの実例を紹介いたします。
縦割りで行なっていた制御盤製造工程をアジャイルモデルを参考に再構築しました。その結果、各工程の担当者同士でのコミュニケーションを取る場が設けられ、多方面からの視点が増えたことで、様々な改善策が出されるようになりました。
3か月後に導入したいとお客様から要望があり、設計・開発・納品。
デジタルサイネージのため実際にお客様が設置後にエンドユーザー様からさまざまな要望が発生。
開発をアジャイル開発で進めていたことで、新機能の追加や初期仕様の変更にも対応することでお客様の要望に最大限応えることができました。
今回ご紹介した「アジャイル開発」メリットデメリットありますがDX推進には欠かせない開発技法となっています。
DXは、デジタルテクノロジーを駆使して、経営やビジネスプロセスを再構築することです。単にシステムをIT化するのではなく、企業のあり方や働く人の働き方を変化させることを目指しています。DX推進のためにまずは作業の仕組みから変えていきましょう!
実際にアジャイル開発はDX工場でも使い、機能してきている最中です!
実際の現場を見てみたい!話を聞いてみたい!
そんな企業様おられましたら、是非一度弊社の工場見学へお越しください!
ご依頼・ご相談など、お問い合わせは、
下記フォームからお願いいたします。