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.
Proper feedback can leverage students to better understand their difficulties and shorten the characteristic program-submit-refactor cycle of programming exercises. The ideal feedback is the result of a human inspection and analysis considering both functional and qualitative aspects of programs produced by students. On the other hand, automated assessment systems can provide rapid, cheap and standardized...
For popular Open Source Software (OSS) projects there are always a large number of worldwide developers who have been glued to making code contributions, while most of these developers play the role of casual contributors due to their very limited code commits (for fixing defects and enhancing features, casually). The frequent turnover of such group of casual developers and the wide variations among...
We develop an evolutionary model and theory of software technical debt accumulation to facilitate a rigorous and balanced analysis of its benefits and costs in the context of a large commercial enterprise software package. Our theory focuses on the optimization problem involved in managing technical debt, and illustrates the different tradeoff patterns between software quality and customer satisfaction...
In recent years, the influences of design patterns on software quality have attracted increasing attention in the area of software engineering, as design patterns encapsulate valuable knowledge to resolve design problems, and more importantly to improve the design quality. Numerous design patterns improve design quality by means of providing a more flexible architecture to enhance the maintainability...
Previous studies showed that linguistic information contained in source code is a valuable source of information and can help to improve program comprehension. The proposed research focuses on improving the quality of source code by studying common negative practices with respect to linguistic information. The definition of the so called linguistic antipatterns are expected to increase the awareness...
Identifiers are an important source of information during program understanding and maintenance. Programmers often use identifiers to build their mental models of the software artifacts. We have performed a preliminary study to examine the relation between the terms in identifiers, their spread in entities, and fault proneness. We introduced term entropy and context-coverage to measure how scattered...
The structure of a software system has a major impact on its maintainability. To improve maintainability, software systems are usually organized into subsystems using the constructs of packages or modules. However, during software evolution the structure of the system undergoes continuous modifications, drifting away from its original design, often reducing its quality. In this paper we propose an...
Given the increasing size and complexity of today's systems, reusability is an important quality aspect. In this work we consider development and reuse of reusable components in the context of agile methods. To distinguish the proposed approach from the more established systematic reuse approaches we call our proposal component recycling instead of component reuse. For the development of recyclable...
With system development becoming increasingly incremental, software reuse and stability stand out as two of the most desirable attributes of high-quality software. In this context, a key goal in contemporary software design is to simultaneously promote reuse and stability of the software modules. However, the achievement of this goal is far from trivial as it largely depends on the programming techniques...
While significant progress has been made over the last ten years in the research field of quality assessment, developers still can't take full advantage of the benefits of these new tools and technique. We believe that there at least two main causes for this lack of adoption: (i) the lack of integration in mainstream IDEs and (ii) the lack of support for a continuous (daily) usage of QA tools. In...
This paper presents a brief account of the development in the field usability of Web-applications. Quality of Web-sites play crucial role in success of a web-site. Usability has been considered most important factor amongst the other factors. Since Web based software are diverse and build by integrating numerous components it is not proper to have common quality model for all Web-applications. In...
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.