業界特化型 技術・製品情報サイト
  • MONOist
  • EE Times Japan
  • EDN Japan
  • スマートジャパン
  • BUILT

ベクター・ジャパン株式会社

技術文書

ベクター・ジャパン株式会社

CIをさらに進化させ、メインのコードベースへのバグ混入を完全に防ぐには

特に組み込みソフトウェアの開発において、継続的インテグレーション(CI)のフレームワークは浸透しつつある。一方でCIでは、要件を満たさないコードがビルドされてしまうケースもある。この問題の解消に向けた、新たな考え方を解説する。

コンテンツ情報
公開日 2021/07/28 フォーマット PDF 種類

技術文書

ページ数・視聴時間 4ページ ファイルサイズ 1.01MB
要約
 特に組み込みソフトウェアの開発からリリースに至る一連のライフサイクルにおいて、業界や顧客の要求に応えるため、製品に組み込むコード行数が右肩上がりに増加している。一方で、ソースコードの保守が困難になり、品質に悪影響が出る事態が生じている。このような問題に対処するためのフレームワークとして浸透しつつあるのが、継続的インテグレーション(CI)だ。

 CIは、新しいコードやリファクタリングしたコードをメインコードベースに高い頻度でマージして、更新分が故障の原因にならないよう、最小限でビルドするという手法だ。しかし、CIではコードに対する品質のメトリクスがしばしば度外視されるため、要件を満たしていないコードが、あたかも正常であるかのようにビルドされてしまうという問題が指摘されている。

 本資料では、コード品質についての基本的なメトリクスをCIの中核に据える、「クオリティーゲート」という考え方について、その概要と実装に向けたステップを解説している。開発の最終段階、あるいは最悪の場合、納品後にバグが判明する、という事態を避けるためにも、海外でも注目されるこの新たなアプローチについて理解しておきたい。