{"title":"APR:架构模式推荐器","authors":"Shipra Sharma, B. Sodhi","doi":"10.1145/3019612.3019780","DOIUrl":null,"url":null,"abstract":"This paper proposes Architectural Pattern Recommender (APR) system which helps in such architecture selection process. Main contribution of this work is in replacing the manual effort required to identify and analyse relevant architectural patterns in context of a particular set of software requirements. Key input to APR is a set of architecturally significant use cases concerning the application being developed. Central idea of APR's design is two folds: a) transform the unstructured information about software architecture design into a structured form which is suitable for recognizing textual entailment between a requirement scenario and a potential architectural pattern, b) leverage the rich experiential knowledge embedded in discussions on professional developer support forums such as Stackoverflow to check the sentiment about a design decision. APR makes use of both the above elements to identify a suitable architectural pattern and assess its suitability for a given set of requirements. Efficacy of APR has been evaluated by comparing its recommendations for \"ground truth\" scenarios (comprising of applications whose architecture is well known).","PeriodicalId":20728,"journal":{"name":"Proceedings of the Symposium on Applied Computing","volume":null,"pages":null},"PeriodicalIF":0.0000,"publicationDate":"2017-04-03","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"24","resultStr":"{\"title\":\"APR: architectural pattern recommender\",\"authors\":\"Shipra Sharma, B. Sodhi\",\"doi\":\"10.1145/3019612.3019780\",\"DOIUrl\":null,\"url\":null,\"abstract\":\"This paper proposes Architectural Pattern Recommender (APR) system which helps in such architecture selection process. Main contribution of this work is in replacing the manual effort required to identify and analyse relevant architectural patterns in context of a particular set of software requirements. Key input to APR is a set of architecturally significant use cases concerning the application being developed. Central idea of APR's design is two folds: a) transform the unstructured information about software architecture design into a structured form which is suitable for recognizing textual entailment between a requirement scenario and a potential architectural pattern, b) leverage the rich experiential knowledge embedded in discussions on professional developer support forums such as Stackoverflow to check the sentiment about a design decision. APR makes use of both the above elements to identify a suitable architectural pattern and assess its suitability for a given set of requirements. Efficacy of APR has been evaluated by comparing its recommendations for \\\"ground truth\\\" scenarios (comprising of applications whose architecture is well known).\",\"PeriodicalId\":20728,\"journal\":{\"name\":\"Proceedings of the Symposium on Applied Computing\",\"volume\":null,\"pages\":null},\"PeriodicalIF\":0.0000,\"publicationDate\":\"2017-04-03\",\"publicationTypes\":\"Journal Article\",\"fieldsOfStudy\":null,\"isOpenAccess\":false,\"openAccessPdf\":\"\",\"citationCount\":\"24\",\"resultStr\":null,\"platform\":\"Semanticscholar\",\"paperid\":null,\"PeriodicalName\":\"Proceedings of the Symposium on Applied Computing\",\"FirstCategoryId\":\"1085\",\"ListUrlMain\":\"https://doi.org/10.1145/3019612.3019780\",\"RegionNum\":0,\"RegionCategory\":null,\"ArticlePicture\":[],\"TitleCN\":null,\"AbstractTextCN\":null,\"PMCID\":null,\"EPubDate\":\"\",\"PubModel\":\"\",\"JCR\":\"\",\"JCRName\":\"\",\"Score\":null,\"Total\":0}","platform":"Semanticscholar","paperid":null,"PeriodicalName":"Proceedings of the Symposium on Applied Computing","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1145/3019612.3019780","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
This paper proposes Architectural Pattern Recommender (APR) system which helps in such architecture selection process. Main contribution of this work is in replacing the manual effort required to identify and analyse relevant architectural patterns in context of a particular set of software requirements. Key input to APR is a set of architecturally significant use cases concerning the application being developed. Central idea of APR's design is two folds: a) transform the unstructured information about software architecture design into a structured form which is suitable for recognizing textual entailment between a requirement scenario and a potential architectural pattern, b) leverage the rich experiential knowledge embedded in discussions on professional developer support forums such as Stackoverflow to check the sentiment about a design decision. APR makes use of both the above elements to identify a suitable architectural pattern and assess its suitability for a given set of requirements. Efficacy of APR has been evaluated by comparing its recommendations for "ground truth" scenarios (comprising of applications whose architecture is well known).