ソフトウェア開発のスピードを向上–開発者の「フロー状態」を維持する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
グーグルが新たな資格認定職業訓練コースを開講–「Android」開発者向けコースも
IT関連
2021-03-15 05:03
三菱マテリアル、人事改革に向けクラウド型人事ソリューションを導入
IT関連
2022-09-08 11:26
企業の「DX with Cybersecurity」に向けた取り組みの加速化を支援–セキュアワークス・廣川社長
IT関連
2023-01-07 20:25
法務案件管理「GVA manage」、AIチャットボット機能で回答の再リクエストを可能に
IT関連
2024-02-15 03:47
dotData、特徴量自動設計と生成AIを融合した新たなデータ分析基盤「dotData Insight」を発表
IT関連
2023-12-08 16:10
値下げされ(相対的に)手を出しやすいサムスンの新フォルダブル「Galaxy Z Flip」は約11万円から
ハードウェア
2021-08-13 07:37
クラウドフレアで大規模障害、サービス配信などが一時停止
IT関連
2022-06-23 21:02
NTT Com、データセンター利用者向けにグリーン電力を選択可能に
IT関連
2022-03-31 18:29
北朝鮮がファイザーにサイバー攻撃、ワクチン技術を狙う–韓国当局
IT関連
2021-02-17 14:47
SAPジャパン、クラウドサクセスサービスの事業戦略を発表–旭化成が「S/4 HANA」で基幹システムを刷新
IT関連
2023-09-16 15:47
「Chromebook」で共有ネットワークフォルダーに接続するには
IT関連
2022-10-28 12:08
クラウドネイティブの注目動向、eBPFとWebAssemblyの利用が広がる、Appleが人材のブラックホールに。CNCFアンバサダー @_inductor_氏に聞いた
Cloud Native
2022-01-14 12:46
成果の最大化と社会的価値の追求には、支出の可視化・最適化が必要
IT関連
2023-07-06 01:31
トマトが熟れる際の遺伝子発現を深層学習で予測、遺伝子編集で果実のデザインも可能に
IT関連
2022-03-11 14:42