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.
In this paper, we propose an approach that uses software metrics to comprehend attributes of a codebase: maintainability, reusability, or complexity. This approach is new because it uses gathered metrics as the basis to associate musical sounds to source code classes. These sounds are arranged to compose a melody that can be both visualized (as a musical score) and played. We named this new way to...
A 10-year working partnership between engineering instructors and communication instructors for a course called “Computer-Aided Engineering: Applications to Biomedical Process” aims to enrich the professional skills of the engineering students overall. This paper provides a window to the ways the course aids students in improving their engineering/technical writing and presenting skills. This year,...
Identifying bug immediately when it is introduced can help improve the validity and effectiveness of bug fixing. Predicting bugs in software code changes makes such identification possible. Buggy changes, changes that introduce bugs into source code, can be viewed as anomalies relative to clean changes for that they are rare and irregular. Thus, anomaly detection techniques can be applied to buggy...
Software metrics are widely used to measure the quality of software and to give an early indication of the efficiency of the development process in industry. There are many well-established frameworks for measuring the quality of source code through metrics, but limited attention has been paid to the quality of software models. In this article, we evaluate the quality of state machine models specified...
In any sufficiently complex software system there are experts, having a deeper understanding of parts of the system than others. However, it is not always clear who these experts are and which particular parts of the system they can provide help with. We propose a framework to elicit the expertise of developers and recommend experts by analyzing complexity measures over time. Furthermore, teams can...
Time and budget constraints in developing a software create an adverse effect in terms of the adequacy of maintenance and test processes. This case can be considered as a burden for persons who account for test processes. In order to alleviate this burden, test case prioritization is one of the solutions. A nature-inspired method namely BITCP, which was developed based on bat algorithm, produced promising...
The extended format of HEVC, Scalable HEVC (SHVC), has been developed to serve users with mobile devices under heterogeneous networks. The SHVC can provide different bitrate, resolution, or quality formats of the same video through the one-time encoding process. As the SHVC is developed based on the HEVC, its time complexity is high and has to be reduced for practical applications. In the SHVC, it...
Software-Defined Networking (SDN) is a paradigm adopted in computer networks that decouple the control logic from the physical to the software layer, reducing the routers' complexity and enabling a high-level network awareness. This work explores the SDN paradigm on NoCs to manage Circuit Switching (CS) connections in an original Multi-Physical Network (MPN) architecture. Related works focus its CS...
This work addresses the automatic generation of the resources required for the assisted creation of domain models according to specialized views of their meta-model. The task of a designer who builds models compliant to a complex domain meta-model is eased if the model editor requests the information according to a specific view of the meta-model based on the conceptualization or the specific construction...
Test automation in distributed systems requires new methods in signal simulation for the stimulation of the distributed system. Increasing complexity of electric electronic (E/E) systems enhances the testing-effort. The main challenge is reducing the time consuming manual stimulation in consideration of improving the quality of testing. Currently used systems for test automation with a software-based...
As stated by Tom DeMacro, something that cannot be measured is uncontrollable. Thus, a number of metrics have been developed to measure the complexity associated with software by considering various aspects such as size, control flow and data flow between modules, cognitive informatics etc. Amongst these aspects, cognitive informatics is recognized as a promising aspect in measuring software complexity...
The complexity of software implementations of MDS erasure codes mainly depends on the efficiency of the finite field operations implementation. In this paper, we propose a method to reduce the complexity of the finite field multiplication by using simple transforms between a field and a ring to perform the multiplication in a ring. We show that moving to a ring reduces the complexity of the operations...
Due to the constant evolution of technology, each day brings new programming languages, development paradigms, and ways of evaluating processes. This is no different with source code metrics, where there is always new metric classes. To use a software metric to support decisions, it is necessary to understand how to perform the metric collection, calculation, interpretation, and analysis. The tasks...
Internet of Things, IoT, connects physical objects and the cyberspace, which provides potentials to leverage city-scale merits of IT services. It covers complicated integration of hardware, software, deployment and operation in both of time and spatial dimensions. It presents a broad challenge in design and operation processes. An IoT-empowered city platform is required to accommodate a wide spectrum...
Error-tolerance is a notion that focuses on evaluating the acceptability of errors by considering the insensitivity of human beings to minor vibrations in multimedia applications. In this paper we will show that this notion can relax the functional test requirements of a target circuit. Rather than finely grading the quality of the output results as conventional methods do, we only need to decide...
Machine Learning (ML) is an attractive application of Non-Volatile Memory (NVM) arrays [1,2]. However, achieving speedup over GPUs will require minimal neuron circuit sharing and thus highly area-efficient peripheral circuitry, so that ML reads and writes are massively parallel and time-multiplexing is minimized [2]. This means that neuron hardware offering full ‘software-equivalent’ functionality...
Android applications are considered the most popular and desirable applications due to their friendly interface, various categories and available options, and supporting most of the available hardware in the market. Complexity to understand, design, develop, implement, and test android applications have been raised. Maintainability is a very important quality attribute that we should consider it seriously...
During the last two decades the software evolution community has intensively tackled the software merging issue whose main objective is to merge in a consistent way different versions of software in order to obtain a new version. Well established approaches, mainly based on the dependence analysis techniques, have been used to bring suitable solutions. These approaches concern the source code or software...
Regression Testing is mainly done in software maintenance aiming to assure that the changes made in the software have correctly been implemented and also to achieve the confidence that the modifications have not affected the other parts of the software. It is very costly and expensive technique. There are number of techniques present in literature that focus on achieving various testing objectives...
Component-based software development is one of the proficient models of constructing eminent-quality software products. Reusability is the basic concept behind the component-based software. Reusability suggests re-use of existing software artifacts rather than developing them from the beginning. Components interact to share services and information in component-based software environment. In this...
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.