O. Badreddin, T. Lethbridge, Andrew Forward, M. Elaasar, Hamoud Aljamaan, Miguel Garzón
{"title":"从UML组合状态机增强代码生成","authors":"O. Badreddin, T. Lethbridge, Andrew Forward, M. Elaasar, Hamoud Aljamaan, Miguel Garzón","doi":"10.5220/0004699602350245","DOIUrl":null,"url":null,"abstract":"UML modelling tools provide poor support for composite state machine code generation. Generated code is typically complex and large, especially for composite state machines. Existing approaches either do not handle this case at all or handle it by flattening the composite state machine into a simple one with a combinatorial explosion of states, and excessive generated code. This paper presents a new approach that transforms a composite state machine into an equivalent set of simple state machines before code generation. This avoids the combinatorial explosion and leads to more concise and scalable generated code. We implement our approach in Umple. We report on a case study, comparing our approach to others in terms of code size and scalability.","PeriodicalId":336046,"journal":{"name":"2014 2nd International Conference on Model-Driven Engineering and Software Development (MODELSWARD)","volume":"22 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2014-01-07","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"29","resultStr":"{\"title\":\"Enhanced code generation from UML composite state machines\",\"authors\":\"O. Badreddin, T. Lethbridge, Andrew Forward, M. Elaasar, Hamoud Aljamaan, Miguel Garzón\",\"doi\":\"10.5220/0004699602350245\",\"DOIUrl\":null,\"url\":null,\"abstract\":\"UML modelling tools provide poor support for composite state machine code generation. Generated code is typically complex and large, especially for composite state machines. Existing approaches either do not handle this case at all or handle it by flattening the composite state machine into a simple one with a combinatorial explosion of states, and excessive generated code. This paper presents a new approach that transforms a composite state machine into an equivalent set of simple state machines before code generation. This avoids the combinatorial explosion and leads to more concise and scalable generated code. We implement our approach in Umple. We report on a case study, comparing our approach to others in terms of code size and scalability.\",\"PeriodicalId\":336046,\"journal\":{\"name\":\"2014 2nd International Conference on Model-Driven Engineering and Software Development (MODELSWARD)\",\"volume\":\"22 1\",\"pages\":\"0\"},\"PeriodicalIF\":0.0000,\"publicationDate\":\"2014-01-07\",\"publicationTypes\":\"Journal Article\",\"fieldsOfStudy\":null,\"isOpenAccess\":false,\"openAccessPdf\":\"\",\"citationCount\":\"29\",\"resultStr\":null,\"platform\":\"Semanticscholar\",\"paperid\":null,\"PeriodicalName\":\"2014 2nd International Conference on Model-Driven Engineering and Software Development (MODELSWARD)\",\"FirstCategoryId\":\"1085\",\"ListUrlMain\":\"https://doi.org/10.5220/0004699602350245\",\"RegionNum\":0,\"RegionCategory\":null,\"ArticlePicture\":[],\"TitleCN\":null,\"AbstractTextCN\":null,\"PMCID\":null,\"EPubDate\":\"\",\"PubModel\":\"\",\"JCR\":\"\",\"JCRName\":\"\",\"Score\":null,\"Total\":0}","platform":"Semanticscholar","paperid":null,"PeriodicalName":"2014 2nd International Conference on Model-Driven Engineering and Software Development (MODELSWARD)","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.5220/0004699602350245","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
Enhanced code generation from UML composite state machines
UML modelling tools provide poor support for composite state machine code generation. Generated code is typically complex and large, especially for composite state machines. Existing approaches either do not handle this case at all or handle it by flattening the composite state machine into a simple one with a combinatorial explosion of states, and excessive generated code. This paper presents a new approach that transforms a composite state machine into an equivalent set of simple state machines before code generation. This avoids the combinatorial explosion and leads to more concise and scalable generated code. We implement our approach in Umple. We report on a case study, comparing our approach to others in terms of code size and scalability.