Operations Research Project (Batch: ePGP'03 and eMEP'10

)

Submitted to IIM -K

Submitted By:
Dinesh Sastri (Roll No: eMEP-10-008) – Ankleshwar, Gujarat. Girish Digamber Gundale (Roll No: eMEP-10-009) – Hitech City, Hyderabad Raghava Chandra Tripathi (Roll No: ePGP-03-056) – Hitech City, Hyderabad Pavan Kumar Muddana (Roll No: ePGP-03-053) – Hitech City, Hyderabad

integrated business processes and industry-focused solutions. sales and service. Oracle EBusiness Suite provides organizations of all sizes. Oracle eBusiness Suite (eBS) is a product from Oracle Corporation. manufacturing. etc.1 Abstract: This paper provides an overview of usage of Operations Research method sin a Software Industry. 2 Introduction to ERP and Oracle eBS Enterprise resource planning (ERP) integrates internal and external management information across an entire organization. Here we mainly focus on how Hungarian Method can be used for assigning each module of Oracle eBusiness Suite to individual testers for testing their respective modules so as to decrease the cycle time of each phase of testing and also ensure that all the modules are thoroughly tested. The eBusiness Suite contains several modules. The most important modules and sub-modules under each module are listed below: Financials:  General Ledger (GL)  Accounts Payables (AP)  Accounts Receivables (AR)  Fixed Assets (FA)  Cash Management (CM)  Purchase Order (PO) Manufacturing:  Work in Process(WIP)  Bills of Material(BOM)  Production  MRP Planning  Discrete Manufacturing  Ware House Management Distributions:  Purchasing(PO)  Inventory(Inv)  Order Management(OM) . Its purpose is to facilitate the flow of information between all business functions inside the boundaries of the organization and manage the connections to outside stakeholders. ERP systems automate this activity with an integrated software application. is a complete and integrated set of enterprise applications which provides ERP solutions across various business sectors. The method depicted in this paper may not be exactly followed in EBS testing projects but gives an insight as to how Hungarian Method can be put to use to achieve optimal results. embracing finance/accounting. across all industries and regions with a global business foundation that reduces costs and increases productivity through a portfolio of rapid value solutions.

Project Accounting:  Project Costing  Project Billing  Project Management 3 Challenge in testing ERP applications ERP applications span across various business functions and require in-depth business knowledge to understand the complete functionality. we restrict our problem to Finance module and the various sub-modules under it. Also the hiring rate of ERP consultants is very high. Rather the general practice is to have one ERP consultant in the team who is an expert in one of the modules and has got basic knowledge on the remaining module. The prime responsibility of the EBS consultant is to provide training to other testers on eBusiness package and provide functional knowledge to the team through out the testing life cycle. This makes it very difficult for an individual to have complete knowledge on all modules. The owners of the respective modules are expected to perform end-to-end testing of their modules and provide sign off. Each tester has been given an overall skills test in the sub-modules. 4 Application of Hungarian Method for testing EBS After the initial training is over. The various tasks that an owner of a module has to do are:       Gather Requirements Design Test Cases Execute the test cases Design automation scripts for load testing Execute load tests Design automation suite for regression testing Problem Depiction For simplicity purpose. So it’s not advisable to hire ERP consultants for each module. the testers are required to undergo an assessment and based on their performance in the respective modules. a primary and secondary owners for each of the modules are selected. Generally we see an ERP consultant to be expert in only one of the modules listed in the above section and a fair bit of knowledge on the remaining modules. The results are presented in the table below: .

