この記事は会員限定です。会員登録すると全てご覧いただけます。
ソフトウェアメトリクス(品質測定:メトリクス)とは、ソフトウェア開発をさまざまな視点から定量的に評価したものです。普段実際の開発現場では触れられることの少ないキーワードですが、本記事では「ソフトウェアの品質向上」という視点からソフトウェアメトリクスに焦点を当て、開発現場へのメトリクスの導入方法やその効果について解説していきます。
エンジニアなら誰もが、良いソフトウェアを作りたい、という思いを持っていると思います。ところが現実には、理想的なソフトウェアを作成するための十分な時間も潤沢な予算もなかなかないのが現状だと思います。それは、ソフトウェアの良しあし、すなわち品質ということについて、顧客と開発会社双方に十分な認識がないからです。このような“慣習”がソフトウェアの開発業界において「作りっ放しで終わり」という悲しい風潮をまかり通らせる背景となってきたわけです。
しかし、このようなことを改善していかないと、作る側には、モノ作りの喜びもなくなり、ただ、コードを作成して、動けばよいだけとなってしまいます。頼む側にとっては、やっつけで作ったコードは保守性が悪く、いつもバグを直す作業が発生してしまいます。双方ともに不幸です。
そもそも、ソフトウェアの品質を示す項目にはどのようなものがあるのでしょうか。
このように品質という言葉は多岐にわたっていますが、開発現場で主に取り上げられるのは、次のような点です。
開発工程の後半になってもバグが収束せず納期が遅延したり、要件変更に合わせて迅速に機能修正できずデグレードを引き起こしてしまった、という経験は多くの人が持っているのではないでしょうか。
バグは存在しないことに越したことはありませんが、機能追加は可能な限り安価かつ迅速に行うべきです。しかし、限られた予算と時間の中では、十分なテストによってバグが存在しないことを示すのは大変です。そして、要件変更に迅速に応えられるような柔軟な設計を十分に行うことも困難です。
それでは、一体どこまでテストを実施すれば良いのでしょうか。どこまで設計に時間をかければ良いのでしょうか。これらの問いに対して明確な線引きが存在しなければ、顧客や開発者は直感的に判断するしかありません。経験に基づいた直感はとても重要ですが、適切に判断を行えない場合には多くのトラブルを引き起こします。このような場合に定量的な方法を導入することができれば、たとえ完全ではないにせよ、直感だけに頼らない明確な線引きが可能になります。これが開発現場でソフトウェアメトリクスが必要とされる理由の1つなのです。
Copyright © ITmedia, Inc. All Rights Reserved.