Traceability ensures that software artifacts of subsequent phases of the development cycle are consistent. Few works have so far addressed the problem of automatically recovering traceability links between object-oriented (OO) design and code entities. Such a recovery process is required whenever there is no explicit support of traceability from the development process. The recovered information can drive the evolution of the available design so that it corresponds to the code, thus providing a still useful and updated high-level view of the system.
Automatic recovery of traceability links can be achieved by determining the similarity of paired elements from design and code. The choice of the properties involved in the similarity computation is crucial for the success of the recovery process. In fact, design and code objects are complex artifacts with several properties attached. The basic anchors of the recovered traceability links should be chosen as those properties (or property combinations) which are expected to be maintained during the transformation of design into code. This may depend on specific practices and/or the development environment, which should therefore be properly accounted for.
In this paper different categories of basic properties of design and code entities will be analyzed with respect to the contribution they give to traceability recovery. Several industrial software components will be employed as a benchmark on which the performances of the alternatives are measured. 相似文献
In this paper, we study the issues of mining and maintaining association rules in a large database of customer transactions.
The problem of mining association rules can be mapped into the problems of finding large itemsets which are sets of items brought together in a sufficient number of transactions. We revise a graph-based algorithm to further
speed up the process of itemset generation. In addition, we extend our revised algorithm to maintain discovered association
rules when incremental or decremental updates are made to the databases. Experimental results show the efficiency of our algorithms.
The revised algorithm is a significant improvement over the original one on mining association rules. The algorithms for maintaining
association rules are more efficient than re-running the mining algorithms for the whole updated database and outperform previously
proposed algorithms that need multiple passes over the database.
Received 4 August 1999 / Revised 18 March 2000 / Accepted in revised form 18 October 2000 相似文献
This article describes how a reasoner can improve its understanding of an incompletely understood domain through the application of what it already knows to novel problems in that domain. Case-based reasoning is the process of using past experiences stored in the reasoner's memory to understand novel situations or solve novel problems. However, this process assumes that past experiences are well understood and provide good lessons to be used for future situations. This assumption is usually false when one is learning about a novel domain, since situations encountered previously in this domain might not have been understood completely. Furthermore, the reasoner may not even have a case that adequately deals with the new situation, or may not be able to access the case using existing indices. We present a theory of incremental learning based on the revision of previously existing case knowledge in response to experiences in such situations. The theory has been implemented in a case-based story understanding program that can (a) learn a new case in situations where no case already exists, (b) learn how to index the case in memory, and (c) incrementally refine its understanding of the case by using it to reason about new situations, thus evolving a better understanding of its domain through experience. This research complements work in case-based reasoning by providing mechanisms by which a case library can be automatically built for use by a case-based reasoning program. 相似文献
In this note, we prove that both problems studied by Cheng et al. [Cheng, T. C. E., Hsu, C.-J., & Yang, D.-L. (2011). Unrelated parallel-machine scheduling with deteriorating maintenance activities. Computers and Industrial Engineering, 60, 602–605] can be solved in O(nm+3) time no matter what the processing time of a job after a maintenance activity is greater or less than its processing time before the maintenance activity, where m is the number of machines and n is the number of jobs. 相似文献
Genetic Algorithm (GA) with different logic structures for price breaks has been developed and implemented for a multi-item inventory control system of breakable items like the items made of glass, mud, porcelain, etc. with all unit discount (AUD), incremental quantity discount (IQD) and a combination of these discounts. Here, AUD and IQD on purchasing price with two price breaks are allowed. Also, demand and breakability of the items are stock-dependent. Shortages are not allowed. Replenishment is instantaneous. Selling price is a mark-up of the purchasing cost. For storage, warehouse capacity is limited. For the present model, GA has been developed in real code representation using Roulette wheel selection, arithmetic crossover and uniform mutation. This algorithm has been implemented successfully to find the optimum order quantities for the above inventory control system to achieve the maximum possible profit. The algorithm and the inventory model have been illustrated numerically and some sensitivity analyses with respect to breakability and demand are presented. 相似文献
This research focuses on the problem of scheduling jobs on a single machine that requires periodic maintenance with the objective of minimizing the number of tardy jobs. We present a two-phase heuristic algorithm in which an initial solution is obtained first with a method modified from Moore's algorithm for the problem without maintenance and then the solution is improved in the second phase. Performance of the proposed heuristic algorithm is evaluated through computational experiments on randomly generated problem instances and results show that the heuristic gives solutions close to those obtained from a commercial integer programming solver in much shorter time and works better than an existing heuristic algorithm in terms of the solution quality. 相似文献
The goal of this paper is to show how it is possible to support design decisions with two different tools relying on two kinds of knowledge: case-based reasoning operating with contextual knowledge embodied in past cases and constraint filtering that operates with general knowledge formalized using constraints. Our goals are, firstly to make an overview of existing works that analyses the various ways to associate these two kinds of aiding tools essentially in a sequential way. Secondly, we propose an approach that allows us to use them simultaneously in order to assist design decisions with these two kinds of knowledge. The paper is organized as follows. In the first section, we define the goal of the paper and recall the background of case-based reasoning and constraint filtering. In the second section, the industrial problem which led us to consider these two kinds of knowledge is presented. In the third section, an overview of the various possibilities of using these two aiding decision tools in a sequential way is drawn up. In the fourth section, we propose an approach that allows us to use both aiding decision tools in a simultaneous and iterative way according to the availability of knowledge. An example dealing with helicopter maintenance illustrates our proposals. 相似文献