(2/3(日)) コミティア103に参加します。

2/3(日) に東京ビックサイトで開催されるコミティア103に参加します。(ただし、知り合いのサークルのお手伝い・・・)
このイベントでは、今までの活動内容のまとめ、森さまより寄稿頂きました「ODC分析(直交欠陥分類法)」についてまとめた冊子(「バグ票について考えよう!」)を頒布いたします。

バグ票本表紙表紙です^^;

※今回は印刷所に依頼しました。以前頒布しました内容とほぼ同様の内容となっております。ご注意ください。冊子の概要についてはこちらの 2012年8月の活動の辺りをご覧ください。

もしかしたら、先着20名分くらい特典グッズを付けられるかも・・・しれません。

イベント当日は、以下のスペースでご来場をお待ちしておりますm(__)m

2/3(日) 東京ビックサイト 11:00~16:00
東5ホール な21b サークル:品質公団

品質公団では、既刊の本を頒布するようです。内容詳細については品質公団公式ページをご参照ください。よろしくお願いいたします。

 

(1/30~31)JaSST’13 Tokyoに参加します。

1/30(水)~31(木)に目黒雅叙園にてJaSST’13 Tokyo が開催されます。 詳細は以下のサイトを参照してください。

開催概要 http://jasst.jp/symposium/jasst13tokyo.html

セッション概要 http://jasst.jp/symposium/jasst13tokyo/details.html

個人としては聴講だけですが、私が関わっているバグ票コミュニティ(バグ票ワーストプラクティス検討プロジェクト)がLT(Lightning Talks)で発表します。今までの活動内容や今後の方針などについて発表いたします。 LTの概要等はこちらを御覧ください。

興味ある方その他の多くの方々のご来場をお待ちしております。

