This project is read-only.

RegressionSuite

Lakshmi Krishnamurthy
v2.3, 23 August 2014

RegressionSuite aims to incorporate measurement of the startup lag, measurement of accurate execution times, generating execution statistics, customized input distributions, and processable regression specific details as part of the regular unit tests.

RegressionSuite library achieves its design goal by implementing its functionality over several packages:
* Regression Engine: Provides control for distribution set, invocation strategy, and load.
* Unit Regression Executor: Framework that implements set up and tear-down, as well as generate run details
* Regression Statistics: Execution time distribution, start-up and other event delay measurements, and system load monitoring
* Regression Output: Fine grained regressor level output, module aggregated output, sub-element execution time estimation.
* Regressor Set: Module containing set of regressors, group level turn on/off and execution control
* Regression Utilities: Formatting and tolerance checking.

Download RegressionSuite binary along with the complete DRIP CreditSuite source from the link here.

To install RegressionSuite, drop the jar into the class-path.

In the attached set of samples, regression testing is done on the DRIP CreditAnalytics library – please refer to the DRIP CreditAnalytics Installation information.

No special configuration is required to run the RegressionSuite library. Obviously, configuration may be required for the modules that undergo regression testing.

The most important calls in the CreditAnalyticsRegressionEngine sample are in its main method. The main initializes the CreditAnalytics library, adds the regressor set, and launches the regression suite. Refer to the javadoc and the comments in the CreditAnalyticsRegressionEngine.java class.

	public static void main (final String[] astrArgs) throws Exception {
		CreditAnalyticsRegressionEngine care = new CreditAnalyticsRegressionEngine (10,
			REGRESSION_DETAIL_MODULE_AGGREGATED);

		/*
		 * Add the regressor sets: Refer to the implementation of the corresponding regresors
		 */

		care.addRegressorSet (new CreditCurveRegressor());

		care.addRegressorSet (new DiscountCurveRegressor());

		/*
		 * Launch regression - and that's it!
		 */

		care.launch();
	}


RegressionSuite is part of DRIP CreditSuite – open suite analytics and trading/risk/valuation system for fixed income products. Detailed documentation and downloads may be found here.

Licence

RegressionSuite is distributed under the Apache 2.0 licence - please see the attached Licence for details.

Contributors

Lakshmi Krishnamurthy (lakshmi7977@gmail.com)

Last edited Jan 23, 2014 at 8:22 PM by Lakshmik, version 12