詳細を見る

ケーススタディ:Canfield Scientific
Visual Studio におけるオンザフライの静的解析により
生産性と品質の向上度が測定可能に
ウェブサイト: WWW.CANFIELDSCI.COM
業界:
医療機器
Canfield:静的解析により画像診断の画質を確保
医療・スキンケア業界向けの医用画像キャプチャ システムとソフトウェアの開発を手掛ける Canfield
Scientific では、ソフトウェアに対して静的解析を実行することにより、顧客に販売する前にソフトウェア
の潜在的な不具合を特定することに成功しています。
同社は、皮膚科や美容整形外科向けに、即時のアクセスが可能で使いやすい画像診断ツールを開
発しています。これらのツールはオンスクリーン評価で現在の肌状態を表示したり、肌の若返りや鼻
形成術などの美容治療や施術の効果をシミュレートするのに使われます。
Canfield のシニア ソフトウェア デベロッパーのアレックス・ボイス氏は次のように話します。「弊社
は常にソフトウェアの全体的な質の向上に努めており、最近になって自動ソースコード解析ソリュー
ションを探し始めました」
手動によるアプローチ
Klocwork のツールを使い始めるまで、Canfield では決められた設計レビュー時もしくは開発プロセ
スのあらゆる段階で継続的に、コードを手動でチェックしていました。ボイス氏はこう話します。「開
発者はコードをチェックし、正しく実行されているかどうかをテストしています。ですが、どうしても
予想外のコーディング エラーを見逃してしまうことがあります。チェック作業だけに数日や数週間と
いった長い時間をかけることなく、できるだけクリーンな状態でコードを R&D ラボの外に出したい、
それが私達の願いでした」
Canfield は開発時にコード評価を行うようにしていましたが、同社が買収した企業によって開発され
たサードパーティ コードを含む製品がしだいに増えていきました。「レガシー コードを扱うことが多
いのですが、将来問題を引き起こす可能性のある潜在的な課題を全て取り除いておく必要がありま
す」とボイス氏は説明します。
「開発者の多くが VISUAL STUDIO を利用しており、潜在
的な問題をデスクトップからオンザフライで確認し、解決で
きることに満足しています。開発作業の邪魔にならず、時間
を節約できると感じているようです」
Canfield シニア ソフトウェア デベロッパー、アレックス・ボイス氏
Canfield はいくつもの選択肢を検討した上で、最終的に Klocwork Insight ™ の導入を決めました
Klocwork を採用する決め手となったのは、オンザフライの解析、シンプルなライセンシング モデル、
導入のしやすさという 3 点でした。
オンザフライのデスクトップ解析
開発者のデスクトップ上で Visual Studio と直接統合できるという Klocwork Insight の特性は、
Canfield に向けた重要なセールスポイントでした。この統合により、コードの記述と同時に、品質
に関するフィードバックを開発者が継続的に受け取ることができるスペルチェック ユーザビリティ モ
デルを利用した、高度なソースコード解析が実現します。
ボイス氏は次のように説明します。「プロジェクトの最後に時間をかけてコード チェックを行うのでは
なく、課題が発生した時点でそれらを解消することが可能です。Klocwork Insight と Visual Studio
を統合することで、開発者は Klocwork のバグ マーカーをチェックして、コードにバグがないことを
簡単に確認することができます。マーカーを見ればそのファイルに問題があるかどうかが分かり、修
正が必要な場合には、ただちに取り掛かることができます」
シンプルなライセンシング モデル
販売とプライシングに関するシンプルなモデルもまた、Canfield にとって重要な要素でした。「競合ツー
ルの購入を検討していましたが、LOC(コード行数)によるプライシング モデルは弊社のコードベー
スには適していませんでした」とボイス氏は話します。
「初めて KLOCWORK INSIGHT
をインストールしたとき、誤検出の
数を調べるために結果を全て見直し
ました。検出されたものに間違いは
いっさいありませんでした。既知の
問題もありましたが、さらなる調査
が必要な事柄も見つかりました」
その理由は、Canfield の製品の多
くがコードを共有していることにあ
ります。同社の主要なソフトウェア
製品の 1 つである Mirror® Medical
Imaging Software は、整形外科や
皮膚科で使用される画像管理・処
理用のソフトウェア ツールです。ま
た VISIA® Complexion Analysis は、
スキンケアの専門家が裸眼では見
えない皮膚表面下の組織を画像化
することを可能にします。
Canfield シニア ソフトウェア デベロッパー、アレックス・ボイス氏
「Mirror だけでもテキスト ファイル
の数は数千におよび、100 万行近
いコードが使われています。それに加えて、共通コードベースを VISIA と共有しています。そのため、
2 つの製品をコード レベルではっきりと区別するのは困難です。この共有コードの金額がいくらになる
のか分からず、そのため契約条件提案書全体が非常に高額でリスクの大きいものになってしまいまし
た」。
これに対して Klocwork のライセンシング モデルはコード行数の制限もプロジェクトの制約もなく、将
来の更新にかかる正確な費用が分かることから、Canfield にとってはまさに理想的でした。
Canfield Scientific | Klocwork Case Study | 2
導入のしやすさ
ボイス氏は Klocwork Insight の導入は非常にスムースに進んだと絶賛しています。「開発者の多く
が Visual Studio を利用しており、潜在的な問題をデスクトップからオンザフライで確認し、解決で
きることに満足しています。開発作業の邪魔にならず、時間を節約できると感じているようです」
Canfield はまた、同ソリューションの比類のない正確さを実感しています。ボイス氏はこう話します。
「初めて Klocwork Insight をインストールしたとき、誤検出の数を調べるために結果を全て見直し
ました。検出されたものに間違いはいっさいありませんでした。既知の問題もありましたが、さらな
る調査が必要な事柄も見つかりました」
継続的な改善
静的解析エンジンの使用は、Canfield でのコーディング作業のさらなる改善にも貢献しています。
ボイス氏はこうも話しています。「Klocwork Insight では、重大な問題だけでなく、ちょっとした瑕疵
も検出できるので助かります。想定外のシナリオにもとづき、問題を引き起こす可能性のあるコード
にフラグが付くようになっています」
目立たない不具合を特定することで、Canfield ではコーディング プロセスの改善と開発コストの削
減の両方が可能になりました。ボイス氏は次のように言います。「Klocwork のテクノロジーを使うこ
とで、商用展開の前に不具合を的確に診断でき、技術サポートの手間と開発にかかる時間が軽減さ
れることになります。さらには、それらの状況から学習し、将来同様の事態が生じることを避けるた
めに、より良いコードを記述することが可能です。結果、開発プロセスと製品の改善につながります」
Klocwork について
Klocwork® はデベロッパーがより安全で信頼性の高いソフトウェアを作成するのに役立ちます。弊社
のツールはソースコードを オンザフライで解析し、ピアコードレビューを簡素化し、複雑なソフトウェ
アの寿命を延ばします。モバイル機器、家庭用電化製品、医療技術、通信、自動車、軍事、航空
宇宙部門の最大ブランドを含む 1100 社を超えるカスタマーが、既に Klocwork を自社のソフトウェ
ア開発プロセスの一部に組み込んでいます。数多くのソフトウェア開発者、設計者、そして開発マネー
ジャーが弊社ツールを日々活用して、生産性を高めると同時によりよいソフトウェアの開発を行って
います。詳細に関しては、www.klocwork.com または info@klocwork.com にて Klocwork までお
問い合わせください。
米国:
15 New England Executive Park
Burlington, MA 01803
© Klocwork Inc. All rights reserved.
カナダ:
30 Edgewater Street, Suite 114
Ottawa, ON K2L 1V8
t: 1.866.556.2967
f: 613.836.9088
WWW.KLOCWORK.COM