Skip to content

nikhilvenkatkumsetty/Machine-Learning-Approach-to-Software-Requirements-Prioritization

Repository files navigation

Machine-Learning-Approach-to-software-requirements-Prioritization

Using Genetic Algorithm and Particle- swarm optimization to prioritize the software requirements of a project

Description:

Requirement analysts possess relevant knowledge about the relative importance of requirements. We use an Interactive Genetic Algorithm to produce a requirement ordering which complies with the existing priorities, satisfies the technical constraints and takes into account the relative preferences elicited from the user. On a real case study, we show that this approach improves non interactive optimization, ignoring the elicited preferences, and that it can handle a number of requirements which is otherwise problematic for state of the art techniques.

Hardware Requirements

system with i3 processor, 4GB RAM, 200MB of disk space

Software Requirements

install python 3.9
Jupyter Notebook or Anaconda Navigator 1.10.0

pip install notebook
jupyter notebook

or install jupyter notebook in anaconda navigator and launch it.

packages to install

  • matplotlib 3.3.3
pip install matplotlib
conda install -c conda-forge matplotlib
  • numpy 1.19.4
pip3 install python3-numpy
conda install -c conda-forge numpy
  • pandas 2.0.0
pip install pandas2
conda install -c conda-forge pandas
  • times 0.7
pip install times

steps to run the project-

download teh zip file and extract it in the desired folder
or
navigate to the folder you want to install and open command prompt or terminal and paste the following command:

git clone https://github.com/nikhilvenkatkumsetty/Machine-Learning-Approach-to-Software-Requirements-Prioritization.git

if you don't have git and would like to install click here
now run the SE1.ipynb and PSO.ipynb using jupyter notebook

About

Using Genetic Algorithm to prioritize the software requirements of a project

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published