{"title":"Towards an abstract language for dynamic modelling in object-oriented design","authors":"K. Nørmark","doi":"10.1109/TOOLS.1997.654713","DOIUrl":"https://doi.org/10.1109/TOOLS.1997.654713","url":null,"abstract":"Modelling with objects at a concrete level is attractive as a supplement to modelling with classes. The former is known as dynamic modelling and the latter as static modelling. The paper considers a language for describing dynamic models. The language is defined at an abstract level, thus allowing one to concentrate on the underlying conceptual issues rather than more superficial ones such as diagrammatic notations. The dynamic modelling is supported by a set of tools called DYNAMO. The author concentrates mainly on the concepts of the abstract modelling language, but also touches on the DYNAMO tools.","PeriodicalId":324271,"journal":{"name":"Proceedings of TOOLS USA 97. International Conference on Technology of Object Oriented Systems and Languages","volume":"10 5","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1997-07-28","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"120864196","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":"Mapping the OO-Jacobson approach into function point analysis","authors":"Thomas Fetcke, A. Abran, Tho-Hau Nguyen","doi":"10.1109/TOOLS.1997.654721","DOIUrl":"https://doi.org/10.1109/TOOLS.1997.654721","url":null,"abstract":"Function point analysis measures user requested functionality independent of the technology used for implementation. Software applications are represented in an abstract model that contains the items that contribute to the functional size. When function point analysis is applied to object-oriented software, the concepts of the development method have to be mapped into that abstract model. The article proposes a mapping of the use case driven object-oriented software engineering method by Jacobson et al. (1992) into the abstract function point model. The mapping has been formulated as a small set of concise rules that support the actual measurement process. The work demonstrates the applicability of function point analysis as a measure of functional software size to the OO-Jacobson approach. This supports the thesis that function point analysis measures independent of the technology used for implementation and that it can be used in the object-oriented paradigm.","PeriodicalId":324271,"journal":{"name":"Proceedings of TOOLS USA 97. International Conference on Technology of Object Oriented Systems and Languages","volume":"1 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1997-07-28","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"129223579","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":"A catalogue of general-purpose software design patterns","authors":"W. Tichy","doi":"10.1109/TOOLS.1997.654742","DOIUrl":"https://doi.org/10.1109/TOOLS.1997.654742","url":null,"abstract":"Software design patterns describe proven solutions to recurring software design problems. Knowledge of these patterns increases designers' abilities, leads to cleaner and more easily maintained software, speeds up implementation and test, and helps programmers document and communicate their designs. This paper catalogues over 100 general-purpose design patterns. The organizing principle of the catalogue is the use of patterns, i.e., the problems they solve. Other considerations, such as whether a pattern is behavioral or structural, how it is implemented, or whether it is high or low level, are secondary, because these aspects are less important for a designer looking for a solution to a design problem. The catalogue collects general-purpose patterns from a variety of sources. It includes older patterns such as Module and Layers as well as modern, object-oriented patterns such as Observer and Visitor.","PeriodicalId":324271,"journal":{"name":"Proceedings of TOOLS USA 97. International Conference on Technology of Object Oriented Systems and Languages","volume":"5 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1997-07-28","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"121433132","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":"Operator design pattern for data parallel computation","authors":"Jean-Lin Pacherie","doi":"10.1109/TOOLS.1997.654743","DOIUrl":"https://doi.org/10.1109/TOOLS.1997.654743","url":null,"abstract":"We present the Operator design pattern which can be used for the design of both sequential and data parallel applications. To reach this goal, we show how the participants of this pattern can be implemented either for a sequential or a parallel execution. Besides, reusing the sequential design for a parallel application decreases the cost of parallelization by allowing the maintenance of a unique application for the two execution environments. The proposed approach for parallel programming does not require any dedicated compiler or code pre-processing. Nothing but object oriented features, such as inheritance and polymorphism, is used to provide the distributed behaviour of the parallel participants of the pattern. The Operator pattern can help to solve many design issues in relation with the development of reusable software components for data collection processing. Moreover, we are confident that many programmers who want to migrate their applications towards parallelism can find it helpful.","PeriodicalId":324271,"journal":{"name":"Proceedings of TOOLS USA 97. International Conference on Technology of Object Oriented Systems and Languages","volume":"3 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1997-07-28","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"130098712","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":"From specification to management of composite object behavior","authors":"M. Magnan, S. Vauttier, M. Oussalah","doi":"10.1109/TOOLS.1997.654714","DOIUrl":"https://doi.org/10.1109/TOOLS.1997.654714","url":null,"abstract":"Many object-oriented systems provide composite objects to represent and manipulate objects having a complex structure. But only few systems provide adapted means to capture the behavior of composite objects. Nonetheless, managing the global behavior of composite objects is a complicated task which encompasses several aspects: the collaboration of the behavior of the composite object with that of its components, the management of its semantic integrity and the evolution of its behavior. Based on this taxonomy, a model is proposed for the specification, the representation and the management of the global behavior of composite objects.","PeriodicalId":324271,"journal":{"name":"Proceedings of TOOLS USA 97. International Conference on Technology of Object Oriented Systems and Languages","volume":"1 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1997-07-28","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"129790176","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":"SOLAT-a Simple Object-Oriented Language Analyzing Tool","authors":"Wolfgang Golubski, B. Pohlers","doi":"10.1109/TOOLS.1997.654711","DOIUrl":"https://doi.org/10.1109/TOOLS.1997.654711","url":null,"abstract":"Static program analysis, like data-flow analysis, is of central importance for enabling efficient implementations of object-oriented languages. The authors present a tool called SOLAT (Simple Object-Oriented Language Analyzing Tool) which can handle various program analyses in an unique framework. They describe, as an example of program analysis, a type analysis based on interprocedural data-flow analysis and show its benefits by empirical results. Furthermore, SOLAT provides a graphical interface to manage the results obtained by type analysis and can therefore be successfully used as an annotation or debugging tool during program development.","PeriodicalId":324271,"journal":{"name":"Proceedings of TOOLS USA 97. International Conference on Technology of Object Oriented Systems and Languages","volume":"32 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1997-07-28","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"125638834","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}
Nobuyuki Ikeda, K. Matsumoto, Y. Kageyama, Takuya Kishimoto, H. Nukushina, M. Isshiki
{"title":"Applying object-oriented technology to embedded software","authors":"Nobuyuki Ikeda, K. Matsumoto, Y. Kageyama, Takuya Kishimoto, H. Nukushina, M. Isshiki","doi":"10.1109/TOOLS.1997.654695","DOIUrl":"https://doi.org/10.1109/TOOLS.1997.654695","url":null,"abstract":"The results and new technology proposal of applying object-oriented technologies to embedded control software are discussed in this paper. The following obstacles exist when we apply object-oriented technologies to embedded control software: (1) the analysis and design method for control algorithms and the method of reusing them as software components, and (2) the size reduction method limiting the advantages of object-oriented technologies. We propose solutions for each of them. First, we extend the usual object-oriented analysis method; the object structures are identified based on the structure of the control algorithms. Second, we give a hierarchical implementation architecture on small microcomputers. We use assembly language at the lower level of this architecture, and the use of the C++ language is restricted to the upper level. We show this mixed use of an object-oriented language with assembly language gives the expected balance of productivity and performance.","PeriodicalId":324271,"journal":{"name":"Proceedings of TOOLS USA 97. International Conference on Technology of Object Oriented Systems and Languages","volume":"2 4 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1997-07-28","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"134526690","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":"Mechanical generation of robust class hierarchies","authors":"J. Frigó, R. Neumann, W. Zimmermann","doi":"10.1109/TOOLS.1997.654736","DOIUrl":"https://doi.org/10.1109/TOOLS.1997.654736","url":null,"abstract":"Reusability has been the main promise object-oriented programming gave to software developers. However, it turned out that object-oriented programming did not bring up measurably more reuse than modular programming. One reason for this was that inheritance had never been examined in detail which introduced unexpected exceptions. In (Zimmerman et al., 1996) this examination had been done at first. Since then it was possible to give rules for the correct use or the misuse of polymorphism. Zimmerman showed further how robust class hierarchies can be constructed. This paper describes a method for the specification and generation of robust hierarchies along a certain set of properties.","PeriodicalId":324271,"journal":{"name":"Proceedings of TOOLS USA 97. International Conference on Technology of Object Oriented Systems and Languages","volume":"6 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1997-07-28","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"123920296","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":"ROAD/EE: a prototyping environment for object-oriented specifications","authors":"N. Tamura, Tsuyoshi Nakajima","doi":"10.1109/TOOLS.1997.654718","DOIUrl":"https://doi.org/10.1109/TOOLS.1997.654718","url":null,"abstract":"Requirements analysis includes activities that acquire and compile users' needs into a baseline document (a software requirements specification), and validate the document. This document is generally used as the road map for later phases during software development. It is widely accepted that prototyping is a useful approach for extracting users' needs, and that formal and semi-formal specification languages are valid approaches for creating rigid requirements specifications. However, both have some short-comings for requirement analysis. The authors present an approach that achieves a balanced mix of prototyping and formal specification languages to enhance requirements analysis. In addition, they introduce a supporting environment, called ROAD/EE, that facilitates prototyping based on object-oriented specifications. The basic idea behind ROAD/EE is that of executing object-oriented specifications directly and animating its result with shape and movement of icons. ROAD/EE also helps users interact with the prototype so that users can easily find errors in the specification.","PeriodicalId":324271,"journal":{"name":"Proceedings of TOOLS USA 97. International Conference on Technology of Object Oriented Systems and Languages","volume":"1 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1997-07-28","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"128437657","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":"Steering object-oriented scientific computations","authors":"T. Yang, G. Furnish, P. Dubois","doi":"10.1109/TOOLS.1997.654712","DOIUrl":"https://doi.org/10.1109/TOOLS.1997.654712","url":null,"abstract":"Issues relevant to the steering mechanism for object-oriented scientific computations are examined. The concept of computation steering is delineated, and its benefits are discussed based on past experiences with its application to scientific computations. Experiences of using an object-oriented scripting language called Python to steer C++ applications are presented in further details. It is found that Python and C++ can be combined in an elegant way which combines the benefits of steering and the advantages of using an efficient object-oriented language for scientific modeling.","PeriodicalId":324271,"journal":{"name":"Proceedings of TOOLS USA 97. International Conference on Technology of Object Oriented Systems and Languages","volume":"33 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1997-07-28","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"128096633","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}