ソフトウェア開発のスピードを向上–開発者の「フロー状態」を維持する3つのポイント(後編)

今回は「ソフトウェア開発のスピードを向上–開発者の「フロー状態」を維持する3つのポイント(後編)」についてご紹介します。

関連ワード (ソフトウェア等) についても参考にしながら、ぜひ本記事について議論していってくださいね。

本記事は、ZDNet Japan様で掲載されている内容を参考にしておりますので、より詳しく内容を知りたい方は、ページ下の元記事リンクより参照ください。


 先日公開された前編では、デジタルトランスフォーメーション(DX)の加速に伴って、さまざまな規模や業界の企業が、自社のソフトウェア開発の在り方を見直し始め、製品やサービスの競争力を高めようとしているトレンドの変化をお伝えしました。

 開発規模や体制によっては、日本ではいまだに主流となっているウォーターフォール開発は、いくつかの工程に区切って開発と検証を繰り返すため、急速に進化するテクノロジーのスピード感に十分に対応していないことも多々あります。そのため、市場が求めるサービスをより速く提供するためにも、より柔軟かつ迅速にソフトウェアの開発を推進することができるDevOpsの採用に取り組む企業も多くなってきています。また、効率性と品質担保の観点から、オープンソースを活用したソフトウェア開発は、変革やイノベーションを推進する企業にとって、主要なモデルとなっています。

 一方で、スピード感のあるイノベーションが優先される中、開発方法論だけでなく、それを実現させるために不可欠な開発者の働き方(=開発者体験)の改善にも焦点が当たるようになりました。開発者が能力を最大限に発揮できる最高の環境を提供し、開発作業の障壁を排除してプロセスを可能な限り円滑にすることによって彼らの能力を高めることが、イノベーション創出を加速させることにつながると、企業の経営陣は気付き始めています。

 今回は、前編でご説明した「開発フローと繰り返し作業の自動化、AIの活用」に加え、DevOpsを開発現場に定着させ、スピード感のあるイノベーションを進めるのに必要な開発者体験の向上に取り組む際に重要な3つのポイントのうち残りの2つをご説明します。

 前編を読んでない方は是非先にこちらをご確認ください。

 優れた開発者体験を実現するには、ワークフローを円滑に進めるための機能を導入するだけでは不十分です。開発プロセスの全ての段階にセキュリティ対応が施されているという安心感を開発者に対して提供する必要があります。

 自動テストツールを使うことによって、開発者はコードのマージやテストの実行など、ワークフローの一部を高速化できます。継続的インテグレーション/継続的デリバリー(CI/CD)プラットフォームを導入することで、チームはコードをデプロイする前に毎回テストできます。これにより、コードが正しくコンパイルされ、パフォーマンスの高い、すなわち許容できるコードのみが生成されることが保証され、生産性が向上します。

 膨大な量の既知のセキュリティ脆弱性を把握することや、新しいゼロデイ攻撃について常に対策することは、ほぼ不可能です。しかし、セマンティックコード解析エンジンは、開発ワークフロー全体にセキュリティを組み込むことができます。自動化されたコードの安全性や有効性をスキャンするツールは、リポジトリーのコードを定期的にチェックして、脆弱性を迅速かつ確実に特定します。また、さまざまなプログラミング言語やそのパッケージへのセキュリティ勧告を追跡できるため、あらゆる種類の開発プロジェクトが恩恵を受けることができます。

 これらのツールにより、GitHubでは2022年、脆弱性を抱えるパッケージが前年比で50%も多くアップデートされ、1800万プロジェクトの安全確保に貢献したことが分かりました。サプライチェーン全体がより安全になることで、開発者は夜も安心して過ごせるようになります。

 脆弱性を修正できるかどうかは、組織がセキュリティを「シフトレフト」し、組織全体の責任として脆弱性の対処に取り組めるかどうかにかかっています。本番直前で品質保証を全てテストするのではなく、開発プロセスの各段階にセキュリティ対応を組み込むことで、より安全なソフトウェアをより迅速に作成できます。開発者はセキュリティの専門家である必要はありません。だからこそ、開発者がより安全なコードを摩擦のない方法で簡単に開発できるようにすることが重要なのです。

 さまざまな企業で話を聞いていると、プロセスの自動化によってコードが見えにくくなり、その結果、レビューがしにくくなるのではないかという懸念が示される場合があります。しかし、そのような懸念は不要です。コードレビューは、オープンソースの重要な部分です。

 多様でグローバルなオープンソース開発者のコミュニティーを利用するメリットの1つは、有能で意欲的な開発者の集団にすぐにアクセスできることです。共通の価値観に基づくコミュニティー内で働くことで、開発者は専門知識の共有、コードの共有、ワークフローの再利用といった恩恵を受けることができ、コードを強化するモチベーションが働きます。

 企業は、インナーソース戦略を採用することで、組織内にオープンソースコミュニティーを効果的に構築できるようになり、オープンソースコミュニティーの繁栄に関するこれまでのノウハウから利益を得ることができます。透明性の高い開発者同士のコラボレーションを促進することで、より優れたソフトウェアをより迅速に作成できます。また、非公開のコードは環境内に安全に保持され、適切な権限を持つ開発者のみがコントリビュートできるため、企業の機密性は担保されます。

 コードレビューそのものを自動化できるということは、オープンソースコミュニティーの知識を全てのプロジェクトに自動的に反映することができるということであり、ソフトウェアサプライチェーン全体にとってもWin-Winとなるものです。

 自動化は、開発現場に革命をもたらす最新のトレンドに過ぎません。イノベーションを加速させ、開発者の生き方や働き方にポジティブな影響を与えることができるため、その影響力は無限大です。

 自動化は組織の適応能力に影響を与え、世界中のビジネスリーダーは自動化がもたらすメリットを認識し始めています。世界経済フォーラムは、80%以上のビジネスリーダーがワークプロセスの自動化を加速させようとしていると推定しています。さらに、Deloitteによると、3社に1社以上の企業がすでにビジネスプロセス管理ソフトウェアを導入し、ワークフローの自動化を進めているとのことです。

 企業は、開発者に対して最適な開発環境を提供することがビジネスを推進する為に必要不可欠であるという事実に気付くべきです。自動化の導入を阻む障壁を克服することで、企業は開発者に力を与え、イノベーションが成功するための最適な条件を作り出すことができるのです。

