Identifying Clusters of Concepts in a Low Cohesive Class for Extract Class Refactoring Using Metrics Supplemented Agglomerative Clustering Technique
|
|
|
- Evelyn Holmes
- 9 years ago
- Views:
Transcription
1 IJCSI International Journal of Computer Science Issues, ol. 8, Issue 5, No 2, September Identifying Clusters of Concepts in a Low Cohesive Class for Extract Class Refactoring Using etrics Supplemented Agglomerative Clustering Technique A. Ananda Rao 1 and K. Narendar Reddy 2 1 Professor of CSE and Principal, JNTUACE Anantapur, Andhra Pradesh, India 2 Associate Professor, Dept. of CSE, CR College of Engineering Hyderabad, India Abstract Object oriented software with low cohesive classes can increase maintenance cost. Low cohesive classes are likely to be introduced into the software during initial design due to deviation from design principles and during evolution due to software deterioration. Low cohesive class performs operations that should be done by two or more classes. The low cohesive classes need to be identified and refactored using extract class refactoring to improve the cohesion. In this regard, two aspects are involved; the first one is to identify the low cohesive classes and the second one is to identify the clusters of concepts in the low cohesive classes for extract class refactoring. In this paper, we propose metrics supplemented agglomerative clustering technique for covering the above two aspects. The proposed metrics are validated using Weyuker s properties. The approach is applied successfully on two examples and on a case study. Keywords: Low Cohesive Class, etrics, Agglomerative Clustering Technique, Dendrogram, Extract Class Refactoring, Jaccard Similarity Coefficient. 1. Introduction The maintainability of object oriented software depends on the quality of software. Software quality is likely to get reduced due to deviation from design principles and due to software deterioration during evolution. The reduction in software quality can be attributed to the presence of bad smells. Low cohesive class is one of the bad smells. Object oriented software with low cohesive classes can increase maintenance cost. Defects (bad smells) in software cause the system to exhibit high complexity, improper behavior, and poor maintainability [1]. It is necessary to detect and correct the defects to make software maintainable. One of the ways to make object oriented software systems maintainable is refactoring. Techniques that reduce object oriented software complexity by incrementally improving the internal software quality without affecting the external behavior come under refactoring [2]. In the context of software under evolution, refactoring is used to improve the software quality. The improvement in the software quality is, in terms of, maintainability, complexity, reusability, efficiency, and extensibility [3]. In the literature active research is being carried out with respect to object oriented software refactoring. Considering the importance of low cohesive classes and refactoring, we have proposed an approach for identifying low cohesive classes and clusters of concepts in low cohesive classes for extract class refactoring. The low cohesive class indicates the presence of god class or divergent change bad smell. Divergent change bad smell is present in object oriented software whenever a class needs to be changed for different changes for different reasons in other classes [4]. The changes are propagated to the affected class due to rippling effects. The change propagations depend on strength of coupling between classes. Using strength of coupling between classes, our metric DOCA(AR) (dependency oriented complexity metric for an artifact affected by ripples) can indicate the class affected by divergent change bad smell [5]. This bad smell indicates that the affected class has low cohesion and is a large class. According to Demeyer [6] the god class is low cohesive and memory consuming class. Object oriented software with low cohesive classes can increase maintenance cost. Low cohesive class performs operations that should be done by two or more classes. One of the design principles in object oriented approach is to design the class with single minded function [12]. The violation
2 IJCSI International Journal of Computer Science Issues, ol. 8, Issue 5, No 2, September of this design principle results in large, complex, and low cohesive classes. The low cohesive class cohesion can be improved by splitting the class by extracting cohesive and independent groups of members addressing different functionalities using extract class refactoring [4]. A concept is a cluster (group) of class members addressing a single minded function. In this regard, two aspects are involved; the first one is to identify the low cohesive class and the second one is to identify clusters of concepts in low cohesive class which need to be refactored using extract class refactoring. In this paper, we propose an approach which is based on metrics supplemented hierarchical agglomerative clustering technique for covering the above two aspects. In this paper, agglomerative clustering technique means agglomerative clustering algorithm. Even though clustering techniques are mainly used in data mining, they are being applied successfully in software engineering. Clustering techniques can identify groups of similar entities [7],[8]. Clustering methods have very good potential to be used in software engineering [9] indicated by its use in software remodularisation[10]. Clustering techniques can identify groups of similar entities where in each group is conceptually different and these groups may address different functionalities. The contributions of the proposed approach are the following: - etrics are proposed to supplement the agglomerative clustering technique (ACT) to handle the situations where some small clusters are formed. - Identification of low cohesive classes. - Identification of clusters of concepts in a low cohesive class using the approach which is based on metrics supplemented agglomerative clustering technique. The organization of the paper is as follows. Section 2 presents the related work. Section 3 presents approach to clustering. The results of experimental cases are presented and discussed in section 4. The conclusions have been placed in section Related Work The low cohesive classes can be caused by god class or divergent change bad smells. Lot of research has been done in identifying god classes. The main contributions are from [11], [1], [6]. According to Deymer [6] the god class is low cohesive and memory consuming class. Any change to the system may lead to this class. According to Trifu and arinescu [11] god classes are large, non-cohesive classes that have access to many foreign data and they proposed a metrics-based method to identify. Tahvildari and Kontogiannis [1] proposed quality design heuristics and use a diagnosis algorithm based on coupling, complexity, and cohesion to identify design problems (flaws). Lot of work has been done with respect to remodularising or partitioning or clustering large software modules. Some of them are [13], [14], [15]. In all of the above works remodularisation of software modules in a higher level (like package or file level) is proposed. We need clustering at class level. Some of the works which focuses on software clustering at class level are: Simon et al. [16] suggested visualization techniques to identify extract class opportunities. isualizing large classes can be difficult and make it difficult to identify clear clusters. De Lucia et al. [17] propose a methodology that uses structural and semantic metrics for identifying extract class refactoring opportunities. The semantic cohesion metric is based on the names of classes and entities which can be developer dependent hence, may change the results. In a recent work, Joshi and Joshi [18] uses concept lattice for identifying extract class refactoring opportunities. It is identified by the authors that for large systems the lattices can become very complex for the designer to identify problematic cases by inspecting the lattice visually. An algorithm [26] is proposed by the authors to find clusters based on similarity matrix. It is likely to consume more time to identify the clusters and it is threshold value dependant. In most recent work, arios Fokaefs et al [19] apply the agglomerative clustering algorithm for several threshold values (ranging from 0.1 to 0.9) and present all possible results to the user. Algorithm also identifies clusters of cohesive entities ranked according to their impact on the design of the whole system and presented to the designer. In contrary to [19], instead of presenting results at different thresholds, we compute clusters at particular threshold and supplement with metrics to merge small clusters with other clusters. In our approach, we supplement the agglomerative clustering technique (ACT) with metrics which can handle situations where ACT alone cannot give acceptable clusters in some situations. Our approach is not much dependent on the threshold value if it is not chosen either near 0 or near to 1. Our approach reduces much human intervention.
3 IJCSI International Journal of Computer Science Issues, ol. 8, Issue 5, No 2, September Proposed Approach The aim of the proposed approach is to identify the low cohesive classes and clusters of concepts in low cohesive classes. The proposed approach contains two steps: Step 1: Identify low cohesive classes using the metrics LCO[22], TCC[23], and DOCA(AR) [5]. LCO and TCC metrics values can be used to identify the low cohesive class due to god class bad smell. Whereas, DOCA(AR) metric value can be used to identify the low cohesive class due to divergent change bad smell. Step 2: The metrics supplemented agglomerative clustering technique is applied on low cohesive class which is found in step 1. During step 2, the clusters of concepts which need to be refactored are identified. During this step, firstly, similarities between the class members are calculated and then the agglomerative clustering algorithm (technique) is applied to find the clusters at a specified threshold. At the specified threshold there may be some small clusters which need to be merged, this is done with the help of proposed metrics. The agglomerative clustering technique is explained in the following section Agglomerative Clustering Technique (ACT) The agglomerative clustering algorithm [8] (which is a hierarchical clustering algorithm) is used in this paper. The Agglomerative Clustering Algorithm (Technique) is given below: Step 1: Assign each entity (class member) to a single cluster. Step 2: Repeat merging while the specified threshold value is not reached. - erge two closest clusters according to the considered merging criteria. Step 3: Display the outcome of the algorithm as a hierarchy of clusters (Dendrogram). The algorithm requires a threshold value for the similarity metric as a cut-off value. The clusters which are output from the algorithm are at the threshold (cut-off) value. The output hierarchy of the clusters is usually represented by a dendrogram. It has tree like structure. The leaves of the tree represent the individual (single) entities. During the merging process intermediate nodes are formed, they are actual clusters to be output based on cut-off value. The root is the final cluster which contains all the entities. The tree height can be represented using distance metric value or similarity metric value. We used similarity metric value in this paper. In Hierarchical agglomerative clustering algorithm different linkage methods are available. 1. Single linkage 2. Complete linkage 3. Average linkage 4. Weighted linkage According to Anquetil and Lethbridge [20] single linkage gives less coupled clusters, complete linkage favors more cohesive clusters, and average linkage gives clusters somewhere in-between the above two. In this paper we have used complete linkage method. The similarity metric we used is the Jaccard similarity metric. Anquetil and Lethbridge [20] indicate in their paper that jaccard distance metric produces good results in software remodularisation. To define the Jaccard similarity metric [24] between two class members we employ the notion of property set of class member. The property set for a method (PSet_m i ) is, the method itself and the methods and fields used (accessed/called) by that method. The property set for a field (PSet_f i ) is, the field itself and the methods using (accessing) it. These property sets are similar to dependency sets used by Simon et al[16]. Similarity atrix: Similarity matrix (m x m) is constructed using the computed values of the above similarity based metrics. Where, m is number of members of the class. Class member means it can be a class method or field (variable). The Jaccard index, also known as the Jaccard similarity coefficient (originally coined coefficient de communauté by Paul Jaccard [24]), is used for comparing the similarity and diversity of entities (sample sets). Based on defined property sets we calculate the Jaccard similarity metric between two class members A and B as follows: JSim(A, B) = A B A B Similarity between two entities depends on the properties which are shared [25]. 3.2 Proposed etrics to Supplement Agglomerative Clustering Technique The clusters identified at cut-off value may give clusters with very few members (may be single member clusters),
4 IJCSI International Journal of Computer Science Issues, ol. 8, Issue 5, No 2, September hence we need to merge them with other clusters. For this purpose we have proposed some metrics. The metrics are given below. CI_ - Cluster Identification etric for ariable = ratio of number of methods within the cluster that reference the variable under consideration to the total number of methods in the cluster CI R _ - Cluster Identification etric for ethod (Based on ariable References) = ratio of number of variables within the cluster referred by the method to the total number of variables in the cluster. CI C _ - Cluster Identification etric for ethod (Based on ethod Calls) = ratio of number of methods within the cluster called by method under consideration to the total number of methods in the cluster CI I _ - Cluster Identification etric for ethod (Based on ethod Invocations) = ratio of number of methods within the cluster that invoked method under consideration to the total number of methods in the cluster. Contexts for applying the proposed metrics: The contexts in which the proposed metrics can be applied are given in Figures 1, 2, 3, 4, and 5. The cluster to be merged with other cluster is indicated by C1. The contexts are: Context 1: Only one variable (field) in C1 (Figure 1). Context 2: Only one method in C1 (Figure 2). Context 3: Only variables (two or more variables). Context 4: Only methods (two or more methods) Context 5: ethods and variables. (At least one method and one variable) C n m1,m2, m5,a3, a4,a7 C n m1,m4, m5,a1,a2, a4 a1... m3... C1 Fig. 1 Context1 for applying proposed metrics C1 Fig. 2 Context2 for applying proposed metrics C2 m4, m3, m6, m7,a2,a5, a6 C2 m2,m6,m7, m8,a3, a5,a6 C n m1,m3,m4, m5,a1,a6, a7 C n m1,m6,m7, a1,a3, a4 C n m2,m6,m7, m9,a1,a5, a6 a2,a3,a4... m2,m3,m5... m1,m3,a3,a4... C2 m4,m8,m9, a2,a5, a6 C2 m4,m5,m8, a2,a7, a8 The proposed metrics can be applied for all the five contexts. In all the contexts (Figures 1 to 5) proposed metrics can be used in merging the element(s) from cluster 1 (C1) with cluster 2 (C2) or cluster 3 (C3) or cluster n (C n ) alidation using Weyuker s Properties The proposed metrics are validated using the Weyuker s properties [21]. The validation results are given in Table 1. Only eight properties are considered for validation. The seventh property is not considered for validation. Seventh C1 Fig. 3 Context3 for applying proposed metrics C1 Fig. 4 Context4 for applying proposed metrics C2 m2,m6,m7, m8,a5, a8,a9 C1 Fig. 5 Context5 for applying proposed metrics Table 1: alidation results P1 P2 P3 P4 P5 P6 P7 P8 P9 CI_ Y Y Y Y Y Y NA Y Y CI R_ Y Y Y Y Y Y NA Y Y CI C_ Y Y Y Y Y Y NA Y Y CI I_ Y Y Y Y Y Y NA Y Y
5 IJCSI International Journal of Computer Science Issues, ol. 8, Issue 5, No 2, September property specifies that the permutation of elements within measured entity can change the metric value. This property is not suitable for OO systems, since the order of methods declaration inside a class does not change the order in which they are executed. Cherniavsky and Smith [27] suggest that this property is not appropriate for OOD metrics. For contexts 1, 2, and 3 all the proposed metrics satisfied all the eight properties which are applicable to object oriented systems. In case of context 4 the metrics CI C _ and CI I _ did not satisfy the properties 5 and 9. In case of context 5, all the metrics did not satisfy properties 5 and 9. However, at least, 6 properties are satisfied out of 8 properties in all the contexts. The validation results indicate the suitability of metrics for the purpose for which they are proposed. 4. Experimental Results Example 1: The directed graph for the members of the class considered in this example is given in Figure 6. In the graph, the nodes represent methods and variables (fields) and the edges indicate that a dependency exists between two class members. A4 A5 A6 av3 A1 av4 A2 The class has six methods and four variables (fields). A3 The methods are: A1, A2, A3, A4, A5, A6 The variables are: av1, av2, av3, av4 The Jaccard similarity metric is used for finding the similarity between the class members. Similarity matrix for the members of the class given in example 1 is shown in Table 2. The hierarchical agglomerative clustering algorithm is applied on the similarity matrix (Table 2). Figure 7 shows the dendrogram produced by the algorithm. av1 av2 Fig. 6 Directed graph for the members of class in example 1 Table 2: Similarity matrix for the class members shown in Figure 6 A1 A2 A3 A4 A5 A6 av1 av2 av3 av4 A1 1 A A A A A av av av av
6 IJCSI International Journal of Computer Science Issues, ol. 8, Issue 5, No 2, September A6 av3 A5 av4 A3 av1 A4 A1 A2 av2 1 Fig. 7 Dendrogram showing the clusters Clusters Identification at a given threshold value: Consider the threshold value of 0.2. At this threshold, three clusters are produced, they are: G1= {A5, A6, av3, av4} G2= {av2} G3= {A1, A2, A3, A4, av1} Since G2 contain only one member (variable member) it needs to be merged with other cluster. This represents context 1 (Figure 1). For this purpose, CI_ metric is computed. CI_ (av2, G1) = 0/2=0, CI_ (av2, G3) = ¾ = 0.75 Since CI_ (av2) is more with respect to G3 when compared to G1, hence G2 (av2) is merged with G3. After merging two clusters are formed. They are: G1= { A5, A6, av3, av4}, G3= { A1, A2, A3, A4, av1, av2} Example 2: The directed graph for the members of the class considered in this example is given in Figure 8. The class has seven methods and two variables (fields). The methods are: A1, A2, A3, A4, A5, A6, A7 The variables are: av1, av2 A1 A4 A3 A2 A5 A7 The similarity matrix is constructed using Jaccard similarity metric values for the class members and the hierarchical agglomerative clustering algorithm is applied on the similarity matrix. The clusters formed at 0.5 threshold value are: G1= {A1, A4, A3} G2= {av1} G3= {A2} G4= {A5, A6, A7} A6 av1 av2 Fig. 8 Directed graph for the members of class in example 2
7 IJCSI International Journal of Computer Science Issues, ol. 8, Issue 5, No 2, September G5= {av2} Since single member clusters are there, they need to be merged. erging G2 or G5 with other cluster represents context 1. Whereas, merging G3 with other cluster represents context 2 (Figure 2). For context 1 the metric CI_ is computed. CI_ (av1, G1) = 2/3=0.66 CI_ (av1, G4) = 0/3=0 Since CI_ metric value for av1 (G2) with respect to G1 is more when compared to G4, hence G2 is merged with G1. Similarly, av2 (G5) is merged with G4. Since merging G3 (A2) with other cluster represents context 2, the metrics CI R _, CI C _, and CI I _ are computed. CI R _ (A2, G1) = 1/1 = 1 CI R _ (A2, G4) = 1/1 = 1 CI C _ (A2, G1) = 0/3 = 0 CI C _ (A2, G4) = 0/3 = 0 CI I _ (A2, G1) = 0/3 =0 CI I _ (A2, G4) = 0/3 = 0 Since same metrics values indicate A2 (G3) can be placed either in G1 or G4. The formed clusters after merging are: G1= {A1, A4, A3, av1, A2} G4= {A5, A6, A7, av2} In situations where a member has equal similarity with two groups, (for example, in the above case) coupling with respect to other classes need to be computed before merging. Case Study : Bank Application Bank application developed by students as part of their academic project is given as case study. The novice designer has a tendency to deviate from the design principles and may end up designing low cohesive classes. The bank application is developed in java. It contains the following classes: CustomerAccount, Bank, ATCard, Locker, DemandDraft, FixedDeposit, Employee, anager, Report, Salary, DatabaseProxy. The proposed approach is applied on this case study to find low cohesive classes and clusters of concepts in low cohesive classes. The approach contains two steps. Table 3: Similarity matrix for the members of class CustomerAccount open(), 2 deposit((), 3 withdraw(), 4 display(), 5 close(), 6 addcust(), 7 updateaddr(), 8 displayaddr(), 9 apprloan(), 10- repay(), 11-closeloan(), 1 CustName, 2 AcNo, 3 AcType, 4 Amount, 5 Balance, 6 CustId, 7 PermAddr, 8 CommnAddr, 9 LoanNo, 10- LoanType, 11- LoanAmnt
8 IJCSI International Journal of Computer Science Issues, ol. 8, Issue 5, No 2, September Step 1: During this step LCO and TCC metrics are computed for the different classes. The CustomerAccount class has LCO metric value of 5 and TCC metric value of The high LCO value and low TCC value indicate that the CustomerAccount is a low cohesive class. Step 2: The similarity matrix is constructed using Jaccard similarity metric values for the class members of the class CustomerAccount and it is shown in Table 3. The hierarchical agglomerative clustering algorithm is applied on the similarity matrix given in Table 3. The clusters identified at the threshold value of 0.2 are: G1 = 1, 2, 3, 4, 5 G2 = 1, 2, 4, 5 G3 = 3 G4 = 6, 7, 8, 6, 7, 8 G5 = 9, 10, 11, 9, 10, 11 Since G3 contains single variable and G2 contains only variables, they need to be merged with other groups. They represent contexts 1 and 3 respectively. Hence the metric CI_ is computed to find the clusters with which G2, G3 can be merged. Finding the cluster for G3(3) merging: CI_ (3) with respect to G1 = 1/5 = 0.2 CI_ (3) with respect to G4 = 0 CI_ (3) with respect to G5 = 0 Since CI_ (3) is high with respect to G1, hence 3 (G3) is merged with G1. Finding the cluster for G2 merging: CI_ (1) with respect to G4 = 1/3 =0.33 CI_ (1) with respect to G5 = 1/ 3 =0.33 CI_ (1) with respect to G1 is high when compared to G4 and G5 and CI_ (2, 4, 5) with respect to G1 is more when compared to G4 and G5, hence merge G2 with G1. After merging three clusters are formed, they are: G1 = 1, 2, 3, 4, 5, 1, 2, 4, 5, 3 G4 = 6, 7, 8, 6, 7, 8 G5 = 9, 10, 11, 9, 10, Observations The LCO [22] and TCC [23] are computed for the classes considered in the examples and case study before and after refactoring and presented in Table 4. The high LCO and low TCC values indicate low cohesive classes, whereas low LCO and high TCC values indicate high cohesive classes. The values in Table 4 indicate the improvement in cohesion due to refactoring in two experimental examples and in one case study. The high value of LCO and low value of TCC for the CustomerAccount class of bank application indicate the low cohesive class. The Agglomerative Clustering Technique identified three clusters of concepts for CustomerAccount class. These three clusters are refactored into three classes by using extract class refactoring. The extracted classes are: Account, Customer, and Loan. The 0 (zero) LCO value and TCC value of 1 for Account (cluster1), Customer (cluster2), and Loan (cluster3) indicate high cohesive classes. Hence our approach could identify the low cohesive class, and the clusters to be refactored. The increase in cohesion after refactoring, indicate the effectiveness of the approach in identifying proper clusters for refactoring. CI_ (1) with respect to G1 = 5/5 = 1 Table 4. LCO and TCC values before and after refactoring Before After Refactoring Refactoring Cluster1 Cluster2 Cluster3 LCO TCC LCO TCC LCO TCC LCO TCC Example Example Case Study
9 IJCSI International Journal of Computer Science Issues, ol. 8, Issue 5, No 2, September The proposed approach is useful because of the following reasons: - It handles the situation where Agglomerative clustering technique (ACT) alone cannot identify proper clusters. Presenting to the user clusters at different thresholds may not solve the problem. In some situations, clusters at any threshold other than maximum (which leads to a single cluster) may contain clusters with single members or small clusters with one member or clusters with only variables. In that situation ACT does not guide us how to merge those small clusters. Hence, proposed metrics will help in those situations. - In our approach, we need to specify one threshold value somewhere in between 0 and 1, which is neither near to 0 nor near to 1. erge small clusters with the help of proposed metrics. The rules (in what situations the groups should be merged) can be specified to the tool, which guide the merging process using the proposed metrics. Hence, they reduce the human intervention to study the clusters at different thresholds and decide. - When a single member is tried to be merged, if metrics values are equal with respect to two or more clusters, it can be merged by considering coupling with respect to other classes. 5. Conclusions In this paper, we proposed an approach for identifying low cohesive classes and clusters of concepts in low cohesive classes potential for extract class refactoring. Proposed approach consists of two steps. In step 1, low cohesive classes are identified. In step 2, the clusters of concepts in low cohesive classes are identified for extract class refactoring. The proposed approach is based on metrics supplemented agglomerative clustering technique. Agglomerative Clustering Technique is based on the Jaccard similarity metric values between class members. etrics which are used to supplement agglomerative clustering technique are newly proposed. The metrics are validated using Weyuker s properties. The approach is applied on two examples and on academic software developed by students. In the two examples and case study our approach could find low cohesive classes and clusters of concepts to be refactored. The low cohesive class identified by our approach in the bank application has high LCO and low TCC value. High LCO and low TCC values indicate low cohesive class. The clusters identified by our approach are refactored using extract class refactoring. After refactoring the LCO metric value is decreased whereas TCC metric value is increased. These values indicate increase in cohesion due to refactoring the clusters of concepts into new classes. The increase in cohesion after refactoring, indicate the effectiveness of the approach in identifying proper clusters for refactoring. Hence, our approach could effectively identify low cohesive classes and clusters of concepts to be refactored. References [1] L. Tahvildari and K. Kontogiannis. A etric-based Approach to Enhance Design Quality Through eta-pattern Transformations In Proceedings of the 7th European Conference on Software aintenance and Reengineering, arch 26-28, 2003, pp [2] W.F. Opdyke, Refactoring : A Program Restructuring Aid in Designing Object-Oriented Application Frameworks, PhD thesis, Univ. of Illinois at Urbana Champaign, [3] Tom ens and Tom Tourwe. A Survey of Software Refactoring, IEEE Transactions on Software Engineering. olume 30, Number 2, 2004, pp [4]. Fowler, K. Beck, J. Brant, W. Opdyke, and D. Roberts. Refactoring Improving the Design of Existing Code, Boston, A, AddisonWesley, [5] K.Narendar Reddy and A.Ananda Rao, Dependency Oriented Complexity etrics to Detect Rippling Related Design Defects, AC SIGSOFT Software Engineering Notes, olume 34, Number 4, July [6] S. Demeyer, S. Ducasse, and O.. Nierstrasz, Object- Oriented Reengineering Patterns, organ Kaufman Publishers, [7] P. N. Tan,. Steinbach, and. Kumar, Introduction to Data ining, Addison-Wesley, [8] Jiawei Han and. Kamber, Data ining Concepts and Techniques, organ Kaufmann Publishers, [9]. Tzerpos and R. C. Holt, Software Botryology: Automatic Clustering of Software Systems, In Proceedings of the International Workshop on Large-Scale Software Composition, [10] T. A.Wiggerts, Using Clustering Algorithms in Legacy Systems Remodularization, In WCRE 97: Proceedings of the 4th Working Conference on Reverse Engineering, [11] A. Trifu and R. arinescu, Diagnosing Design Problems in Object Oriented Systems, In Proceedings of the 12th Working Conference on Reverse Engineering, [12] Roger S. Pressman, Software Engineering A Practitioner s Approach, Sixth Edition, cgraw-hill Int l Edition, [13] S. ancoridis, B. S. itchell, C. Rorres, Y. Chen, and E. R.Gansner, Using Automatic Clustering to Produce High- Level System Organizations of Source Code, In Proceedings of the 6th International Workshop on Program Comprehension, 1998,pp [14] D. Doval, S. ancoridis, and B. S. itchell Automatic Clustering of Software Systems Using a Genetic Algorithm,. In Proceedings of the 5th International Conference on Software Tools and Engineering Practice, 30 August - 2 September 1999.
10 IJCSI International Journal of Computer Science Issues, ol. 8, Issue 5, No 2, September [15] K. Sartipi and K. Kontogiannis, Component Clustering Based on aximal Association, In Proceedings of the IEEE Working Conference on Reverse Engineering, October [16] F. Simon, F. Steinbruckner, and C. Lewrentz, etrics Based Refactoring, In Proceedings of the 5th European Conference on Software aintenance and Reengineering, 2011, pp [17] A. D. Lucia, R. Oliveto, and L. orraro, Using Structural and Semantic etrics to Improve Class Cohesion, In 24th IEEE International Conference on Software aintenance, [18] P. Joshi and R. K. Joshi, Concept Analysis for Class Cohesion, In European Conference on Software aintenance and Reengineering, arch , pp [19] arios Fokaefs, Nikolaos Tsantalis, and Alexander Chatzigeorgiou, Decomposing Object-Oriented Class odules Using an Agglomerative Clustering Technique, In Proc. ICS, 2009, pp [20] N. Anquetil and T. Lethbridge, Experiments with Clustering as a Software Remodularization ethod, In WCRE 99: Proceedings of the 6th Working Conference on Reverse Engineering, [21] E.J.Weyuker, Evaluating Software Complexity easures, IEEE Transactions on Software Engineering, ol. 14, No. 9, 1988, pp [22] S.R.Chidamber and C.F.Kemerer, A etrics Suite for Object Oriented Design, IEEE Transactions on Software Engineering, ol. 20, No. 6, 1994, pp [23] J..Bieman and B.K.Kang, Cohesion and Reuse in an Object-Oriented System, In Proc. AC Symp. Software Reusability (SSR 94), 1995, pp [24] Paul Jaccard. Étude comparative de la distribution florale dans une portion des Alpes et des Jura. Bulletin de la Société audoise des Sciences Naturelles 37, 1901, pp [25] ario Bunge. Treatise on Basic Philosophy, ol 3: Ontology I, The Furniture of the World, ordrecht_holland, D.Reidel Publishing Company, [26] K.Narendar Reddy and A.Ananda Rao, Poster paper: Similarity Based etrics for Performing Extract Class Refactoring for the Class Affected by Ripples, In ISEC(3 rd India Software Engg. Conference), Feb 25-27, 2010, ysore, India. [27] J.C.Cherniavsky and C.H.Smith, On Weyuker s Axioms for Software Complexity easures, IEEE Transactions on Software Engineering, olume 17, 1991, pp Prof. Ananda Rao Akepogu received B.Sc.(.P.C) degree from Silver Jubilee Govt. College, S University, Andhra Pradesh, India. He received B.Tech. degree in Computer Science & Engineering and.tech. degree in A.I & Robotics from University of Hyderabad, India. He received Ph.D. from Indian Institute of Technology, adras, India. He is Professor of Computer Science & Engineering and Principal of JNTUA College of Engineering, Anantapur, India. Prof. Ananda Rao published more than fifty research papers in international journals, conferences and authored three books. His main research interests include software engineering and data mining. Narendar Reddy K is pursuing Ph.D. in Computer Science & Engineering from JNTUA, Anantapur, India and he received his.tech. in Computer Science & Engineering from the same University. He received Bachelor s degree in Computer Science & Engineering (AIE(CSE)) from Institution of Engineers, Calcutta, India. Currently he is working as Associate Professor of Computer Science & Engineering at CR College of Engineering, Hyderabad, India. His main research interests include Object oriented software design, software metrics, refactoring, and software testing. He is a member of IEEE, AC, AIE(I), and IAENG.
Software Refactoring using New Architecture of Java Design Patterns
Software Refactoring using New Architecture of Java Design Patterns Norddin Habti, Prashant 1, 1 Departement d informatique et de recherche operationnelle, Universite de Montreal, Quebec, Canada (Dated:
Program Understanding in Software Engineering
Taming the complexity: The need for program understanding in software engineering Raghvinder S. Sangwan, Ph.D. Pennsylvania State University, Great Valley School of Graduate Professional Studies Robert
A Systematic Approach for Configuration Management in Software Product Lines
, March 18-20, 2015, Hong Kong A Systematic Approach for Configuration Management in Software Product Lines K.L.S. Soujanya,Member,IAENG, A. Ananda Rao, Member, IAENG Abstract Product lines achieve significant
IMPROVING JAVA SOFTWARE THROUGH PACKAGE STRUCTURE ANALYSIS
IMPROVING JAVA SOFTWARE THROUGH PACKAGE STRUCTURE ANALYSIS Edwin Hautus Compuware Europe P.O. Box 12933 The Netherlands [email protected] Abstract Packages are an important mechanism to decompose
RANKING REFACTORING PATTERNS USING THE ANALYTICAL HIERARCHY PROCESS
RANKING REFACTORING PATTERNS USING THE ANALYTICAL HIERARCHY PROCESS Eduardo Piveta 1, Ana Morra 2, Maelo Penta 1 João Araújo 2, Pedro Guerrro 3, R. Tom Price 1 1 Instituto de Informática, Universidade
Using Library Dependencies for Clustering
Using Library Dependencies for Clustering Jochen Quante Software Engineering Group, FB03 Informatik, Universität Bremen [email protected] Abstract: Software clustering is an established approach
SEARCH ENGINE WITH PARALLEL PROCESSING AND INCREMENTAL K-MEANS FOR FAST SEARCH AND RETRIEVAL
SEARCH ENGINE WITH PARALLEL PROCESSING AND INCREMENTAL K-MEANS FOR FAST SEARCH AND RETRIEVAL Krishna Kiran Kattamuri 1 and Rupa Chiramdasu 2 Department of Computer Science Engineering, VVIT, Guntur, India
Data Mining Clustering (2) Sheets are based on the those provided by Tan, Steinbach, and Kumar. Introduction to Data Mining
Data Mining Clustering (2) Toon Calders Sheets are based on the those provided by Tan, Steinbach, and Kumar. Introduction to Data Mining Outline Partitional Clustering Distance-based K-means, K-medoids,
How To Calculate Class Cohesion
Improving Applicability of Cohesion Metrics Including Inheritance Jaspreet Kaur 1, Rupinder Kaur 2 1 Department of Computer Science and Engineering, LPU, Phagwara, INDIA 1 Assistant Professor Department
A UPS Framework for Providing Privacy Protection in Personalized Web Search
A UPS Framework for Providing Privacy Protection in Personalized Web Search V. Sai kumar 1, P.N.V.S. Pavan Kumar 2 PG Scholar, Dept. of CSE, G Pulla Reddy Engineering College, Kurnool, Andhra Pradesh,
Data Mining Cluster Analysis: Basic Concepts and Algorithms. Lecture Notes for Chapter 8. Introduction to Data Mining
Data Mining Cluster Analysis: Basic Concepts and Algorithms Lecture Notes for Chapter 8 Introduction to Data Mining by Tan, Steinbach, Kumar Tan,Steinbach, Kumar Introduction to Data Mining 4/8/2004 Hierarchical
EVALUATING METRICS AT CLASS AND METHOD LEVEL FOR JAVA PROGRAMS USING KNOWLEDGE BASED SYSTEMS
EVALUATING METRICS AT CLASS AND METHOD LEVEL FOR JAVA PROGRAMS USING KNOWLEDGE BASED SYSTEMS Umamaheswari E. 1, N. Bhalaji 2 and D. K. Ghosh 3 1 SCSE, VIT Chennai Campus, Chennai, India 2 SSN College of
QUALITY OF SERVICE METRICS FOR DATA TRANSMISSION IN MESH TOPOLOGIES
QUALITY OF SERVICE METRICS FOR DATA TRANSMISSION IN MESH TOPOLOGIES SWATHI NANDURI * ZAHOOR-UL-HUQ * Master of Technology, Associate Professor, G. Pulla Reddy Engineering College, G. Pulla Reddy Engineering
Data Mining Cluster Analysis: Advanced Concepts and Algorithms. Lecture Notes for Chapter 9. Introduction to Data Mining
Data Mining Cluster Analysis: Advanced Concepts and Algorithms Lecture Notes for Chapter 9 Introduction to Data Mining by Tan, Steinbach, Kumar Tan,Steinbach, Kumar Introduction to Data Mining 4/18/2004
Clustering UE 141 Spring 2013
Clustering UE 141 Spring 013 Jing Gao SUNY Buffalo 1 Definition of Clustering Finding groups of obects such that the obects in a group will be similar (or related) to one another and different from (or
Génie Logiciel et Gestion de Projets. Evolution
Génie Logiciel et Gestion de Projets Evolution 1 Roadmap Evolution: definitions Re-engineering Legacy systems Reverse engineering Software Visualisation Re-engineering Patterns 2 Evolution: Definitions
An Automatic Reversible Transformation from Composite to Visitor in Java
An Automatic Reversible Transformation from Composite to Visitor in Java Akram To cite this version: Akram. An Automatic Reversible Transformation from Composite to Visitor in Java. CIEL 2012, P. Collet,
Data Mining Cluster Analysis: Advanced Concepts and Algorithms. Lecture Notes for Chapter 9. Introduction to Data Mining
Data Mining Cluster Analysis: Advanced Concepts and Algorithms Lecture Notes for Chapter 9 Introduction to Data Mining by Tan, Steinbach, Kumar Tan,Steinbach, Kumar Introduction to Data Mining 4/18/2004
Dr. U. Devi Prasad Associate Professor Hyderabad Business School GITAM University, Hyderabad Email: [email protected]
96 Business Intelligence Journal January PREDICTION OF CHURN BEHAVIOR OF BANK CUSTOMERS USING DATA MINING TOOLS Dr. U. Devi Prasad Associate Professor Hyderabad Business School GITAM University, Hyderabad
BCS HIGHER EDUCATION QUALIFICATIONS Level 6 Professional Graduate Diploma in IT. March 2013 EXAMINERS REPORT. Software Engineering 2
BCS HIGHER EDUCATION QUALIFICATIONS Level 6 Professional Graduate Diploma in IT March 2013 EXAMINERS REPORT Software Engineering 2 General Comments The pass rate this year was significantly better than
Clustering Data Streams
Clustering Data Streams Mohamed Elasmar Prashant Thiruvengadachari Javier Salinas Martin [email protected] [email protected] [email protected] Introduction: Data mining is the science of extracting
VISUALIZATION APPROACH FOR SOFTWARE PROJECTS
Canadian Journal of Pure and Applied Sciences Vol. 9, No. 2, pp. 3431-3439, June 2015 Online ISSN: 1920-3853; Print ISSN: 1715-9997 Available online at www.cjpas.net VISUALIZATION APPROACH FOR SOFTWARE
II. TYPES OF LEVEL A.
Study and Evaluation for Quality Improvement of Object Oriented System at Various Layers of Object Oriented Matrices N. A. Nemade 1, D. D. Patil 2, N. V. Ingale 3 Assist. Prof. SSGBCOET Bhusawal 1, H.O.D.
Clustering for Monitoring Software Systems Maintainability Evolution
SQM 2008 Clustering for Monitoring Software Systems Maintainability Evolution P. Antonellis [email protected] Department of Computer Engineering and Informatics, University Of Patras,Greece D. Antoniou
INTENSIVE FIXED CHUNKING (IFC) DE-DUPLICATION FOR SPACE OPTIMIZATION IN PRIVATE CLOUD STORAGE BACKUP
INTENSIVE FIXED CHUNKING (IFC) DE-DUPLICATION FOR SPACE OPTIMIZATION IN PRIVATE CLOUD STORAGE BACKUP 1 M.SHYAMALA DEVI, 2 V.VIMAL KHANNA, 3 M.SHAHEEN SHAH 1 Assistant Professor, Department of CSE, R.M.D.
Big Data Analytics of Multi-Relationship Online Social Network Based on Multi-Subnet Composited Complex Network
, pp.273-284 http://dx.doi.org/10.14257/ijdta.2015.8.5.24 Big Data Analytics of Multi-Relationship Online Social Network Based on Multi-Subnet Composited Complex Network Gengxin Sun 1, Sheng Bin 2 and
Semantic Concept Based Retrieval of Software Bug Report with Feedback
Semantic Concept Based Retrieval of Software Bug Report with Feedback Tao Zhang, Byungjeong Lee, Hanjoon Kim, Jaeho Lee, Sooyong Kang, and Ilhoon Shin Abstract Mining software bugs provides a way to develop
Exploiting Dynamic Information in IDEs Eases Software Maintenance
Exploiting Dynamic Information in IDEs Eases Software Maintenance David Röthlisberger Software Composition Group, University of Bern, Switzerland [email protected] Abstract The integrated development
Fault Localization in a Software Project using Back- Tracking Principles of Matrix Dependency
Fault Localization in a Software Project using Back- Tracking Principles of Matrix Dependency ABSTRACT Fault identification and testing has always been the most specific concern in the field of software
Aspect Mining in Procedural Object-Oriented Code
Aspect Mining in Procedural Object-Oriented Code Muhammad Usman BHATTI 1 Stéphane DUCASSE 2 Awais RASHID 3 1 CRI, Université de Paris 1 Sorbonne, France 2 INRIA - Lille Nord Europe, France 3 Computing
PERFORMANCE ANALYSIS OF CLUSTERING ALGORITHMS IN DATA MINING IN WEKA
PERFORMANCE ANALYSIS OF CLUSTERING ALGORITHMS IN DATA MINING IN WEKA Prakash Singh 1, Aarohi Surya 2 1 Department of Finance, IIM Lucknow, Lucknow, India 2 Department of Computer Science, LNMIIT, Jaipur,
IMPROVISATION OF STUDYING COMPUTER BY CLUSTER STRATEGIES
INTERNATIONAL JOURNAL OF ADVANCED RESEARCH IN ENGINEERING AND SCIENCE IMPROVISATION OF STUDYING COMPUTER BY CLUSTER STRATEGIES C.Priyanka 1, T.Giri Babu 2 1 M.Tech Student, Dept of CSE, Malla Reddy Engineering
Data Mining & Data Stream Mining Open Source Tools
Data Mining & Data Stream Mining Open Source Tools Darshana Parikh, Priyanka Tirkha Student M.Tech, Dept. of CSE, Sri Balaji College Of Engg. & Tech, Jaipur, Rajasthan, India Assistant Professor, Dept.
Data Mining Cluster Analysis: Basic Concepts and Algorithms. Clustering Algorithms. Lecture Notes for Chapter 8. Introduction to Data Mining
Data Mining Cluster Analsis: Basic Concepts and Algorithms Lecture Notes for Chapter 8 Introduction to Data Mining b Tan, Steinbach, Kumar Clustering Algorithms K-means and its variants Hierarchical clustering
A Business Process Driven Approach for Generating Software Modules
A Business Process Driven Approach for Generating Software Modules Xulin Zhao, Ying Zou Dept. of Electrical and Computer Engineering, Queen s University, Kingston, ON, Canada SUMMARY Business processes
Program Understanding with Code Visualization
Program Understanding with Code Visualization Arif Iftikhar Department of Computer Science National University of Computer and Emerging Sciences 852-B Faisal Town, Lahore, Pakistan [email protected]
A Comparative Study of clustering algorithms Using weka tools
A Comparative Study of clustering algorithms Using weka tools Bharat Chaudhari 1, Manan Parikh 2 1,2 MECSE, KITRC KALOL ABSTRACT Data clustering is a process of putting similar data into groups. A clustering
Education. Award. Experience. Teaching Assignment. Research Project
Dr. Satwinder Singh Assistant Professor Centre for Computer Science Technology School of Engineering & Technology Central University of Punjab Bathinda-151100 email:[email protected] Education Ph.
Fault Analysis in Software with the Data Interaction of Classes
, pp.189-196 http://dx.doi.org/10.14257/ijsia.2015.9.9.17 Fault Analysis in Software with the Data Interaction of Classes Yan Xiaobo 1 and Wang Yichen 2 1 Science & Technology on Reliability & Environmental
A Business Process Services Portal
A Business Process Services Portal IBM Research Report RZ 3782 Cédric Favre 1, Zohar Feldman 3, Beat Gfeller 1, Thomas Gschwind 1, Jana Koehler 1, Jochen M. Küster 1, Oleksandr Maistrenko 1, Alexandru
Analyzing Java Software by Combining Metrics and Program Visualization
Analyzing Java Software by Combining Metrics and Program Visualization Tarja Systä Software Systems Laboratory Tampere University of Technology P.O. Box 553, FIN-33101 Tampere, Finland [email protected]
Percerons: A web-service suite that enhance software development process
Percerons: A web-service suite that enhance software development process Percerons is a list of web services, see http://www.percerons.com, that helps software developers to adopt established software
Sustaining Privacy Protection in Personalized Web Search with Temporal Behavior
Sustaining Privacy Protection in Personalized Web Search with Temporal Behavior N.Jagatheshwaran 1 R.Menaka 2 1 Final B.Tech (IT), [email protected], Velalar College of Engineering and Technology,
JOURNAL OF OBJECT TECHNOLOGY
JOURNAL OF OBJECT TECHNOLOGY Online at http://www.jot.fm. Published by ETH Zurich, Chair of Software Engineering JOT, 2007 Vol. 6, No. 1, January-February 2007 CM Configuration Change Management John D.
Supporting Software Development Process Using Evolution Analysis : a Brief Survey
Supporting Software Development Process Using Evolution Analysis : a Brief Survey Samaneh Bayat Department of Computing Science, University of Alberta, Edmonton, Canada [email protected] Abstract During
Unsupervised learning: Clustering
Unsupervised learning: Clustering Salissou Moutari Centre for Statistical Science and Operational Research CenSSOR 17 th September 2013 Unsupervised learning: Clustering 1/52 Outline 1 Introduction What
Example: Document Clustering. Clustering: Definition. Notion of a Cluster can be Ambiguous. Types of Clusterings. Hierarchical Clustering
Overview Prognostic Models and Data Mining in Medicine, part I Cluster Analsis What is Cluster Analsis? K-Means Clustering Hierarchical Clustering Cluster Validit Eample: Microarra data analsis 6 Summar
Does the Act of Refactoring Really Make Code Simpler? A Preliminary Study
Does the Act of Refactoring Really Make Code Simpler? A Preliminary Study Francisco Zigmund Sokol 1, Mauricio Finavaro Aniche 1, Marco Aurélio Gerosa 1 1 Department of Computer Science University of São
Chapter ML:XI (continued)
Chapter ML:XI (continued) XI. Cluster Analysis Data Mining Overview Cluster Analysis Basics Hierarchical Cluster Analysis Iterative Cluster Analysis Density-Based Cluster Analysis Cluster Evaluation Constrained
Clustering on Large Numeric Data Sets Using Hierarchical Approach Birch
Global Journal of Computer Science and Technology Software & Data Engineering Volume 12 Issue 12 Version 1.0 Year 2012 Type: Double Blind Peer Reviewed International Research Journal Publisher: Global
A New Cognitive Approach to Measure the Complexity of Software s
, pp.185-198 http://dx.doi.org/10.14257/ijseia.2014.8.7,15 A New Cognitive Approach to Measure the Complexity of Software s Amit Kumar Jakhar and Kumar Rajnish Department of Computer Science and Engineering,
Comparison and Analysis of Various Clustering Methods in Data mining On Education data set Using the weak tool
Comparison and Analysis of Various Clustering Metho in Data mining On Education data set Using the weak tool Abstract:- Data mining is used to find the hidden information pattern and relationship between
EMPIRICAL STUDY ON SELECTION OF TEAM MEMBERS FOR SOFTWARE PROJECTS DATA MINING APPROACH
EMPIRICAL STUDY ON SELECTION OF TEAM MEMBERS FOR SOFTWARE PROJECTS DATA MINING APPROACH SANGITA GUPTA 1, SUMA. V. 2 1 Jain University, Bangalore 2 Dayanada Sagar Institute, Bangalore, India Abstract- One
SoSe 2014: M-TANI: Big Data Analytics
SoSe 2014: M-TANI: Big Data Analytics Lecture 4 21/05/2014 Sead Izberovic Dr. Nikolaos Korfiatis Agenda Recap from the previous session Clustering Introduction Distance mesures Hierarchical Clustering
A Novel Approach for Efficient Load Balancing in Cloud Computing Environment by Using Partitioning
A Novel Approach for Efficient Load Balancing in Cloud Computing Environment by Using Partitioning 1 P. Vijay Kumar, 2 R. Suresh 1 M.Tech 2 nd Year, Department of CSE, CREC Tirupati, AP, India 2 Professor
PROPERTECHNIQUEOFSOFTWARE INSPECTIONUSING GUARDED COMMANDLANGUAGE
International Journal of Computer ScienceandCommunication Vol. 2, No. 1, January-June2011, pp. 153-157 PROPERTECHNIQUEOFSOFTWARE INSPECTIONUSING GUARDED COMMANDLANGUAGE Neeraj Kumar Singhania University,
FIVE LAYERED MODEL FOR IDENTIFICATION OF
FIVE LAYERED MODEL FOR IDENTIFICATION OF SOFTWARE PERFORMANCE REQUIREMENTS Gopichand.Merugu 1 and AnandaRao.Akepogu 2 1 Associate. Professor, CSE, Department, BVRIT,Narasapur,Andhrapradesh,India [email protected]
A Robust Method for Solving Transcendental Equations
www.ijcsi.org 413 A Robust Method for Solving Transcendental Equations Md. Golam Moazzam, Amita Chakraborty and Md. Al-Amin Bhuiyan Department of Computer Science and Engineering, Jahangirnagar University,
WEB SITE OPTIMIZATION THROUGH MINING USER NAVIGATIONAL PATTERNS
WEB SITE OPTIMIZATION THROUGH MINING USER NAVIGATIONAL PATTERNS Biswajit Biswal Oracle Corporation [email protected] ABSTRACT With the World Wide Web (www) s ubiquity increase and the rapid development
Data Mining Project Report. Document Clustering. Meryem Uzun-Per
Data Mining Project Report Document Clustering Meryem Uzun-Per 504112506 Table of Content Table of Content... 2 1. Project Definition... 3 2. Literature Survey... 3 3. Methods... 4 3.1. K-means algorithm...
Load Balancing in Structured Peer to Peer Systems
Load Balancing in Structured Peer to Peer Systems DR.K.P.KALIYAMURTHIE 1, D.PARAMESWARI 2 Professor and Head, Dept. of IT, Bharath University, Chennai-600 073 1 Asst. Prof. (SG), Dept. of Computer Applications,
Software Re-Documentation Process and Tool
Software Re-Documentation Process and Tool Nicolas Anquetil, Kathia M. Oliveira, Anita G.M. dos Santos, Paulo C.S. da Silva jr., Laesse C. de Araujo jr., and Susa D.C.F. Vieira UCB Catholic University
Bisecting K-Means for Clustering Web Log data
Bisecting K-Means for Clustering Web Log data Ruchika R. Patil Department of Computer Technology YCCE Nagpur, India Amreen Khan Department of Computer Technology YCCE Nagpur, India ABSTRACT Web usage mining
SAPM Overview. Semester Summary. Project management. Tools (1) Dr. James A. Bednar
SAPM Overview Semester Summary Dr. James A. Bednar [email protected] http://homepages.inf.ed.ac.uk/jbednar In this lecture we review the topics we have covered this semester, focusing on what I consider
A QoS-Aware Web Service Selection Based on Clustering
International Journal of Scientific and Research Publications, Volume 4, Issue 2, February 2014 1 A QoS-Aware Web Service Selection Based on Clustering R.Karthiban PG scholar, Computer Science and Engineering,
A Social Network perspective of Conway s Law
A Social Network perspective of Conway s Law Chintan Amrit, Jos Hillegersberg, Kuldeep Kumar Dept of Decision Sciences Erasmus University Rotterdam {camrit, jhillegersberg, kkumar}@fbk.eur.nl 1. Introduction
International Journal of Advanced Research in Computer Science and Software Engineering
Volume 3, Issue 3, March 2013 ISSN: 2277 128X International Journal of Advanced Research in Computer Science and Software Engineering Research Paper Available online at: www.ijarcsse.com Coupling and Cohesion
Understanding Software Static and Dynamic Aspects
Understanding Software Static and Dynamic Aspects Welf Löwe IPD, Universität Karlsruhe PF 6980, 76128 Karlsruhe Germany [email protected] Andreas Ludwig IPD, Universität Karlsruhe PF 6980, 76128 Karlsruhe
Software Analysis Visualization
28th International Conference on Software Engineering Software Analysis Visualization Harald Gall and Michele Lanza !oftware Visualiza"o# Tutorial F7 Software Evolution: Analysis and Visualization 2006
A Comparison of General Approaches to Multiprocessor Scheduling
A Comparison of General Approaches to Multiprocessor Scheduling Jing-Chiou Liou AT&T Laboratories Middletown, NJ 0778, USA [email protected] Michael A. Palis Department of Computer Science Rutgers University
EFFECTIVE DATA RECOVERY FOR CONSTRUCTIVE CLOUD PLATFORM
INTERNATIONAL JOURNAL OF REVIEWS ON RECENT ELECTRONICS AND COMPUTER SCIENCE EFFECTIVE DATA RECOVERY FOR CONSTRUCTIVE CLOUD PLATFORM Macha Arun 1, B.Ravi Kumar 2 1 M.Tech Student, Dept of CSE, Holy Mary
Optimization of ETL Work Flow in Data Warehouse
Optimization of ETL Work Flow in Data Warehouse Kommineni Sivaganesh M.Tech Student, CSE Department, Anil Neerukonda Institute of Technology & Science Visakhapatnam, India. [email protected] P Srinivasu
A Study on Software Metrics and Phase based Defect Removal Pattern Technique for Project Management
International Journal of Soft Computing and Engineering (IJSCE) A Study on Software Metrics and Phase based Defect Removal Pattern Technique for Project Management Jayanthi.R, M Lilly Florence Abstract:
Traceability Method for Software Engineering Documentation
www.ijcsi.org 216 Traceability Method for Software Engineering Documentation Nur Adila Azram 1 and Rodziah Atan 2 1 Department of Information System, Universiti Putra Malaysia, Company Serdang, Selangor,
An Analysis on Density Based Clustering of Multi Dimensional Spatial Data
An Analysis on Density Based Clustering of Multi Dimensional Spatial Data K. Mumtaz 1 Assistant Professor, Department of MCA Vivekanandha Institute of Information and Management Studies, Tiruchengode,
OrionPlanning: Improving Modularization and Checking Consistency on Software Architecture
OrionPlanning: Improving Modularization and Checking Consistency on Software Architecture Gustavo Santos, Nicolas Anquetil, Anne Etien, and Stéphane Ducasse RMoD Team INRIA, Lille, France {firstname.lastname}@inria.fr
Regression Testing Based on Comparing Fault Detection by multi criteria before prioritization and after prioritization
Regression Testing Based on Comparing Fault Detection by multi criteria before prioritization and after prioritization KanwalpreetKaur #, Satwinder Singh * #Research Scholar, Dept of Computer Science and
ON INTEGRATING UNSUPERVISED AND SUPERVISED CLASSIFICATION FOR CREDIT RISK EVALUATION
ISSN 9 X INFORMATION TECHNOLOGY AND CONTROL, 00, Vol., No.A ON INTEGRATING UNSUPERVISED AND SUPERVISED CLASSIFICATION FOR CREDIT RISK EVALUATION Danuta Zakrzewska Institute of Computer Science, Technical
Clustering. Danilo Croce Web Mining & Retrieval a.a. 2015/201 16/03/2016
Clustering Danilo Croce Web Mining & Retrieval a.a. 2015/201 16/03/2016 1 Supervised learning vs. unsupervised learning Supervised learning: discover patterns in the data that relate data attributes with
The Class Blueprint A Visualization of the Internal Structure of Classes
The Class Blueprint A Visualization of the Internal Structure of Classes Michele Lanza Software Composition Group University Of Bern Bern, Switzerland [email protected] Stéphane Ducasse Software Composition
Most Effective Communication Management Techniques for Geographically Distributed Project Team Members
Most Effective Communication Management Techniques for Geographically Distributed Project Team Members Jawairia Rasheed, Farooque Azam and M. Aqeel Iqbal Department of Computer Engineering College of Electrical
