アプリケーション開発で品質向上を図るには、より早い段階での「品質とセキュリティのテスト」が重要だ。開発の節目でソースコードレベルのチェックを行い、適切な修正を施すことで、手戻りをなくすことができる。
ビジネスや生活で身近になったインターネット、そして昨今のスマートフォンやタブレットの急速な普及により、個人レベルの“IT力”は格段に向上している。そうした中で、多くの企業システムは単に社内だけのものではなくなり、顧客チャネルとして広く公開されるようになり、その比重を高めている。Webサイトを通じたダイレクトな受発注、航空機の座席予約などはその最たる例だ。
これらに限らず、ビジネスの根幹を担う現在のアプリケーション開発には、今まで以上に高い「品質」が要求されている。また、自社の競争優位を確立していく上で、ユーザーのアクセス環境やニーズの変化に対応したアプリケーションを他社に先駆けて展開していく「スピード」を高めていかなければならない。
この課題解決において重要な鍵を握るのが、アプリケーション開発のより早い段階での「品質とセキュリティのテスト」の実施である。特に外部に開発を依頼している場合、完成したアプリケーションの受け入れ段階で不具合が発覚し、差し戻すというのではあまりにも時間的なロスが大きい。開発の主な節目でソースコードレベルでのチェックを実施し、適切な修正を施すことが手戻りをなくし、結果としてアプリケーション開発の品質とスピードを高めることにつながる。
そのようなニーズに応え、企業におけるソフトウェアのテストに掛かる負荷を軽減するのが、ソースコード解析ツールだ。本稿では、クラウドで利用できる無料のトライアル版とその大まかな手順を紹介する。
コベリティが提供する「Coverity Software Testing Platform」は、ソフトウェア開発ライフサイクル(SDLC)の早い段階で品質およびセキュリティ上の重大な問題を特定し、修正するための包括的なテストソリューションを提供するパッケージソフトだ。サーバ性能などの動作環境にもよるが、目安として「1400万行のソースコードを約2時間」で解析することができる。
今回は、Coverity Software Testing Platformをクラウドで利用できる無料トライアルを紹介する。登録方法から使い方まで、大まかな手順を追って見てみよう。
無料トライアルを利用するには、まずアカウントの登録が必要だ。
(1)コベリティジャパンのWebサイト(http://softwareintegrity.coverity.com/choose-your-path-jp.html)にアクセスする
(2)「Coverityをクラウドで試用」の「スタート」をクリック
(3)ポップアップ画面の「Coverityでコード解析、バグを検出」の「スタート」をクリック
(4)表示されたフォームに必要項目を入力し、「アカウント登録」をクリック
(5)登録したメールアドレスに、コベリティジャパンから確認メールが届く。「アカウントを確認」のリンクをクリックすると、無料トライアルのログイン画面が開く。
無料トライアル版を利用するための準備が整った。これで、実際にソースコードをクラウド上のCoverity Software Testing Platformにアップロードして解析することができる。
無料トライアルは15日間有効で、この期間内で複数のソースコードを解析、バグを確認することが可能だ。なお、プログラミング言語としては、Windows、Linux、またはOS XでビルドされたJava、C/C++およびC#をサポートしている。
(1)「トライアルプロジェクトを登録」をクリック
(2)実行するソースコード解析を見分けるための「プロジェクト名」を入力し、「言語」と「プロジェクトの種類」をリストから選択。「次へ」をクリック
解析対象のソースコードをアップロードするためには、そのビルドプロセス、「make」「MSBuild」といったビルドツール、ビルドスクリプトなどの依存関係をあらかじめ抽出し、ひと固まりにしておく必要がある。トライアルでは、この一連の作業を行う「Coverity ビルドユーティリティ」が提供されている。まずはこのユーティリティをダウンロードし、実行可能な状態にしておく。
(1)「ダウンロード」リンクをクリック
(2)自社の開発プラットフォームに適したOS環境をクリック
(3)「Windows x86 64-bit」を選択した場合、cov-analysis-win64.zipという圧縮ファイルがダウンロードされるので解凍する
Coverity ビルドユーティリティを実行すると、「cov-int」という名前のサブフォルダが作成され、解析に必要な全ての情報がこのサブフォルダ内に格納される。
(1)Webサイト内に記された手順に従って解析対象のソースコードをビルドする
(2)「cov-int」サブフォルダ全体を圧縮する。圧縮方式としては、Zip、Tar、Tar + GZ、Tar + BZ2に対応している。これでアップロードの準備が整った
(3)「次へ」をクリック
ステップ3の手順に沿って作成した圧縮ファイルをアップロードする。
(1)「ファイル」欄で目的の圧縮ファイルを参照して入力すると、自動的にアップロードが始まる
(2)アップロードが完了
ソースコードの解析が終了するとメールで通知される仕組みとなっている。このメールに記載されたリンクをクリックすれば、解析結果を閲覧できる。
トップ画面を見るだけで、解析を行ったソースコードの行数および検出された不具合の件数を定量的に把握することが可能だ。
「不具合の参照」をクリックすると、不具合の内容をより詳しく調べることができる。
ソースコードから検出された問題点を素早く参照することができる。製品版ではより多くの有用なビューが標準で用意されている。また、自由にフィルター設定を変更したり、新しいビューを作成したりすることが可能だ。
ソースコードに内在している問題の詳細内容や検出した制御パスを、赤と緑のメッセージから把握することができる。「詳細の表示」リンクがある場合は、呼出し先の関数内での振る舞いを確認することができる。さらに、変数や型などコード内のシンボルをクリックすれば、定義などへのナビゲートも可能だ。
「レポートをダウンロード」をクリックすると、解析結果が総合的にまとめられた「Software Integrity Report(ソフトウェア品質評価レポート)」を入手することができる。その中身では不具合によるリスクが重要度に応じて分類されており、ソフトウェアの品質を客観的かつ一貫した視点で評価可能だ。
コベリティジャパンのマーケティングシニアマネージャである安竹 由起夫氏は、このように語る。
「ソフトウェア品質評価レポートを利用することで、これまで困難だったソフトウェアサプライチェーン全体の客観的なソフトウェアの品質管理や開発の進捗管理が可能となります。また、精度の高いツールが検出した不具合は、開発チームに負荷をかけることなく、修正に必要な情報を含めフィードバックできるため、ありがちな議論の堂々巡りを避け、コミュニケーションを円滑にします」
なお、クラウドトライアル版を通じて実際のソースコードから重大な不具合が見つかった場合、コベリティジャパンに対してオンサイトでのより詳しい調査を依頼することもできる。
自社のアプリケーションは現状でどのような品質レベルにあるのか、重大なリスクを抱えていないのか、一度チェックしておく意義は大きいはずだ。
提供:コベリティジャパン株式会社
アイティメディア営業企画/制作:TechTargetジャパン編集部