「あらゆる企業がソフトウェア企業になる」と言われるようになって久しいですが、高品質なソフトウェアを迅速に拡張・デリバリーすることは、それほど簡単なことではありません。技術スタックは絶えず変化し、新たなクラウドサービスが日々登場するなど、ソフトウェア開発環境は複雑さを増すばかりです。
組織の刷新において注力すべき4つの柱
さらに追い打ちをかけるように、ソフトウェア開発者の人材不足は深刻な問題となっています。IDCの調査によると、2021年時点でフルタイムの開発者はすでに140万人不足しており、4年後には400万人規模の人材不足に陥ると見込まれています。
また、ハイブリッドワークが広く浸透し、企業のデジタル化が急速に進んだことで、あらゆる業界のソフトウェア開発チームの業務が爆発的に増加しました。
こうした破壊的な変化により、従来のソフトウェア開発アプローチでは市場の需要に対応しきれなくなり、開発者の負担は限界に近づきつつあります。
これらの新たな課題に対処するには、ソフトウェア開発を率いるリーダーが従来の考え方を見直し、チームやプラクティス、ツールの刷新計画において、次の4つの柱に注力する必要があります。
開発者エクスペリエンスの向上
開発チームが迅速にイノベーションを起こせるよう、技術的な複雑さの軽減を目指す。開発ワークフローの自動化
開発ライフサイクルにおけるすべてのプラットフォームやツール間の不整合・引き継ぎをなくし、包括的に統合する。セキュリティとコンプライアンス
ソフトウェア開発者は、開発中にテストできるものは「シフトレフト」を実施して早い段階でテストを行ったり、「シフトライト」を実施してテストを後ろ倒ししたりするなど、セキュアなコード記述を実践する。デプロイと運用
ユーザーの導入を推進するため、サービスの信頼性とパフォーマンスを高める。
4つの柱にもとづいた7つのトレンド
OutSystemsは、これら4つの柱にもとづき、今後のソフトウェア開発において鍵となるであろう7つのトレンドを予測しました。ここに挙げたトレンドは、ソフトウェア開発を率いるリーダーが、チームやプラクティス、ツールを刷新し、ビジネス目標を達成するために考慮すべきものです。
1. DevSecOps
2. API連携
3. 専門的なローコード開発
4. クラウドネイティブプラットフォーム
5. DesignOps
6. オブザーバビリティ
7. PWAファースト
1.DevSecOps
ITリーダーやソフトウェア開発チームにとって、残念ながらセキュリティは今後も大きな悩みの種となるでしょう。ランサムウェア攻撃の増加、組織データの曖昧な境界線、シチズンディベロッパーとの共同開発によるリスク増加、データプライバシーに関する法規制などを受け、あらゆるセキュリティ対策がかつてないほど求められるようになっています。
そこで今注目を集めているのが、開発ライフサイクルの各段階でセキュリティとコンプライアンス要件を検証する「DevSecOps」です。
サプライチェーンのセキュリティ脅威から開発環境を守り、ソフトウェアのデリバリーパイプラインを強化する必要性がうたわれる昨今、最高情報セキュリティ責任者や最高情報責任者は、さまざまな担当者が異なる手法で非体系的に開発をするのではなく、アプリごとに開発からデリバリーに至るまですべての段階をプラットフォーム上で管理し、安全に開発する手法を選択するようになりました。
開発プラットフォームの究極の目的は、セキュリティテストに依存した開発ではなく、「ゼロトラスト」セキュリティモデルを前提にして、開発チームがセキュアなコード記述を促進し、複雑さを解消することです。
2.API連携
「The State of SaaS Sprawl in 2021」と題した調査レポ―トによると、標準的な企業は254ものSaaS(Software as a Service)アプリケーションを有していますが、そのうち定期的に使用されているのは、平均で45%に過ぎません。さらに、これらのアプリの56%はシャドーIT、つまりIT部門が把握できていないアプリケーションなのです。
最近のビジネスユーザーの間では、API機能を持たない古いツールの上にRPA(Robotic Process Automation)を導入するケースがよく見られます。これは手っ取り早い方法ではありますが、常に修正や変更が生じるデジタルビジネスにおいては理想的な解決策とは言えません。アジャイルなビジネス環境では、アプリを迅速に修正・変更できるローコード開発プラットフォームが適しています。
また近年では、複数のデータソースにまたがるデータの管理、ガバナンス、監査可能性をリアルタイムで連携させることが従来以上に求められており、ハイブリッド統合を実現するツールへの需要が高まっています。
適切なソフトウェア開発プラットフォームや専用ツールを導入することで、異なるSaaSやレガシーシステムのデータを統合し、複数のシステムやアプリケーションで活用可能なデータファブリックを構築できます。これは、ビジネスリーダーのデータドリブンな意思決定を支えるうえで鍵となります。
3.専門的なローコード開発
ローコード開発手法は、エンタープライズ企業が抱える課題の多いプロジェクトにも採用されるなど、ここ数年で著しく普及が進んでいます。
Gartnerが発表した「Magic Quadrant for Enterprise Low-Code Application Platforms」では、2025年までに企業が新たに開発するアプリケーションの70%は、ローコードまたはノーコードの技術を利用して開発されるようになると予測しています。
ローコード開発は、一般的なビジネスユーザーが開発者の代わりにソフトウェア開発に携わることを目的としたツールではありません。
ローコードプラットフォームは、開発プロセスを抽象化することで、開発者がアプリケーションやシステムを構築する際に直面する複雑さを取り除く開発プラットフォームです。優れたローコードプラットフォームは、細かな制御に適したフルスタックのコントロール機能を備えています。
ローコードプラットフォームを活用すると、依存関係管理、コーディングの検証、自動ビルドといった反復的で退屈な作業をプラットフォームに任せ、開発者は製品の差別化につながるイノベーティブな作業に集中できるようになります。
4.クラウドネイティブプラットフォーム
SaaSにおいては、ニッチなクラウドアプリケーションの爆発的な増加に伴い、「構築か調達か」の経済的な観点や支出のタイミングに変化が現れています。
その原因としては、SaaSの無秩序な導入は予算を爆発的に増加させるだけでなく、何十ものシステム間を行き来しないといけないといった、ビジネスに悪影響を及ぼす技術的負債となりかねないことが挙げられます。
顧客、パートナー、従業員が利用するエンタープライズシステムのビジネスの俊敏性を向上させるには、新しいタイプのクラウドネイティブアプリを開発する必要があります。高度な分散性と拡張性を備え、回復力があり、目的に合ったエンタープライズアプリケーションを構築することで、組織の俊敏性を高めることができます。
5年前に大手ベンダーが提供していたWebサービスの数はわずか30ほどでしたが、今ではIaaSプロバイダー1社で250を数えるまでに増えています。このような爆発的な増加は、クラウドネイティブアプリケーションの構築において大きな障害になりつつあります。
これらの課題を克服するためには、クラウドネイティブ開発に対応したプラットフォームを活用し、インフラ管理だけに費やしていた人材や時間を、デジタル製品のバリューストリーム管理に投入することが重要です。
また、IT業界の大手企業が専門性の高いエンジニアの獲得競争を繰り広げる中、リソースに乏しい組織は、社内のチームで革新性と競争力を維持するために新しい手法を取り入れる必要があります。
つまり、新たなテクノロジーに目を向け、技術的な複雑さを抽象化または取り除き、開発チームがビジネス成果とイノベーションに集中できるようにすることが求められるのです。
5.DesignOps
DesignOpsとは、デザインチームとフロントエンド開発者間の緊密な連携(共有リポジトリ、ツール、アセットなど)を生みだすチームワークであり、組織内の異なる製品チーム間のコラボレーションを加速させ、初期のデリバリーから一貫した製品エクスペリエンスの提供を可能にするものです。
2022年は、ハイブリッドワークの実情がIT予算やアプリ開発予算に反映され始める年でもあります。従業員やパートナーのエクスペリエンスも、カスタマーエクスペリエンスと同じように求められるようになり、ビジネスの俊敏性を高めるために作成したアプリケーションを幅広くかつ頻繁に使ってもらうことが、ハイブリッドワークの実現においても重要になります。
組織はユーザーの導入率の目標を達成するとともに、より多くのデジタル製品を提供しなければならず、技術的負債とUX負債を最小限に抑えながらも、デザインを大規模に管理する必要に迫られています。そして、こうした課題に取り組むために、DesignOpsが注目されているのです。
6.オブザーバビリティ
開発チームのリーダーは、DesignOpsと並行して、アプリケーションの利用を促進するためにオブザーバビリティ(可観測性)にも投資する必要があります。
多くのデジタル製品チームは、観測可能なエンドユーザー行動と、ログ、メトリック、トレースなどのテレメトリデータを収集できるOpenTelemetryといったオープンソース標準のフレームワークを活用することで、これまで達成が難しかったユーザーの導入レベルを目指すことが可能になります。
7.PWAファースト
アプリストアを介さずにネイティブアプリの機能とWebサイトのアクセシビリティを両立するPWA(プログレッシブWebアプリ)は、オフラインでの動作、プッシュ通知の送信、カメラやGPSなどのデバイスハードウェアへのアクセスも可能です。
ダウンロードやアップデートに煩わされることなく、モバイル端末やデスクトップ端末でネイティブアプリと同様のユーザーエクスペリエンスが得られ、接続状況が良くなくても機能するというメリットがあります。
PWAは、その接続性に優れた設計と、ユーザーが抱くネイティブアプリの大量インストールに対する抵抗感から、2022年に勢いを取り戻すでしょう。
開発者やソフトウェアのリーダーが「PWAファースト」のマインドセットを志向する技術的な根拠は以前からありましたが、デジタルエクスペリエンスをめぐる大きな変革がこうした考え方の変化をさらに加速させています。PWAが支持されるのには、次のような理由があります。
エンドユーザーの観点では、PWAはモバイルデバイスから簡単にアクセスでき、アプリストアを介さないため、動作が軽く快適なエクスペリエンスとなります。
開発者の観点では、PWAはネイティブアプリよりはるかに速く修正でき、保守も簡単に行うことができます。
開発チームにとっては、PWAはネイティブアプリと異なり、あらゆるデバイスに対して単一のコードベースを使用する、検索エンジンで検索できる、動作が軽いといったメリットがあります。