An Approach for Evaluating the Effectiveness of Design Patterns in Design Evolution

碩士 === 逢甲大學 === 資訊工程所 === 98 === A design pattern is a solution that is accumulated design experience by many programmers in the past. Those programmers wish to provide guidelines to people who have encountered the same problem. Sometimes the designer applies some design patterns, not only to solve...

Full description

Bibliographic Details
Main Authors: Lin-chieh Wen, 溫琳傑
Other Authors: Nien-lin Hsueh
Format: Others
Language:zh-TW
Published: 2010
Online Access:http://ndltd.ncl.edu.tw/handle/28578794375812437730
id ndltd-TW-098FCU05392045
record_format oai_dc
spelling ndltd-TW-098FCU053920452016-04-20T04:18:18Z http://ndltd.ncl.edu.tw/handle/28578794375812437730 An Approach for Evaluating the Effectiveness of Design Patterns in Design Evolution 一個評估設計樣式在設計演進中有效性之方法 Lin-chieh Wen 溫琳傑 碩士 逢甲大學 資訊工程所 98 A design pattern is a solution that is accumulated design experience by many programmers in the past. Those programmers wish to provide guidelines to people who have encountered the same problem. Sometimes the designer applies some design patterns, not only to solve specific design problems, but to hope these design patterns increase the flexibility of the system, that is, easy to modify or extend the system. However, since design patterns are getting popular, they may be misused. Some developers may apply patterns just for presenting they are good at object-oriented design. In order to explore that design patterns are really effectively applied in a system evolution, in this paper we presents a systematic approach for evaluating the effectiveness of design patterns in a design evolution. The “Pattern Application Context (PAC)” of a pattern is firstly defined to describe the application context of a pattern in a design. Secondly, the “Pattern Application Model (PAM)” is defined to describe the expected application context of a pattern in a software evolution. By exploring the changes of PAC in different versions of design, and check if the changes conforms the PAM, we can examine the effectiveness of the pattern in the evolution. A supporting tool “pattern effectiveness analyzer” is developed to compute the effectiveness in an automatic way. We have made experiments on some open source systems to check if the embedded design patterns are appropriately applied. Our experiment shows the effectiveness for Jaxe, JUnit and HtmlUnit are 0.233, 0.130 and 0.145 respectively. Nien-lin Hsueh 薛念林 2010 學位論文 ; thesis 76 zh-TW
collection NDLTD
language zh-TW
format Others
sources NDLTD
description 碩士 === 逢甲大學 === 資訊工程所 === 98 === A design pattern is a solution that is accumulated design experience by many programmers in the past. Those programmers wish to provide guidelines to people who have encountered the same problem. Sometimes the designer applies some design patterns, not only to solve specific design problems, but to hope these design patterns increase the flexibility of the system, that is, easy to modify or extend the system. However, since design patterns are getting popular, they may be misused. Some developers may apply patterns just for presenting they are good at object-oriented design. In order to explore that design patterns are really effectively applied in a system evolution, in this paper we presents a systematic approach for evaluating the effectiveness of design patterns in a design evolution. The “Pattern Application Context (PAC)” of a pattern is firstly defined to describe the application context of a pattern in a design. Secondly, the “Pattern Application Model (PAM)” is defined to describe the expected application context of a pattern in a software evolution. By exploring the changes of PAC in different versions of design, and check if the changes conforms the PAM, we can examine the effectiveness of the pattern in the evolution. A supporting tool “pattern effectiveness analyzer” is developed to compute the effectiveness in an automatic way. We have made experiments on some open source systems to check if the embedded design patterns are appropriately applied. Our experiment shows the effectiveness for Jaxe, JUnit and HtmlUnit are 0.233, 0.130 and 0.145 respectively.
author2 Nien-lin Hsueh
author_facet Nien-lin Hsueh
Lin-chieh Wen
溫琳傑
author Lin-chieh Wen
溫琳傑
spellingShingle Lin-chieh Wen
溫琳傑
An Approach for Evaluating the Effectiveness of Design Patterns in Design Evolution
author_sort Lin-chieh Wen
title An Approach for Evaluating the Effectiveness of Design Patterns in Design Evolution
title_short An Approach for Evaluating the Effectiveness of Design Patterns in Design Evolution
title_full An Approach for Evaluating the Effectiveness of Design Patterns in Design Evolution
title_fullStr An Approach for Evaluating the Effectiveness of Design Patterns in Design Evolution
title_full_unstemmed An Approach for Evaluating the Effectiveness of Design Patterns in Design Evolution
title_sort approach for evaluating the effectiveness of design patterns in design evolution
publishDate 2010
url http://ndltd.ncl.edu.tw/handle/28578794375812437730
work_keys_str_mv AT linchiehwen anapproachforevaluatingtheeffectivenessofdesignpatternsindesignevolution
AT wēnlínjié anapproachforevaluatingtheeffectivenessofdesignpatternsindesignevolution
AT linchiehwen yīgèpínggūshèjìyàngshìzàishèjìyǎnjìnzhōngyǒuxiàoxìngzhīfāngfǎ
AT wēnlínjié yīgèpínggūshèjìyàngshìzàishèjìyǎnjìnzhōngyǒuxiàoxìngzhīfāngfǎ
AT linchiehwen approachforevaluatingtheeffectivenessofdesignpatternsindesignevolution
AT wēnlínjié approachforevaluatingtheeffectivenessofdesignpatternsindesignevolution
_version_ 1718228974043136000