{"title":"A practical notation for object oriented analysis with a formal meaning","authors":"Johan. Hoffman","doi":"10.1109/TOOLS.1997.681873","DOIUrl":"https://doi.org/10.1109/TOOLS.1997.681873","url":null,"abstract":"A more formal approach to object oriented information modeling (H. Kilov and J. Ross, 1994) is proposed. The five basic associations (dependency, reference, composition, subtyping and symmetric relationship) are defined mathematically, but may still be used in a graphical notation in a user friendly way. In this way, it is possible to obtain an information model with a strict mathematical meaning without additional effort.","PeriodicalId":276758,"journal":{"name":"Proceedings. Technology of Object-Oriented Languages and Systems, TOOLS 25 (Cat. No.97TB100239)","volume":"52 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1997-11-24","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"123633129","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":"Modelling multi-threading in Java","authors":"A. Wabenhorst, John Michael Potter","doi":"10.1109/TOOLS.1997.681868","DOIUrl":"https://doi.org/10.1109/TOOLS.1997.681868","url":null,"abstract":"We show how formal methods can be used to model multithreading in Java and provide useful insights into developing programs using multithreaded objects. In particular, we give an example of how deadlock can be avoided. The formalism used is that of action systems.","PeriodicalId":276758,"journal":{"name":"Proceedings. Technology of Object-Oriented Languages and Systems, TOOLS 25 (Cat. No.97TB100239)","volume":"3 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1997-11-24","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"128656874","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 the Unified Modeling Language","authors":"Richard N. Thomas","doi":"10.1109/TOOLS.1997.681883","DOIUrl":"https://doi.org/10.1109/TOOLS.1997.681883","url":null,"abstract":"The Unified Modeling Language (UML) is emerging as one of the leading new objectoriented analysis and design notations. The UML is a rich language that attempts to provide a standard notation for all aspects of object-oriented system development. This half-day tutorial uses the design of a small system to introduce the key features of the UML. Upon completing this tutorial, participants will have an understanding of the UML and its application to object-oriented analysis and design.","PeriodicalId":276758,"journal":{"name":"Proceedings. Technology of Object-Oriented Languages and Systems, TOOLS 25 (Cat. No.97TB100239)","volume":"182 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1997-11-24","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"133470302","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":"Measuring object-oriented business models","authors":"Simon Moser, B. Henderson-Sellers, V. Mišić","doi":"10.1109/TOOLS.1997.681880","DOIUrl":"https://doi.org/10.1109/TOOLS.1997.681880","url":null,"abstract":"Early and accurate measurement of software products is an essential prerequisite for successful estimation and control of software development projects. Existing measurement techniques, however are inadequate in the context of newly emerging object oriented modelling approaches. The paper proposes a new measure, the System Meter, which is simple and intuitive, formally sound, takes reuse explicitly into account and can be easily automated. Empirical studies have shown that the System Meter is a better effort predictor than the well known Function Points.","PeriodicalId":276758,"journal":{"name":"Proceedings. Technology of Object-Oriented Languages and Systems, TOOLS 25 (Cat. No.97TB100239)","volume":"33 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1997-11-24","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"134316310","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":"Design patterns in garbage collection","authors":"Stuart A. Yeates, M. D. Champlain","doi":"10.1109/TOOLS.1997.681863","DOIUrl":"https://doi.org/10.1109/TOOLS.1997.681863","url":null,"abstract":"We describe several design patterns found in garbage collectors. The patterns we present are divided into two groups. The first group are two new design patterns: Rootset and TriColour that have been used in the garbage collection domain for up to 20 years. The second group of patterns are reported in the GoF book, such as Adapter, Facade, Iterator and Proxy, but we examine their use in the garbage collection domain. These patterns can be used by language implementers to provide a less efficient, but simpler and more flexible way of implementing and reusing garbage collectors in programming languages than current low-level and nonportable methods.","PeriodicalId":276758,"journal":{"name":"Proceedings. Technology of Object-Oriented Languages and Systems, TOOLS 25 (Cat. No.97TB100239)","volume":"30 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1997-11-24","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"115656567","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":"Open: A Third Generation OO Methodology- Advanced Tasks And Techniques","authors":"B. Henderson-Sellers","doi":"10.1109/TOOLS.1997.681890","DOIUrl":"https://doi.org/10.1109/TOOLS.1997.681890","url":null,"abstract":"Techniques for object-oriented software development range from well established (such CRC cards, scenario analysis and objectklass modeling) to newer developments. In this tutorial will be included some of the more recent developments within OPEN (Henderson-Sellers and Graham, 1997). These are likely to be selected from, for example, distributed computing, roles, rule modeling, project management, and patterns.","PeriodicalId":276758,"journal":{"name":"Proceedings. Technology of Object-Oriented Languages and Systems, TOOLS 25 (Cat. No.97TB100239)","volume":"19 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1997-11-24","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"126368853","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":"Upscaling the CLOS inheritance mechanism for multidimensional objects","authors":"Henry J. Borron","doi":"10.1109/TOOLS.1997.681878","DOIUrl":"https://doi.org/10.1109/TOOLS.1997.681878","url":null,"abstract":"The paper generalizes the linearization technique known in Lisp-based languages to multidimensional objects. A general principle is defined and applied to memory representations and methods. Linearization is done on a dimension-per-dimension basis. Such application, simplified in the case of representations, has to be complemented in the case of methods, first by a condition verified in practice and secondly by a rule, quite simple to apply. Combinations become purely declarative, with no further need for the OOP classical imperative anti-modular send-super construct (fall-next-method in CLOS, super in Smalltalk). Quite sophisticated combination methods with multiple roles as done in CLOS are supported. Multiple dispatch is also supported. This paper also looks at the desirable properties of a linearization algorithm fit for use in this context. Besides stability and monotonicity, already known, a third property is brought into light. Because it conflicts with monotonicity, a refined study was conducted: the paper proposes three candidate solutions, and selects the best compromise.","PeriodicalId":276758,"journal":{"name":"Proceedings. Technology of Object-Oriented Languages and Systems, TOOLS 25 (Cat. No.97TB100239)","volume":"58 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1997-11-24","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"131408200","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":"Comparisons between CORBA IDL & COM/DCOM MIDL: interfaces for distributed computing","authors":"C. Exton, D. Watkins, Dean Thompson","doi":"10.1109/TOOLS.1997.681859","DOIUrl":"https://doi.org/10.1109/TOOLS.1997.681859","url":null,"abstract":"The adoption of distributed computing has brought with it the problem of interoperability. Today, program developers need to interoperate over large and complex heterogeneous networks. Dealing with the interoperability problems that these networks can provide leads to increasing the complexity of the overall system. This complexity can be significantly reduced through the introduction of an interface definition language which adds an abstraction layer capable of handling many of the underlying problems. Two major interface definition languages being used today include CORBA's Interface Definition Language (IDL) and Microsoft's Interface Definition Language (MIDL) associated with COM/DCOM. We provide an overview of both interface definition languages and a comparison between them based on our experiences developing distributed systems using both. We draw some conclusions about the strengths and weaknesses of both.","PeriodicalId":276758,"journal":{"name":"Proceedings. Technology of Object-Oriented Languages and Systems, TOOLS 25 (Cat. No.97TB100239)","volume":"39 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1997-11-24","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"133275042","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":"Java does not distribute","authors":"Gerald Brose, Klaus-Peter Löhr, André Spiegel","doi":"10.1109/TOOLS.1997.681867","DOIUrl":"https://doi.org/10.1109/TOOLS.1997.681867","url":null,"abstract":"Java is commonly considered the ideal language for implementing software for the Internet. A closer look, however, reveals that distributed programming is poorly supported in Java. This is because the very design of the language rules out distribution-transparent remote invocation. It is shown that Sun's technology for distributed Java programming, RMI, makes things worse by allowing two different invocation semantics to hide behind an object variable. The consequences of using CORBA instead of RMI are investigated. Various options for changing either RMI or Java itself are considered, so that language platforms supporting a high degree of distribution transparency could be built.","PeriodicalId":276758,"journal":{"name":"Proceedings. Technology of Object-Oriented Languages and Systems, TOOLS 25 (Cat. No.97TB100239)","volume":"21 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1997-11-24","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"125951589","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":"Class-based models in the /spl pi/-calculus","authors":"Xiaogang Zhang, John Michael Potter","doi":"10.1109/TOOLS.1997.681874","DOIUrl":"https://doi.org/10.1109/TOOLS.1997.681874","url":null,"abstract":"The /spl pi/-calculus provides a formal foundation for processes with dynamic interaction structures, appropriate for modeling concurrent systems with changing network topologies, and mobile agents. Not surprisingly then, it has attracted the interest of researchers wishing to formalize models for concurrent object systems. To date, most such models have been object based. We present a class based model in the /spl pi/-calculus, which captures both the semantics of method sharing for classes, as well as multiple inheritance.","PeriodicalId":276758,"journal":{"name":"Proceedings. Technology of Object-Oriented Languages and Systems, TOOLS 25 (Cat. No.97TB100239)","volume":"90 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1997-11-24","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"125948371","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}