شماره ركورد :
1270071
عنوان مقاله :
يك الگوريتم مبتني بر افرازبندي گراف براي خوشه‌بندي سامانه‌‌هاي نرم‌افزاري با ابعاد بزرگ
عنوان به زبان ديگر :
A partition-based algorithm for clustering large-scale software systems
پديد آورندگان :
ﭘﻮراﺻﻐﺮ، ﺑﺎﺑﮏ داﻧﺸﮕﺎه ﺗﺒﺮﯾﺰ - داﻧﺸﮑﺪه ﻋﻠﻮم رﯾﺎﺿﯽ - ﮔﺮوه ﻋﻠﻮم ﮐﺎﻣﭙﯿﻮﺗﺮ، ﺗﺒﺮﯾﺰ، اﯾﺮان , اﯾﺰدﺧﻮاه، ﺣﺒﯿﺐ داﻧﺸﮕﺎه ﺗﺒﺮﯾﺰ - داﻧﺸﮑﺪه ﻋﻠﻮم رﯾﺎﺿﯽ - ﮔﺮوه ﻋﻠﻮم ﮐﺎﻣﭙﯿﻮﺗﺮ، ﺗﺒﺮﯾﺰ، اﯾﺮان , ﻟﻄﻔﯽ، ﺷﻬﺮﯾﺎر داﻧﺸﮕﺎه ﺗﺒﺮﯾﺰ - داﻧﺸﮑﺪه ﻋﻠﻮم رﯾﺎﺿﯽ - ﮔﺮوه ﻋﻠﻮم ﮐﺎﻣﭙﯿﻮﺗﺮ، ﺗﺒﺮﯾﺰ، اﯾﺮان , ﺻﺎﻟﺤﯽ، ﺧﯿﺎم داﻧﺸﮕﺎه ﺷﻬﺮﮐﺮد - داﻧﺸﮑﺪه ﻋﻠﻮم رﯾﺎﺿﯽ - ﮔﺮوه ﻋﻠﻮم ﮐﺎﻣﭙﯿﻮﺗﺮ، ﺷﻬﺮﮐﺮد، اﯾﺮان
تعداد صفحه :
12
از صفحه :
37
از صفحه (ادامه) :
0
تا صفحه :
48
تا صفحه(ادامه) :
0
كليدواژه :
ﻣﻬﻨﺪﺳﯽ ﻧﺮم اﻓﺰار , ﻣﻬﻨﺪﺳﯽ ﻣﻌﮑﻮس , ﺧﻮﺷﻪﺑﻨﺪي ﻧﺮم اﻓﺰار , اﻟﮕﻮرﯾﺘﻢ K-means
چكيده فارسي :
از روشﻫﺎي ﺧﻮﺷﻪﺑﻨﺪي ﺑﺮاي ﺑﺎزﯾﺎﺑﯽ ﺳﺎﺧﺘﺎر ﻧﺮماﻓﺰار ﺟﻬﺖ ﻓﻬﻢ درﺳﺖ آن و ﻫﻤﭽﻨﯿﻦ ﺑﺎزﺳﺎزي ﻧﺮماﻓﺰار اﺳﺘﻔﺎده ﻣﯽﺷﻮد. در ادﺑﯿﺎت ﻣﻮﺿﻮع، ﺑﯿﺸﺘﺮ اﻟﮕﻮرﯾﺘﻢﻫﺎي اراﺋﻪﺷﺪه ﺑﺮاي ﺧﻮﺷﻪﺑﻨﺪي ﺳﺎﻣﺎﻧﻪﻫﺎي ﻧﺮماﻓﺰاري ﺑﻪ دو دﺳﺘﮥ اﻟﮕﻮرﯾﺘﻢﻫﺎي ﻣﺒﺘﻨﯽ ﺑﺮ ﺟﺴﺘﺠﻮ و اﻟﮕﻮرﯾﺘﻢﻫﺎي ﺳﻠﺴﻠﻪﻣﺮاﺗﺒﯽ ﻃﺒﻘﻪﺑﻨﺪي ﻣﯽﺷﻮﻧﺪ و اﻟﮕﻮرﯾﺘﻤﯽ از ردة ﻣﺒﺘﻨﯽ ﺑﺮ اﻓﺮاز ﺑﺮاي ﺧﻮﺷﻪﺑﻨﺪي ﯾﮏ ﺳﺎﻣﺎﻧﮥ ﻧﺮماﻓﺰاري اراﺋﻪ ﻧﺸﺪه اﺳﺖ. اﯾﻦ روشﻫﺎ ﺳﻌﯽ دارﻧﺪ ﮐﻪ ﮔﺮاف واﺑﺴﺘﮕﯽ ﻣﻮﺟﻮدﯾﺖ ﺑﻪدﺳﺖآﻣﺪه از ﮐﺪ ﻣﻨﺒﻊ ﺳﺎﻣﺎﻧﮥ ﻧﺮماﻓﺰاري را ﺑﻪ ﭼﻨﺪ ﻣﺠﻤﻮﻋﮥ رأﺳﯽ اﻓﺮاز ﮐﻨﻨﺪ. در ﺳﺎﻣﺎﻧﻪﻫﺎي ﻧﺮماﻓﺰاري، ﻣﻮﺟﻮدﯾﺖ ﻣﯽﺗﻮاﻧﺪ رده، ﺗﺎﺑﻊ و ﯾﺎ ﯾﮏ ﻓﺎﯾﻞ ﺑﺎﺷﺪ. ﺑﺎ ﺗﻮﺟﻪ ﺑﻪ ﭼﻨﺪﺟﻤﻠﻪاي ﻏﯿﺮ ﻗﻄﻌﯽ، ﺳﺨﺖﺑﻮدن ﻣﺴﺄﻟﮥ ﺧﻮﺷﻪﺑﻨﺪي، در ﺳﺎلﻫﺎي اﺧﯿﺮ از روشﻫﺎي ﺗﮑﺎﻣﻠﯽ و ﻣﺒﺘﻨﯽ ﺑﺮ ﺟﺴﺘﺠﻮ ﻣﺎﻧﻨﺪ اﻟﮕﻮرﯾﺘﻢ ژﻧﺘﯿﮏ ﺑﺮاي اﯾﻦ ﺣﻞ اﯾﻦ ﻣﺴﺄﻟﻪ، زﯾﺎد اﺳﺘﻔﺎده ﺷﺪه اﺳﺖ. ﻫﺮ ﭼﻨﺪ اﯾﻦ اﻟﮕﻮرﯾﺘﻢﻫﺎ در ﺑﺮﺧﯽ ﻣﻮارد ﻣﯽﺗﻮاﻧﻨﺪ ﺳﺎﺧﺘﺎر ﻣﻨﺎﺳﺒﯽ از ﻧﺮماﻓﺰار را ﺑﻪدﺳﺖ آورﻧﺪ، اﻣﺎ ﺑﺮاي ﻧﺮماﻓﺰارﻫﺎي ﺑﺎ اﺑﻌﺎد ﺑﺰرگ، ﺑﺎ ﺗﻮﺟﻪ ﺑﻪ زﻣﺎن اﺟﺮا و ﺣﺎﻓﻈﮥ ﻣﺼﺮﻓﯽ زﯾﺎد، ﻗﺎﺑﻞ اﺟﺮا ﻧﯿﺴﺘﻨﺪ؛ ﻫﻤﭽﻨﯿﻦ، اﯾﻦ روشﻫﺎ از اﻃﻼﻋﺎت و داﻧﺶ ﮔﺮاﻓﯽ ﻣﻮﺟﻮد در ﮔﺮاف واﺑﺴﺘﮕﯽ ﻣﻮﺟﻮدﯾﺖ اﺳﺘﻔﺎدهي ﭼﻨﺪاﻧﯽ ﻧﻤﯽﮐﻨﻨﺪ. در اﯾﻦ ﻣﻘﺎﻟﻪ ﯾﮏ اﻟﮕﻮرﯾﺘﻢ ﻣﺒﺘﻨﯽ ﺑﺮ اﻓﺮاز اراﺋﻪ ﺷﺪه اﺳﺖ ﮐﻪ ﺑﺘﻮان از آن در ﺧﻮﺷﻪﺑﻨﺪي ﻧﺮماﻓﺰار ﻧﯿﺰ اﺳﺘﻔﺎده ﮐﺮد. ﻫﻤﭽﻨﯿﻦ، ﯾﮏ ﻧﻮع ﻓﺎﺻﻠﮥ ﺟﺪﯾﺪ ﺑﺮاي ﻗﯿﺎس ﺗﺸﺎﺑﻪ و ﻋﺪم ﺗﺸﺎﺑﻪ اراﺋﻪ ﺷﺪه اﺳﺖ. اﻧﺘﻈﺎر ﻣﯽرود روش ﭘﯿﺸﻨﻬﺎدي ﺑﺘﻮاﻧﺪ در ﻗﯿﺎس ﺑﺎ ﺳﺎﯾﺮ روشﻫﺎي ﻣﻮﺟﻮد، ﺧﻮﺷﻪﺑﻨﺪيﻫﺎﯾﯽ ﺑﺎ ﮐﯿﻔﯿﺖ ﺑﺎﻻﺗﺮ و ﻧﺰدﯾﮏ ﺑﻪ ﺧﻮﺷﻪﺑﻨﺪي ﻓﺮد ﺧﺒﺮه، ﺗﻮﻟﯿﺪ ﮐﻨﺪ. ﺑﺮاي ﺑﺮرﺳﯽ ﺻﺤﺖ اﺟﺮاي اﻟﮕﻮرﯾﺘﻢ، آن را ﺑﺮ روي ﻧﺮماﻓﺰار ﻣﻮزﯾﻼ ﻓﺎﯾﺮﻓﺎﮐﺲ اﺟﺮا ﮐﺮده و ﻧﺘﺎﯾﺞ را ﺑﺎ اﻟﮕﻮرﯾﺘﻢﻫﺎي ﻣﻄﺮح اﯾﻦ ﺣﻮزه، ﻣﻘﺎﯾﺴﻪ ﮐﺮده اﯾﻢ.
چكيده لاتين :
Clustering techniques are used to extract the structure of software for understanding, maintaining, and refactoring. In the literature, most of the proposed approaches for software clustering are divided into hierarchical algorithms and search-based techniques. In the former, clustering is a process of merging (splitting) similar (non-similar) clusters. These techniques suffered from the drawbacks such as finiteness criterion and arbitrary decisions occurred in the process. Because of the NP-hardness of clustering software systems, evolutionary and search-based algorithms are more commonly used algorithm than hierarchical ones. In evolutionary algorithms, the clustering of software systems is considered as a problem of searching over some possible clustering candidates. Although these algorithms are often able to achieve an appropriate structure of the software, they are not applicable in clustering large-scale software. Furthermore, these algorithms are unable to consider the knowledge in the artifact dependency graph, which extracted from the source code of the software. In software systems, an artifact can be everything like a class, a function, or a file. In this paper, a new partition-based clustering algorithm is presented. This algorithm attempts to partition the artifact dependency graph considering the knowledge therein. Moreover, a new distance criterion is presented to measure the similarity and dissimilarity of the artifacts. The proposed algorithm starts with the artifact dependency graph and creates the similarity matrices of the artifacts. So, it attempts to refine the partition candidate until a fixed point is reached. We expect that the proposed method compared with other methods could lead to achieve the clustering with high quality and similar to the expert's clustering based on MoJo-FM measure. To demonstrate the applicability and validity of the proposed algorithm, a large-scale case study, Mozilla Firefox, is employed. The results demonstrate that the proposed algorithm outperforms the commonly used evolutionary methods in the literature.
سال انتشار :
1400
عنوان نشريه :
پردازش علائم و داده ها
فايل PDF :
8586889
لينک به اين مدرک :
بازگشت