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 software development we are faced with the problem to comprehend and take over source code from other developers. The key challenge is to understand the underlying specification implemented by the software system. Regaining this understanding is more difficult when the source code is the only reliable source of information, documentation is outdated or only present in fragments, and original developers...
Software metrics are very helpful in measuring the different aspects of software like cohesion, coupling, polymorphism, inheritance etc. The objective of measuring software metrics are quality assurance, defect prediction, maintainability prediction, cost estimation, debugging, etc. Many authors proposed the use of static metrics for the software maintainability prediction (SMP) and were successful,...
A quality model for assessing the changeability level of java code is important for software development. It permits developer to know which classes to be improved for having a better software maintainability. Moreover, a good quality model must be created based on a set of well-selected attributes and metrics. Currently, no research work proposes a changeability assessment model that takes into consideration...
Software must be well developed and maintainable to adapt to the constantly changing requirement of the competitive world. In this article, we distinct different software maintainability prediction models and techniques which can help us to predict the maintainability of software, and can lead us to minimum the effort required to fix the faults in the software and the software will be more maintainable...
In terms of software maintenance and comprehension, the fields of software engineering and software visualization have produced several methods and tools. However, they are typically separate tools in practice. In this paper, we present a novel methodology of combining software analysis and software visualization tools via an interactive visual workflow modeling approach. Standard software analysis...
We propose a regression test selection technique that is based on analysis of source code of an object-oriented program. First we construct a System dependency graph model of the original program from the source code. When some modification is executed in a program, the constructed model is updated to reflect the changes. Our approach in addition to capturing control and data dependencies represents...
At the core of model-driven software development, model-transformation compositions enable automatic generation of executable artifacts from models. Although the advantages of transformational software development have been explored by numerous academics and industry practitioners, adoption of the paradigm continues to be slow, and limited to specific domains. The main challenge to adoption is the...
The widespread acceptance of refactorings as a simple yet effective approach to improve the design of object-oriented systems, has stimulated an effort to develop semi-automatic tools for detecting design flaws, with simultaneous suggestions for their removal. However, even in medium-sized projects the number of detected occurrences can be so large that the refactoring process becomes intractable...
Set pair analysis possesses many virtues, including specific concept, convenience calculation and it covers comprehensive information as well. In course of software refactoring, traditional code locating method mostly relies on developer's observations and subjective perceptions, which brings with much inconvenience. Therefore, a new software refactoring scheme optimization model was built up based...
Measuring UML class diagram complexity can help developers select one with lowest complexity from a variety of different designs with the same functionality; also provide guidance for developing high quality class diagrams. This paper compared the advantages and disadvantages of two typical class-diagram complexity metrics based on statistics and entropy-distance respectively from the view of newly...
Software Process Improvement (SPI) is one of the main actual software development challenges. Process metamodels allow capturing informational and behavioural aspects of software development processes. Unfortunately, standard process meta-modelling approaches, such as the Software Process Engineering Meta-model (SPEM), OPEN Process Framework (OPF) and Standard Meta-model for Software Development Methodologies...
A critical issue in software maintenance and evolution is change propagation: given a primary change that is made in order to meet a new or changed requirement, what additional, secondary, changes are needed? We have previously developed techniques for effectively supporting change propagation within design models of intelligent agent systems. In this paper, we propose how this approach is applied...
How to make most use of existing information systems and set up low cost, open and flexible integration system have already become the key factor to constructing scientific and technical resources database system. Service oriented architecture (SOA) provides a solution to improve the reusability, scalability and efficiency in software development. This paper uses the SOA principle, through the research...
For improving the evolvability of software architecture, the paper proposes a software architecture refactoring strategy based on software evolution, which is retrieved from software change history by using the formal concept lattice technology to analyze the evolution dependency relation between components. Moreover, an example is shown for explaining its usability.
Design patterns provided experienced solutions to common problems in software development, but recent studies have shown that several design patterns involve crosscutting concerns where object oriented abstractions failed to handle, this led to decreasing system modularity, reusability and maintainability. This encourages investigating the impact of aspect oriented approaches on design patterns not...
The purpose of this paper is to propose a service-oriented reverse reengineering that consists of re-documentation and design recovery. To understand the legacy system, we need to re-document the legacy system in a highlevel abstraction by using UML visual models through an initial reverse engineering. For this re-documentation, we propose a new re-documentation technique called 5W1H (Why, Who, When,...
The main problem of enterprise application evolution is how to capture requirements and then propagate requirement changes to application. Effectively evolving enterprise application with the frequently changing requirements is still a challenge to software engineering. Requirement is the root causes of evolution of enterprise applications in many cases. Refactoring has given guidance to gradual evolution...
This paper presents ongoing work on using projection pursuit regression model to predict object-oriented software maintainability. The maintainability is measured as the number of changes made to code during a maintenance period by means of object-oriented software metrics. To evaluate the benefits of using PPR over nonlinear modeling techniques, we also build artificial neural network model, and...
Large, unwieldy classes are a significant maintenance problem. Programmers dislike them because the fundamental logic is often obscured, making them hard to understand and modify. This paper proposes a solution - a semi-automatic technique for splitting large classes into smaller, more cohesive ones. The core of the technique is the use of betweenness clustering to identify the best way of partitioning...
In this paper, we propose an UML-based generic format set of intrusion signatures for heterogeneous intrusion detecting systems (IDSs) via analyzing signature formats of three popular IDS products. We also propose an attack signature exchange model of heterogeneous IDSs. With this model, an attack signature generated by one IDS could be adopted by different IDSs easily. The proposed XML-based generic...
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.