{"title":"Combining object orientation and dataflow modelling in the VISSION simulation system","authors":"A. Telea","doi":"10.1109/TOOLS.1999.778999","DOIUrl":"https://doi.org/10.1109/TOOLS.1999.778999","url":null,"abstract":"Scientific visualization and simulation frameworks mostly use data/event flow mechanisms for simulation specification, control, and interactivity. Even though object orientation powerfully and elegantly models many application domains, integration of OO libraries in such systems remains difficult. The elegance and simplicity of OO design gets lost in the integration phase, as most systems do not support combination of OO and dataflow concepts. We propose a general-purpose OO visualization and simulation system which addresses simulation design, control and interactivity by merging OO and dataflow modelling in a single abstraction. The system's advantages over similar ones are illustrated by a comprehensive set of examples.","PeriodicalId":434404,"journal":{"name":"Proceedings Technology of Object-Oriented Languages and Systems. TOOLS 29 (Cat. No.PR00275)","volume":"59 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1999-06-07","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"124942092","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"Consistent extension of components in the presence of explicit invariants","authors":"A. Mikhajlova","doi":"10.1109/TOOLS.1999.779001","DOIUrl":"https://doi.org/10.1109/TOOLS.1999.779001","url":null,"abstract":"Component extensions must semantically conform to the components they extend to guarantee consistency of the extended system. Semantic conformance usually means preservation of observable properties while decreasing nondeterminism; in the presence of explicit invariants, it also involves preservation of invariants by the extended and the extending components. Depending on the reuse technique employed for constructing extensions, the requirements that must be imposed on components to guarantee consistency vary. We concentrate on the issue of ensuring consistency of extensions with forwarding as the reuse technique, formulating requirements that allow consistent extension of components in the presence of explicit invariants. Also, we discuss additional problems arising with the use of inheritance and propose solutions to these problems.","PeriodicalId":434404,"journal":{"name":"Proceedings Technology of Object-Oriented Languages and Systems. TOOLS 29 (Cat. No.PR00275)","volume":"34 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1999-06-07","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"127737654","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"CORBA and DCOM: Architectures for Distributed Computing","authors":"D. Watkins","doi":"10.1109/TOOLS.1999.10014","DOIUrl":"https://doi.org/10.1109/TOOLS.1999.10014","url":null,"abstract":"Summary form only given, as follows. Over the last decade, object-oriented development methods and techniques have gained rapid acceptance in many areas, for example Graphical User Interfaces (GUI) and Network Programming. Currently there are two major standard architectures available to support Distributed Object-Oriented (OO) Programming: the Object Management Group¿s Common Object Request Broker Architecture and Microsoft¿s Distributed Component Object Model. While both standards address the same problems, i.e., language, hardware and operating system independence, they provide different sets of features for application developers. This tutorial provides an overview of both architectures and a comparison of program development under each. We draw some conclusions about the suitability of each architecture for different programming requirements.","PeriodicalId":434404,"journal":{"name":"Proceedings Technology of Object-Oriented Languages and Systems. TOOLS 29 (Cat. No.PR00275)","volume":"32 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1999-06-07","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"125781453","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"SmartBooks: a step beyond active-cookbooks to aid in framework instantiation","authors":"Alvaro Ortigosa, M. Campo","doi":"10.1109/TOOLS.1999.779006","DOIUrl":"https://doi.org/10.1109/TOOLS.1999.779006","url":null,"abstract":"In this work we present SmartBooks, a new approach to support framework instantiation based on the active cookbook concept, extended with a combination of the concept of user-task modeling and least commitment planning methods. Based on this technique, a tool can present to the developer the different high level activities that can be carried on when creating a new application from a framework, taking as a basis the documentation provided by the designer through instantiation rules. For example, if the framework is in the accounting domain, some of the initial activities may be to create a new type of account, or to describe a new algorithm to calculate the tax rate. For each of these high level activities, there is a list of tasks that the user must carry out in order to complete the activity. When the user selects her next objective, the tool is able to build the sequence of tasks that have to be carried out to accomplish that objective; this list of tasks is called the instantiation plan, and the process of plan creation is named planning. In this paper we present the main characteristics of the planning approach and a example of the instantiation tool being developed.","PeriodicalId":434404,"journal":{"name":"Proceedings Technology of Object-Oriented Languages and Systems. TOOLS 29 (Cat. No.PR00275)","volume":"17 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1999-06-07","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"133752296","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"Introduction to OCL","authors":"J. Warmer, A. Kleppe","doi":"10.1109/TOOLS.1999.10017","DOIUrl":"https://doi.org/10.1109/TOOLS.1999.10017","url":null,"abstract":"Summary form only given, as follows. Visual modeling languages are appealing because \"a picture tells more than a thousand words.\" The UML is such a visual language and is well known for its graphical notation and diagramming techniques. However, pictures often only tell half of the story and additional information needs to be captured in a different way. For this reason the UML includes the Object Constraint Language (OCL), a textual language which allows a UML modeler to specify these additional constraints. This tutorial shows the importance of constraints as an object-oriented modeling technique and how they add value to the visual modeling techniques and help \"telling the complete story.\" The OCL language itself and the connection with the visual UML diagrams is thoroughly explained. The final part of the tutorial will show how one can achieve a good balance between the visual and constraint modeling in UML.","PeriodicalId":434404,"journal":{"name":"Proceedings Technology of Object-Oriented Languages and Systems. TOOLS 29 (Cat. No.PR00275)","volume":"96 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1999-06-07","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"134529696","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"Characterizing stability in evolving frameworks","authors":"Michael Mattsson, J. Bosch","doi":"10.1109/TOOLS.1999.779005","DOIUrl":"https://doi.org/10.1109/TOOLS.1999.779005","url":null,"abstract":"Object-oriented application frameworks present one of the most successful approaches to developing reusable assets in industry, but developing frameworks is both difficult and expensive. Frameworks generally evolve through a number of iterations due to the incorporation of new requirements and better domain understanding. Since changes to frameworks have a large impact on the applications build based on the asset, it is important to assess the stability of a framework. Recently, an approach for assessing framework stability has been proposed. We have extended and applied the assessment approach on one proprietary telecommunication framework and two commercial GUI application frameworks. Based on our findings we formulate a set of hypotheses, which characterize the stability of an object-oriented application framework. We believe these hypotheses to be the most promising ones for further studies of framework stability.","PeriodicalId":434404,"journal":{"name":"Proceedings Technology of Object-Oriented Languages and Systems. TOOLS 29 (Cat. No.PR00275)","volume":"259 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1999-06-07","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"131999744","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"Optimizations of Eiffel programs: SmallEiffel, the GNU Eiffel Compiler","authors":"Dominique Colnet, Olivier Zendra","doi":"10.1109/TOOLS.1999.779065","DOIUrl":"https://doi.org/10.1109/TOOLS.1999.779065","url":null,"abstract":"The design of the Eiffel language makes it possible to perform global optimizations on Eiffel programs. We describe some of the techniques we used in SmallEiffel, The GNU Eiffel Compiler, to generate highly efficient excecutables for Eiffel programs. Most of these techniques-related to global analysis or not-may also be applied to other object oriented languages.","PeriodicalId":434404,"journal":{"name":"Proceedings Technology of Object-Oriented Languages and Systems. TOOLS 29 (Cat. No.PR00275)","volume":"154 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1999-06-07","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"122967642","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
M. Woodman, R. Griffiths, S. Holland, Hugh Robinson, M. Macgregor
{"title":"Employing object technology to expose fundamental object concepts","authors":"M. Woodman, R. Griffiths, S. Holland, Hugh Robinson, M. Macgregor","doi":"10.1109/TOOLS.1999.779081","DOIUrl":"https://doi.org/10.1109/TOOLS.1999.779081","url":null,"abstract":"We explore technical issues in the design of programming tools, development environments, simulations, code examples, user interface frameworks and pedagogies for a university-level course on object-oriented software development. The course, M206 Computing: An Object-Oriented Approach has been specifically developed for distance learning, and is enrolling over 5,000 students per year (average age 37) in the UK, Europe and Singapore. The course introduces computing via an object-oriented approach. M206 is substantial in extent representing one sixth of a degree. It embodies a practical, industry oriented view of computing and includes programming, analysis, design and group working. Considerable effort has been invested in making the simplicity, consistency and power of object technology accessible to and capable of being applied by beginners. A diverse set of educational media, such as CD-ROMs, TV and the Web, have been deployed as learning resources. We describe the agenda for the course; its object-oriented pedagogy and our strategy for delivery. We explain measures taken to avoid misconceptions about objects, our analysis and design method, and the Smalltalk programming environment we have developed specifically for learners and which is crucial to our approach. We outline how our adherence to the separation of view and domain model leads to technical innovations. Concluding remarks reflect on the benefits a reflexive strategy, both in education and training.","PeriodicalId":434404,"journal":{"name":"Proceedings Technology of Object-Oriented Languages and Systems. TOOLS 29 (Cat. No.PR00275)","volume":"140 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1999-06-07","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"127273590","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"Needs of object-oriented languages for physics knowledge representation in the simulation field","authors":"Juan José Ramos, M. P. Eroles","doi":"10.1109/TOOLS.1999.779009","DOIUrl":"https://doi.org/10.1109/TOOLS.1999.779009","url":null,"abstract":"To cope with the growing demands for simulation models of ever increasing complex industrial systems, the research community effort has been mainly focused on creating different software tools which simplify the modelling task. There is a recognised necessity of modelling tools supporting libraries of non-causal models which could be coupled in the same way as physical units are assembled in a system. This work presents an object-oriented modelling language, PML, designed to support a modelling methodology where system models are described by linking system component models analogously as the system components are linked. This modelling language introduces a new modularization of physical knowledge, making a clear separation between the physical behaviour representation (declarative knowledge) and the computational aspects of model simulation (procedural knowledge).","PeriodicalId":434404,"journal":{"name":"Proceedings Technology of Object-Oriented Languages and Systems. TOOLS 29 (Cat. No.PR00275)","volume":"59 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1999-06-07","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"127369989","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
{"title":"Abstract object state and version recovery in N-version programming","authors":"A. Romanovsky","doi":"10.1109/TOOLS.1999.779002","DOIUrl":"https://doi.org/10.1109/TOOLS.1999.779002","url":null,"abstract":"The paper deals with the use of software diversity, specifically, N-version programming (NVP) in object oriented (OO) systems. We formulate the problem of faulty version recovery and show how our NVP scheme, developed recently, can be extended to solve it. Our approach relies on using the abstract version state, which represents a common general description of the states of all correct version objects. The recovery consists in mapping the state of a correct version onto the state of the faulty version via the abstract state. We introduce a formal description of our model and show that many ideas related to object state abstraction can be found in the existing research on OO programming. We discuss extensions of LAYOM and PSL as promising practical approaches for developing recovery features in OO programming. As an alternative solution, we propose a meta-object architecture and a related protocol which can facilitate the solution of the object version recovery problem. The paper finishes with a brief discussion of engineering steps which have to be done for developing recoverable version objects and of some approaches which can improve the reusability of the scheme proposed.","PeriodicalId":434404,"journal":{"name":"Proceedings Technology of Object-Oriented Languages and Systems. TOOLS 29 (Cat. No.PR00275)","volume":"29 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1999-06-07","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"128970938","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}