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.
Researchers have developed ways to think about, visualize, and measure software modularity and its erosion objectively and quantifiably. Using these techniques, you’ll be able to determine whether your software is modular and identify complexity hotspots in your code that warrant further investigation.
We describe a security visualization tool for finding algorithmic complexity attacks in Java bytecode. Our tool, which we call J-Viz, visualizes connected directed graphs derived from Java bytecode according to a canonical node ordering, which we call the sibling-first recursive (SFR) numbering. The particular graphs we consider are derived from applying Shiver's k-CFA framework to Java bytecode,...
Quantitative description and complexity understanding of software architecture are difficult questions of software development. Taking The complexity evolution of VTK software version as an example, this paper proposes a model for predicting the complexity of software evolution based on logistic equation and quantitative validation of Lehman's law. Its basic idea is that the software architecture...
In order to derive executable software artefacts, the build system needs to be maintained properly along with the evolution of source code. However, in large software projects the building process often becomes effort-consuming, and sometimes the building process contains defects or even fails. To cope with these challenges, the first step is to understand the build process. In this paper, we take...
Today, it has been increasing software in most applications of most industry fields. Likewise, diverse industries (such as cars, aviation, and medical equipment) not only have adopted software, SW-related safety issues but also have emerged. Despite the concerns over SW quality, the competitiveness of local SW quality has diminished. With Safe SW technology, we need to reduce the socio- economic damages...
Block-based programming languages and their development environments have become a widely used educational platform for novices to learn how to program. In addition, these languages and environments have been increasingly embraced by domain experts to develop end-user software. Though popular for having a "low floor" (easy to get started), programs written in block-based languages often...
UML is defined as a visual modeling language for specifying, constructing, and documenting software intensive systems. In that context, UML diagrams play a central role in the whole software engineering process, starting from early analysis, through implementation, to maintenance. Recent surveys of UML use in industry showed that software practitioners use it on a regular basis, and particularly for...
In Software Product Line (SPL) engineering, Feature Models (FMs) are widely used to capture and manage variability in a sound and organized fashion. Though semantics, notations and reasoning support are well established, maintaining large FMs is still an open problem. As large FMs naturally contain different concerns, some related to domains, others being inherently cross-cutting ones, it is challenging...
Data stream clustering aims at studying large volumes of data that arrive continuously and the objective is to build a good clustering of the stream, using a small amount of memory and time. Visualization is still a big challenge for large data streams. In this paper we present a new approach using a hierarchical and topological structure (or network) for both clustering and visualization. The topological...
In this paper, we investigated quality of class models from perspective of executability by focusing on relation between class model and processing code operating on that class model. We proposed new metric - relation generality - for measuring the quality of class models and related that metric to cyclomatic complexity of the processing code.We elaborated how overgeneralized class model leads to...
The comprehension and correct specification of requirements increase with the complexity of present software systems, particularly if they have to respond to requirements going beyond the range of the main system functionality and that must be taken into account early during the development process. The Scientific community focuses now on the requirements engineering discipline, for the importance...
Modern software development frequently involves developing multiple codelines simultaneously. Improvements to one codeline should often be applied to other codelines as well, which is typically a time consuming and error-prone process. In order to reduce this (manual) effort, changes are applied to the system's modules and those affected modules are upgraded on the target system. This is a more coarse-grained...
Dependence clusters are (maximal) groups of source code entities that each depend on the other according to some dependence relation. Such clusters are generally seen as detrimental to many software engineering activities, but their formation and overall structure are not well understood yet. In a set of subject programs from moderate to large sizes, we observed frequent occurrence of dependence clusters...
DECS is a meta-CASE tool that generates interactive software design diagram editors based on specifications provided by a tool designer. A specification consists of a set of editor element types (vertices, edges) plus constraints on the use of those types. We present visually-oriented techniques for constraint definition and the language used for this purpose. We argue that the DECS approach offers...
It is common, in software development under version control, the need of parallel development of the source code via branches. Moreover, in most cases, the merge of these branches is necessary. Therefore, our work proposes the extraction of metrics that estimate the complexity to perform merges, making it possible to visualize, among all branches, which are the most critical and analyze the evolution...
The GPlates Geographic Information System (GIS) is a well-established tool for visualising and interacting with multimodal geo-data reconstructed through space and geological time. It overcomes the complexity of changing spatial reference frames due to plate-tectonic processes. Combining vast datasets in this manner is increasing the analysis complexity, with traditional visualisation-based approaches...
In the frame-level rate control algorithm of H.264/AVC baseline profile, the Quantization Parameter (QP) is determined according to a target bit-rate estimated by the bit allocation process and a frame complexity measure. The target bits calculation process assumes similar characteristics for all frames and for a single frame on the whole set; the Mean Average Difference (MAD) is used as complexity...
The analysis of execution traces can reveal important information about the behavioral aspects of complex software systems, hence reducing the time and effort it takes to understand and maintain them. Traces, however, tend to be considerably large which hinders their effective analysis. Existing traces analysis tools rely on some sort of visualization techniques to help software engineers make sense...
Test coverage is about assessing the relevance of unit tests against the tested application. It is widely acknowledged that a software with a "good" test coverage is more robust against unanticipated execution, thus lowering the maintenance cost. However, insuring a coverage of a good quality is challenging, especially since most of the available test coverage tools do not discriminate software...
The aim of the present research has been to examine the effectiveness of teacher implementation of a hypermedia application for children with severe learning disabilities. LT125ThinkingMind is an application developed to support pre-mathematical concepts learning for children who experience severe learning disabilities. Thirty three teachers participated in the study. They had been attending a course...
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.