Ed Processing, J. de Meer, V. Heymer, R. Roth, Chj, B. Cohen, W. Harwood, Jackson
{"title":"8 Concluding Remarks","authors":"Ed Processing, J. de Meer, V. Heymer, R. Roth, Chj, B. Cohen, W. Harwood, Jackson","doi":"10.3138/9781442617179-010","DOIUrl":null,"url":null,"abstract":"14 between objects and object speciications either. That is, what we have in mind is software layers sitting on top of each other within running systems. It is commonplace that modularization is of paramount importance to software construction and reconstruction. The object concept itself is a sort of modularization principle, but a rather in-the-small one. For eeective software reuse, we need an in-the-large concept which makes it possible to put building blocks into a library, nd the ones we need and put them together eeectively. Such software modules should have standardized interfaces by which they easily t together { like LEGO bricks. At least two interfaces are indispensible: a \\downward\" one for accepting lower-level services, and an \\upward\" one for providing higher-level services. Hidden in its body, the module should have correctly implemented the latter on top of the former. Often, it is necessary to have more than one \\upward\" interface, like databases with multiple views. That is, reiication as explained above is one of the essential concepts for software modules. Situations are becoming rare where we have to build new software. Reusing and adapting old software is greatly supported by a module concept which tells how to encapsulate existing software and put it together with other software. Software is rarely designed for one speciic purpose, and it is rarely reused in exactly the same way as it was once implemented. What is needed is a way to make modules generic and being able to instantiate them with diierent actual parameters. This way, a module can t exibly into many environments, reducing the need for costly ad-hoc redesign and reimplementation. Therefore, what is needed is a concept for parameterization and instantiation of software modules. Reiication, modularization and parameterization are currently not supported by TROLL. Appropriate language features are under discussion, together with foundational work on appropriate semantic models to formalize these concepts. Acknowledgements We gratefully acknowledge inspirations, discussions, suggestions and criticisms that we have received within the ISCORE project, the TU Braunschweig information systems group, and the INESC Lisbon computer science group. Especially, we appreciate contributions by Gunter Saake and Martin Gogolla who are in charge of the TROLL and TROLL light projects, respectively. In this paper, we give precise explanations for basic object-oriented features, focussing on the semantic concepts underlying TROLL. We demonstrate that our template speciication logic is a powerful enough tool to give complete semantic descriptions of …","PeriodicalId":121491,"journal":{"name":"An Everlasting Name","volume":"33 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"1900-01-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"An Everlasting Name","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.3138/9781442617179-010","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 0
Abstract
14 between objects and object speciications either. That is, what we have in mind is software layers sitting on top of each other within running systems. It is commonplace that modularization is of paramount importance to software construction and reconstruction. The object concept itself is a sort of modularization principle, but a rather in-the-small one. For eeective software reuse, we need an in-the-large concept which makes it possible to put building blocks into a library, nd the ones we need and put them together eeectively. Such software modules should have standardized interfaces by which they easily t together { like LEGO bricks. At least two interfaces are indispensible: a \downward" one for accepting lower-level services, and an \upward" one for providing higher-level services. Hidden in its body, the module should have correctly implemented the latter on top of the former. Often, it is necessary to have more than one \upward" interface, like databases with multiple views. That is, reiication as explained above is one of the essential concepts for software modules. Situations are becoming rare where we have to build new software. Reusing and adapting old software is greatly supported by a module concept which tells how to encapsulate existing software and put it together with other software. Software is rarely designed for one speciic purpose, and it is rarely reused in exactly the same way as it was once implemented. What is needed is a way to make modules generic and being able to instantiate them with diierent actual parameters. This way, a module can t exibly into many environments, reducing the need for costly ad-hoc redesign and reimplementation. Therefore, what is needed is a concept for parameterization and instantiation of software modules. Reiication, modularization and parameterization are currently not supported by TROLL. Appropriate language features are under discussion, together with foundational work on appropriate semantic models to formalize these concepts. Acknowledgements We gratefully acknowledge inspirations, discussions, suggestions and criticisms that we have received within the ISCORE project, the TU Braunschweig information systems group, and the INESC Lisbon computer science group. Especially, we appreciate contributions by Gunter Saake and Martin Gogolla who are in charge of the TROLL and TROLL light projects, respectively. In this paper, we give precise explanations for basic object-oriented features, focussing on the semantic concepts underlying TROLL. We demonstrate that our template speciication logic is a powerful enough tool to give complete semantic descriptions of …