This can be considered as a maximum assignment problem. j) with C-c (i. . Step 1: Since this is a maximum assignment. Here C=99. So now the updated table will be as shown below: PO 37 24 19 21 9 34 CM 24 19 24 17 14 24 FA 19 17 18 15 14 19 AR 6 14 1 19 19 24 AP 4 28 9 49 14 31 GL 2 2 2 1 0 3 Row Min 2 2 1 1 0 3 Tester 1 Tester 2 Tester 3 Tester 4 Tester 5 Tester 6 Step 2: Subtract Row Min from each row.Tester 1 Tester 2 Tester 3 Tester 4 Tester 5 Tester 6 PO 62 75 80 78 90 65 CM 75 80 75 82 85 75 FA 80 82 81 84 85 80 AR 93 85 98 80 80 75 AP 95 71 90 50 85 68 GL 97 97 97 98 99 96 Based on the score obtained. j) where C = maximum cell value. we must convert to a minimum assignment by replacing each cell entry c (i. Observe that if we try to just assign the highest scores we end up with Tester Tester 1 Tester 2 Tester 3 Tester 4 Tester 5 Tester 6 Module AP CM AR FA GL PO Total Score Score 95 80 98 84 99 65 521 Now let us apply Hungarian Method to the problem above and find out if we have a better assignment than the one shown above. each tester has to be assigned a module.

6 and rows 4 and 5 Tester 1 Tester 2 Tester 3 Tester 4 Tester 5 Tester 6 PO 26 13 9 11 0 22 CM 8 3 9 2 0 7 FA 3 1 3 0 0 2 AR 4 12 0 18 19 21 AP 0 24 6 46 12 26 GL 0 0 1 0 0 0 Since the number of lines required covering all the zeros is 5. 5. . This can be achieved by drawing lines through columns 4. which is less than the no. PO 26 13 9 11 0 22 CM 8 3 9 2 0 7 FA 3 1 3 0 0 2 AR 4 12 0 18 19 21 AP 0 24 6 46 12 26 GL 0 0 1 0 0 0 Tester 1 Tester 2 Tester 3 Tester 4 Tester 5 Tester 6 Step 4: Now let’s draw the minimum number of lines to cover all the zeros in the table. Of rows and columns in the problem (6). we subtract minimum uncovered number (which is 2 in this case) from every uncovered number and add 2 to every number at intersections.Tester 1 Tester 2 Tester 3 Tester 4 Tester 5 Tester 6 Col Min PO 35 22 18 20 9 31 9 CM 22 17 23 16 14 21 14 FA 17 15 17 14 14 16 14 AR 4 12 0 18 19 21 0 AP 2 26 8 48 14 28 2 GL 0 0 1 0 0 0 0 Step 3: Subtract Col Min from each column.

hence this is the optimal assignment. so we subtract minimum uncovered number (which is 1 in this case ) from every uncovered number and add 1 to every number at intersections. . PO Tester 1 Tester 2 Tester 3 Tester 4 Tester 5 Tester 6 23 10 6 9 0 19 CM 5 0 6 0 0 4 FA 2 0 2 0 2 1 AR 4 12 0 19 22 21 AP 0 24 6 47 15 26 GL 0 0 1 1 3 0 Here we see that the number of lines required to cover all the zeros is 6 which is equal to number of rows and columns hence we stop here.PO Tester 1 Tester 2 Tester 3 Tester 4 Tester 5 Tester 6 24 11 7 9 0 20 CM 6 1 7 0 0 5 FA 3 1 3 0 2 2 AR 4 12 0 18 21 21 AP 0 24 6 46 14 26 GL 0 0 1 0 2 0 Still we can see that the minimum number of lines required covering all the zeros is 5 which is less than the no. We make the assignments as follows: Tester 1 Tester 2 Tester 3 Tester 4 Tester 5 Tester 6 Total Primary Module AP CM AR FA PO GL Score 95 80 98 84 90 96 543 Here we see that the total score of 543 which is greater than the one we got earlier. of rows and columns (6).

we will do this by putting zero to their assignments. PO 62 75 80 78 0 65 CM 75 0 75 82 85 75 FA 80 82 81 0 85 80 AR 93 85 0 80 80 75 AP 0 71 90 50 85 68 GL 97 97 97 98 99 0 Tester 1 Tester 2 Tester 3 Tester 4 Tester 5 Tester 6 Now let’s proceed as we did earlier.Now in addition to the assignment of the primary module we also need to assign a secondary module to each tester. we must convert to a minimum assignment by replacing each cell entry c (i. Step 1: Since this is a maximum assignment. j) where C = maximum cell value. We need to first eliminate the original assignments from the matrix. j) with C-c (i. Eliminating the original assignment of the module seen earlier we need to find what assignments now give the maximal potential for the assignment of the second module. Let’s check with the help of the Hungarian algorithm. So now the updated table will be as shown below: Row PO CM FA AR AP GL Min 37 24 19 6 99 2 2 Tester 1 24 99 17 14 28 2 2 Tester 2 19 24 18 99 9 2 2 Tester 3 21 17 99 19 49 1 1 Tester 4 99 14 14 19 14 0 0 Tester 5 34 24 19 24 31 99 19 Tester 6 Step 2: Subtract the row min from each row PO 35 22 17 20 99 15 15 CM 22 97 22 16 14 5 5 FA 17 15 16 98 14 0 0 AR 4 12 97 18 19 5 4 AP 97 26 7 48 14 12 7 GL 0 0 0 0 0 80 0 Tester 1 Tester 2 Tester 3 Tester 4 Tester 5 Tester 6 Column Min . Here C=99.

we subtract m (which is 2 in this case) from every uncovered number and add to every number at intersections PO Tester 1 Tester 2 Tester 3 Tester 4 Tester 5 Tester 6 18 5 0 3 82 0 CM 15 90 15 9 7 0 FA 15 13 14 96 12 0 AR 0 8 93 14 15 3 AP 90 19 0 41 7 7 GL 0 0 0 0 0 82 Still we see that minimum number of lines to cover all the zeros is 5 which is less than number of columns and rows (6). Put lines through column 4. We subtract m (which is 3 in this case) from every uncovered number and add to every number at intersections PO Tester 1 Tester 2 Tester 3 Tester 4 Tester 5 Tester 6 15 2 0 0 79 0 CM 12 87 15 6 4 0 FA 12 10 14 93 9 0 AR 0 8 96 14 15 6 AP 87 16 0 38 4 7 GL 0 0 3 0 0 85 Still we see that minimum number of lines to cover all the zeros is 5 which is less than number of columns and rows (6). So we again set m = 3. So we again set m = 4. So m =2. 6 and row 6. 5. We subtract m (which is 4 in this case) from every uncovered number and add to every number at intersections .Step 3: Subtract the column min from the each column PO 20 7 2 5 84 0 CM 17 92 17 11 9 0 FA 17 15 16 98 14 0 AR 0 8 93 14 15 1 AP 90 19 0 41 7 5 GL 0 0 0 0 0 80 Tester 1 Tester 2 Tester 3 Tester 4 Tester 5 Tester 6 Use the minimum number of lines to cover all the zeros in the matrix. Since the number lines required 4 is less than number rows and columns 6 we set m = minimum uncovered number.

PO CM FA AR AP GL Tester 1 Tester 2 Tester 3 Tester 4 Tester 5 Tester 6 15 2 0 0 79 4 8 83 11 2 0 0 8 6 10 89 5 0 0 8 96 14 15 10 87 16 0 38 4 11 0 0 3 0 0 89 Here we see that the number of lines required to cover all the zeros is 6 which is equal to number of rows and columns hence we stop here. 5 Conclusion: Final Assignment of modules to each tester: Primary Module Tester 1 Tester 2 Tester 3 Tester 4 Tester 5 Tester 6 Accounts Payables Cash Management Accounts Receivables Fixed Assets Purchase Order General Ledger Secondary Module Accounts Receivables General Ledger Accounts Payables Purchase Order Cash Management Fixed Assets . We make the assignments as follows: Module Score AR 93 Tester 1 GL 97 Tester 2 AP 90 Tester 3 PO 78 Tester 4 CM 85 Tester 5 FA 80 Tester 6 523 Total Here we see that the total score is 523 which we got with the optimal solution for the assignment of the primary module to each tester and hence this is also the optimal solution. Hence using the Hungarian algorithm we have achieved the optimal solution for assigning the testers with the primary and secondary modules.