2025年8月30日土曜日

An Empirical Study of Bad Smell in Conde on Maintenance Effort

公開されている

An Empirical Study of Bad Smell in Conde on Maintenance Effort

のキモの部分を読んで勉強してみたいと思います。

概要

code smellの発見およびリファクタリングを自動化するツールを、

提案する。発見したcode smellに対して、リスクファクターを計算し、

リファクタリングのテクニックを利用して、リスクファクターを

軽減する。

リファクタリングは、ソフトウェアの振る舞いを変更せずに、

内部構造を改良するもの。

新しいcode smellである、Lazy Catchも発見できる。

オブジェクト指向ソフトウェア用のメトリクスを利用した。


イントロ

リファクタリングのプロセスは、多くのアクティビティを含む。

1.ソフトウェアのどこをリファクタリングするかを認識する。

2.1の中で、どこお実際にリファクタリングするかを判断する。

3.リファクタリングが、振る舞いを保存することを確認し、

 リファクタリングを行う。

4.リファクタリングの結果を、ソフトウェアの保守性などから、

 評価する。

5.リファクタリングしたソフトウェアと、他の資材

  (ドキュメント、テストなど)との整合性を取る。


ソフトウェア保守


ソフトウェアの保守は、リリース後、ミスを訂正する、

パフォーマンスなどを改善するもの。

複雑な作業で、システムの理解も難しい。

保守のプロセスは、プログラマの経験やドキュメント、

システムそれ自体の特徴に影響を受ける。


Code smell 


Code smellは、ソフトウェアの改良や保守を困難にする

設計やコードである。

Code smellを削除することで、保守性はあがり、

ソフトウェアの品質は向上する。

Code smellの発見には、標準的なメトリクス、

オブジェクト指向のメトリクス、ad hocに定義された

smell発見用のメトリクスが使われる。


次のようなメトリクスを利用した。


Number of Method (メソッドの数)・・対象は、クラス

Number of Parameters(パラメータの数)・・対象は、メソッド

Lack of Cohesion of Methods(凝集度の不足)・・対象は、クラス

Method Lines of Code(メソッドのコードのライン数)・・対象は、メソッド

Weighted Methods per Class(クラスの複雑度)・・対象は、クラス






0 件のコメント:

コメントを投稿

アクセス制御の方式

1.ユーザーベース認証 認証されたユーザー事に アクセス範囲を決める。 2.任意アクセス制御 ユーザーが属するグループに対して、アクセス範囲を決める。 3.強制アクセス制御(MAC) 管理者がすべて権限を付与。オブジェクトの所有者さえ変更できない。 4.ロールベースアクセス制御 ...