Software Engineering


BACKpackers (Team)

This is a Peer-to-Peer Backup system that can backup important files and folders in local LAN network without the use of centralized backup server. The peers can be connected either through LAN or can also be gcloud instances. We have used Socket Communication to establish connection among all peers.

Language and Libraries used: Python 3.7, Socket, thread


Analyzing NPM packages (Individual)

This is a project that aims to understand existing 1000 npm packages and libraries using Qualitative and Statistical Analysis using the r2c analyzer.
The following Analysis has been done:

  • Out of the 1000 npm packages, number of trivial packages were identified. Trivial package is any package which has less than 35 lines of code and cyclomatic complexity less than 10.
  • The dependencies of each package was identified and the Time Lag between the latest version of the dependency and the version used in the project was computed for all packages.
  • The dependency tree for each package was computed and cyclic dependencies were identified.
  • Statistical analysis such as goodness of fit, t-test and correlation analysis were done on all 1000 packages.

  • Language and Libraries used: Nodejs, Python, R programming, r2c analyzers.