7
4

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

Salesforce App CloudAdvent Calendar 2016

Day 15

Next Force.com Security Source Code Scanner

Last updated at Posted at 2016-12-25

はじめに

2016年10月より、Force.com Security Source Code Scannerが一部を除き、有償化されてしまいました。セキュリティレビューのために必要なチェックを実施できるツールですが、コード品質を向上させるためにも利用できていました。

今回の有償化処置により、Lintのように定期的に実施してコード品質の維持・向上に役立てる使い方ができなくなってしまいました。ということで、今回は代わりとなるツールがないか調査した結果をまとめてました。

調査結果(2016年12月25日時点)

今回調査した範囲で見つかったはツール・サービスは以下のとおりです。

CxSAST Salesforce Plugin

CheckMarxが提供するツールです。Salesforce組織にアプリケーションをインストールして利用します。静的コード解析の対象としては、Apex Classes (Test Classes included)、Apex Triggers、VisualForce Pagesになります。結果をPDF、XMLで受け取ることができます。
提供元のCheckMarxはForce.com Security Source Code Scannerも作成している会社なので、同等製品の有償版と思われます。
価格については記載が見つけられませんでした。

{/code.scan} :: Code Analysis for Salesforce

SonarQubeのプラグインとして利用できるサービスです。160以上のチェックルールが用意されており、各種メトリクスも収集できます。

価格は下記のように記載されていました。

Menu Description Pricing
On-Premise Standard Annual Commitment
Ideal for smaller or multiple Orgs
$1,400 / year / 'code block'
$140 / month / 'code block'
On-Premise Multi-Sandbox Annual Commitment
Ideal for multi-sandbox environments
$2,800 / year / 'code block'
$280 / month / 'code block'
Eclipse Requires an On-Premise License $50/month/user

Clayton

Space Heroes Ltdが提供するコードレビューサービスです。リポジトリを登録すると、自動的に静的コード解析を実行し、結果をプルリクエストとして返してくれます。静的コード解析の範囲としては、performance, security, complexity, styleになります。

価格は下記のように記載されていました。Professionalはユーザー数に応じ価格が変わるようになっていました。

Menu Description Pricing
Personal Public repositories only. FREE
UP TO 5 REPOSITORIES
Professional Unlimited public and private repositories,pay based on the size your team. $75 PER MONTH
Billed annually.
$90 if billed monthly.

Up to 5 users

Code Climate

PMDをエンジンとして利用したコードレビューサービスです。リポジトリを登録すると、自動的にコードレビューを実行してくれます。静的コード解析の範囲としては、test coveragemcomplexity、duplication、security、styleなどになります。

価格は下記のように記載されていました。

Menu Description Pricing
Standard Ideal for smaller teamsand individuals $1667per seat / month
billed annually
Enterprise Ideal for larger organizations 要問合せ

オープンソースとして公開されているので、自分でホスティングする場合は無料で利用できるようです。
ApexMetrics - Code Climate engine for Salesforce.com Apex

PMD Apex

オープンソースの静的コード解析ツールです。広く使われているツールで、様々な言語の静的コード解析が提供されており、EclipseやIntelliJ IDEAなどのIDEのプラグインも提供されています。また、Maven/Antからも実行し、Jenkinsと連携することもできます。
静的コード解析の範囲としては、ApexUnit、Complexity、Performance、Security、Styleになります。ルールセットの説明はこちらにあります。

おわりに

コードレビューは、不具合を効率的に除去でき、チームによるコード所有を推進します。
コードレビューの問題点として、機械的にチェックできるような問題のためにコードレビューの時間を無駄にしてしまう、軽微な問題がノイズとなりコードレビューに集中することができない、といった点があります。
昨今の開発では、このような問題に対処するためにLintやコードレビューサービスを利用してコーディングした開発者自身が軽微な問題をチェック・修正できるようにする流れがあります。

今回調査してみて、個人的に想定よりも多くのツールやサービスが提供されているように感じました。調べきれなかったサービスや新サービスなどありましたら、お知らせいただければ幸いです。

まずは、無料で利用できるPMD Apexあたりを試してみようかと考えています。

Merry Christmas!

※ この投稿はSalesforce App Cloud Advent Calendar 2016 の15日目の代打記事です。

7
4
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
7
4

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?