{"title":"面向软件设计的UML类推荐系统","authors":"Akil Elkamel, M. Gzara, H. Ben-Abdallah","doi":"10.1109/AICCSA.2016.7945659","DOIUrl":null,"url":null,"abstract":"Recommendation systems provide suggestions for items that are potentially interesting for a user in a given context. The provided recommendations are extracted generally from a huge amount of data collected from several sources of information. Thus a recommendation system requires firstly a pre-treatment step to prepare the data and secondly the application of some techniques such as data mining techniques to handle and extract the knowledge to be recommended to the user from the data. Our contribution consists on proposing a Recommendation System for Software Engineering (RSSE). This system recommends UML classes in the design phase of UML classes diagrams. Our RSSE is composed by two main phases: an off-line phase in which we use a clustering algorithm to partition UML classes collected from several UML classes diagrams based on the semantic relations existing between their characteristics. We have defined a metric that measures the similarity between UML classes. The second is an online phase in which we use the obtained clusters of UML classes to propose suggestions to the user based on elements added to his UML classes diagram under construction. The proposed system is then experimentally evaluated by using a UML classes corpus collected from several UML classes diagrams. The experimental evaluation shows very encouraging ratio of useful recommendations.","PeriodicalId":448329,"journal":{"name":"2016 IEEE/ACS 13th International Conference of Computer Systems and Applications (AICCSA)","volume":"26 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2016-11-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"24","resultStr":"{\"title\":\"An UML class recommender system for software design\",\"authors\":\"Akil Elkamel, M. Gzara, H. Ben-Abdallah\",\"doi\":\"10.1109/AICCSA.2016.7945659\",\"DOIUrl\":null,\"url\":null,\"abstract\":\"Recommendation systems provide suggestions for items that are potentially interesting for a user in a given context. The provided recommendations are extracted generally from a huge amount of data collected from several sources of information. Thus a recommendation system requires firstly a pre-treatment step to prepare the data and secondly the application of some techniques such as data mining techniques to handle and extract the knowledge to be recommended to the user from the data. Our contribution consists on proposing a Recommendation System for Software Engineering (RSSE). This system recommends UML classes in the design phase of UML classes diagrams. Our RSSE is composed by two main phases: an off-line phase in which we use a clustering algorithm to partition UML classes collected from several UML classes diagrams based on the semantic relations existing between their characteristics. We have defined a metric that measures the similarity between UML classes. The second is an online phase in which we use the obtained clusters of UML classes to propose suggestions to the user based on elements added to his UML classes diagram under construction. The proposed system is then experimentally evaluated by using a UML classes corpus collected from several UML classes diagrams. The experimental evaluation shows very encouraging ratio of useful recommendations.\",\"PeriodicalId\":448329,\"journal\":{\"name\":\"2016 IEEE/ACS 13th International Conference of Computer Systems and Applications (AICCSA)\",\"volume\":\"26 1\",\"pages\":\"0\"},\"PeriodicalIF\":0.0000,\"publicationDate\":\"2016-11-01\",\"publicationTypes\":\"Journal Article\",\"fieldsOfStudy\":null,\"isOpenAccess\":false,\"openAccessPdf\":\"\",\"citationCount\":\"24\",\"resultStr\":null,\"platform\":\"Semanticscholar\",\"paperid\":null,\"PeriodicalName\":\"2016 IEEE/ACS 13th International Conference of Computer Systems and Applications (AICCSA)\",\"FirstCategoryId\":\"1085\",\"ListUrlMain\":\"https://doi.org/10.1109/AICCSA.2016.7945659\",\"RegionNum\":0,\"RegionCategory\":null,\"ArticlePicture\":[],\"TitleCN\":null,\"AbstractTextCN\":null,\"PMCID\":null,\"EPubDate\":\"\",\"PubModel\":\"\",\"JCR\":\"\",\"JCRName\":\"\",\"Score\":null,\"Total\":0}","platform":"Semanticscholar","paperid":null,"PeriodicalName":"2016 IEEE/ACS 13th International Conference of Computer Systems and Applications (AICCSA)","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/AICCSA.2016.7945659","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
An UML class recommender system for software design
Recommendation systems provide suggestions for items that are potentially interesting for a user in a given context. The provided recommendations are extracted generally from a huge amount of data collected from several sources of information. Thus a recommendation system requires firstly a pre-treatment step to prepare the data and secondly the application of some techniques such as data mining techniques to handle and extract the knowledge to be recommended to the user from the data. Our contribution consists on proposing a Recommendation System for Software Engineering (RSSE). This system recommends UML classes in the design phase of UML classes diagrams. Our RSSE is composed by two main phases: an off-line phase in which we use a clustering algorithm to partition UML classes collected from several UML classes diagrams based on the semantic relations existing between their characteristics. We have defined a metric that measures the similarity between UML classes. The second is an online phase in which we use the obtained clusters of UML classes to propose suggestions to the user based on elements added to his UML classes diagram under construction. The proposed system is then experimentally evaluated by using a UML classes corpus collected from several UML classes diagrams. The experimental evaluation shows very encouraging ratio of useful recommendations.