The Infona portal uses cookies, i.e. strings of text saved by a browser on the user's device. The portal can access those files and use them to remember the user's data, such as their chosen settings (screen view, interface language, etc.), or their login data. By using the Infona portal the user accepts automatic saving and using this information for portal operation purposes. More information on the subject can be found in the Privacy Policy and Terms of Service. By closing this window the user confirms that they have read the information on cookie usage, and they accept the privacy policy and the way cookies are used by the portal. You can change the cookie settings in your browser.
We present a replication at ESPOCH (an Ecuadorian university) of the well-known multinational, multiinstitutional study conducted by a working group at the ITiCSE 2004 conference, known as the Leeds group. The paper has three main contributions. Firstly, we found that most of the results are in common with the Leeds group ten years after. Secondly, we found some interesting differences, specific of...
Mobile device has fewer resources compare to desktop computers. Mobile application development is in the need of appropriate strategies in view of resource utilizations. Although some other design strategies are required for software development, programming paradigm is the core. The overall aim of this study is to formulate the programming paradigms whereby achieve the optimal resource utilizations...
Java Native Access (JNA) has been proposed to alleviate the burden of programming in Java Native Interface (JNI). JNA allows programmer to call native functions without writing any JNI codes. However, JNA suffers from some performance degradation. To overcome this problem, in this paper, we modify the JNA source code and integrate the LLVM JIT compiler into JNA to improve the performance. Our experiment...
We are facing a hardware revolution given by the increasing availability of multicore computers, clusters, Grids, and combinations of these. Consequently, there is plenty of computational power, but today's programmers are not fully prepared to exploit parallelism and distribution. Particularly, Java has helped in handling the heterogeneity of such environments, but there is a lack of facilities to...
Parallel and distributed computing is becoming a norm with the advent of multi-core, networked, and cloud computing platforms. New programming languages are emerging for these platforms, e.g., the X10 language from IBM. While these languages explicitly support concurrent programming, they cannot eliminate all concurrency related bugs, which are usually hard to find. Finding such bugs is easier using...
This paper reports on a project to migrate PL/I programs running on an IBM mainframe under Z-OS to Java. The key point is that the transformation of the Code to Java was fully automated using the PLI2Java code transformation tool. The paper describes how the PL/I code was first reengineered to raise the quality and to put it into a form from which it could be converted over to an object - oriented...
Loop invariants play a major role in program verification. Though various techniques have been applied to automatic loop invariants generation, most interesting ones often generate only candidate invariants. Thus, a key issue to take advantage of these invariants in a verification process is to check that these candidate loop invariants are actual invariants. This paper introduces a new technique...
Assertions or formal program specifications are fundamental to build more reliable software. One of the most important applications of assertions is found in the design by contract metaphor: pre-conditions, invariants and post-conditions. Current assertion approaches use some software technology that relies on simple mechanisms; however their actual implementation can be both quite complex and instrusive...
Scilab is a technical computing environment programming language and an open source software. Due to its ease of use and its strong graphics capabilities, it has become popular across many disciplines. The jLab environment provides a Scilab like scripting language that is executed by an interpreter implemented in the Java language. This language supports all the basic programming constructs and an...
Software reuse technology can improve the efficiency of program development greatly. A reusable Apla-Java component has been developed in the research of PAR (Partition and Recur) method and their tools. We have made the most of reuse-driven software theory and the partial implementation theory for reference which ensure the accuracy of the components effectively. Apla-Java component is an important...
Modifying an application usually means to stop the application, apply the changes, and start the application again. That means, the application is not available for at least a short time period. This is not acceptable for highly available applications. One reasonable approach which faces the problem of unavailability is to change highly available applications at runtime. To allow extensive runtime...
Dynamic fault handling is a new approach for dealing with fault management in service-oriented applications. Fault handlers, termination handlers and compensation handlers are installed at execution time instead of being statically defined. In this paper we present this programming style and our implementation of dynamic fault handling in JOLIE, providing finally a nontrivial example of its usage.
The use of collections for grouping objects is very common in object oriented applications, and even small-scale programs developed by undergraduate students. One of the most popular collections is the ArrayList that according to many researchers should be emphasized over the fundamental data structure of Arrays. However, learning to use an ArrayList collection correctly is not easy. In this paper...
Set the date range to filter the displayed results. You can set a starting date, ending date or both. You can enter the dates manually or choose them from the calendar.