Font Size: a A A

Research On The Scheduling Model Of Software Refactoring

Posted on:2013-02-01Degree:MasterType:Thesis
Country:ChinaCandidate:X C ZouFull Text:PDF
GTID:2248330377958800Subject:Computer application technology
Abstract/Summary:PDF Full Text Request
Accompany with the continuous development of computer technology, softwareapplications are increasingly influencing the social development and people’s ordinary life.Software applications are almost everywhere in all areas of social life and industialproduction. Accordingly, software engineering, the study on software production anddevelopment, has become the focus of academic research. As software applications play amore and more important role in aviation, aerospace, finance, communications and other keyareas, the quality of software applications acquires more and more attention, and technologyon software quality assurance has achieved considerable progress.Software refactoring is one of the most important advances in the technology onsoftware quality assurance, and has been widely used in practical software industry. Existingwell-known software development environments, such as Eclipse and Visual Studio, allintegrate supporting tools for software refactoring. Generally, software refactoring is able toeffectively improve software understandability and maintainability by adjusting the structureof the software, so as to reduce the risk of coding errors. With the expansion of software sizeand the extension of software life cycle, developers need to perform a large number ofsoftware refactorings. Furthermore, automated refactoring detection tools also providedevelopers with a lot of choice of refactorings. Therefore, the scheduling of these refactoringsto achieve a best enhancement on the software quality becomes a very important issue thatdevelopers often face.Based on Petri Net theory, this paper proposes an approach to automated schedulingsoftware refactoring. Given a set of software refactorings, the approach automaticallygenerates an optimized software refactoring sequence by analyzing the dependence andconflict relationships between software refactorings. The optimization is based on thesoftware metric values set by the developers to measure the concerned quality characters.Ourapproach mainly includes the following parts:1. Extraction of the software project class diagram: our approach extracts a class diagramfrom the software project to facilitate the construction of Petri Net model and theoptimization. 2. Construction of the Petri Net model: for all software refactorings in the softwarerefactoring set and their pre-conditions and post-conditions, our approach generate a Petri Netmodel in which places correspond to conditions and transitions correspond to refactorings.3. Optimization of software refactorings: our approach applies case reachabilityalgorithm to the Petri Net model, and finds a reachable case whose corresponding classdiagram has the highest software metrics value. Then, our approach outputs the transition pathto reach the case as the scheduled software refactoring sequence.
Keywords/Search Tags:software refactoring, scheduling, Petri net, quality metrics
PDF Full Text Request
Related items