|
アジャイル開発のプロジェクトで、品質を向上させるために、バグ、コードの重複、脆弱性につながるコードを自動で検出することができるOSSツールを導入したい。
導入するOSSとして、最も適切なものはどれか。
| ア |
Git |
|
イ |
Jenkins |
|
ウ |
Snort |
|
エ |
SonarQube |
答え エ
【解説】
| ア |
Gitは、プログラムのソースコードなどの変更履歴を記録・追跡するための分散型バージョン管理ツールで、各開発者のローカル環境に全履歴を含んだ中央リポジトリの完全な複製をもつことによって、中央リポジトリアクセスできないときでも履歴の調査や変更の記録が可能です。(×) |
| イ |
Jenkinsは、ビルド、テスト、リリース、またはデプロイ(配備、配置)に関連するあらゆる種類のタスクを自動化するサーバです。(×) |
| ウ |
Snortは、ネットワーク侵入検知システム(IDS)、侵入防止システム(IPS)で、リアルタイムでのトラフィック解析とパケットのロギングをすることができます。(×) |
| エ |
SonarQubeは、ソースコードの品質、セキュリティのチェックを実施する静的解析ツールです。(〇) |
【キーワード】
・OSS
【キーワードの解説】
- OSS(Open Source Software)
ソフトウェアの著作権を守りながら、ソースコードを無償で公開し、誰でもそのソフトウェアを使用・改良・再頒布を可能にするという考えである。
OSSの定義には、OSI(団体)がOSDという定義をしていて、その内容は
- 自由な再頒布ができること
- ソースコードを入手できること
- 派生物が存在でき、派生物に同じライセンスを適当できること
- 差分情報の頒布を認める場合には、同一性の保持を要求してもよいこと
- 個人や集団を差別しないこと
- 利用分野に対する制限を設けないこと
- 再頒布時に追加ライセンスを必要としないこと
- 特定の製品に依存しないこと
- 同じ媒体で頒布される他のソフトウェアを制限しないこと
- 技術的に中立であること
となっています。
もっと、「OSS」について調べてみよう。
戻る
一覧へ
次へ
|