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.
Moonstone is a new plugin for Eclipse that supports developers in understanding exception flow and in writing exception handlers in Java. Understanding exception control flow is paramount for writing robust exception handlers, a task many developers struggle with. To help with this understanding, we present two new kinds of information: ghost comments, which are transient overlays that reveal potential...
To advance Java programming studies, we have developed the Java Programming Learning Assistant System (JPLAS). The test code plays a critical role in verifying the correctness of the source code from a student automatically at the server in the code writing problem in JPLAS. Previously, we proposed the test code generation tool that automatically generates the test code from the given source code...
We introduce a tool within the Code Bubbles development environment that allows for continuous execution as the programmer edits. The tool, SEEDE, shows both the intermediate and final results of execution in terms of variables, control flow, output, and graphics. These results are updated as the user edits. The user can explore the execution to find or fix bugs or use the intermediate values to help...
In order to promote Java programming educations, the Web-based Java Programming Learning Assistant System (JPLAS) has been implemented. JPLAS provides the code writing problem, where students write Java codes that satisfy the given specifications and submit them to the JPLAS server to obtain the marks using test codes instantly. Unfortunately, JPLAS could be accessed simply when the Internet connections...
Concurrent business processes easily suffer from the errors of data inconsistency. In order to check these errors, a tool named as DICER (Data Inconsistency CheckER) is developed. In DICER, a PD-net (Petri net with Data) can be edited to model business processes in which data operations are considered. Furthermore, the unfolding of the PD-net is produced and the error of data inconsistency is checked...
Establishing trust between developers working atdistant sites facilitates team collaboration in distributed software development. While previous research has focused on how to build and spread trust in absence of direct, face-to-face communication, it has overlooked the effects of the propensity to trust, i.e., the trait of personality representing the individual disposition to perceive the others...
Current static-analysis tools are often long-running, which causes them to be sidelined into nightly build checks. As a result, developers rarely use such tools to detect bugs when writing code, because they disrupt their workflow. In this paper, we present Cheetah, a static taint analysis tool for Android apps that interleaves bug fixing and code development in the Eclipse integrated development...
Database management systems (DBMSs) are one of the most important components in modern large-scale systems. Thus, it is important for developers to write code that can access DBMS correctly and efficiently. Since the behaviour of database access code can sometimes be a blackbox for developers, writing good test cases to capture problems in database access code can be very difficult. In addition to...
To improve Java programming educations, we have developed a Web-based Java Programming Learning System (JPLAS). To deal with students at different levels, JPLAS provides three levels of problems, namely, element fill-in-blank problems, statement fill-in-blank problems, and code writing problems. Unfortunately, since JPLAS has been implemented by various students who studied in our group at different...
To advance Java programming educations, we have developed the Java programming learning assistant system (JPLAS) that can verify the correctness of the code from a student automatically using the test-driven development (TDD) method. Then, to register a new assignment in JPLAS, teachers are required to write the test code in addition to the reference source code. Unfortunately, most teachers at schools...
Software development projects frequently rely on testing-related libraries to test the functionality of the software product automatically and efficiently. Many such libraries are available for Java, and developers face a hard time deciding which libraries are most appropriate for their project, or when to migrate to a competing library. We empirically analysed the usage of eight testing-related libraries...
Programming studies are used to achieve a variety of instructional objectives in computer science courses. Instead of using a programming case study as the lecture material, we adapt it to facilitate active learning activities in the classroom. While it preserves most programming tasks in context, our approach provides an opportunity for students to work out desirable solutions as they learn programming...
Within computer science education, we have spent considerable effort on the introduction to the discipline (particularly to programming) and the teaching of novice programmers. However, we do not often think about the teaching and learning for the intermediate students. Having data about student's perceptions coming into a second year data structures course, it became of interest to systematically...
In this paper we present a programming language for writing programs for matrices operations, such as addition, subtraction, multiplication, determinant, inverse and cofactors and so on. This language operates with any dimension matrices. The instructions of this language are simple to use and learn by mathematicians at high school and to elaborate LATEX format courses with a minimal efforts, because...
Compositional reuse of software libraries is important for productivity. To promote reliability and correctness, the field also needs a way to compose specifications for reuse. How-ever, specifications cannot be adapted by the use of wrappers in the same ways as code can, which leads to specifications being copied and modified. This copying and modification of specifications leads to poor maintainability...
This paper proposes a competence analytics framework called SCALE (Smart Competence Analytics on LEarning) and highlights how it can be applied to track the formation and development of learners' competences in the English writing domain. SCALE is essentially a generic competence analytics solution designed for all learning domains. This paper shows in detail how SCALE collects in a timely manner...
For PaaS-deployed (Platform as a Service) customer-facing applications (e.g., online gaming and online chatting), ensuring low latencies is not just a preferred feature, but a must-have feature. Given the popularity and powerfulness of Java platforms, a significant portion of today's PaaS platforms run Java. JVM (Java Virtual Machine) manages a heap space to hold application objects. The heap space...
Today industry demands attention towards the software quality in the development process than only software delivery. The quality of software can be measured, monitored and tested during different phases of software development lifecycle. Major failures of software affect money as well as the reputation of a company. In this scenario, fixing bugs in less time is an important factor. Today's challenge...
Rather than tediously writing unit tests manually, tools can be used to generate them automatically -- sometimes even resulting in higher code coverage than manual testing. But how good are these tests at actually finding faults? To answer this question, we applied three state-of-the-art unit test generation tools for Java (Randoop, EvoSuite, and Agitar) to the 357 real faults in the Defects4J dataset...
Habanero is a task parallel programming model that provides correctness guarantees to the programmer. Even so, programs may contain data races that lead to non-determinism, which complicates debugging and verification. This paper presents a sound algorithm based on permission regions to prove data race and deadlock freedom in Habanero programs. Permission regions are user annotations to indicate the...
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.