〜CIの導入から始める自動化のススメ〜
CIとは、Continuous Integrationの略で、継続的インテグレーションと呼ばれています。開発者がバージョン管理システムのセントラルリポジトリにマージし、その度に自動化されたビルドとテストを実行することをいいます。
弊社のソフトウェア開発案件において、オープンソースソフトウェア(OSS)を活用し、CI(継続的インテグレーション)の自動化を実現しました。
ソースコードのバージョン管理にgitgitとはプログラムのソースコードなどの変更履歴を記録・追跡するための分散型バージョン管理システム。、テストログの可視化にkibanakibanaとは全文検索エンジン「Elasticsearch」と連携して使用するデータ解析/可視化ツール。を使用しています。また、これらのソース取得、ビルド、デプロイ、テスト実行などの処理をCIツールであるJenkinsJenkins (ジェンキンス) とはJavaで書かれたCIツール。ソフトウェアのビルド、検証、サーバへのインストール等の一連作業の自動化が可能
でコントロールしています。
本システム開発は、短いスパンでの定期的なリリースが要求されており、限られた時間・人材の中で品質を確保することが課題でした。
そこで、人手が必要なソースコードの改修やビルドエラーの潰しこみを日中に行い、マシンに任せられるテストを夜間に自動実行して翌朝結果を確認するようにしました。
自動化するための処理は全てスクリプトで作りこまなければならず、時間と初期投資が必要となります。しかし、一度構築すれば、ソースコードの改修に伴うスクリプトの追加/編集で対応できるため、運用コストを抑えることができます。
本CIは、改修が発生するたびに全パターンテストを実行して評価しており、変更に対するフィードバックがすばやく得られます。そのため、テスト期間の短縮や早期の品質確保につながり、継続的かつ高品質な製品リリースが実現できています。
同じ内容のテストを反復して行ったり、デグレード確認を行うシステムに効果があります。
弊社では本CIを構築したノウハウを活かし、お客様の運用をヒアリングして、使用するOSSや自動化構成などの提案が可能です。
営業本部 営業部
045-650-2655
045-650-2660
お問い合わせの前に「個人情報の取り扱い」にご同意頂いた上でご連絡をお願いします。
oss-case@ml.hs21.co.jp までお問い合わせください。