Static Analysis of Students' Java Programs
نویسندگان
چکیده
A recent industry survey (Townhidnejad and Hilburn, 2002) has reported that more than fifty percent of a software project’s budget is spent on activities related to improving software quality. Industry leaders claim that this is caused by the inadequate attention paid to software quality in the development phase. This paper introduces a static analysis framework which can be used to give beginning students practice in writing better quality Java programs and to assist teaching staff in the marking process. The framework uses both software engineering metrics and relative comparison to judge the quality of students’ programs and provide feedback about how solutions might be improved.
منابع مشابه
Control and Data Flow Execution of Java Programs
Background and Objective: Since decades understanding of programs has become a compulsory task for the students as well as for others who are involved in the process of developing software and providing solutions to open problems. In that aspect showing the problem in a pictorial presentation in a best manner is a key advantage to better understand it. Materials and Methods: This article provid...
متن کاملProperties of “Good” Java Examples
Example programs are well known as an important tool to learn computer programming. Realizing the significance of example programs, this study has been conducted with a goal to measure and evaluate the quality of examples used in academia. We make a distinction between “good” and “bad” examples, as badly designed examples may prove harmful for novice learners. In general, students differ from e...
متن کاملOn the Structure of Sharing in Open Concurrent Java Programs
This paper studies the structure of shared objects in open concurrent Java programs. It proposes classification of shared objects into three categories: central, owned and distributed. This classification facilitates program understanding and error detection in concurrent programs. The paper presents a new static analysis that infers central, owned and distributed objects in open concurrent Jav...
متن کاملApplying Static Analysis for Detecting Null Pointers in Java Programs
The detection of bugs in software has been a difficult and time-consuming manual task. Some bugs are hard to find as they manifest themselves far from the actual errors such as dereferencing null-pointer. To avoid these bugs, a useful static program analysis tool would inspect a program for presence of such errors. The goal of static analysis is to detect common run-time errors that are not det...
متن کاملInter-procedural Analysis for Parallelization of Java Programs
Parallelization of Java programs is a complex task due to inheritance, dynamic method dispatching and aliases. Our research [2] aims to perform static analysis of Java programs in order to identify implicit parallelism. In this paper, we discuss rst the inter-procedural analysis technique we are studying and implementing to characterize data-dependency. And then we enhance this framework with t...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 2004