Computer Weekly製品ガイド
「モダンなソフトウェア」とその「開発チーム」の条件
モダンなソフトウェアとは何か。それを開発するチームには何が必要なのか。今そして今後のソフトウェア開発に求められる条件を紹介する。
モダンなソフトウェア開発は、データ駆動型のビッグデータ分析を取り入れ、AI(人工知能)を内蔵すると論じることもできる。主にサービス中心でWeb拡張可能なものと分類する考え方もある。そうした開発者は、サービスバックボーンを横断して導入できるコードを開発する。再利用可能なコンポーネントやフレームワークの構築に力を入れるソフトウェア開発者もいる。
企業向けソフトウェア市場には自らをアプリケーションモダナイズのスペシャリストと定義する専門分野がある。多くの場合、この分野のツールプロバイダーはレガシーアプリケーションやメインフレーム、クラウド以前のアプリケーションからの移行に重点を置き、マイクロサービスや仮想マシン、コンテナ、「Kubernetes」を推進している。
モダンなソフトウェアアーキテクチャ
Volterraはマルチクラウドやエッジを横断してアプリケーションとデータの導入、接続、セキュリティ対策、運用を行う分散型クラウドプラットフォームを提供する。同社CEOで創業者のアンクール・シングラ氏は、マイクロサービスがアプリケーション開発の直近の未来に果たす役割はますます増大するだろうと話す。同氏はKubernetesの急激な普及を理由として、マイクロサービスは2020年以降、一層主流化すると予測した。
「マイクロサービスはKubernetesのDNAの一部であり、Kubernetesを使ってアプリケーションを開発・導入するための主な方法だ。Kubernetesの台頭に伴い、IT企業はそれを導入できるようにするためのオープンソースツールキットやフレームワークを公開している」
シングラ氏は、例としてMicrosoftが最近立ち上げたオープンソースプロジェクト「Dapr」を挙げた。MicrosoftはDaprを移植可能なイベント駆動型ランタイムと形容する。Daprはクラウドとエッジで運用可能で、多様な言語と開発フレームワークに対応する耐久性の高いマイクロサービスアプリケーションを簡単に構築できる。
クライアントを選ばないこと
オープンソースWebサーバ企業のNginxによると、モダンなアプリケーションは「React」(JavaScriptライブラリ)をベースとするユーザーインタフェースであろうと「Android」や「iOS」で実行されるモバイルアプリであろうと、APIを介してバックエンドアプリケーションに接続するアプリケーションであろうと、マルチクライアントに対応する。
「モダンなアプリケーションは、任意のクライアントでデータやサービスを利用できることが前提とされる」。Nginxの最高アーキテクト兼マイクロサービスエンジニアリング担当上級ディレクターのクリス・ステットソン氏はそう語る。「モダンなアプリケーションは、データとサービスにアクセスするためのAPIを提供する。このAPIは一貫性があり、そのアプリケーションにアクセスするクライアント専用ではない。GUIやCLI経由で利用可能な全機能へのアクセスを提供する」
Webスケールビジネスが新しいソフトウェアを原動力とする製品やサービスを開発できる能力に目を向けると、モダンなソフトウェア開発が高度な実験や反復によって特徴付けられることが分かる。これはソフトウェア開発の過程で顧客やユーザーのフィードバックを増やす必要があることを意味し、UX(ユーザーエクスペリエンス)に対する感度をDNAに組み込んでアプリケーションを開発していることを示唆する。
モダンなソフトウェア開発の目標は、価値を実現するまでの時間にますますフォーカスが絞られつつある。IBM Cloud Pak for Applicationsのクラウドネイティブソリューション担当主席アーキテクトを務めるクリス・ベイリー氏によると、ソフトウェアを迅速に開発できる能力だけでなく、ソフトウェアが確実にユーザーや企業に真の価値をもたらすことが重視される。
開発チーム
ベイリー氏の考えでは、ソフトウェア開発チームは自己完結性を強め、他チームへの引き継ぎやスケジュール調整を減らす必要がある。ユーザーのニーズや品質条件を満たすソフトウェアを基本とするために、行動駆動型開発やテスト駆動型開発を採用しなければならない。
ベイリー氏によると、ソフトウェア開発チームは継続的インテグレーションを活用して速度を速め、開発プロセスの一貫として品質チェックを徹底させている。リスクを制限し、耐久性を継続的に検証して徹底させるため、カナリアリリース(訳注)のような継続的デリバリーを利用する傾向もある。
訳注:一部のユーザー向けにリリースして問題がないかどうか確認してから全体に展開すること。
ソフトウェア開発は、変更管理や幅広い人材の多様な考え方を取り入れることと関係する。ソフトウェアが汎用(はんよう)的なビジネス機能を果たすために開発されていた時代は、全てが単一のモノリシックアプリケーションの中にあって、中央のシステムで動作し、ダム端末経由でしかアクセスできなかった。現在では高度にコンポーネント化され、個々の部品が別々のサーバやコンテナで実行されたり、複数のクラウドをまたいで分割されたりすることさえある。
フロントエンドアプリケーションはどんな端末でも動作する必要があるだけでなく、エンドユーザーを引き付けるユーザーインタフェースの創出が奨励されている。ユーザーから見ると、フロントエンドアプリケーションもバックエンドアプリケーションも優れたユーザーエクスペリエンスを実現する必要がある。
どんな企業でも最高の開発ツールやサービスを組み立てることは可能だが、それが必ずしも成功を保証するとは限らない。そう語るのはDomoの最高製品責任者兼エンジニアリング担当執行バイスプレジデントのキャサリン・ウォン氏。Domoはクラウドベースのビジネスインテリジェンスツールやデータ仮想化、データインテグレーションを専門とする。
「事がそれほど単純ならば、成功する新興企業はもっとずっと多いはずだ」とウォン氏は言う。当然ながら、ソフトウェアの構築と拡張が困難な理由はいくらでもある。
「ソフトウェア開発はチームスポーツだ。われわれのチームには長い間、エンジニアや専門分野のアーキテクト、プロダクトマネジャー、品質保証担当、デザイナー、プロジェクトマネジャー、技術ライターなど、はっきりと定義された役割があった。それらは今も有効だが、思考と経験の多様性をどう実現するか、さらには共感を高めてチーム内のコミュニケーションを向上させるための横断的トレーニングをどう行うかが、他のどんな職種よりも重要性を増している」(ウォン氏)
Copyright © ITmedia, Inc. All Rights Reserved.
Computer Weekly日本語版
この記事の著者
関連記事
新着ホワイトペーパー PR
-
製品資料
[株式会社MatrixFlow] 「物流リソース最適化」ガイド:人員・配車・傭車を出庫依頼の確定前に決めきる -
製品資料
[株式会社キーエンス] なぜRPA導入は頓挫する? シナリオ作成の壁を乗り越える解決策とは -
製品資料
[株式会社セールスフォース・ジャパン] 「CRMは設計と無関係」は本当か? PLMとの融合で実現する高速開発 -
事例
[日本ヒューレット・パッカード合同会社] AIエージェントの時代にどう備える? 「新たな働き手」を支える3要素とは -
製品資料
[日本ヒューレット・パッカード合同会社] “横並びの自動化”から脱却、AI活用で生産性と競争力を高める秘訣
こんなメディアも見られています
TechTargetジャパンに関連する情報をお探しであれば、こちらのメディアもお役に立てるかもしれません。
ベンダーコンテンツ PR
From Informa TechTarget
SpecialPR
アクセスランキング
-
1
なぜ「全社配布Copilot」は使われないのか? 失敗に学ぶAI定着
-
2
法務と開発者で「言葉が通じない」問題 トヨタやソニーが語るOSS管理の真実
-
3
なぜ「Gemini 4 Argon」は出遅れたのか? Googleが狙う“逆転のシナリオ”
-
4
損保ジャパンはなぜ「COBOL」を捨てなかったのか? 脱メインフレームの真相
-
5
情シスの約8割が転職や退職を意識 調査で分かった“辞めたくなる最大の理由”
-
6
ChatGPTは“検索しまくり”でGeminiは“淡泊”? データが明かすAIの裏側
-
7
情報漏えいはなぜ繰り返されるのか 今すぐ見直すべき「境界」
-
8
「Wi-Fi 7」経由でWindowsが乗っ取られる? 最高権限奪取の恐怖
-
9
「結局使わなくなる」Microsoft 365 Copilotを半年で定着 キリンの3施策
-
10
「中堅・中小企業のネットワーク・セキュリティ運用実態」に関するアンケート
ホワイトペーパーランキング PR
-
1
不審メールの経路や見せ方に変化? 2026年夏の3事例から見えた動向と対処方法
-
2
家庭用Wi-Fiルーターの業務利用は危険? 避けるべき理由と具体的な対策
-
3
Microsoft 365を安全に運用 うっかりミスやサイバー攻撃に備えるデータ保護術
-
4
財務部門がAIを最大限に活用する方法 無駄のない戦略的リーダーシップへの道
-
5
LLMが兵器化? 元FBI高官が鳴らす警鐘とセキュリティツール統合のポイント
-
6
「オンプレミス回帰」せざるを得ない“合理的な理由”
-
7
なぜRPA導入は頓挫する? シナリオ作成の壁を乗り越える解決策とは
-
8
生成AIを開発に導入しても効果が見えない? 実証実験で分かった成果と課題
-
9
経産省DX指針から読み解く、受発注業務デジタル化ロードマップ
-
10
HDDを使わない「SSDオンリー」が無謀なのはなぜ?
TechTargetジャパン SNS
インフォメーション
注目情報をチェック
TechTargetジャパンをフォロー