Policy enforcement is a mechanism for ensuring that system components follow certain programmingpractices, comply with specified rules, and meet certain assumptions. Unfortunately, the most common mechanisms used tod...
详细信息
Policy enforcement is a mechanism for ensuring that system components follow certain programmingpractices, comply with specified rules, and meet certain assumptions. Unfortunately, the most common mechanisms used today for policy enforcement are documentation, training, and code reviews. The fundamental problem is that these mechanisms are expensive, time-consuming, and still error-prone. To cope with this problem, we present IRC (Implementation Restriction Checker), an extensible framework for automatically enforcing system-wide policies or contracts. The framework is built on top of a platform for aspect-oriented programming at the level of java byte-code instructions and is available as an eclipse plug-in as well as a standalone application. It includes a set of directly usable checkers and can be easily extended to implement new ones.
A new acceleration technology for java embedded virtual machines is presented in this paper. Based on the selective dynamic compilation technique, this technology addresses the J2ME/CLDC (java 2 Micro Edition for Conn...
详细信息
ISBN:
(纸本)9781595931719
A new acceleration technology for java embedded virtual machines is presented in this paper. Based on the selective dynamic compilation technique, this technology addresses the J2ME/CLDC (java 2 Micro Edition for Connected Limited Device Configuration) platform. The primary objective of our work is to come up with an efficient, lightweight and low-footprint accelerated embedded java Virtual Machine. This is achieved by the means of integrating a selective dynamic compiler that we called E-Bunny into the J2ME/CLDC virtual machine KVM. This paper presents the motivations, the architecture, the design and the implementation issues of E-Bunny and how we addressed them. Experimental results on the performance of our modified KVM demonstrate that we accomplished a speedup of 400% with respect to the latest version of KVM. This experimentation was carried on using standard J2ME benchmarks.
Software quality is an important external software attribute that is difficult to measure objectively. Several studies have identified a clear empirical relationship between static coupling metrics and software qualit...
ISBN:
(纸本)9781595931719
Software quality is an important external software attribute that is difficult to measure objectively. Several studies have identified a clear empirical relationship between static coupling metrics and software quality. However due to the nature of object-oriented programs, static metrics fail to quantify all the underlying dimensions of coupling, as program behaviour is a function of its operational environment as well as the complexity of the source code. In this paper a set of run-time object-oriented coupling metrics are described. A method of collecting such metrics which utilises the javaplatform Debug Architecture is described and a collection of java programs from the SPECjvm98 benchmark suite are evaluated. A number of statistical techniques including descriptive statistics, a correlation study and principal component analysis are used to assess the fundamental properties of the measures and investigate whether they are redundant with respect to the Chidamber and Kemerer static CBO metric. Results to date indicate that run-time coupling metrics can provide an interesting and informative qualitative analysis of a program and complement existing static coupling metrics.
In this paper we present recent research in the development of a voice enabled command and control application, using java, in which a remote robotic device, with a JVM, is controlled over a Wifi/WLAN/TCPIP network fr...
ISBN:
(纸本)9781595931719
In this paper we present recent research in the development of a voice enabled command and control application, using java, in which a remote robotic device, with a JVM, is controlled over a Wifi/WLAN/TCPIP network from a mobile handheld PC (iPaq) or a PC workstation. The research considers three different scenario configurations. A recognition grammar for command and control of the robot has been created and implemented in java, in part in the recognition engine and in part on the robot. The robot is a proxy for one of a number of JVM enabled intelligent devices that can be controlled in this manner. The physical topology involves java at each node endpoint, that is, at the handheld PC (iPaq), the PC workstation, the Linux server and onboard the robot (including its java based Lejos OS). Network communications is primarily WLAN with an element of IR and the possibility of BlueTooth (subject to the resolution of certain important java and Bluetooth issues). For placement of a speech recognition engine on Linux we are initially using Sphinx through the java Native Interface but plan to develop our own speech recognition engine, in java, for deployment on Linux. Traditionally speech processing in software has resided in the domain of C software development. Recent advances in java with the java Speech API, along with the java Media Framework, have facilitated the consideration of java for speech and language engineering activities. Our hypothesis is that java is now a suitable platform for speech and language engineering in software. The evidence provided by our initial results, for java speech recognition, achieved using the Cloudgarden implementation of JSAPI, validates this hypothesis. We outline our future plans to move our framework more fully into the ubiquitous computing arena and extend the reach of java and speech processing in support of command and control a structured way, including, for example, camera feedback to base.
Object-oriented architecture (OOA), component-based architecture (CBA), and service-based architecture (SBA) represent three technical architecture paradigms in current software systems. object, component, and service...
详细信息
Object-oriented architecture (OOA), component-based architecture (CBA), and service-based architecture (SBA) represent three technical architecture paradigms in current software systems. object, component, and service are three key concepts in distributed software systems. From implementation point of view, a service is implemented by one or more components, which in turn are often implemented in object-oriented programming languages like C+ + and java. Distributed component-based software systems can be structured in any of the architecture paradigms, some have more advantages than others depending on business requirements. Understanding the characteristics, features, benefits, and concerns of the architecture paradigms is crucial to the successful design, implementation and operation of a distributed system. In this paper, we describe the characteristics of the three architecture paradigms and the business drivers for their applications. The parallel evolution of architecture paradigms and software development methodologies is discussed in the context of practical business needs. Component-based software developers for distributed systems should decide on the architecture paradigms based on business requirements. The evolution of architecture paradigms and the selection of architecture paradigms have profound influences and impacts on component-based distributed systems, in the way components are designed and in the way component interactions are implemented. We discuss these influences and impacts with the goal of deriving some practical principles and strategies to best deal with them in software engineering practices.
The combination of lightweight and large-scale interoperability of Web services together with the 24x7 access of mobile devices represent a powerful platform for the development and delivery of pervasive and cost-effe...
详细信息
ISBN:
(纸本)0780379608
The combination of lightweight and large-scale interoperability of Web services together with the 24x7 access of mobile devices represent a powerful platform for the development and delivery of pervasive and cost-effective healthcare applications and systems. In this tutorial, we provide practical, step-by-step instruction as well as best practices for developing and deploying enterprise-class Web services and applications using J2EE (java 2 Enterprise Edition).
java programs that utilize standard extensions with native libraries are problematic since the extensions are platform dependent. We present general methods that make such programs runnable on multiple platforms in a ...
详细信息
ISBN:
(纸本)9780954414511
java programs that utilize standard extensions with native libraries are problematic since the extensions are platform dependent. We present general methods that make such programs runnable on multiple platforms in a way that is transparent to the user. We show a detailed example for standalone applications, Web Start programs, and applets with a specific such standard extension.
The combination of lightweight and large-scale interoperability of Web services together with the 24/spl times/7 access of mobile devices represent a powerful platform for the development and delivery of pervasive and...
详细信息
The combination of lightweight and large-scale interoperability of Web services together with the 24/spl times/7 access of mobile devices represent a powerful platform for the development and delivery of pervasive and cost-effective healthcare applications and systems. We provide practical, step-by-step instruction as well as best practices for developing and deploying enterprise-class Web services and applications using J2EE (java 2 Enterprise Edition).
The search for techniques to process growing mountains of data efficiently continues apace, nowhere more so than in the field of bioinformatics. Distributed processing represents a practical solution to the search for...
详细信息
ISBN:
(纸本)9780954414511
The search for techniques to process growing mountains of data efficiently continues apace, nowhere more so than in the field of bioinformatics. Distributed processing represents a practical solution to the search for more powerful architectures that can harness the power of multiple machines to solve a given *** this approach brings with it associated problems - selecting the most appropriate language to use in developing the software, development platform and system *** paper addresses some of these issues and also details observations gathered during the design and construction of one such distributed system [1] built using java to solve a well-known bioinformatics problem [2] in a parallel processing environment using artificial neural networks. This paper does not provide a detailed discussion of the problem itself or results obtained, however the inquisitive reader will find further details in [1].
This paper presents new applications for the creation of music using the javaplatform on the Internet. We describe the implementation Of two new musical instruments named Rabisco and Cordas Virtuais. The new instrume...
详细信息
ISBN:
(纸本)9780901519870
This paper presents new applications for the creation of music using the javaplatform on the Internet. We describe the implementation Of two new musical instruments named Rabisco and Cordas Virtuais. The new instruments can be used in interactive performances where MIDI Server receives several streams of MIDI data from several clients and transmits mixed sound back to the clients, thus allowing human and machine to cooperate in a new use for the Web: a place for distributed musical performance.
暂无评论