※来年は発表者側で参加したいなぁ・・・(ボソッ

 

2013/1/29 08:30追記

1/31(2日め)は、当日券の発売があるようです。急に予定が変わり時間があいた方などは是非♪
http://jasst.jp/symposium/jasst13tokyo/query.html#charge

「(ソフトウェア品質技術者のための)データ分析勉強会第7回目」に参加してきました。

【2013/1/31 13:30 小池さまより内容についてのご指摘があり、一部の内容を修正いたしました。】

1/18に東洋大学で行われた「(ソフトウェア品質技術者のための)データ分析勉強会第7回目」に参加しました。

今回のテーマは「プロダクトメトリクス」でした。プロダクトメトリクスとは、勉強会概要のページにも書かれていますが、「レビューやテストといったプロセスではなく、製品の特性を測定するメトリクス」です。この「プロダクトメトリクス」をRなど統計解析ツールを利用して分析することを行なうのが今回の勉強会でした。( すずき註:Rについては以下を参照するとよいかもしれません→ 「実践!Rで学ぶ統計解析の基礎」)

この勉強会では「データ指向のソフトウェア品質マネジメント」(通称:「デート本」 以下「デート本」と表記)をベースにして行われました。

測定する対象

まずは講義パートです。

デート本「6.3 規模の測定」を参照しながら、「何を測るべきか?」についてお話しました。LOCの場合、コメント文は対象に入れるのか外すのか?C言語の場合、includeファイルのカウントはどこでカウントするのか?などといったお話がありました。

プロダクトメトリクス

デート本「4.3 欠陥修正が生じやすいモジュールの予測」を参照しながら、以下のようなメトリクスの意味などを確認していきました。

  • TMLOC(Total Method Libe of Code:総メソッド行数)
  • WMC(Weight Methods per Class:重み付きメソッド数)
  • CBO(Coupling Between Object Classes:結合度)
  • LCOM(Lack of Cohesion in Methods:凝集度の欠如)
  • RFC(Response For a Class:応答処理の多さ)
  • Modify(修正の有無)

また以下のサイトを参考にして、凝集度や結合度について確認しました。

凝集度と結合度
http://homepage3.nifty.com/koha_hp/KeyWords/KW.Coupling.html

複雑さのメトリクスという意味では、以下のサイトも参考になります。
http://se.naist.jp/lecture/se3/2006/handouts/productmetrics2.pdf

ツール

さて、実際にプロダクトメトリクスを視るときに、ソースコードを逐一手で計算することはありえなません。というわけで、測定ツールをつかうことになります。ここでいくつかのツールの説明をしました。

  • QAC
    ソースコードの静的解析ツールです。ライセンス料金が少し高いです。
  • Adqua
    ツールの出力結果のメトリクスだけ見せられても、良いかどうか判断出来ません。Adquaの場合、出力結果を送ると、無駄なコードの有無や警告数などから、コードの品質を、信頼性・効率性・保守性・移植性・再利用性 という観点で100点満点で評価をしてもらえます。メトリクスの範囲も、システム/モジュール/ファイル といろいろな範囲で取得可能なようです。無料で使用出来ますが、最低年1回のデータ提出することや、組込みプログラム限定といったいくつかの条件があります。

ちなみに、私は、以下の様なツールを使ったことがあります。

Sourceonitorは扱いやすいのでよいかもしれません。 CCFinderXは、コードクローンを調べるためのツールですが、メトリクスも出力してくれます。ただ、Phythonの設定とかに手間取り苦労したような気がします^^;

データ分析時の留意点

午後になり、演習パートになりました。

データを受け取った時どのようにアプローチするかを決めなかればなりません。

たとえば、特定のメトリクスに着目し、1つまたは2つ以上の変数に着目して、あるいはある値を基準にグループ分けを行なうようなアプローチや、このようなサイト( http://aoki2.si.gunma-u.ac.jp/FlowChart/Tutorial.html ) に従いアプローチを決める方法などがあります。

とりあえず、以下の様なことをするとよさそうです。

  1. 散布図行列を出力する。
  2. 外れ値やおかしなデータがないか確認する。
    工数やバグ件数など、手で入力するようなデータはおかしなデータがはいりやすい
  3. 各変数自体の分布を調べる
    偏ったりする場合には、対数変換などのデータ処理を必要があるかどうかを考え
  4. 相関があるかどうかを視る
    目的変数と相関が強いものが説明変数の候補となる説明変数候補同士で相関があるかどうかを確認する。
    相関がある場合は、両方は不要なのでどちらかに絞るかを考える。

他にも以下の様なお話がありました。

  • レンジの幅が大きくしまうようなソフトウェアメトリクス時に、等分散性を確保するための補正手段として対数変換を行なうことがある。そのとき、値が0だと定義できないので、インパクトの与えない程度の補正(下駄をはかせる)は手段としてはあり。
  • 寄与率(重相関係数)、自由度調整寄与率(重回帰分析)をみて50%程度では一般的にあまり良いとはいえない。
  • 一般的にデータが多ければ、検定結果のp値は小さくなる。従って検定結果だけでは、モデルの精度を判断することが出来ないので、寄与率などの指標も見る必要がある。
  • 検定はデータが少ない時につかう。データが多い時にはあまり使わない。

外れ値の精査を行なうことは、データ解析結果をきれいにするためには必要なようです。どれくらいやればいいかは、また外れ値の扱いも、ケースバイケースになり難しいようです。うーん、難しい・・・。

 データやデータ間の相関などは、経験の差が出るようで、繰り返し・継続してやってみてセンスを磨くしかないようです。

次回予定

次回は、2013年2月16日(土)に実施予定。内容は、いろいろな分析手法を手を動かしながら試してみよう、ということになるようです。是非ご興味ある方がいらしゃいましたら参加してみてはいかがでしょうか。

(2013/1/21 21:12追記)

「(ソフトウェア品質技術者のための)データ分析勉強会第8回目」の参加申し込みが可能になっています

http://kokucheese.com/event/index/71408/

告知

講師の小池さんより以下の様なアナウンスがありました。ご参考までにお知らせします。

  • ソフトウェア品質のホンネ
    SQiPポータルサイトから参照できます。ソフトウェア品質の世界で著名な方々が執筆されてます。
  • 2/25 SQiP特別講演「データ指向のソフトウェア品質マネジメント」
    次年度はセミナーを予定しているのでその説明をします。参加費5000円(本付き8000円)ですので、ご興味あればぜひご参加くださいとのこと。
  • 2/14 第6回SQuBOKユーザ会勉強会
    小池さんと堀さんが講演なさいます。会場は、日科技連 千駄ヶ谷の講堂ですが、Ustreamで配信も行います。小池さんのテーマは、SQA活動についてで、以前実施されたIPASECの講義を元にするそうです。
  • 来年度のSQiP研究会で「メトリクス演習コース」を開設します。
    小池さん、小室さん、野中先生で演習コースを行なうとのこと。カリキュラムとしては3フェーズとし、メトリクス収集活動の明確化、ツールを利用した統計解析の習得、事例適用を想定しているようです。興味ある方はぜひ参加してくださいとのこと。

blogはじめました!

はじめまして。 すずきともうします。

新しく年を迎えたのを機に、また、いろいろ思うところがあり、考えていること、考えてきたことをblogにしてまとめてみることにしました。

書き始めた動機としてはいくつかありますが、意識しはじめたのは、とちぎテストの会02での秋山さんの講演でした。

「インプットとアウトプットの流れを作る」というお話をきいたとき、「自分ではできていないな」とおもったのがはじめだったと思います。

以降、いろいろな方のお話をきき、自分の考えなどを発信することが重要であることを聞いてきたことも1つです。

そういうわけで、「インプットとアウトプットの流れを作る」ために、ソフトウェアテストやソフトウェア品質に関連しそうなことを、目標として、週に1回(月に4,5回くらい)の頻度で書いて行きたいなぁ、と思っています。

「四方山話」というタイトル通り、テーマから外れることもあるかも知れませんが、気長に生暖かく見守っていただければと思います^^;

よろしくおねがいいたします m(__)m