Computer software play an important role to help businesses stand out in their business industry but selection of a software project is a critical decision for any business. Business owners look for a software which provides best business value to their business.
Software selection involves a careful understanding of the software to optimize the use of available resources along with best investment in terms of business ideas to meet the business expectations. Practically it is not possible to know completely in advance the viability of a software but utilizing soft computing methods can give an idea whether a software under consideration could provide the best business value or not.
Traditional Methodology
Software project selection is the process of evaluating individual projects or group of projects and then choosing the most viable project for implementation, so as to meet the objectives of the business. Business owners usually consider insight, experience and other traditional financial analytical methods such as Net Present Value (NPV), Return on Investment (ROI), Internal Rate of Returns (IRR) etc. to evaluate and forecast a reliable business choice for a project. But these traditional evaluation methods does not effectively analyze the investment value of a software project. So, relying on these methods may result into wrong investment decisions which may end up into a long-term competitive loss to the business.
Apart from traditional evaluation methods, although there are many other methods put forward over 2 decades to effectively predict the best software for any business, Soft Computing methods have stood out showing promising results. Artificial Neural Networks forms a non-traditional prediction method and have been successfully applied to several domains including medicine, engineering, geology, physics and of course project management. These methods comprise of solutions designed specifically for estimation, classification and prediction of most critical constraints for any project i.e. time, cost and scope of project. Machine learning algorithms like ANNs offer to address these factors and are effective when large number of factors are available.
Artificial Neural Network Models
Artificial Neural Network (ANN) provides approach for evaluating overall value of potential software projects by assessing the benefits realized in terms of long-term business benefits which the business derives from a software project under all condition. One of the strengths of ANN is that it can approximate any nonlinear mathematical function. This is particularly useful when no information about the variables is available either because it is there does not exist any relationship among the variables or it is too complex.
The ANN model is built to classify a software project into one of the three categories viz. High Investment Value, Medium Investment Value and Low Investment Value. The input data is partitioned into training, validation and test data, and method like k-fold cross validation can be used to validate and test the performance of ANN model. With the most popular back propagation network, the model calculates optimal weights for the inputs during the forward pass.
Since the training data consists of expected outputs, error at the output layer is calculated. During the backward pass, the error values are propagated backwards towards the input layer. This is done with the partial derivatives of the performance in respect to the weights and biases calculated in each layer. The network adjusts its weights in each iteration and the optimization algorithm finds the weights which minimize the error based on the gradient. The model is then tested using the test data to achieve generalization. Developing a machine learning model to predict higher returns from a software project may not be achieved instantaneously. The process may involve considering lots of factors, rules and a lot of experiment effort may be required to get down to an optimized software selection model.
Projects selection may be a tasking activity for most business people but machine learning has an incredible potential for project selection decision. The ANN based models can address multi-class classification problems in project selection involving huge amount of data which can be used by business owners in any business industry.
The post Software Project Selection Using Artificial Neural Networks appeared first on Techno Dossier.