5662830
Exploiting FPGA Concurrency to Enhance JVM Performance
The Java Programming Language has been praised for its platform independence and portability, but because of its slow execution speed on a software Java Virtual Machine (JVM), some people decide to use faster languages such as C. Building a JVM in hardware is an obvious solution to this problem. Several approaches have been taken to try to achieve the best solution. One approach is by reducing the number of Java instructions a program has to execute along with directly executing instructions in hardware, for example on a Field Programmable Gate Array (FPGA), to increase the execution speed. Another approach is the translation of Java Byte Codes into native code by a FPGA and then executing the native code on a conventional CPU. Others have developed a multi-threaded JVM and exploited the parallelism offered by a FPGA and have specifically designed the JVM for real-time systems. This paper compares and contrasts all these approaches and then argues that the parallelism of a FPGA should be exploited in the most general way possible by not restricting the threads of execution to a specific task. It gives a method for building such a JVM and also some results from a JVM that was built using this method. The paper concludes that this approach should be taken to build a system that is capable of running threads of a Java program in parallel.
429886
Determining Component Reliability Using a Testing Index
Component-Based Software Engineering has the potential to provide reliable systems based on tested components quickly and economically, but these systems will only be as reliable as the components from which they are constructed. We propose a 6-point scale which can be used to rate the degree to which a component has been tested. This scale can be used by developers to assess the risk of using a third party component. Since a variety of test strategies are used, it is necessary to correlate testing strategies with our scale. In this paper, we examine the testing strategies specified in British Standard 7925-2 and show how they relate to the reliability levels that we propose. Since well-behaved use of resources is also a key factor in overall system reliability, we propose that an 'R' tag be added to the rated level when resource usage has been verified to be within reasonable bounds.
2529500
Automatic Recognition of Colloquial Australian Sign Language
This paper presents an automatic Australian sign language (Auslan) recognition system, which tracks multiple target objects (the face and hands) throughout an image sequence and extracts features for the recognition of sign phrases. Tracking is performed using correspondences of simple geometrical features between the target objects within the current and the previous frames. In signing, the face and a hand of a signer often overlap, thus the system needs to segment these for the purpose of feature extraction. Our system deals with the occlusion of the face and a hand by detecting the contour of the foreground moving object using a combination of motion cues and the snake algorithm. To represent signs, features that are invariant to scaling, 2D rotations, and signing speed are used for recognition. The features represent the relative geometrical positioning and shapes of the target objects, as well as their directions of motion. These are used to recognise Auslan phrases using Hidden Markov Models. Experiments were conducted using 163 test sign phrases with varying grammatical formations. Using a known grammar, the system achieved over 97% recognition rate on a sentence level and 99% success rate at a word level.
7164001
Software Component Certification
Although the stringent requirements of some critical applications may require independent certification, the authors see software developer self-certification as a viable alternative in many other cases. They accept that using software certification laboratories (SCLs) may work well for certain software distribution models, but they cannot be applied to all types of software development. The approach has several drawbacks. For example, an SCL may work well for larger software houses that ship mass-marketed software applications to the public, but it is less satisfactory for smaller developers who make reusable components or safety-critical software or for developers who belong to the freeware community.
14803486
Using symbolic execution to guide test generation
Although a number of weaknesses of symbolic execution, when used for software testing, have been highlighted in the literature, the recent resurgence of strongly-typed languages has created opportunities for re-examining symbolic execution to determine whether these shortfalls can be overcome. This paper discusses symbolic execution in general and makes two contributions: (a) overcoming one of the key problems, analysing programs with indexed arrays; and (b) describing the incorporation of a symbolic execution module for test case generation into an integrated testing tool. For methods which index arrays, a new approach determines all the possible values of each array index, allowing the generation of equivalence classes for every possible combination of array element aliases. An incremental simplification approach, which converts path expressions to canonical forms in order to identify infeasible paths at the earliest opportunity and thus reduce the analysis time, is also described. Symbolic execution is most effective when included in an integrated test and analysis environment: a component test bench was built with a symbolic execution module integrated into it, providing a toolbox of software component test and code analysis methods aimed at programmers at all levels.
16178058
Dataflow Java: implicitly parallel Java
Dataflow computation models enable simpler and more efficient management of the memory hierarchy-a key barrier to the performance of many parallel programs. This paper describes a dataflow language based on Java. Use of the dataflow model enables a programmer to generate parallel programs without explicit directions for message passing, work allocation and synchronisation. A small handful of additional syntactic constructs are required. A pre-processor is used to convert Dataflow Java programs to standard portable Java. The underlying run-time system was easy to implement using Java's object modelling and communications primitives. Although raw performance lags behind an equivalent C-based system, we were able to demonstrate useful speedups in a heterogeneous environment, thus amply illustrating the potential power of the Dataflow Java approach to use all machines-of whatever type-that might be available on a network when Java JIT compiler technology matures.
8422740
Characterizations of solution sets of convex vector minimization problems
Complete dual characterizations of the weak and proper optimal solution sets of an infinite dimensional convex vector minimization problem are given. The results are expressed in terms of subgradients, Lagrange multipliers and epigraphs of conjugate functions. A dual condition characterizing the containment of a closed convex set, defined by a cone-convex inequality, in a reverse-convex set, plays a key role in deriving the results. Simple Lagrange multiplier characterizations of the solution sets are also derived under a regularity condition. Numerical examples are given to illustrate the significance of the results.
9555637
Modeling virtual object behavior within virtual environment
Development of virtual reality systems requires iterations of specification, implementation and evaluation. Since correct evaluations of immersive VR systems require the tedious process of wearing many devices, there exist both temporal and spatial gaps between the implementation and evaluation stage, and this usually causes delay and inefficiency in the development process. In order to overcome this gap, there have been several approaches to constructing or modeling the physical aspects of the virtual world (or objects) within the virtual environment. However, modeling their behaviors is still carried out in conventional (2D) programming environments.This paper proposes an interaction model, and interfaces for specifying (and modifying) object behavior, within the virtual environment, based on an underlying virtual object model. The interaction model follows the concept of programming by demonstration, and based on it, we have built a system called the PiP (Programming virtual object behavior in virtual reality Program) "in" which a user can create, modify, test, and save object behaviors. We illustrate examples of interactive virtual worlds constructed using the PiP, and discuss its merits and shortcomings as a content development platform.
15278445
The influence of persuasion, training and experience on user perceptions and acceptance of IT innovation
Information technology (IT) cannot produce any positive outcome unless it is adopted and used. Theories and empirical research suggest that IT adoption and usage are determined by user beliefs and attitudes toward IT. However, little is known about what factors affect the formation and change over time of user beliefs and attitudes. It is critical to understand such factors so that effective managerial interventions can be created and implemented to positively influence user acceptance and use of IT innovations. Based on theories of innovation diffusion, information technology adoption, and persuasion, this study investigates the effect of persuasion, training, and direct-use experience on the formation and change over time of user perceptions and adoption decisions of IT innovation. The results of a longitudinal experimental study show that persuasion significantly affects the formation of users’ initial perceptions, attitude toward, and intention to adopt IT. Training provided in the introduction stage of IT innovation helps the user form a more realistic expectation. As users’ direct-use experience with IT innovation increases over time, their perceptions and adoption intentions change substantially. The results suggest that persuasion, training, and direct-use experience are important variables that need to be considered in IT innovation and adoption research and
17140302
Immersive authoring of tangible augmented reality applications
In this paper, we suggest a new approach for authoring tangible augmented reality applications, called 'immersive authoring.' The approach allows the user to carry out the authoring tasks within the AR application being built, so that the development and testing of the application can be done concurrently throughout the development process. We describe the functionalities and the interaction design for the proposed authoring system that are specifically targeted for intuitive specification of scenes and various object behaviors. Several cases of applications developed using the authoring system are presented. A small pilot user study was conducted to compare the proposed method to a non-immersive approach, and the results have shown that the users generally found it easier and faster to carry out authoring tasks in the immersive environment.
17318532
Enhancement of a WLAN-Based Internet Service
A wireless LAN (WLAN)-based Internet service, called NESPOT, of Korea Telecom (KT), the biggest telecommunication and Internet service company in Korea, has been operational since early 2002. As the numbers of subscribers and deployed access points (APs) increase, KT has been endeavoring to improve its service quality as well as the network management. In this paper, we introduce a joint effort between Seoul National University (SNU) and KT to achieve it. We have been addressing two major issues as part of the joint project thus far: (1) a unified WLAN management/maintenance tool; and (2) real-time traffic support enhancement. We present our on-going efforts as well as some preliminary results. Some issues, which need further attention for the future NESPOT service enhancement, are also introduced.