KEMBAR78
Organized | PDF | Statistics | Principal Component Analysis
0% found this document useful (0 votes)
23 views39 pages

Organized

The document describes 10 practical experiments conducted on software engineering datasets using various machine learning techniques. The practicals cover extracting software metrics using CKJM, descriptive statistics, PCA, regression analysis, data preprocessing, classification algorithms, feature selection and non-parametric statistical tests.

Uploaded by

tarunmalikjaat6
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
23 views39 pages

Organized

The document describes 10 practical experiments conducted on software engineering datasets using various machine learning techniques. The practicals cover extracting software metrics using CKJM, descriptive statistics, PCA, regression analysis, data preprocessing, classification algorithms, feature selection and non-parametric statistical tests.

Uploaded by

tarunmalikjaat6
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 39

UNIVERSITY SCHOOL OF INFORMATION,

COMMUNICATION AND TECHNOLOGY

Mining Software Repositories and Predictive Modelling

ITE 324P

BACHELOR OF TECHNOLOGY
IN
INFORMATION TECHNOLOGY

UNDER THE GUIDANCE OF: SUBMITTED BY:


Prof. Kamaldeep Kaur Name: MUKUND SINGH KUSHWAHA
Enrollment no.: - 01016401521

Class: B.Tech – IT (6th sem)


Batch: 2021 – 2025
INDEX
S.NO. NAME OF PRACTICAL DATE SIGN

Study of of ckjm Metrics tool and Extraction of Metrics data


1
using ckjm

Obtain Descriptive Statistics of the data you have collected. Use


2
python programming to obtain descriptive statistics.

Principal Component Analysis of Software Metrics data of


3
UIMS and QUES.

4 Regression Analysis of Software Maintainability datasets.

Application of Data Pre-processing techniques.-data scaling,


5
missing value imputation

Application of at least six Classification techniques on Software


6
Fault Prediction Datasets.

7 Application of Feature Selection Techniques..

8 T- test for two independent samples and Paired t- test

9 Mann Whitney U-test and Wilcoxon Test..

10 Friedman Test.
PRACTICAL 1
Aim: Study of of ckjm Metrics tool and Extraction of Metrics data using ckjm
Theory:

The program CKJM extended calculates nineteen size and structure software metrics by
processing the bytecode of compiled Java files. The program calculates for each class the
following metrics, and displays them on its standard output or saves in file, following the class's
name:

• WMC: Weighted methods per class (NOM: Number of Methods in the QMOOD metric
suite)
• DIT: Depth of Inheritance Tree
• NOC: Number of Children
• CBO: Coupling between object classes
• RFC: Response for a Class
• LCOM: Lack of cohesion in methods
• Ca: Afferent coupling (not a C&K metric)
• Ce: Efferent coupling (not a C&K metric)
• NPM: Number of Public Methods for a class (not a C&K metric; CIS: Class Interface
Size in the QMOOD metric suite)
• LCOM3: Lack of cohesion in methods Henderson-Sellers version
• LCO: Lines of Code (not a C&K metric)
• DAM: Data Access Metric (QMOOD metric suite)
• MOA: Measure of Aggregation (QMOOD metric suite)
• MFA: Measure of Functional Abstraction (QMOOD metric suite)
• CAM: Cohesion Among Methods of Class (QMOOD metric suite)
• IC: Inheritance Coupling (quality oriented extension to C&ampK metric suite)
• CBM: Coupling Between Methods (quality oriented extension to C&ampK metric suite)
• AMC: Average Method Complexity (quality oriented extension to C&ampK metric suite)
• CC: McCabe's Cyclomatic Complexity
STEP OF EXTRACTION OF METRICS:
1. Download CKJM: First, download the CKJM tool. You can find it on various online
repositories or its official website.
2. Prepare the Java project: Clone or download the source code of the open-source
Java project you want to analyze onto your local machine. Make sure you have
Java source files (*.java) in the project.
3. Compile the project (if necessary): If the project is not already compiled, you may
need to compile it to generate the .class files. You can usually do this with a build
tool like Maven or Gradle, or by using the appropriate compiler commands if it's a
simple project.
4. Run CKJM: Navigate to the directory where you downloaded CKJM and run it
from the command line, providing the path to the Java source files of the project
as an argument.
PRACTICAL 2
Aim: Obtain Descriptive Statistics of the data you have collected. Use python
programming to obtain descriptive statistics.

CODE:
OUTPUT:
PRACTICAL 3
Aim: Principal Component Analysis of Software Metrics data of UIMS and QUES.

CODE:

OUTPUT:

UIMS
QUES
PRACTICAL 4
Aim: Regression Analysis of Software Maintainability datasets
CODE:
OUTPUT:
PRACTICAL 5
Aim: Application of Data Pre-processing techniques-data scaling, missing value
imputation

CODE:
OUTPUT:
PRACTICAL 6
Aim: Application of at least six Classification techniques on Software Fault
Prediction Datasets.

CODE:
OUTPUT:
PRACTICAL 7
Aim: Application of Feature Selection Techniques.

a) Apply PCA and then perform Linear Regression on Software


Maintainability Datasets

CODE:
OUTPUT
b) Apply Correlation Based Feature Selection and then perform k-nn
classifier on Software Fault prediction datasets.

CODE:
OUTPUT :
PRACTICAL 8
Aim: T- test for two independent samples and Paired t- test

CODE:

OUTPUT:
PRACTICAL 9
Aim: Perform Mann Whitney U-test and Wilcoxon Test.
CODE:
OUTPUT:
PRACTICAL 10
Aim: Perform Freidman test

CODE:
OUTPUT:

You might also like