COMMENTS


Recommended

TITLE
CATEGORY
DATE
Visual Studio Codeが正式にRaspberry Piに対応。Notebook内のMarkdownレンダリングを強化し絵文字やKaTexによる複雑な数式など表記可能に
Microsoft
2021-04-02 23:30
AWS App RunnerがPHP/Go/.Net/Rubyのマネージドランタイムをサポート、コードを簡単にWebアプリ化してスケーラブルに実行可能
.NET
2022-10-31 08:53
Apple Musicのロスレスとハイレゾ、AirPodsでは再生できず AirPods ProもAirPods Maxも
イラスト・デザイン
2021-05-19 14:29
NTTデータグループ次期社長が語った「実現したい企業像」とは
IT関連
2024-05-18 22:40
オンキヨー、AV事業売却 音楽デジタル化に対応できず 
IT関連
2021-05-29 00:06
米下院司法委員会、GAFA規制の5法案を提出 企業分割や買収規制
企業・業界動向
2021-06-13 05:50
積水ハウス、SaaSのセキュリティ評価体制を構築–IT部門の生産性を向上
IT関連
2023-11-07 03:41
ヤマザワ、全70店舗にAI自動発注サービス導入–予測困難だった日配部門で活用
IT関連
2024-09-29 19:50
日本郵便、ドライバーの待機時間削減へ–クラウドカメラやAI使い実証実験
IT関連
2024-11-14 10:30
ミスドでネット注文可能に 4月1日から順次
くらテク
2021-03-25 16:48
イベントのデジタル化で潜在需要発掘 ライブ配信企業最高執行責任者に聞くアフターコロナ
IT関連
2021-03-24 22:01
「350円でプロ仕様」 学生が普段使いできる製図用シャープペン ぺんてるが発売
くらテク
2021-05-13 06:05
インテルとドコモ、LTE/5G対応PCの企業展開に向け協業
IT関連
2021-04-21 19:27
クラウドを脅威から守る「Microsoft Defender for Cloud」、AWSに続いてGoogle Cloudもサポート。マルチクラウド対応を強化
AWS
2022-02-25 23:42