Second Evaluation

I would say the second evaluation period: June 28, 2019 - July 22, 2019, was one of the most exciting period of my whole GSoC project. I had passed in the first evaluation, received payment and had gone partying with my brother. Things also got easier and I started enjoying coding in Qt.

During this period, I would say that I face these two major problems.

1) For the first evaluation, I had not done unit testing. I had only tested my features manually. So, It was time to create unit tests for each feature. I started reading about Qt unit tests, analysed source code of unit tests and wrote my own for previously implemented features. These unit tests were just not enough as I was taking a huge relative error of around 0.1. At that time my mentor pointed it out but I couldn't able to understand properly. So we left it for a while and started with new features. After completing new features (almost of what was intended to be done according to the proposal), I started creating unit tests for these features as well. My relative error was huge again, but this time, I didn't leave it for the future. So, I discussed it with my mentor again and then we caught the issue. The issue was, I was not taking good precision in correct answers with which values had to be compared. I recalculated all answers using a calculator and then placed in it the code. Now, I am getting around 1.e-5 accuracy, which I think is decent enough. This recalculation for then I had only done for newly implemented features, ones which are implemented for first evaluation is still left to be recalculated. This is explained in my report for the second evaluation.

2) The second problem was the size of source code files. My portion of the code now became large. The problem was that introducing new features will increase the size of the source file by a huge amount and it is not a good practice to add everything in one file, and we also didn't want to repeat and rewrite same portions of the code everywhere. So, then we used the inheritance concept. I created base classes (GeneralTest) for all the classes created so far and subclassed (HypothesisTest and CorrelationCoefficient) from it. This is also explained in my report for the second evaluation.

For more technical details of what all is done in this period, you can refer to my report:

Thank you so much for your interest and reading so patiently. Bye, take care.. see you soon.


Popular posts from this blog

Final Days of GSoC 2019

First Evaluation