{"title":"Supporting software reuse by the individual programmer","authors":"Min-Sheng Hsieh, E. Tempero","doi":"10.1145/1151699.1151702","DOIUrl":"https://doi.org/10.1145/1151699.1151702","url":null,"abstract":"Despite its long history and its benefits, software reuse has yet to become a common practise among software programmers. While there is much ongoing research, it focuses on large-scale organisation-level techniques and methodologies. There is very little research that considers reuse at the personal level as an important factor. The lack of focus and tool support has limited the potential for developers to reuse their past efforts. This paper introduces ICRT (Individual Code Reuse Tool), which provides support for an individual to efficiently reuse code fragments written in the past. ICRT uses the CBR methodology to manage the code fragments, and is integrated with the Eclipse IDE.","PeriodicalId":136130,"journal":{"name":"Australasian Computer Science Conference","volume":"23 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1900-01-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"121668431","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 Functional Taxonomy for Software Watermarking","authors":"J. Nagra, C. Thomborson, C. Collberg","doi":"10.1145/563857.563822","DOIUrl":"https://doi.org/10.1145/563857.563822","url":null,"abstract":"Despite the recent surge of interest in digital watermarking technology from the research community, we lack a comprehensive and precise terminology for software watermarking. In this paper, we attempt to fill that gap by giving distinctive names for the various protective functions served by software watermarks: Validation Mark, Licensing Mark, Authorship Mark and Fingerprinting Mark. We identify the desirable properties and specific vulnerabilities of each type of watermark, and we illustrate the utility of our terminology in a discussion of recent results in software watermarking.","PeriodicalId":136130,"journal":{"name":"Australasian Computer Science Conference","volume":"14 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1900-01-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"133228298","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":"An investigation of the state formation and transition limitations for prediction problems in recurrent neural networks","authors":"A. Kennedy, C. MacNish","doi":"10.1145/1378279.1378303","DOIUrl":"https://doi.org/10.1145/1378279.1378303","url":null,"abstract":"Recurrent neural networks are able to store information about previous as well as current inputs. This \"memory\" allows them to solve temporal problems such as language recognition and sequence prediction, and provide memory elements for larger cognitive networks. It is generally understood that there is an (increasing) relationship between the number of nodes (and connections) in a network, the capabilities of the network, and the amount of training required. However the specifics of this relationship are less well understood. In particular, given that the state of a recurrent network is encoded as a real-valued vector of activation levels, even for small networks there are infinitely many states to choose from. What then determines, or limits, the capabilities of the network? \u0000 \u0000In this paper we use dynamical systems techniques to examine this question in regard to temporal lag. We show that for simple delay problems that the network is unable to solve, the system is able to learn sufficient state representations, but appears to be unable to create transitions that allow it to access those states in the correct order (or equivalently, is unable to arrange its states to suit the transitions that it can support).","PeriodicalId":136130,"journal":{"name":"Australasian Computer Science Conference","volume":"10 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1900-01-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"121787392","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":"Essential Use Cases and Responsibility in Object-Oriented Development","authors":"R. Biddle, J. Noble, E. Tempero","doi":"10.1145/563857.563803","DOIUrl":"https://doi.org/10.1145/563857.563803","url":null,"abstract":"Essential use cases are abstract, lightweight, technology-free dialogues of user intention and system responsibility that effectively capture requirements for user interface design. We describe how essential use cases can also drive object-oriented development directly, without any intervening translation, and allowing user interface development and object-oriented development to proceed in parallel. Working with essential use cases yields some unexpected further benefits: the crucial common vocabulary of responsibilities lets designers trace directly from the essential use cases to the objects in their design.","PeriodicalId":136130,"journal":{"name":"Australasian Computer Science Conference","volume":"192 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1900-01-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"121880698","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":"Identifying refactoring opportunities by identifying dependency cycles","authors":"H. Melton, E. Tempero","doi":"10.1145/1151699.1151703","DOIUrl":"https://doi.org/10.1145/1151699.1151703","url":null,"abstract":"The purpose of refactoring is to improve the quality of a software system by changing its internal design so that it is easier to understand or modify, or less prone to errors and so on. One challenge in performing a refactoring is quickly determining where to apply it. We present a tool (Jepends) that analyses the source code of a system in order to identify classes as possible refactoring candidates. Our tool identifies dependency cycles among classes because long cycles are detrimental to understanding, testing and reuse. We demonstrate our tool on a widely-downloaded, open-source, medium-sized Java program and show how cycles can be eliminated through a simple refactoring.","PeriodicalId":136130,"journal":{"name":"Australasian Computer Science Conference","volume":"71 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1900-01-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"127358115","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":"Integrating recommendation models for improved web page prediction accuracy","authors":"F. Khalil, Jiuyong Li, Hua Wang","doi":"10.1145/1378279.1378296","DOIUrl":"https://doi.org/10.1145/1378279.1378296","url":null,"abstract":"Recent research initiatives have addressed the need for improved performance of Web page prediction accuracy that would profit many applications, e-business in particular. Different Web usage mining frameworks have been implemented for this purpose specifically Association rules, clustering, and Markov model. Each of these frameworks has its own strengths and weaknesses and it has been proved that using each of these frameworks individually does not provide a suitable solution that answers today's Web page prediction needs. This paper endeavors to provide an improved Web page prediction accuracy by using a novel approach that involves integrating clustering, association rules and Markov models according to some constraints. Experimental results prove that this integration provides better prediction accuracy than using each technique individually.","PeriodicalId":136130,"journal":{"name":"Australasian Computer Science Conference","volume":"53 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1900-01-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"121448442","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":"Bandwidth Reservation Strategies for Mobility Support of Wireless Connections with QoS Guarantees","authors":"Ruston Hutchens, Samar Singh","doi":"10.1145/563857.563816","DOIUrl":"https://doi.org/10.1145/563857.563816","url":null,"abstract":"This paper examines QoS guarantees for bandwidth in mobile wireless networks, with a focus on reducing dropped connections on handoff. We can achieve this by reserving bandwidth for connections that might move into a cell from a neighbouring one. We develop a novel framework for analysing issues relevant to handoff. The principal novelty of this framework is the use of an arbitrary planar graph (network) to model the adjacency relationships of cells in the network. Mobility patterns of the mobile stations are then captured by simple probabilities for moving to a neighbouring cell, leading to a notion of a shadow cluster that is very easy to implement. Three strategies for bandwidth reservations are then proposed and investigated. They range from simple (used as a baseline for comparison) to more complex ones using the shadow cluster concept. We study these strategies by simulation and attempt to determine important parameters and quantify what is gained by added complexity and other variations. Our results show that the topology has an important influence on the results of a reservation policy. However, one of our strategies (the optimistic one) appears to be uniformly superior, because it adapts to changing network topologies as well as movement patterns.","PeriodicalId":136130,"journal":{"name":"Australasian Computer Science Conference","volume":"24 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1900-01-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"130110639","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 Dynamic Communication Algorithm for Digital Halftoning","authors":"P. Hingston, R. L. While","doi":"10.1145/563857.563815","DOIUrl":"https://doi.org/10.1145/563857.563815","url":null,"abstract":"We present a novel algorithm for digital halftoning. The algorithm combines a technique based on error diffusion with the use of a cost function to determine termination. Its chief advantages include the use of randomness to avoid visual artifacts in the binary image and its amenability to parallel execution. The algorithm is a member of the class of \"dynamic communication algorithms\" which make novel use of dynamically-routed messages to structure the execution of a program.","PeriodicalId":136130,"journal":{"name":"Australasian Computer Science Conference","volume":"25 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1900-01-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"132961209","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":"Model Checking Railway Interlocking Systems","authors":"Kirsten Winter","doi":"10.1145/563857.563836","DOIUrl":"https://doi.org/10.1145/563857.563836","url":null,"abstract":"For supporting the analysis of railway interlocking systems in the early stage of their design we propose the use of model checking. We investigate the use of the formal modelling language CSP and the corresponding model checker FDR. In this paper, we describe the basics of this formalism and introduce our formal model of a railway interlocking system. Checking this model against the given safety requirements, the signalling principles, we get useful counter-examples that help to debug the given interlocking design. This work provides a successful example of how formal methods can be used to support the industrial development process.","PeriodicalId":136130,"journal":{"name":"Australasian Computer Science Conference","volume":"90 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1900-01-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"124627595","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":"AdJava - Automatic Distribution of Java Applications","authors":"M. M. Fuad, M. Oudshoorn","doi":"10.1145/563857.563810","DOIUrl":"https://doi.org/10.1145/563857.563810","url":null,"abstract":"The majority of the world's computing resources remains idle most of the time. By using this resource pool, an individual computation may be completed in a fraction of time required to run the same computation on a single machine. However, distributing a program over a number of machines proves to be a tedious and difficult job. This paper introduces a system, called AdJava, which harnesses the computing power of these under-utilized heterogeneous computers by automatically distributing the user application across the available resources. In addition to providing transparent automatic distribution, AdJava provides load balancing and migration of distributed objects through the use of intelligent software agents. The system provides all this support without any programmer involvement and without modifying the Java Virtual Machine (JVM). AdJava's range of features, combined with its ease of use, makes it a powerful system for distributed computing.","PeriodicalId":136130,"journal":{"name":"Australasian Computer Science Conference","volume":"14 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1900-01-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"122903850","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}