ページの本文へ

Hitachi

株式会社日立ハイシステム21

株式会社日立ハイシステム21

OSSを利用したCI構築

〜CIの導入から始める自動化のススメ〜

CIとは

CIとは、Continuous Integrationの略で、継続的インテグレーションと呼ばれています。開発者がバージョン管理システムのセントラルリポジトリにマージし、その度に自動化されたビルドとテストを実行することをいいます。

もたらす効果

  • 短いスパンでビルドとテストを行うことで、早期にバグを摘出できる
  • バグを摘出した際、前回のテスト以降にコミットしたソースコード及び、影響する箇所を局所的に調査すればよいため、原因究明の時間短縮につなげられる
  • マシンの空き時間を有効活用してテスト実行することで、ターンアラウンドタイムを減らせる
  • 一度構築すれば、改修に応じたテストコードの追加/編集で対応が可能であり、運用コストは抑えられる

OSSを活用したCI自動化事例

弊社のソフトウェア開発案件において、オープンソースソフトウェア(OSS)を活用し、CI(継続的インテグレーション)の自動化を実現しました。

ソースコードのバージョン管理にgitgitとはプログラムのソースコードなどの変更履歴を記録・追跡するための分散型バージョン管理システム。、テストログの可視化にkibanakibanaとは全文検索エンジン「Elasticsearch」と連携して使用するデータ解析/可視化ツール。を使用しています。また、これらのソース取得、ビルド、デプロイ、テスト実行などの処理をCIツールであるJenkinsJenkins (ジェンキンス) とはJavaで書かれたCIツール。ソフトウェアのビルド、検証、サーバへのインストール等の一連作業の自動化が可能 でコントロールしています。
本システム開発は、短いスパンでの定期的なリリースが要求されており、限られた時間・人材の中で品質を確保することが課題でした。
そこで、人手が必要なソースコードの改修やビルドエラーの潰しこみを日中に行い、マシンに任せられるテストを夜間に自動実行して翌朝結果を確認するようにしました。
自動化するための処理は全てスクリプトで作りこまなければならず、時間と初期投資が必要となります。しかし、一度構築すれば、ソースコードの改修に伴うスクリプトの追加/編集で対応できるため、運用コストを抑えることができます。
本CIは、改修が発生するたびに全パターンテストを実行して評価しており、変更に対するフィードバックがすばやく得られます。そのため、テスト期間の短縮や早期の品質確保につながり、継続的かつ高品質な製品リリースが実現できています。

OSSを活用した自動化 イメージ図

同じ内容のテストを反復して行ったり、デグレード確認を行うシステムに効果があります。
弊社では本CIを構築したノウハウを活かし、お客様の運用をヒアリングして、使用するOSSや自動化構成などの提案が可能です。

*
本ウエブサイト中の会社名、商品名は各社の商標、または登録商標です。
*
本文中および図中では、TMマーク、®マークは表記しておりません。
*
本ソリューションの仕様は、改良の為、予告なく変更する場合があります。
*
本ソリューションを輸出される場合、外国為替および外国貿易法並びに米国の輸出管理関連規則などの規制をご確認の上、必要な手続きをお取りください。
なお、ご不明な場合は、弊社担当営業にお問合せください。
*
弊社へのお問合せ宛先に送られる個人情報は、本ソリューションサービスについてのみ使用します。