調査

"ビッグコード"が開発チームに大きな問題をもたらしている--Sourcegraph調査

Joe McKendrick (Special to ZDNET.com) 翻訳校正: 村上雅章 野崎裕子 編集部

2020-10-29 08:30

 今やほとんどのアプリケーションやオンラインサービス、はては自動車の車載コンピューターに至るまでのさまざまな場所で、数十万行、あるいは数百万行ものコードが実行されるようになっている一方、今日のプラットフォームがもたらす抽象化機能のおかげでアプリケーションやサービスの記述は比較的少ない行数で済むようになっている。こうした状況はサーバーレス製品や、ローコード/ノーコードといったソリューションによってさらに推し進められている。ただ、このような敷居の低いインターフェースすべての裏側には依然として、今日の企業運営によって生み出される容量や依存性という問題が潜んでいる。


提供:Joe McKendrick

 「ビッグデータ」について、そしてそれを活用する上での苦労は誰もが知っているはずだ。さらに現在、一部の人々は「ビッグコード」にまつわる懸念を口にするようになっている。ビッグコードという言葉は、コードの容量や複雑さが劇的に増大する状況を示すものであり、Sourcegraphの依頼を受けてDimensional Researchが北米で500人以上の開発者を対象に最近実施した調査に基づいて生み出された。その背景には、開発環境やプラットフォーム、ツールの多様化や、デリバリースケジュールの短縮化、期待されるビジネス価値の増大という観点が含まれている。

 この調査では、ほとんどの開発チーム(96%)がコードのリリースは「感情の高まる」イベントだと述べている。コードをリリースする際や、レビューにかける際に、達成感といったポジティブな感情を抱く回答者が多くいる一方で、優に半数を超える回答者(58%)が恐れや不安などの否定的な感情を抱いている。そして依存性を破壊するという恐れからチームはコードのアップデートを避けるようになるという。

 今回の調査で明らかになった最もネガティブな問題の1つは、こうした恐れが開発の進捗に与える影響だ。ITマネージャーのおよそ4分の3(74%)は、依存性について確信を持てず、「何かを壊す」可能性を恐れるため、コードのアップデートを避けると回答している。

 ITマネージャーに対して、自社全体のコードベースの規模(メガバイト換算の容量やリポジトリー数)が過去10年でどれほど変化したのかという質問をした結果、半数以上(51%)が10年前と比べて容量が100倍以上に増えたと答えている。また、5分の1近く(18%)が500倍以上になったと回答している。

 調査レポートには「今日の大規模化したコードベースにより、その容量や複雑さが著しく増大したことで、開発者らはコードの特定や理解、修正が困難になっている」と記されている。また「ビッグデータがデータチームに混乱をもたらしているのと同様に、ビッグコードが開発チームに新たな難題を投げかけている」とも記されている。

 ビッグデータと同様、ビッグコードは4つの「V」で定義できるという。

  • Volume(容量):「生み出されるコードの量は指数関数的に増大してきている」
  • Variety(多様性):「ソフトウェアの調達に用いられる言語やツール、プロセスの複雑さが増大し続けている」
  • Velocity(速度):「調達サイクルの加速化により、コードはかつてないほど目まぐるしく修正され、実質的に毎日というペースで調達されている」
  • Value(価値):「高品質ソフトウェアによって業務遂行上のモデルやプラクティスが再定義されることで、企業内におけるコードの価値が著しく高まっている」

 ビッグコードが大きな問題を生み出しているということについて、回答者の認識はほぼ一致しているようだ。99%の回答者が、ソフトウェア開発の取り組みがもたらすビジネス上の成果にビッグコードが直接的な影響を与えているとしている。課題として、生産性を高めるための新規採用に費やす時間が少ない(62%)、依存性の理解が不足していることが原因でコードが壊れる(57%)、コードの変更を管理することが難しい(50%)といった内容が挙げられている。

この記事は海外CBS Interactive発の記事を朝日インタラクティブが日本向けに編集したものです。

ZDNET Japan 記事を毎朝メールでまとめ読み(登録無料)

ZDNET Japan クイックポール

マイナンバーカードの利用状況を教えてください

NEWSLETTERS

エンタープライズ・コンピューティングの最前線を配信

ZDNET Japanは、CIOとITマネージャーを対象に、ビジネス課題の解決とITを活用した新たな価値創造を支援します。
ITビジネス全般については、CNET Japanをご覧ください。

このサイトでは、利用状況の把握や広告配信などのために、Cookieなどを使用してアクセスデータを取得・利用しています。 これ以降ページを遷移した場合、Cookieなどの設定や使用に同意したことになります。
Cookieなどの設定や使用の詳細、オプトアウトについては詳細をご覧ください。
[ 閉じる ]