Research: Quality and Measurement / 研究: 品質・測定

Software quality is a capability of software product to satisfy stated and implied needs when used under specified conditions. We are conducting researches on how to specify quality requirements and how to measure and/or estimate quality of software, such as goal-oriented measurements and software reliability model.

Source Code Metrics

MeasurementThere are various approaches to quantitatively and statically measuring the reusability of program source code; however, empirical demonstrations of the effectiveness of such approaches by considering actual reuse in actual development projects or of the magnitude of their effect on actual reusability have not been reported in depth. In this paper, we identified a set of metrics that are thought to be effective for measuring the reusability of C language program source code. Subsequently, for ten projects involved in development with existing software modification and adoption, during which conventional source code in an old project are extensively reused and adopted to a new project, we compared values of the static metrics identified and the reuse results before and after the development. Statistical analysis demonstrated that some of our metrics are effective for actual software development, and we accurately determined the magnitude of their effect on actual reusability. More concretely, it was found that when the percentage of files used outside the belonging directory is small and the number of function calls is small, the complexity of source code as the material of reuse and factors that are affected by the source code are limited, indicating high reusability.

  • Hironori Washizaki, Toshikazu Koike, Rieko Namiki, Hiroyuki Tanabe, “Reusability Metrics for Program Source Code Written in C Language and Their Evaluation,” 13th International Conference on Product-Focused Software Development and Process Improvement (Profes 2012), June 13-15, 2012. (PDF)
  • Hironori Washizaki, Rieko Namiki, Tomoyuki Fukuoka, Yoko Harada and Hiroyuki Watanabe, “A Framework for Measuring and Evaluating ProgramSource Code Quality,” Proceedings of the 8th International Conference on Product Focused Software Development and Process Improvement (PROFES 2007), Springer LNCS, pp.284-299, 2007. (Profes2008.pdf)
  • Linda M Laird, M Carol Brennan著, 野中誠, 鷲崎弘宜 訳, “演習で学ぶソフトウエアメトリクスの基礎 – ソフトウェアの測定と見積もりの正しい作法”, 日経BP, 2009.
  • 鷲崎弘宜, 田邉浩之, 小池利和, “ソースコード解析による品質評価の仕組み”, 日経エレクトロニクス, 2010年1月25日号
  • 鷲崎弘宜, 森田翔, 長井恭兵, 布谷貞夫, 佐藤雅宏, 杉村俊輔, 関洋平, “組込みソフトウェアの派生開発におけるソースコードメトリクスによる再利用性測定”, ソフトウェア品質シンポジウム2012(SQiPシンポジウム), 2012.  (PDF)
  • Hidenori Nakai, Kiyoshi Honda, Hironori Washizaki, Yoshiaki Fukazawa, Ken Asoh, Kaz Takahashi, Kentarou Ogawa, Maki Mori, Takashi Hino, Yosuke Hayakawa, Yasuyuki Tanaka, Shinichi Yamada, Daisuke Miyazaki, ″Initial Industrial Experience of GQM-based Product-Focused Project Monitoring with Trend Patterns,” 21st Asia-Pacific Software Engineering Conference (APSEC 2014), Poster, Jeju, Korea, December 1-4, 2014. (to appear)

Measurement Framework

Software metrics measure various attributes of a piece of software and are becoming essential for a variety of purposes,  including software quality evaluation. One type of measurement is based on source code evaluation. Many tools have been developed to perform source code analysis or to measure various metrics, but most use different metrics definitions, leading to inconsistencies in measurement results. The metrics measured by these tools also vary by programming language. We propose a unified framework for measuring source code that supports multiple programming languages. In this paper, we present commonalities of measurable elements from various programming languages as the foundation for developing the framework. We then describe the approach used within the framework and also its preliminary development. We believe that our approach can solve the problems with existing measurement tools.

  • Reisha Humaira, Kazunori Sakamoto, Akira Ohashi, Hironori Washizaki, Yoshiaki Fukazawa, “Towards a Unified Source Code Measurement Framework Supporting Multiple Programming Languages,” 24th International Conference on Software Engineering and Knowledge Engineering (SEKE 2012), July 1-3, 2012. (PDF)

Generalized Software Reliability Model

SRMDevelopment environments have changed drastically in recent years. The development periods are shorter than ever and the number of team has increased. These changes have led to difficulties in controlling the development activities and predicting the end of developments. In order to assess recent software developments, we propose a generalized software reliability model based on a stochastic process, and simulate developments that include uncertainties and dynamics, such as unpredictable requirements changes, shortening of the development period, and decrease in the number of members. We also compare our simulation results to those of other software reliability models. Using the values of uncertainties and dynamics obtained from our model, we can evaluate the developments in a quantitative manner.

  • Kiyoshi Honda, Hironori Washizaki, YoshiakiFukazawa, “A Generalized Software Reliability Model Considering Uncertainty and Dynamics in Development,” Proceedings of 14th International Conference of Product Focused Software Development and Process Improvement (PROFES 2013), pp.342-346, Paphos, Cyprus, June 12-14, 2013. (PDF)
  • 本田 澄,鷲崎 弘宜,深澤 良彰, “開発における不確定性と時間変化を考慮した一般化信頼性モデル”, 情報処理学会ソフトウェア工学研究会5月(第180回SE・第29回EMB合同研究発表会), 2013.(PDF)
  • Kiyoshi Honda, Hidenori Nakai, Hironori Washizaki, Yoshiaki Fukazawa (Waseda University), Ken Asoh, Kaz Takahashi, Kentarou Ogawa, Maki Mori, Takashi Hino, Yosuke Hayakawa, Yasuyuki Tanaka, Shinichi Yamada, Daisuke Miyazaki (Yahoo Japan Corporation), “Predicting Time Range of Development Based on Generalized Software Reliability Model,” 21st Asia-Pacific Software Engineering Conference (APSEC 2014), Jeju, Korea, December 1-4, 2014. (to appear) (CORE Rank C, acceptance rate 67/226=30%)


メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

次のHTML タグと属性が使えます: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>