NEW APPLICATIONS FOR LOGIC PLANNING OF TRADITIONAL AND AGILE PROJECTS Judit Kiss PhD candidate Content of the presentation Traditional project planning • Gantt chart & network planning methods Agile project planning • Uncertain tasks and relations • Flexible matrix-based project planning techniques Computer applications • PGRA • APPA • MPPGA Matlab applications genetic algorithm based on GAlib Simulation Results 2/21 Project management approaches* 20% 70% 10% * Wysocki, Robert K.: Effective Project Management: Traditional, Agile, Extreme, Wiley Publishing, Inc., Indianapolis, Indiana, 5th ed., 2009, ISBN 978-0-470-42367-7. 3/21 Process of traditional project planning Work Break Down Structure Project: Z… Date: 2010,05,29 Phases / Work packages Project Management 4.1.1 4.1.3 Project start 17,12,07 18,01,08 Project coordination 14,01,08 Project enabling 4.3.1 - - 4.3.2 Briefing local consultants 13,06,08 4.1.5 Project controlling 14,01,08 13,06,08 A Gap analysis Finance F Gap analysis Production 28,02,08 28,01,08 28,02,08 28,01,08 29,02,08 28,01,08 29,02,08 4.4.2 B 4.4.7 G Design forms 14,01,08 25,01,08 28,01,08 28,02,08 28,01,08 28,02,08 14,01,08 25,01,08 28,01,08 29,02,08 28,01,08 29,02,08 4.4.3 C 4.4.8 H 4.3.3 Prepare Project Team Training Gap analysis Sales Design add ons and interfaces 14,01,08 25,01,08 28,01,08 28,02,08 20,02,08 07,03,08 14,01,08 25,01,08 28,01,08 29,02,08 28,01,08 in progress 4.4.4 D 4.4.9 I 4.3.4 Execute Project Team Training 02,06,08 Gap analysis Logistic execution Design RAMIR integration 15,01,08 25,01,08 28,01,08 28,02,08 28,01,08 07,03,08 15,01,08 25,01,08 28,01,08 29,02,08 28,01,08 in progress 4.4.5 E Gap analyis Materials Management 28,01,08 28,02,08 28,01,08 29,02,08 13,06,08 4.2.3 Check SAP readiness of local IT infrastructure 20,12,07 28,01,08 Implementation 4.4.6 28,01,08 Gap analysis Controlling 4.2.2 Project close down Gap Analysis 4.4.1 Initialize template processes System preparation 4.1.4 4.5.1 A 4.2.4 Plan & build local IT infrastructure updates 15,01,08 28,03,08 Integration test 4.5.6 F 4.6.1 4.2.5 SAP Basis services 14,01,08 13,06,08 (End) User Training 4.7.1 SAP Authorithy 15,01,08 15,03,08 Final preparation & go live 4.8.1 Prepare integration test Prepare (End) user training 25,02,08 04,04,08 25,02,08 04,04,08 31,03,08 04,02,08 21,03,08 22,02,08 04,04,08 04,02,08 in progress 22,02,08 in progress 4.5.2 B 4.5.7 G 4.6.2 Implement Finance Implement Controlling Implement Production Implement Forms 4.7.2 Execute integration test 25,02,08 04,04,08 25,02,08 04,04,08 07,04,08 4.5.3 C 4.5.8 H 4.6.3 Implement Sales Implement add ons & interfaces 25,02,08 04,04,08 25,02,08 04,04,08 4.5.4 D 4.5.9 I Implement Logistic Execution 04,04,08 25,02,08 04,04,08 4.5.5 E 4.5.10 J Implement Material Management 04,04,08 11,04,08 4.8.2 Execute end user training 21,04,08 Plan cut over 30,05,08 Prepare & Test cut over 04,03,08 30,03,08 4.8.3 Fix bugs and retest 14,04,08 18,04,08 Complete open issues 12,05,08 13,06,08 4.9.2 Support end users 12,05,08 13,06,08 4.9.3 Execute cut over & golive 01,05,08 09,05,08 Complete documentation 12,05,08 13,06,08 4.9.4 Hand over to support organization Interfacing RAMIR 25,02,08 25,02,08 04,04,08 Support 4.9.1 02,06,08 13,06,08 Change Request Handling 25,02,08 04,04,08 25,02,08 in progress Milestones 4.1.2 4.4.10 Mile Stone 4.5.11 4.6.4 4.8.4 4.1.6 Project start completed Gap designs approved Implementation ready for I-test Integration test passed Go live completed Project closed 15,01,08 28,02,08 04,04,08 18,04,08 09,05,08 13,06,08 15,01,08 29,02,08 4/21 Traditional vs. agile project planning Traditional project planning Scope Time Agile project planning Fixed Budget Time Variable (Dalcher, 2009, PMUni) Budget Scope 5/21 Specialities of IT projects • At logic planning prior experience can be reused • Stochastic tasks with stochastic durations • More possible project scenarios – Realizing tasks can be ranked by their importance – Less important tasks/functions can be left out from the project • Stochastic relations between tasks • More possible project structures – Tasks can be repeated or task sequences can be reversed – Flexible order of task sequences, – Several tasks can be realized parallelly and also sequentially 6/21 Matrix-based project planning methods SNPM PEM 1 1 2 3 4 1 2 3 4 X1 0,3 X X 0,8 X 0,7 0,5 0,5 X1 0,2 - Uncertainty Relations between of task tasks can be: can be: 0: task independent/parallel can be omitted relation 0-1: uncertain uncertain/possible task relation 1: certain certain/sequential task relation A3 •DSM * •SNPM ** •PEM *** A1 A4 A2 *** * Dependency Project Expert Structure Matrix Matrix (J. KissMethod (Steward, – Zs. Kosztyán, 1981; 2009, dsmweb.org) Confenis, AVA) ** Stochastic Network Planning (Zs.Kosztyán-J.Fejes-J.Kiss, 2008, Szigma) 7/21 Project scenarios - Selecting the tasks A B C D E F A 1 0.9 0.7 0.3 0 Step 1 0.2 Budget (€) B 0 0.8 0.4 0.6 5 C 0 0 1 0.5 0.5 D 0 0 0 0.3 1 E 0 0 0 0 1 F 0 0 0 0 0 0 0 0 0 0,3 0 Budget … Solutions Selected tasks: A, C, E, B, D 8/21 Project structures – different relations Critical Path Method Step 2 A A B B C C D D Precedence Diagramming Method Generating all possible project structures based on the matrix values CC AA A E E A B C D E 1 0.9 0.7 0.3 0 EE DD Graphical Evaluation and Review Technique 0,5 D D E E 0.5 B 0 0.8 0.4 0.6 AA 0.25 B B CC 0.5 0,5 0 1 0.5 0.5 Extended Event-driven Process Chain D 0 0 0 0.3 1 E 0 0 0 0 1 A B B A … C C D E V 0 V C E D 9/21 Selecting the optimal solution A B C D E A 1 0.9 0.7 0.3 0 B 0 0.8 0.4 0.6 0.25 C 0 0 1 0.5 0.5 D 0 0 0 0.3 1 E 0 0 0 0 1 B B A D A E C E C Resource D Reordering the tasks C A E B D Duration 10/21 Project scenario and structure Generating & Ranking Algorithm • Full evaluating algorithm PEM SNPM ... SNPM 1. Step 1 SNPM 2k. Step 2 DSM 1.1. DSM 1.... DSM 1.2l. ... DSM DSM 2k.2l. Matlab application by J.Kiss, based on PSSM algorithm (Kosztyán – Kiss, 2010, DSM) 11/21 Agile Project Planning Algorithm Step 1 PEM What? Which tasks? SNPM 1. Step 2 How? In which order? DSM 1.1. T1 T1 T1 T2 T1 1 1 T2 T3 T4 T5 T4 T5 T6 X T2 SNPM T1 T2 T3 X T3 T3 T1 0,6 0,5 0,6 0,7 0,9 0,5 0,4 0,3 T2 T3 T1 T2 T3 0 1 2 3 4 5 6 7 8 9 week 1 0,6 DSM 1.2. 0,1 0 Resource limit DSM T1 T2 T3 T1 T2 X T3 head 5 Resource limit 4 3 T3 2 T2 1 T1 0 0 1 2 3 4 5 6 7 8 9 week Matlab application by J. Kiss, based on the APS algorithm (Kosztyán-Kiss, 2010, Vezetéstudomány) Time limit T6 0,8 T3 T2 head 5 4 3 2 1 0 Time limit DSM PEM How long? How much? 12/21 Matrix-based Project Planning Genetic Algorithm Population PEM T1 T2 T1 1 1 T3 T4 T5 T6 DSM T1 T2 T1 1 1 1 T2 T2 0,8 0,6 DSM T1 T2 T1 1 1 0,5 T3 T3 T3 0,6 0,7 0,9 T5 0 DSM 0,5 T6 0,4 0,3 0,1 1 0 0 0 0 T3 T1 T2 T3 0 1 0 0 0 1 1 T2 T1 T3 T2 1 T1 T2 1 T4 0 T5 T3 T4 0 0 1 0 1 0 0 0 1 T3 T4 T6 T6 1 1 0 T1 T2 T1 1 1 1 T2 DSM T1 T4T2 T1 1 T51 T2 T4T5 T5T6 T61 T6 T3 T4 0 1 0 T3 0 T3 T4 T5 0 T5 T6 0 1T6 1 T6 T5 T6 DSMDSM T1 T1T2 T2T3 T11 11 1 T1 0 0 T2 T2 1 1 0 T3 T3 0 0 T5 DSM 0 T6 0 1 DSM T4 0 T6 T5 T5 T5 T5 T6 1 T4 T1 T4 T5 T4 T4 1 T2 T4 T3 T4 0 1 T4 T5 T5 T6 T6 T6 1 T3T4 1 1 1 T3 T4 0 1 10 T5 01 1 0 0 0T6 0 0 0 0 0 0 0 1 10 0 0 0 00 10 0 0 0 0 0 0 Population of the new generation DSM T1 T2 T1 1 1 T2 T3 T4 1 T3 1 1 T4 T5 0 DSM T1 0 0 T1 1 0 0 T2 T5 T3 T6 T4 T5 GA application by I. Borbás T6 T6 0 T2 T3 T4 DSM T1 T2 T1 1 1 T2 T5 T6 T3 1 1 0 0 0 0 0 0 0 T4 0 1 0 0 1 T4 1 1 0 1 T3 T5 Selection 0 1 1 T5 T6 0 0 T6 0 0 13/21 Genetic operators– Crossover #1 Genetic algorithm DSM 1 2 1 1 1 2 3 4 DSM 1 2 3 1 1 1 1 1 2 2 3 3 11 4 4 1 5 5 5 DSM 5 11 1 1 3 1 1 4 5 1 2 3 4 4 5 1 2 1 1 1 1 1 1 2 3 4 3 4 1 5 5 DSM 14/21 Genetic operators - Crossover #2 Dad Mom 1 2 3 4 5 1 1 1 0 0 1 0 2 0 1 0 1 1 1 1 3 0 0 1 0 0 0 1 0 4 0 0 0 1 1 0 0 1 Child #2 5 0 0 0 0 1 1 2 3 4 5 1 1 0 1 1 0 2 0 1 1 1 3 0 0 1 4 0 0 5 0 0 Child #1 1 2 3 4 5 1 1 0 0 1 0 0 2 0 1 0 1 1 0 0 3 0 0 1 1 1 0 1 0 4 0 0 0 1 1 0 0 1 5 0 0 0 0 1 1 2 3 4 5 1 1 1 1 0 1 2 0 1 1 1 3 0 0 1 4 0 0 5 0 0 15/21 Genetic operators Mutation Selection – Negating one or more elements 1 2 3 4 5 1 1 01 1 0 1 2 0 1 1 01 0 3 0 0 1 0 0 4 0 0 0 1 10 5 0 0 0 0 1 – Tournament Selector 16/21 Results of the algorithms without constraints Size of matrix (number of tasks) Rate of uncertain tasks Rate of uncertain relations 10 10 10 10 10 50 10 50 50 50 10 10 50 10 50 50 50 50 100 10 10 200 10 10 Algorithm PGRA APPA MPPGA PGRA APPA MPPGA APPA MPPGA APPA MPPGA APPA MPPGA APPA MPPGA APPA MPPGA APPA MPPGA Run time (sec) 0,93 0,15 0,01 8h < 0,26 0,14 0,02 0,15 0,44 28,81 0,81 49,43 0,72 30,56 6,56 194,35 75,21 4252,55 Importance Importance Cost of Lead time value of the value of the best scenario (€) (day) best scenario structure Average resource need (person) 0,50 0,50 0,50 10 10 10 0,68 0.68 0,68 37 37 37 1,92 1,92 1,92 0,60 0,60 0,88 0,88 0,76 0,76 0,64 0,64 0,68 0,63 0,73 0,71 0,73 0,64 9 9 6 6 49 49 47 46 42 38 95 96 191 192 0,71 0,71 0,66 0,66 0,74 0,73 0,72 0,69 0,72 0,52 0,72 0,53 0,72 0,63 34 34 13 13 186 186 153 165 160 141 296 338 666 686 1,68 1,68 1,92 1,92 1,47 1,48 1,76 1,73 1,36 1,85 1,75 1,59 1,50 1,50 17/21 Results of the algorithms with constraints Rate of uncertain (number of tasks) tasks Size of matrix 10 10 Rate of uncertain relations 10 10 10 50 10 50 50 Algorithm Importance Cost of Importance Average Run time Lead time Cost Time value of the scenario value of the resource need (sec) (day) limit limit best scenario (€) best structure (person) APPA 0,05 0,50 9 0,68 30 2,13 MPPGA 0,002 0,50 9 0,68 30 2,13 APPA 6h < 9 33 9 31 13 MPPGA 0,07 0,60 9 0,60 18 3,17 50 MPPGA 0,15 0,76 5 0,65 13 1,46 5 10 10 MPPGA 4,85 0,52 46 0,53 164 1,63 46 167 50 10 50 MPPGA 16,94 0,56 45 0,54 141 1,78 46 150 50 50 50 MPPGA 24,45 0,54 38 0,51 113 0,80 38 144 100 10 10 MPPGA 174,15 0,47 94 0,50 274 1,85 94 280 200 10 10 MPPGA 1323,96 0,56 189 0,51 634 1,57 190 650 18/21 DSM SNPM T1 T2 T3 T4 T5 1 0 0 0 T1 T1 T2 T2 T1 T2 T 1 T 2 0,6 T3 T4 T5 X X T4 T5 X X T3 T4 0,5 0 0,7 0,9 T5 T 3 T3 T4 0,4 T5 DSM T1 T1 T2 T1 T3 T2 T4 X T2 T5 T3 X X T3 X X T5 T4 T1 T3 T2 T5 T3 SNPM T1 T2 T1 T5 T4 PEM T1 T2 T3 T4 T5 T6 T1 1 1 0 0 0 0 T2 T3 T3 T1 T4 T2 T5 T4 T5 T3 T4 1 0 0 DSM T1 T1 T2 0,6 T4 ... T2 0,7 X T3 T1 X 0,6 0,5 0 0 0,6 0,7 0,9 0 0,4 0,4 0 0,3 0,1 DSM 0 T1 ... ... T2 T3 T1 T2 T3 X T2 X T3 ... T1 1 T1 T2 T3 Erőforráskorlát T1 T2 T3 T1 T2 X T3 fő 5 4 3 2 1 0 Erőforráskorlát T3 T1 T2 Időkorlát T3 0,6 fő 5 4 3 2 1 0 0 1 2 3 4 5 6 7 8 9 hét 0 DSM T2 T4 T3 T2 T4 T4 SNPM T1 T4 0,5 T2 T3 T3 X Időkorlát T6 0,8 T1 T2 0 1 2 3 4 5 6 7 8 9 hét SNPM T1 T1 19/21 Novelty of my research • PEM matrix – Supporting the logic planning by handling the possible task occurrances and possible relations – The possible solutions can be generated and ranked – Logic plans can be restructured – Applyable for traditional and agile projects • Matrix-based applications are useful and applicable at PEM matrix with higher uncertainty as well. – APPA gives the optimal solution based on the values in the PEM. – MPPGA is practical to get a good solution taking different constraints and multiple objective function into account. 20/21 Thank you for your kind attention. kissjudit@gtk.uni-pannon.hu