Projektirányítási szoftverek Összeállította: Kosztyán Zsolt Tibor kzst@vision.vein.hu http://vision.vein.hu/~kzst/oktatas/projektirsz/projektirsz.ppt
Projektirányítási ismeretek Bevezetés Projekt, projektirányítás, projektmenedzsment A projektirányítás feladata A rendszerfejlesztési projekt Projektirányítási módszertanok A projekt életciklusa Tervezés Elemzés Ellenőrzés Követés
Projektirányítási ismeretek A projekttervezés eszközei A projekt modellezése Projektmodellezési technikák Felelősségi körök meghatározása Projekt időbeli tervezése A kritikus út A tartalékidő A projekt erőforrásai Az erőforrások típusai Erőforrás és időorientált tervezés
Projektirányítási ismeretek A projekt költségei A projekt követése A projektmenedzsment támogató eszközök A projektek dokumentálása Összefoglaló áttekintés
Mi a projekttervezés és irányítás? A projekttervezés és irányítás olyan tetszőleges fajtájú, komplex, igényes és sokszor nagyszabású problémák módszertani kezelése, melyeket sem rutinszerűen, sem intuitív módon nem lehet következetesen megoldani és amelyek egy erre kiképzett team igénybevételét, valamint a megfelelő módszerek és eljárások alkalmazását teszik szükségessé.
Projekttervezés és -irányítás Projektötlet Céltervezés Célelhatározás Koncepciótervezés Döntéskeresés, keretfeltételek Kiviteli tervezés Kivitelezés megkezdése Kivitelezés irányítása, követés Átadás
A projekttervezés eszközei Trendmeghatározások, prognózisok Információk kiértékelése, ABC-elemzés Mutatószámok elemzése Optimumszámítási módszerek (LP, NLP, MILP, MINLP, sorbanállási modell, kockázatelemzés, szimuláció) Gantt-diagram LOB-diagram Hálóterv
Panzió építési projekt – Gantt diagram
Panzió építési projekt – Gantt diagram függőségi nyilak feltüntetésével
LOB-diagram Ciklikusan ismétlődő tevékenységek T1 T2 T3 T4 T5 Menny. (pl. km) 4.sz. 3.sz. 2.sz. 1.sz. Idő
Hálótervezés
Gráfelméleti alapfogalmak Gráf: G = (N,A) egy véges ponthalmaz (csúcsok), és egy véges pontpár halmaz (élek) együttese. N ponthalmaz a csúcsok halmaza N={N1, N2, .., Nn}. A pontpár halmaz az élek halmaza A={A1, A2, .., Am}, ahol Ak=(Ni,Nj)A. Irányított gráf esetén a pontpárok rendezettek, ekkor, Ni az Ak él kezdőpontja, Nj pedig a végpontja. Irányítatlan gráf esetén a pontpárok nem rendezettek, vagyis (Ni, Nj) = (Nj, Ni).
Gráfelméleti alapfogalmak Példa: Irányítatlan gráf megadása: G1:=(N1,A1); N1:={1;2;3;4;5}, A1:={(1,2); (2,1); (1,3); (3,1); (2,3); (3,2); (2,4); (4,2); (3,5); (5,3); (4,5); (5,4)} Példa: Irányított gráf megadása: G2:=(N2,A2); N2:={1;2;3;4;5}, A2:={(1,2);(1,3);(2,3);(2,4);(3,5);(4,5)}
Gráfelméleti alapfogalmak Hurokél: Ha Aj=(Ni, Ni)A. Akkor azt mondjuk, hogy Aj egy hurokél. Többszörös él: Ha m,n melyre (Ni,Nj)=Am=An=(Ni,Nj), és Am, An A; Ni, NjN akkor a gráfban, Ni, és Nj között többszörös él van. Példa: G3:=(N3,A3); N3:={1;2}, A3:={(1,2); (1,2); (2,2)}
Gráfelméleti alapfogalmak (Valódi) részgráf: Azt mondjuk, hogy egy Gp=(Np,Ap) gráf (valódi) részgráfja egy G=(N,A) gráfnak, ha NpN, ApA (NpN, ApA). Jelölés: Gp G (Gp G) Példa: G2:=(N2,A2); N2:={1;2;3;4;5}, A2:={(1,2);(1,3);(2,3);(2,4);(3,5);(4,5)}, G4:=(N4,A4); N4:={1;3;5}, A4:={(1,2);(2,3);(3,5)}
Gráfelméleti alapfogalmak Irányítatlan út: Az élek olyan sorozata, melyben bármely két szomszédos élnek van közös pontja. Irányított út: Élek olyan sorozata, amelyben bármely él végpontja azonos a következő él kezdőpontjával (kivéve az utolsót).
Gráfelméleti alapfogalmak (Irányított) egyszerű út: Olyan (irányított) út, ahol minden él csak egyszer szerepel. (Irányított) kör: Olyan (irányított) út, amelyben az első él kezdőpontja azonos az utolsó él végpontjával. (Irányított) egyszerű kör: Olyan (irányított) kör, amelyben egy él csak egyszer szerepel.
Gráfelméleti alapfogalmak Legyen adott G=(N,A), N={N1, N2, .., Nn}, A={A1, A2, .., Am} Izolált pont: olyan csúcs melyhez nem kapcsolódik él. Legyen G a továbbiakban irányított gráf Csúcsok száma: Élek száma: Bejövő élek száma:
Gráfelméleti alapfogalmak Kimenő élek száma: Egy csúcs fokszáma: Példa: j+(1)=0, j -(1)=2, j (1)=2, |N|=5, |A|=6 Aciklikus gráf: Irányított kört nem tartalmazó gráf.
Gráfelméleti alapfogalmak Erdő: körmentes gráf. Összefüggő gráf: Egy gráfot összefüggőnek nevezünk, ha bármely két pontja között létezik egy irányítatlan út. Erősen összefüggő gráf: Egy gráfot erősen összefüggőnek nevezünk, ha bármely két pontja között létezik egy irányított út. Fa: Összefüggő kört nem tartalmazó gráf.
Gráfelméleti alapfogalmak Egyszerű gráf: Egy gráfot egyszerűnek nevezünk, ha nem tartalmaz hurokélt és többszörös élt. Szomszédos csúcsok: Két csúcs szomszédos, ha közöttük van olyan út, amely csak egy élet tartalmaz. Teljes gráf: Egy gráfot teljesnek nevezünk, ha bármely két csúcs szomszédos egymással.
Gráfelméleti alapfogalmak Súlyozott gráf: irányított, vagy irányítatlan gráf súlyozott akkor, ha minden éléhez egy vagy több számot rendelünk. Ez a szám az él súlya. Háló: Olyan súlyozott körmentes, irányított gráf, amelynek egy kezdő és egy végpontja van.
Gráfok reprezentálása Adjecencia lista Adjecencia mátrix Incidencia mátrix
Időtervezés - ütemezés A hálós irányítási rendszerek két ismert alapváltozatát, a PERT és a CPM módszert közel egy időben dolgozták ki és publikálták. 1957-ben az USA haditengerészetének különleges tervezési hivatala megbízást kapott a POLARIS rakéták kifejlesztésével kapcsolatos sok száz tevékenység irányítására.
Időtervezés - ütemezés Az E. I. DuPont de Hemonds and Co. 1956-ban átfogó kutatást indított olyan módszer kifejlesztésére, mely lehetővé teszi számítógép felhasználását a műszaki feladatok megtervezésében és ütemezésében. Walker és Kelley , 1957-ben jutottak el egy nyíldiagramos, hálós módszert alkalmazó és később CPM néven közismertté váló rendszer kipróbálásáig. A módszert 1959-ben publikálták.
A hálótervezési módszerek csoportosítása Időtervezés jellege: sztochasztikus, determinisztikus. Felhasználási céljuk alapján: idő-, költéség-, és erőforrás optimáló technikák. A hálók irányultságuk alapján: tevékenységorientáltak vagy eseményorientáltak. Megjelenési formájuk szerint: tevékenység-nyíl, tevékenység-csomópont, és esemény-csomópontú hálók.
Időtervezés jellege Sztochasztikus hálótervezési módszerek: Olyan hálótervezési módszerek, melyeknél a tevékenységidőt egy valószínűségi eloszlás sűrűségfüggvénye határozza meg. (Ilyen, pl. a PERT háló.) Determinisztikus hálótervezési módszerek: Olyan hálótervezési módszerek, melyeknél a tevékenységidők jól meghatározott értékek. (Ilyen, pl. a CPM, MPM, DCPM stb. háló.)
Felhasználási cél Az időoptimáló eljárásoknál cél a projekt átfutási idejét megtalálni. (Ilyen, pl. PERT, CPM, MPM stb.) A költség- és erőforrás optimáló eljárásoknál az átfutási idő meghatározása mellett, a költség, erőforrás optimálás, kiegyenlítés is fontos szempont. (Ilyen pl. CPM/COST PERT/COST, CPA stb. RAMPS, RAPP, ERALL stb.)
A hálók irányultsága A tevékenységorientált hálónál a tevékenységek, míg az eseményorientált hálóknál az események hangsúlyozása kerül előtérbe.
Megjelenési forma A tevékenység-nyíl hálóknál az élek reprezentálják a tevékenységeket, a csomópontok az eseményeket. A tevékenység-csomópontú hálóknál, az élek reprezentálják az eseményeket, a csomópontok a tevékenységeket. Az esemény csomópontú hálóknál is az élek reprezentálják a tevékenységeket, a csomópontok pedig az eseményeket, de itt az események hangsúlyozása lényeges. Míg a tevékenység-nyíl hálóknál az események ábrázolását el is hagyhatjuk.
CPM-módszerrel kapcsolatos fogalmak Az esemény: valamely folyamat, tevékenység kezdetét és befejezését jelentő pont, időt, erőforrást, költséget nem igényel. (a hálóban általában körrel ábrázoljuk). Az események lehetnek: normál, kiemelt (mérföldkő), és kapcsolódó (interface) események.
Események Normál esemény: a többséget kitevő és semmiféle megkülönböztetést nem igénylő időpont. Kiemelt esemény: olyan esemény, amelyet a projekt előrehaladásában különösen fontosnak tartanak (általában dupla körrel jelölik). Kapcsolódó esemény: közös intézkedési pontot jelenti a hálón belül (háló szétszedése, összerakása). Ezek az időpontok, hasonlóan a kiemelt eseményekhez előre ismertek (általában két körrel jelölik). Kezdő (nyitó) esemény: melyet nem előz meg más esemény és csak követő eseményei vannak. Záró (vég) esemény: amit nem követ több esemény, csak megelőző eseményei vannak.
Tevékenységek Tevékenység: olyan folyamat, mely adott időben, időtartam alatt játszódik le, és erőforrást, költséget igényel. Látszattevékenység: fontos szerepe van a háló szerkezetében, és számításában is. Jellemzője, hogy általában idő, költség, és erőforrás igénye nincs. A hálók logikai összefüggéseinek kifejezésére szolgál.
Kapcsolódási pontok Kapcsolódási pontok lehetnek szétválasztó, vagy egyesítő pontok. Egyesítő pont: olyan esemény, amely végpontja több megelőző tevékenységnek. Szétválasztó pont: olyan esemény, amelyet több tevékenység követ.
Tevékenységek kapcsolatai – függőségek
A háló végleges szerkesztésének menete Logikai gráf elkészítése (tevékenység végleges elhelyezése) Ezen a gráfon a tevékenységek és események elhelyezése Tevékenységek és események közötti kapcsolódások kidolgozása.
A szerkesztés iránya lehet Progresszív (előrehaladó) Retrográd (visszafelé haladó) A kettő kombinációja
A CPM-eseményjegyzék Az esemény számát, Az eseményre vonatkozó számítások eredményeit, Megelőző, követő eseményeket, Egyéb számszerűséget, információt, intézkedésekért felelősök megjelölését.
Tevékenységjegyzék A tevékenységek számát, megnevezését, (lefutási) idejét, A megelőző, követő tevékenységeket, A kapcsolatuk jelölését, A számítások eredményét, Az egyéb információkat.
Tevékenység és esemény időadatok A TPT (Total Project Time = teljes projekt átfutási ideje) végezzük el az odafelé történő elemzést, amivel az egyes tevékenységek legkorábbi kezdési időpontját (EST(i,j)) számítjuk ki. Ebből meghatározhatjuk a legkorábbi befejezési pontot, ahol a legkorábbi befejezési pont (EFT(i,j)) = a legkorábbi kezdési időpont (EST(i,j)) + a tevékenység lefutási ideje (d(i,j)). A teljes projektidő (TPT) tehát az a legrövidebb időtartam, ami alatt a projekt befejezhető, és ezt a tevékenységek sorrendje (vagy sorrendjei) kritikus útként (vagy utakként) határozza (határozzák) meg.
Tevékenység és esemény időadatok A kritikus út meghatározására a retrográd számítás elvégzése után kerülhet sor, így a tevékenység legkésőbbi kezdési pontját (LST(i,j)), valamint a hozzá tártozó legkésőbbi befejezési időpontot (LFT(i,j)) határozzák meg a következőképpen: Legkésőbbi kezdési időpont(LST(i,j))= legkésőbbi befejezési időpont(LFT(i,j)) – tevékenység lefutási ideje (d(i,j)).
Tevékenység és esemény időadatok Egy csomóponthoz (eseményhez) két idő tartozik. (1) a progresszív elemzésből az esemény legkorábbi bekövetkezésének időpontja (EETi), vagyis az a legkorábbi időpont, amelyre az eseményt realizálni lehet; (2) a retrográd elemzésből az esemény legkésőbbi bekövetkezésének időpontja (LETi), vagyis az a legkésőbbi időpont, amelyre az eseményt realizálni kell.
A hálószerkesztés során előforduló logikai hibák Több kezdő illetve végpont. Kör a hálózatban. Helytelen logikai összerendelés.
A hálószerkesztés során előforduló logikai hibák
Tartalékidők Teljes tartalékidő: az a teljes időtartam, amivel egy tevékenység kiterjedhet, vagy késhet a teljes projektidőre (TPT) gyakorolt hatás nélkül. Teljes tartalékidő(i,j):=LST(i,j)-EST(i,j)=LFT(i,j)-EFT(i,j) Szabad tartalékidő: az a teljes mennyiség, amivel egy tevékenységidő megnőhet, vagy a tevékenység csúszhat anélkül, hogy hatással lenne bármely, soron következő tevékenység legkorábbi kezdetére. Szabad tartalékidő(i,j):= EET(j)-EFT(i,j)
Tartalékidők Feltételes tartalékidő: a teljes és a szabad tartalékidő különbsége. Független tartalékidő: azt az időmennyiséget adja meg, amennyivel az adott tevékenység eltolható, ha az őt közvetlenül megelőző tevékenység a lehető legkésőbbi időpontban fejeződik be és a közvetlenül következő tevékenység a legkorábbi időpontban kezdődik. Független tartalékidő(i,j):=EET(j)-LET(i)-d(i,j) (Marad-e elég idő?) Ha FT>0 belefér a tevékenység megvalósítása. Ha FT<0 |FT| -vel csúszhat az egész program megvalósítása.
Panzió építési projekt – tevékenység lista Sorszám Tevékenység Időtartam (hét) 1 Alap 2 Szerkezeti falak 3 Födém 4 Tető 5 Válaszfalak 6 Aljzat 7 Vízvezeték (alapszerelés) 8 Gázvezeték (alapszerelés) 9 Elektromos szerelés (alapszerelés) 10 Fűtés (alapszerelés) 11 Vakolás 12 Burkolás 13 Festés, mázolás, végszerelések 14 Átadás-átvétel
Panzió építési projekt – megelőzési listák Közvetlen Teljes Tevékneység Időtartam (hét) Megelőző tevékenység 1 -- 2 3 1,2 4 1,2,3 5 6 1,2,5 7 1,2,3,5,6 8 9 10 11 4,7,8,9,10 1-10 12 1-11 13 1-12 14 1-13
Panzió építési projekt – tevékenység struktúra
Panzió építési projekt –logikai diagram
Panzió építési projekt – CPM háló
Panzió építési projekt – CPM háló időelemzés
Panzió építési projekt – CPM háló időelemzés tevékenységlista
Panzió építési projekt – CPM háló időelemzés eseménylista
Panzió építési projekt – Gantt diagram
Panzió építési projekt – Gantt diagram függőségi nyilak feltüntetésével
Tevékenység-nyíl hálók átrajzolása tevékenység-csomópontú hálókká Minden tevékenységből (kivéve a látszattevékenységet), melyet a tevékenység-nyíl hálókban a nyilakon szerepeltettünk, most csomópontokként reprezentáljuk. A tevékenységeket a logikai kapcsolataik szerint kapcsoljuk össze.
Tevékenység-nyíl háló => tevékenység csomópontú háló
Az MPM-háló Az MPM (Metra Potenciális Módszer, az angolszász országokban Precedence Diagramming Method) technika a francia Roy nevéhez kötődik. A kézi ábrázolású technika a tevékenységeket a gráf csomópontjaiként ábrázolja, a gráf élei pedig a tevékenységek közötti logikai kapcsolatokat szimbolizálják.
Az MPM-háló Az MPM háló a logikai kapcsolatoknál kezeli a minimális, maximális kapcsolatokat, kezeli a vég-kezdet, kezdet vég kapcsolatok minden kombinációját. Az MPM technikával megszakítható tevékenységek is tervezhetők.
Az MPM-háló Egy tevékenység-csomópont
Minimális/maximális kapcsolatok konvertálása Irányelvek: A hálótervezés során a kiértékelésnél egy minimális illetve egy maximális kapcsolatot használunk. A különböző kapcsolatok egymásba csak bizonyos megszorításokkal konvertálhatók, így ezeket a konverziókat célszerű jelezni.
Minimális/maximális kapcsolatok konvertálása Kezd-kezd kapcsolattá konvertálás: Befejezés – kezdés kapcsolat konverziója: b=dA+a Befejezés – Befejezés kapcsolat konverziója: b=dA+a-dB a A A b B B a A A b B B
Minimális/maximális kapcsolatok konvertálása Kezd-kezd kapcsolattá konvertálás: Kezdés – befejezés kapcsolat konverziója: b=a-dB a A A b B B
MPM háló - kiértékelés
MPM háló - kiértékelés
MPM háló - kiértékelés
CPM=>MPM Minden tevékenységből (kivéve a látszattevékenységet), melyet a tevékenység-nyíl hálókban a nyilakon szerepeltettünk, most csomópontokként reprezentáljuk. A tevékenységeket a logikai kapcsolataik szerint kapcsoljuk össze. A tevékenységek legkorábbi, illetve legkésőbbi kezdési illetve befejezési idejei, a projekt átfutási ideje, a tevékenységek tartalákidejei meg kell, hogy egyezzenek a két hálóban. MPM-ben az eseményidőket nem használjuk!
CPM=>MPM
CPM=>MPM
Véletlen tartamú tevékenységek A gyakorlatban számos esetben – főleg kutatási és fejlesztési programokra – a tevékenységek tartamai kevéssé ismertek, és nem determinisztikusan meghatározottak. Ilyenkor két eset fordulhat elő: A szóban forgó tevékenységek vagy nem teljesen ismeretlenek és mindegyikükre közelítőleg ismerjük a tartamuk valószínűségeloszlását. (ipar) vagy pedig teljesen ismeretlenek és nem ismerjük minden tartam valószínűségeloszlását. (kutatás)
Véletlen tartamú tevékenységek Ha nem ismerjük a tartamok eloszlását, akkor a számítások megkönnyítése érdekében, hogy a tartamok b-eloszlásúak.
Véletlen tartamú tevékenységek Az [A, B] intervallumon (A>0, B>0) értelmezett (a, g) paraméterű b-eloszlásnak nevezik a t valószínűségi változó eloszlását, ha sűrűségfüggvénye az alábbi alakú: ahol a,g>-1
Véletlen tartamú tevékenységek – PERT módszer A PERT-módszerben olyan (első rendű) b-eloszlást választunk, amelyre:
Véletlen tartamú tevékenységek – PERT módszer Minden egyes tevékenységről az azzal foglalkozó szakemberekhez a következő három kérdést intézzük: Mennyire becsüli az (i,j) tevékenység Ai,j minimális időtartamát (optimista becslés)? Legyen ai,j a minimális időtartam becsült értéke. Mennyire becsüli az (i,j) tevékenység Bi,j maximális időtartamát (pesszimista becslés)? Legyen bi,j a maximális időtartam becsült értéke. Véleménye szerint mennyi az (i,j) tevékenység Mi,j legvalószínűbb időtartama (módusza)? Legyen mi,j a legvalószínűbb időtartam becsült értéke.
Véletlen tartamú tevékenységek – PERT módszer Ekkor a becslés várható értéke, illetve szórása: Ekkor felhasználjuk azt, hogy a független valószínűségi változók összegének várható értéke megegyezik a valószínűségi változók várható értékének összegével, ha elegendően sok változóra összegzünk, hiszen elegendően sok valószínűségi változó esetén az összeg normális eloszlásúnak mondható.
Véletlen tartamú tevékenységek – PERT módszer Ekkor felhasználjuk a független valószínűségi változók várható értékeire, illetve varianciáira vonatkozó additivitási összefüggéseket:
PERT háló felrajzolása, tartamok, bizonytalanság kiszámítása Logikai háló elkészítése. Ai,j, Bi,j ,Mi,j, ti,j, si,j meghatározása. Megfelelő hálós modell kiválasztása (tevékenység-nyíl, tevékenység-csomópontú). A (tanult módszerekkel a) kritikus út kiszámítása. A megvalósítási idő szórásának kiszámítása.
PERT háló - példa
PERT háló - példa
PERT háló - példa Mennyi annak az esélye, hogy a programot 63 nap alatt befejezzük? Ebből következik, hogy 75% annak az esélye, hogy a programot 63 napig befejezzük.
Tartalékidők szórása
Tartalékidők szórása
Determinisztikus költségtervezés determinisztikus időtervezés esetén Minimális átfutási idő, minimális költségnövekmény Optimális összköltség elérése átfutási idő csökkentésével
Fogalmak Normál idő: Az az időmennyiség, amely a tevékenység normál/tervszerű végrehajtásához szükséges. (minimális változóköltség) Roham idő: Az a legkisebb időmennyiség, amely alatt a tevékenységet végre lehet hajtani. (maximális változóköltség)
Fogalmak Minimális átfutási idő: Az a legkisebb időmennyiség, amellyel a projekt még megvalósítható. Normál átfutási idő: Az az időmennyiség, amelynél valamennyi tevékenység normál lefutása mellett valósul meg a program. (Költség) optimális átfutási idő: Az az átfutási idő, melynél a projekt összköltsége minimális.
Determinisztikus költségtervezés determinisztikus időtervezés esetén
Determinisztikus költségtervezés determinisztikus időtervezés esetén
Determinisztikus költségtervezés determinisztikus időtervezés esetén
Költség – idő függvények viselkedése A változóköltség-idő függvény általában monoton csökkenő a minimális- és a projekt normál átfutási ideje alatt, hasonlóan igaz ez az egyes tevékenységekre is. A normál átfutási-, illetve a tevékenységeknél a normál lefutási idő után a függvény általában monoton nő. A fixköltség-idő függvény általában monoton nő a teljes projekt átfutási idejére nézve. Az összköltség-idő függvény általában konvex.
Minimális átfutási idő/minimális költségnövekmény (CPM/COST, MPM/COST) A CPM/COST, MPM/COST módszer egy széles körben alkalmazható hálótervezési technika. Az algoritmus során először egy CPM vagy egy MPM hálót kell felrajzolni, majd a kritikus úton lévő minimális költségnövekedéssel járó tevékenységek lefutási idejét csökkentjük. A lépéseket érdemes egy táblázatban összefoglalni.
Minimális átfutási idő/minimális költségnövekmény (CPM/COST, MPM/COST)
Minimális átfutási idő/minimális költségnövekmény (CPM/COST, MPM/COST)
Minimális átfutási idő/minimális költségnövekmény (CPM/COST, MPM/COST)
Minimális átfutási idő/minimális költségnövekmény (CPM/COST, MPM/COST)
Minimális átfutási idő/minimális költségnövekmény (CPM/COST, MPM/COST)
Minimális átfutási idő/minimális költségnövekmény (CPM/COST, MPM/COST)
Optimális összköltség elérése átfutási idő csökkentésével
Optimális összköltség elérése átfutási idő csökkentésével
Optimális összköltség elérése átfutási idő csökkentésével
Optimális összköltség elérése átfutási idő csökkentésével
Erőforrás-tervezés A továbbiakban olyan feladatokkal foglalkozunk, ahol nem csupán az a cél, hogy a projektet a lehető leghamarabb befejezzük, hanem az is fontos szemponttá válik, hogy egy adott kapacitáskorlátot ne lépjünk túl.
Erőforrás-tervezés Időkorlátos erőforrás tervezés. Erőforrás-korlátos erőforrás tervezés.
Erőforrás allokáció (ERALL-modell) A logikai tervezés során a (CPM-módszerrel) olyan hálótervet készítünk, amely technológiai szempontból megengedhető maximális párhuzamosítási lehetőségeket tünteti fel. A logikai tervezés eredménye maximálisan tömörített háló. Ennek megfelelően az időtervezésnél minimális átfutási időt kapunk. Amennyiben elkészítjük a hálóra vonatkozó erőforrás terhelési diagramot, akkor láthatjuk, hogy egy adott kapacitáskorlátot túlléphet.
Erőforrás allokáció (ERALL-modell) Az erőforrás-allokáció célja az, hogy (lehetőleg) az átfutási időt nem növelve, a kapacitáskorlátot nem túllépve a nem kritikus úton lévő tevékenységeket a tartalékidejükön belül mozgassuk el, úgy, hogy az erőforrás terhelési diagram a kapacitás korlátot minden pontjában kielégítse. Ezt pl. egy simítási eljárással valósíthatjuk meg, mely egy heurisztikus eljárás. Ez a módszer, ha létezik a feladatnak egy megengedett megoldása, akkor megtalálja.
Erőforrás allokáció (ERALL-modell) Az eljárás először megpróbálja úgy beütemezni a tevékenységeket, hogy a kritikus út ne növekedjen. Ha ez sikerül, akkor ezt a továbbiakban nevezzük nem kritikus megoldásnak. Ha ilyen megengedett megoldás nem létezik, akkor a módszer megpróbálja úgy beütemezni a tevékenységeket, hogy a kritikus út minél kevésbé növekedjen. Ha egy tevékenység erőforrásigénye nagyobb, mint az erőforrás korlát, akkor biztosan nincs megengedett megoldás.
Erőforrás allokáció (ERALL-modell) Miért csak megengedett megoldást talál ez a módszer? Azért, mert a nem kritikus úton lévő tevékenységeket nem egy adott célfüggvénynek megfelelően (pl. a lehető legkorábbi időpontra) ütemezi be. Az optimális megoldás az lenne, hogy ha a tevékenységeket úgy ütemezné be hogy ezeket a célfüggvényeket figyelembe venné, de úgy, hogy a kapacitáskorlátot egyetlen időpillanatban se lépjük túl.
Optimumkeresési eljárások Dinamikus, Branch & Bound és lineáris programozási technikákat alkalmaztak sikeresen 200 tevékenység alatti, néhány erőforrással rendelkező hálókra vonatkozó optimális megoldások kialakításához. Ennek ellenére az ilyen projektek csekélyek azokhoz viszonyítva, amelyek 5000 tevékenységgel rendelkeznek és 10-20 különböző erőforrást alkalmaznak.
Optimumkeresési eljárások A modern rendszerekben természetesen nem követelmény, hogy az erőforrásokat a tevékenység teljes időtartama alatt használják, vagy egy időben kizárólag egyet használjanak fel egy tevékenységre, vagy a tevékenységet ne osszák meg. Végül nem szabad elfelejteni, hogy a számítási eljárások által felhasznált adatok nem pontosak – mivel becsléseken alapulnak – és az esetleges hibák érvénytelenítik az optimumot.
Optimumkeresési eljárások Kiegyenlítés Projekt időtartam minimalizálás (erőforrás hozzárendelés) Csúcs felhasználás minimalizálás Allokálás Soros allokálási eljárás Párhuzamos allokálási eljárás
Kiegyenlítés Az erőforrás/idő korlátozottság problémájának megoldását az elsők között célozta meg a kiegyenlítési technika. Ez legegyszerűbb formájában azt jelenti, hogy valamilyen eljárással előállított ütemtervnél megpróbálják kiegyenlíteni az erőforrás-igények „csúcsait” és „völgyeit” – néhány tevékenység alternatív időkben történő újraütemezésével.
Kiegyenlítés A kezdési ütemterv sok esetben a legkorábbi kezdési aggregáció, de lehet egy nagyon kifinomult allokációs eljárás által kialakított összetett ütemterv is. A kiegyenlítés egyszerűen hangzik, de a gyakorlatban nem az. Ha egynél több projekt létezik a szervezetben, akkor az eltérő erőforrások közötti kölcsönhatás rendkívüli bonyolult helyzetet teremt. Továbbá – mivel az „egyensúly” jelentésének nincs általánosan elfogadott definíciója – rendkívül nehéz meghatározni a „kiegyenlítési” eljárás leállási pontját. Sok esetben az a gyakorlat, hogy a rendszer számára kijelölnek egy lefutási időt, és az idő végén megszerzett eredményt elfogadják.
Allokálás A hatvanas évek elején kifejlesztették az allokálási probléma két megközelítését, amelyek erőforrás-korlátos és időkorlátos vagy simításos allokálási eljárásként ismertek. Azt remélték, hogy ezek esetleg megfelelő választ adnak az erőforrás- vagy időkorlátok alternatív problémájára. Mindegyikre több eljárást dolgoztak ki. Az eljárások két csoportba oszthatók: soros és párhuzamos feldolgozáson alapulókra.
A soros allokálási eljárás Ez olyan eljárás, amelyben egy konstans prioritási szabály alkalmazásával még a tevékenységek ütemezése előtt rangsorolják a projekt(ek)ben szereplő tevékenységeket. E prioritási lista alapján szigorú rendben ütemezik be a tevékenységeket – a lehető legkorábbi időpontban, az erőforrások hozzáférhetőségének és a háló(k) követelményeinek megfelelően.
A soros allokálási eljárás Egy soros eljárásban megszokott a megelőzési korlátoknak (rákövetkezési relációnak) a háló időelemzésén alapuló, szabályozott, automatikus számításba vétele. A legelterjedtebben használt szabály az, hogy a tevékenység legkésőbbi kezdési időpontját használják a dátumok emelkedő sorrendjében és a teljes tartalékidő alkalmazása által felmerülő esetleges kötöttségeket feloldják – megint csak növekvő sorrendben.
A párhuzamos allokálási eljárások Ez olyan eljárás, amelyben prioritásuk szerint csak a kezdésre képes tevékenységek kerülnek rangsorolásra – az egyes ütemezési időszakoknál alkalmazott állandó szabállyal. Az ütemezéshez ebből a listából felmerülési sorrendben, az erőforrások hozzáférhetőségétől függően veszik ki a tevékenységeket. A be nem ütemezett tevékenységeket visszahelyezik a listába, hogy a következő ütemezési időszakban az új tevékenységekkel együtt rangsorolhassák őket.
A párhuzamos allokálási eljárások Ez az ütemezés nagyon eltérő filozófiájú, mert egy listában gyűjti össze az összes olyan tevékenységet, amely egy meghatározott ütemezési időszakban figyelembe vehető. Tekintettel arra, hogy minden információ rendelkezésre áll, ez azt jelenti, hogy a tevékenység ütemezésére vagy késleltetésére irányuló döntést megalapozottan lehet meghozni. Ez különösen a megszakított tevékenységnél fontos, és ez az oka annak, hogyha a projektben sok tevékenységet szándékoznak megszakítani, ezt a megközelítést kell alkalmazni.
„Klasszikus” optimális erőforrás-allokációs eljárások (összefoglalás) A korábban alkalmazott megoldások két részre bonthatók. Vannak algoritmikus megoldások, ilyen például a kiegyenlítéses módszer, és vannak heurisztikus megoldások, melyekre tipikus példa az allokáció. A heurisztikus megoldások általában gyorsabbak, de nem garantálnak optimális megoldásokat, és ezek a módszerek más eredményhez vezethetnek bizonyos esetekben. (Például, ha egy tevékenység megszakíthatóságát megengedjük, akkor más eredményt kapunk soros, illetve párhuzamos allokáció esetén).
„Klasszikus” optimális erőforrás-allokációs eljárások (összefoglalás) A kiegyenlítéses algoritmus nem megengedett megoldásból indul, ki, így nem igaz rá, hogy minden lépése megengedett megoldást adna. Így, ha olyan feladatot kell megoldanunk, ahol nagyszámú tevékenységet kell optimalizálnunk, akkor nem biztosított, hogy meghatározott időn belül, legalább egy megengedett megoldást kapjunk.
„Klasszikus” optimális erőforrás-allokációs eljárások (összefoglalás) A szakirodalomban nem foglalkoztak korábban olyan esetekkel, ahol az erőforrás korlát nem konstans, vagy a tevékenységek erőforrás-szükséglete, lefutási ideje megváltozott volna a projekt végrehajtása közben.
„Klasszikus” optimális erőforrás-allokációs eljárások (példa)
„Klasszikus” optimális erőforrás-allokációs eljárások (példa)
Project 2000, Project Central Egy kis pozícionálás az Office-családdal kompatíbilis projekttervező, –menedzselő és –követő alkalmazás Project Central intranet alapú munkacsoportos projektkövető rendszer ötvözi a Project 2000 munkacsoportos szolgáltatásait és a (kihalt) Team Manager egyes képességeit
Microsoft Project 2000 Hatékony projektek Office-módra Cél: a befejezett és sikeres projektek számának növelése az informatikai projektek 30%-át sosem fejezik be; 51%-uk túllépi a költség-keretet, méghozzá átlagosan 189%-kal, de a tervezett funkcióknak mindössze 74%-át valósítja meg* Megoldás: Microsoft Project 2000 menedzseli a projekt teljes életciklusát megismételhetővé teszi a sikeres gyakorlatot az egész cégre kiterjeszti a projektkezelést *Forrás: Gartner Group
Az életciklus menedzselése A projektek négy fázisa definíciójának elkészítése A részletes projektterv elkészítése A projekt végrehajtásának követése A projekt lezárása
Az életciklus menedzselése A projektdefiníció elkészítése A projekt céljainak, erőforrásainak és időzítésének meghatározása Jó projektdefiníciót írni nehéz Helytelen: „Az új könyvelőprogram telepítése.” Helyes: „Az új könyvelőprogram telepítése valamennyi pénzügyi ügyfélgépen. Résztvevők: egy projektvezető, két informatikus. Kezdés március 1-jén, befejezés március 31-én.” A fogalmazásban a Project sem segíthet, de rögzíti a projekt RÖVID definícióját tárolja a projekt dokumentációját tartalmazó webhelyre, fájlmappára, stb. mutató hivatkozásokat
Az életciklus menedzselése A projektterv létrehozása Részletes végrehajtási terv a feladatok és a hozzájuk rendelt (személyi, anyagi) erőforrások listája a végrehajtás munka- és időszükséglete a függőségek és feltételek meghatározása A Project 2000: tárolja a feladatok és az erőforrások adatait integrálja a vállalati tevékenységkódokat gazdag megjelenítési lehetőségeket biztosít (naptár, Gantt, hálódiagram, erőforrástábla) segít a terv problémáinak felderítésében
Lehetséges problémák A projektgazda: egyensúlyozó művész A projekt három dolog, a tartalom, az időtartam és az anyagi/személyi erőforrások összessége ha az egyiket módosítjuk, a többi is változik gyakorlat: az egyiket (pl. a költségeket) rögzítettnek tekintjük tartalom időtartam erőforrások Ha ugyanazt a projektet rövidebb idő alatt akarjuk elvégezni… tartalom időtartam erőforrások … több erőforrásra lesz szükségünk (vagy csökkenteni kell a tartalmat) tartalom időtartam erőforrások
Lehetséges problémák A projekt túl sokáig tart Megoldások: a tartalom csökkentése az egyes feladatok hosszának csökkentése a feladatok korábbi időpontban való kezdése A Project 2000: a reális befejező dátum kiszámításához felülbírálja az egyes feladatok feltételeit megjeleníti az ún. kritikus utat könnyen átszervezhetővé teszi a projekttervet
Lehetséges problémák A projekt túl sokba kerül Megoldások: a projekt tartalmának csökkentése a költséges erőforrások helyettesítése olcsóbbakkal A Project 2000: számszerűen és grafikusan megjeleníti a projekt, az egyes feladatok, illetve erőforrások költségeit az időre vetítve ábrázolja a költségeket egységesen kezeli a szervezet összes belső és külső erőforrását
Lehetséges problémák Az erőforrások túlterheltek Megoldások: feladatok késleltetése feladatok feldarabolása, új/kevésbé terhelt erőforrások bevonása további műszak(ok) beindítása A Project 2000: megjeleníti a túlterhelt erőforrásokat automatikusan késleltetheti a feladatokat, amíg meg nem szűnik a túlterhelés segít a feldarabolásban és újraegyesítésben egyedi naptárakat, munkagörbéket biztosít
Párhuzamos és egymásba ágyazott projektek Egy vállalatnál párhuzamosan több projekt is fut Egy nagyobb projekt feladatai gyakran önálló projektek A Project 2000: biztosít egy projekt portfolió szolgáltatást, amellyel egyszerre több projekt is áttekinthető támogatja az egymásba ágyazott és egymásra hivatkozó projekteket (az egyik projekt erőforrásait a másik is használja)
Az életciklus menedzselése A projekt végrehajtásának követése Feladatok: az eredeti projektterv és a változások közzététele feladatok kiosztása, a teljesítés követése a projekt menetének figyelése, szükség szerint beavatkozás jelentések készítése és közzététele A Project 2000: segít a közzétételben (papír, adatbázis/ fájlkiszolgáló, web, e-mail) kommunikál a résztvevőkkel (web, e-mail) rögzíti a teljesítéseket, méri az eltéréseket gazdag jelentéskészítő szolgáltatásokkal rendelkezik
Az életciklus menedzselése A projekt lezárása A sikeres gyakorlat megőrzésének alapja az eredeti és végső projektterv összevetése a jó megoldások kiemelése, javaslat a hibák jövőbeni elkerülésére a projektfájl archiválása A Project 2000: megjeleníti az eredeti és a végső projektfájl közti különbségeket tárolja a projekt közben keletkezett feljegyzéseket jelentéseket készít lehetővé teszi a projekt sablonként való mentését
A sikeres gyakorlat megismételhetővé tétele Minden projekt menthető sablonként a Project automatikusan eltávolítja a projektspecifikus adatokat (tényleges kezdési dátumok, erőforrások időráfordítása, stb.)
Sablonok a termékben Félkész, testre szabható projektek Informatika új infrastruktúra bevezetése új szoftvertermék kifejlesztése alkalmazásfejlesztés az MSF szerint a Windows 2000 bevezetése az Office 2000 bevezetése a Project 2000 bevezetése Tervezés, építés műszaki tervdokumentáció készítése irodaház építése lakóház építése Üzlet új vállalkozás indítása új termékfejlesztési projekt beindítása projektvezetői iroda létrehozása
A projekt kiterjesztése az egész szervezetre Hagyományos projekt-menedzsment (felülről lefelé) Együttműködő projekt-menedzsment (alulról felfelé is) projektterv elkészítése új feladatok hozzáadása végrehajtás feladatok delegálása
A Project a projektgazdáké A Project Central mindenkié Intranetes alkalmazás, de beépülhet az Outlookba is Könnyen áttekinthető, feladatorientált felületet nyújt Megjeleníti a projekt- és az Outlook-feladatokat Segít a rendszeres és eseti jelentések készítésében
Project Central Együttműködő projektmenedzsment Részvétel a tervezésben javaslat új feladatok felvételére, feladatok kiosztása, projekten kívüli elfoglaltságok figyelembe vétele Részvétel a követésben elvégzett munka rögzítése, állapot-jelentések küldése Projektadatok elérése az egyes résztvevőkre vonatkozó projektlista (portfolió), az egyes projektek és feladatok megjelenítése
Project Central Részvétel a tervezésben Személyes Gantt diagram saját és menedzselt feladatok, külső elfoglaltságok (az Outlookból) csoportosítás, szűrés és rendezés Új feladat hozzáadása csak javaslat; ha a projektmenedzser jóváhagyja, bekerül a projekttervbe Feladat delegálása kiválasztható, hogy a delegáló vagy a projektmenedzser felügyelje a végrehajtást alkalmazásszinten be- és kikapcsolható
Project Central Részvétel a követésben Időtábla táblázatos nézet a feladat-végrehajtás jelölésére; kitölthető órában vagy %-ban Szabályok a projektterv automatikus frissítése a résztvevőktől beérkező üzenetek (teljesítés, új feladat, delegálás, stb.) alapján Állapotjelentés lehet rendszeres és eseti; projekthez kapcsolódó vagy önálló; a menedzser vagy a résztvevő kezdeményezi a Project Central automatikusan összesíti
Project Central Felügyelet Felhasználók azonosítása lehet Project Central- (adatbázis-) fiók, Windows NT fiók, vagy mindkettő Szolgáltatások engedélyezése/tiltása feladatok delegálása, új erőforrások felvétele Kategóriák és nézetek menedzselése vezető, projektfelelős, erőforrás-felelős, csoporttag Egyéb beállítások megjelenés, kategóriák, üzemmód
Köszönöm a megtisztelő figyelmet! Várom szíves kérdéseiket.
Irodalom [1] Andrásfai Béla, Gráfelmélet, Polygon, Szeged, 1997, pp 1-131 [2] A. Kaufmann, Az operációkutatás módszerei és modelljei, Muszaki könyvkiadó, Budapest, 1968, pp 11-123 [3] A. Kaufmann, G.Desbazeille, A kritikus út módszerének matematikai alapjai, Muszaki könyvkiadó, Budapest, 1972, pp 7- 203 [4] Bencsik Andrea, Szervezésmódszertan, szervezési technikák, Veszprémi Egyetemi Kiadó, Veszprém 1998 [5] Christoph Schwindt, Generation of Resource Constrained Project Scheduling Problems Subject to Temporal Constraints, Technical Report, Report WIOR-543, 1998 [6] Christophides, N., Graph theory: An Algoritmic Apoach. Academic Press, New York. 1975 [7] Chvátal, V., Linear Programming. W.H. Freeman, New York. 1983 [8] Denardo, E.V., Dynamic programming. Models and Applications. Prentice Hall, Englewood Cliffs, N.J. 1982 [9] Dennis Lock, Modern Gazdasági Ismeretek - Projekt menedzsment, Panem Könyvkiadó, Budapest, 1998, pp 89-114
Irodalom [10] Derigs, U., Programming in Networks and Graphs. Lecture Nots in Economics and Mathematical Systems. Vol. 300. Springer – Verlag, New York 1988. [11] Elmeghraby, S.E., Activity Networks. Project Planning and Control by Network Models. Wiley – Interscience, New York 1978. [12] Görög Mihály, Bevezetés a projektmenedzsmentbe, Aula Kiadó, Budapest, 2001, pp 47-80 [13] Keith Lockyer – James Gordon, Projektmenedzsment és hálós tervezési technikák, Kossuth Kiadó, 2000 [14] Kosztyán Zsolt, Bencsik Andrea, Hogyor András, Muködő projektek optimális eroforrás elosztása, Verlag Dashöfer, 2002 [15] Kosztyán Zsolt, Bencsik Andrea, Hogyor András, Egy új módszer alkalmazása ido-, eroforrás-, költségoptimálásra projekt-menedzsmentben, illetve logisztikában, Logisztikai Évkönyv, 2002 [16] Kosztyán Zsolt, Bencsik Andrea, Bizonytalan átfutási ideju projektek optimális eroforrás elosztása, Verlag Dashöfer, 2003 [17] Kurtulus I., Davis E.W., Multi project scheduling categorization of heuristic rules performance, Management Science 28, 1982, pp 161-172 [18] Kurtulus I.S., Narula S., Multi project scheduling analysis of project performance, IIE Transactions 17, 1985, pp 58-65 [19] dr. Németh Lóránt, Hálótechnikai termelésprogramozó, és eroforrás allokáló eljárás (ERALL-1). É. M. SZÁMGÉP, 1965 [20] dr. Németh Lóránt, Organizational and control methods of building processes (ERALL-2). É. M. SZÁMGÉP, 1966
Irodalom [21] Neumann K., Schwindt C., Activity on node networks with minimal and maximal time lags and their application to make to order productionm, Operations Research Spektrum 19, 1997, pp. 206-217 [22] Neumann K., Zhan J., Heuristics for the minimum project duration problem with minimal and maximal time lags under fixed resource constraints, Journal of Intelligent Manufacturing 6, 1998, pp. 145-154 [23] Papp Ottó, A hálós programozási módszerek gyakorlati alkalmazása, Közgazdasági és Jogi Kiadó, 1969 [24] Patterson J.H., Project scheduling the effects of problem structure on heuristic performance, Naval Research Logistics Quarterly 23, 1976, pp. 96-123 [25] Ravindra K. Ahuja, Thomas L. Magnant, James B. Orlin, Network Flows, PRENTICE HALL, Upper Saddle River, New Jersey 07458 1998, pp 24-46, 108-116, 135-154, 177-196, 469-173, 520-528 [26] Richard I. Lewin Ph.D., Charles A. Kirkpatrick, D.C.S., Planning and control PERT/CPM. Mc. Graw-Hill Book Company, New York. 1966 [27] Rónyai Lajos, Ivanyos Gábor, Szabó Réka, Algoritmusok, Typotex, Budapest, 1998, pp 110-183 [28] Schrijver, A., Theory of Linear and Integer Programming. Wiley New York, 1986 [29] Sharpiro, J.F., Mathematical programming models and methods for production planning and scheduling. To appear in Handbooks in Operations and Management Science, Vol. 4: Logistics of Production and Inventory, edited by S. C. Graves, A.H. G. Rinnouy Kan, and P.Zipkin. North-Holland, Amsterdam. 1992 [30] Szendrei Ágnes, Diszkrét matematika, Polygon, Szeged, 1996, pp 63-83, 295-324 [31] Thomas H. Cohen, Charles E. Leiserson, Ronald L. Rivest, Algoritmusok, Muszaki könyvkiadó Budapest 1997, pp 392-543 [32] Dr. Tóth Irén, Matematika üzemgazdászoknak - Operációkutatás I, Taankönyvkiadó, Budapest, 1987, pp 167- 189 [33] Guide to the Expression of Uncertainty in Measurement, International Organization for Standardization 1993