{"title":"以角色为中心的进化设计","authors":"M. Mrva","doi":"10.1109/ECBS.1999.755898","DOIUrl":null,"url":null,"abstract":"The concept of roles in a model-based design process is discussed in this article. It is shown that roles can positively contribute to, easier discovery of the right level of abstraction in a design, thus better communication between team members or designer and reuser, and raising the reusability as well as the evolvability of a component. The role concept is compared to the well-known class concept of object-oriented design and to the interface concept of the Java programming language. It is also stated that objects, being instances of classes, can take on different roles during their life-time, and-vice versa-roles can be fulfilled by different objects. The paper takes a look at design patterns, too, as well as at the Unified Modeling Language (UML) and relates them to the role concept. This is not an experience report, but rather a programmatic view at some requirements that have become important for the design of long-lasting CBS components which are designed for evolution. These requirements are accompanied by suggestions for the designers of modeling and programming languages.","PeriodicalId":229109,"journal":{"name":"Proceedings ECBS'99. IEEE Conference and Workshop on Engineering of Computer-Based Systems","volume":"15 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"1999-03-07","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":"{\"title\":\"Role-centered design for evolution\",\"authors\":\"M. Mrva\",\"doi\":\"10.1109/ECBS.1999.755898\",\"DOIUrl\":null,\"url\":null,\"abstract\":\"The concept of roles in a model-based design process is discussed in this article. It is shown that roles can positively contribute to, easier discovery of the right level of abstraction in a design, thus better communication between team members or designer and reuser, and raising the reusability as well as the evolvability of a component. The role concept is compared to the well-known class concept of object-oriented design and to the interface concept of the Java programming language. It is also stated that objects, being instances of classes, can take on different roles during their life-time, and-vice versa-roles can be fulfilled by different objects. The paper takes a look at design patterns, too, as well as at the Unified Modeling Language (UML) and relates them to the role concept. This is not an experience report, but rather a programmatic view at some requirements that have become important for the design of long-lasting CBS components which are designed for evolution. These requirements are accompanied by suggestions for the designers of modeling and programming languages.\",\"PeriodicalId\":229109,\"journal\":{\"name\":\"Proceedings ECBS'99. IEEE Conference and Workshop on Engineering of Computer-Based Systems\",\"volume\":\"15 1\",\"pages\":\"0\"},\"PeriodicalIF\":0.0000,\"publicationDate\":\"1999-03-07\",\"publicationTypes\":\"Journal Article\",\"fieldsOfStudy\":null,\"isOpenAccess\":false,\"openAccessPdf\":\"\",\"citationCount\":\"0\",\"resultStr\":null,\"platform\":\"Semanticscholar\",\"paperid\":null,\"PeriodicalName\":\"Proceedings ECBS'99. IEEE Conference and Workshop on Engineering of Computer-Based Systems\",\"FirstCategoryId\":\"1085\",\"ListUrlMain\":\"https://doi.org/10.1109/ECBS.1999.755898\",\"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 ECBS'99. IEEE Conference and Workshop on Engineering of Computer-Based Systems","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/ECBS.1999.755898","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
The concept of roles in a model-based design process is discussed in this article. It is shown that roles can positively contribute to, easier discovery of the right level of abstraction in a design, thus better communication between team members or designer and reuser, and raising the reusability as well as the evolvability of a component. The role concept is compared to the well-known class concept of object-oriented design and to the interface concept of the Java programming language. It is also stated that objects, being instances of classes, can take on different roles during their life-time, and-vice versa-roles can be fulfilled by different objects. The paper takes a look at design patterns, too, as well as at the Unified Modeling Language (UML) and relates them to the role concept. This is not an experience report, but rather a programmatic view at some requirements that have become important for the design of long-lasting CBS components which are designed for evolution. These requirements are accompanied by suggestions for the designers of modeling and programming languages.