AKO PL[NOVAŤ ZMENY PL[NOV

Similar documents
VYSOKÉ UČENÍ TECHNICKÉ V BRNĚ BRNO UNIVERSITY OF TECHNOLOGY

LV5WDR Wireless Display Receiver Rýchla príručka

OSOBNOSTNÉ ASPEKTY ZVLÁDANIA ZÁŤAŽE

Môže sa to stať aj Vám - sofistikované cielené hrozby Ján Kvasnička

IBM Security Framework: Identity & Access management, potreby a riešenia.

Postup pre zistenie adries MAC a vytvorenie pripojenia. v OS Windows

Kozmické poasie a energetické astice v kozme

Sledovanie čiary Projekt MRBT

Pracovná skupina 1 Energetický management a tvorba energetických plánov mesta

!T =!Mobile=== Nastavenia dátových a multimediálnych služieb pre multifunkčné zariadenia s operačným systémom Windows Mobile 5.0 NASTAVENIE MMS 1 /18

PORUCHY A OBNOVA OBALOVÝCH KONŠTRUKCIÍ BUDOV - Podbanské 2012

ING (L) Société d Investissement à Capital Variable 3, rue Jean Piret, L-2350 Luxembourg R.C.S.: Luxembourg B č (ďalej ako spoločnosť )

: Architectural Lighting : Interiérové svietidlá

Témy dizertačných prác pre uchádzačov o doktorandské štúdium

SPRÁVA FLOOD MODELING AND LOGISTIC MODEL DEVELOPMENT FOR II/II. ČIASTKOVÁ ÚLOHA FLOOD CRISIS MANAGEMENT" - FLOODLOG

WLA-5000AP. Quick Setup Guide. English. Slovensky. Česky a/b/g Multi-function Wireless Access Point

Návod k použití: Boxovací stojan DUVLAN s pytlem a hruškou kód: DVLB1003

Luboslav Lacko. Visual Studio 2005 Team System

KONTAKT CHEMIE Kontakt PCC

CONSISTENCY IN THE IDENTITY MANAGEMENT

JEDNOFÁZOVÝ STATICKÝ ELEKTROMER NA VIACSADZBOVÉ MERANIE ČINNEJ ENERGIE

Rychlý průvodce instalací Rýchly sprievodca inštaláciou

TVORBA KOMUNIKAČNEJ KAMPANE S VYUŢITÍM DIGITÁLNYCH MÉDIÍ

CONTEMPORARY POSSIBILITIES OF MODELING OF THE PROBLEMS OF VEHICLE TRACK INTERACTION

Európska komisia stanovuje ambiciózny akčný program na podporu vnútrozemskej vodnej dopravy

How to program a MapReduce cluster

Application of new information and communication technologies in marketing

CHARACTERISTICS OF THE CURRENT STATE IN THE CONSTRUCTION INDUSTRY

WK29B / WK29W. Bluetooth Wireless Slim Keyboard. User manual ( 2 5 ) Uživatelský manuál ( 6 10) Užívateľský manuál (11 15)

My Passport Ultra Metal Edition

Fakulta riadenia a informatiky Žilinská univerzita VÝSKUME A V IT RIEŠENIACH

JEDNODUCHÝ GRAMATICKÝ KOREKTOR

J&T FINANCE GROUP, a.s. a dcérske spoločnosti

Príklady riadenia kvality z vybraných krajín

CENOVÁ NABÍDKA. jednatc~ Krmivo pro laboratorní zvířata" k veřejné soutěži. Krnov, Ing. Jiří Bauer. Předmět zakázky:

CÏESKEÂ A SLOVENSKEÂ FEDERATIVNIÂ REPUBLIKY

Luboslav Lacko Visual Studio Tools for Office

Prestige 660HN-T3A Príručka k rýchlej inštalácii splittra a smerovača (routra)

Manažerské transakce

Centrálny register záverečných prác a antiplagiátorský systém ako komplexné riešenie na národnej úrovni

POKUS O ENERGETICKO-INFORMAÈNÚ INTERPRETÁCIU NIEKTORÝCH MAGICKÝCH LIEÈEBNÝCH PRAKTÍK V TRADIÈNEJ ¼UDOVEJ KULTÚRE SLOVENSKA

Web of Science a ďalšie nástroje na Web of Knowledge

Edičná séria: OŠETROVATEĽSTVO FYZIOTERAPIA LABORATÓRNA MEDICÍNA VEREJNÉ ZDRAVOTNÍCTVO. Trenčianska univerzita Alexandra Dubčeka v Trenčíne

VÁHOSTAV SK, a.s. ZML

Trestná politika štátu a zodpovednosť právnických osôb. Penal Policy of the State and Liability of Legal Entities

FORUM STATISTICUM SLOVACUM

6/08. a KARTOGRAFICKÝ GEODETICKÝ. Český úřad zeměměřický a katastrální Úrad geodézie, kartografie a katastra Slovenskej republiky

Univerzita J. Selyeho Selye János Egyetem Ekonomická fakulta Gazdaságtudományi Kar

Ekonomické listy. Odborný vědecký časopis Vysoké školy ekonomie a managementu. 3 Financing of tertiary education: the Czech Republic and Europe

Ingerencia súdov do súkromnoprávnych zmlúv: Zásahy súdov do obsahu súkromnoprávnych zmlúv

Železničná doprava a logistika elektronický časopis

PRODUCT LIFE CYCLE COST MANAGEMENT RIADENIE NÁKLADOV ŽIVOTNÉHO CYKLU VÝROBKU

ORIGINÁL. KRYCÍ LIST NABÍDKY na verejnou zakázku: Tovary - Laboratórna technika pre Výskumné centrum Žilinskej univerzity

Projekt KEGA Vyučovanie fyziky programovaním modelov fyzikálnych javov a pomocou interaktívneho softvéru

MĚNIČ NAPĚTÍ 12 V / 230 V PRO POUŽITÍ V AUTOMOBILECH

BRATISLAVA INTERNATIONAL SCHOOL OF LIBERAL ARTS NEW PERCEPTION OF HUMAN RESOURCES

ROČNÍK 43 ČÍSLO 4. psychológia a patopsychológia

MICROSOFT WORD Mgr. Krejčí Jan (ZSJP) MICROSOFT WORD září / 21

VZDELÁVANIE ZDRAVOTNÍCKYCH PRACOVNÍKOV V OBLASTI PALIATÍVNEJ STAROSTLIVOSTI Education of healthcare professionals in the field of palliative care

Analyzing the System for Employee Training and Development in Order to Improve Service Quality in Radisson Blu Alcron Hotel in Prague

aneb Co bylo, bylo, co zbylo, zbylo.

Human resources development in rural areas of the Czech Republic

Aktuálne poznatky o hliníku v úlohe vakcínového adjuvansu

<Insert Picture Here> Single Sign-on a propagácia identít v heterogénnom prostredí

OUTSOURCINGOVÉ MODELY A PREVÁDZKA INFORMAČNÉHO SYSTÉMU

Vzor pre záverečnú prácu

P Y T A G O R A S 2003

Luk aˇ s R uˇ ziˇ cka Pomocn a slovesa

Faculty of Informatics and Information Technologies

AKTUÁLNE POHĽADY NA KONKURENCIESCHOPNOSŤ A PODNIKANIE

Medzinárodná Študentská vedecká konferencia v odboroch špeciálna a liečebná pedagogika ŠTUDENT NA CESTE K PRAXI IV,

Rozvoj a moc. Sociologické analýzy moci v rozvojovej spolupráci*

BIRD Internet Routing Daemon

aneb Perfekt perfektně.

Konkurence na železnici

spektrum Ovládajte domov jednoducho

THE TOULMIN MODEL OF LEGAL ARGUMENTATION IN THE CASE C-388/01 OF THE EUROPEAN COURT OF JUSTICE

Univerzita Karlova v Praze Matematicko-fyzikální fakulta BAKALÁRSKA PRÁCA. Lucia Quittnerová. Katedra didaktiky matematiky

Strojárstvo. 11 Koncepcie hodnotenia strojárskych prevádzok. Conceptions for Evaluation of Engineering Plants. Použitie Denavit Hertenbergovho

Polymérne konštrukčné materiály

Intelligent identity information processing

Hama GmbH & Co KG D Monheim/Germany /10.09

BURZA CENNÝCH PAPIEROV PRAHA. Prague Stock Exchange

YOUTUBE 4.0. Postup upgrade Youtube z Youtube 3.1 na Youtube 4.0 pro produkty EAGET X5R, M6, M7 a M9:

Združenie Pre reformu zdravotníctva Páričkova 18 SK Bratislava.

Štefan Šutaj NÚTENÉ PRESÍDĽOVANIE MAĎAROV DO ČIECH

SBORNÍK PŘÍSPĚVKŮ Sociální procesy a osobnost 2009 Člověk na cestě životem: rizika, výzvy, příležitosti

Príručka k inštalácii CMS

ASP.NET pre začiatočníkov

Jazyk C# (seminář 8)

Zborník príspevkov Význam ľudského potenciálu v regionálnom rozvoji / 1 Z B O R N Í K

Kľúčové porovnateľné ukazovatele Poľsko (PL) Slovensko (SK)

Prehľad patentovej literatúry + Prehľad voľne dostupných zdrojov

BIOETANOL: SÚČASNÉ TRENDY VO VÝSKUME A V PRAXI

BISLA Liberal Arts College

Podniková ekonomika a manažment Elektronický vedecký časopis o ekonomike, manažmente, marketingu a logistike podniku Číslo 2 Rok 2015 ISSN

MARKETING A OBCHOD 2006

Strategy related factors of business entity structure and behaviour

STANOVENI VELMI NÍZKÝCH RADIOAKTIVIT A JEJICH APLIKACE /Letni škola/

Pripojenie k internetu v pevnej sieti

Transcription:

AKO PL[NOVAŤ ZMENY PL[NOV Bol čas pripravovať sa a pripravil som sa, ako som sa pripravil, dnes je čas s vierou vykročiť vpred. Roman Mész{roš Slovensk{ technick{ univerzita Fakulta informatiky a informačných technológií Ilkovičova 3, 842 16 Bratislava roman.meszaros+msi[zavináč]gmail[.]com Abstrakt. Pl{novanie sa vyskytuje vo všetkých f{zach projektu, je dôležitým pre dohodnutie sa klienta s vypracov{vateľom projektu. Jeho súčasťou je aj odhadovanie vynaloženého úsilia, zdrojov a tvorba rozvrhu. Na pl{novanie existujú rôzne metódy, ktorých úspešnosť je silne z{visl{ od povahy projektu a tímu. T{to esej sa zameriava na porovnanie rôznych prístupov k pl{novaniu a odhadovaniu, rozober{ aké atribúty projektu majú najväčší vplyv na ich výber. Keďže odhady sa uskutočňujú vo všetkých f{zach projektu, je tiež nevyhnutné byť pripravený na zmenu odhadov z raných št{dií projektu, čím sa tiež zaober{ t{to esej. Rozober{m tiež možné zmeny a rizik{, ktoré vplývajú na zmenu pl{nov a odhadov a tiež vplyv dodržiavania pl{nu na celkový výsledok projektu. V z{vere sa venujem spojeniu analyzovaných vecí s našim tímovým projektom. Kľúčové slová: pl{novanie, zmena pl{nov, chybovosť Úvod Pl{novanie nasleduje okamžite po inicializ{cii projektu, do istej miery je aj súčasťou inicializ{cie. V počiatočnej f{ze slúži najmä na stanovenie vzťahu so z{kazníkom a tiež ako prvotn{ špecifik{cia projektu [1+. Pl{novanie prebieha najmä v počiatočných f{zach projektu a obvykle netrv{ dlho, predstavuje len malú časť projektu, avšak veľmi dôležitú pre celú ostatnú pr{cu na projekte. Manažment projektov softvérových a informačných systémov, 2010, s. 1-8

2 Roman Mészároš Pl{novanie pozost{va z rôznych častí: stanovenie rozvrhu, rozpočtu, odhady trvania jednotlivých f{z a častí projektu, odhady n{kladov, stanovenie rozpočtu. Na sledovanie a vytv{ranie pl{nov a sprehľadnenie pr{ce sa používajú najmä tieto metódy: Ganttova schéma [5] Metóda kritickej cesty (CPM) [8] PERT [10] Ganttova schéma je n{stroj, ktorý zobrazuje jednotlivé úlohy v tabuľke, kde v z{hlaví je d{tum, kedy sa m{ úloha vykonať a vľavo je n{zov úlohy a priradené osoby na danú úlohu. V tejte schéme je tiež možné prehľadne zobrazovať, ktoré úlohy musia byť splnené pre možné pokračovanie alebo začatie ďalších, teda ich n{slednosť. Pri metóde kritickej cesty (CPM) potrebujeme opäť jednotlivé úlohy a ich trvanie a vz{jomnú z{vislosť. N{sledne CPM vypočíta najdlhšiu cestu napl{novaných úloh až k ukončeniu projektu a tiež najdlhšiu a najkratšiu dobu trvania jednotlivých úloh tak, aby sa nepredĺžil termín projektu. Na z{klade tohto oddelíme kritické úlohy, ktorých nedodržanie m{ silný vplyv na posun termínu projektu, a voľnejšie úlohy. Metóda PERT sa obvykle používa v spojení s metódou kritickej cesty. Metóda PERT používa graf na zobrazenie aktivít ako uzly a vzťahy, n{slednosti medzi aktivitami ako hrany medzi nimi. V tomto grafe n{jdeme kritickú cestu, na ktorej n{m úlohy určujú dobu trvania projektu. Nástroje na plánovanie projektu a sledovanie úloh Najpoužívanejším n{strojom na pl{novanie sa stal Microsoft Project. Tento umožňuje tvorbu pl{nov, priraďovanie zdrojov k úloh{m, sledovanie stavu úloh, spr{vu rozpočtu a tiež analýzu zaťaženia jednotlivých členov tímu. Je schopný vypočítať kritické pl{ny, Ganttove schémy a obsahuje podporu pre rôzne skupiny používateľov. Je to robustné riešenie a vyžaduje samostatnú inštal{ciu u každého používateľa. Ďalším vhodným n{strojom na sledovanie úloh a pracovníkov na projekte je Jira. Pomocou n{stroja Jira je možné zad{vať požiadavky klientom, úlohy si jednotliví účastníci posúvajú a po každej ukončenej f{ze úlohy sa t{to môže uzavrieť a poslať do ďalšej f{zy, z ktorej sa v prípade problému môže opäť vr{tiť späť. V n{stroji Jira je tiež možné k úloh{m prid{vať prílohy, verzie, vytv{rať projektovú hierarchiu úloh a koment{re [11]. Na úlohe môžu v rôznych rol{ch byť zúčastnení aj viacerí používatelia súčasne, rovnako ako MS Project umožňuje tvorbu prehľadných grafov sledovanie presnosti odhadov, vkladanie príloh a pracuje ako serverov{ aplik{cia s prihlasovaním prostredníctvom webového prehliadača. V prípade začatia pr{ce na projekte je vhodnejšie použitie MS Project, keďže je prehľadnejší pri manažmente zdrojov a rozloženie projektu. Pri pr{ci na už bežiacom projekte je vhodnejšie použiť systém Jira, ktorý je tiež vhodný na zavedenie po určitom behu projektu. Tento systém umožňuje flexibilnú spolupr{cu so z{kazníkom, a tiež aj vo firme od analýzy cez vývoj až po testovanie. Pre pr{cu v menšom tíme sa však ako vhodné ukazujú aj rôzne open source riešenia, ktoré viac, či menej poskytujú z{kladnú funkcionalitu od reportovania chýb, sledovania stavu úloh, projektov a ich rozbíjanie na drobnejšie úlohy. V našom tíme použijeme Dot

Ako plánovať zmeny plánov 3 Project, ktorý m{ jednoduchú údržbu a nasadenie vďaka použitej kombin{cii PHP s MySQL. Riziká pri plánovaní Štandardné n{stroje na pl{novanie a odhadovanie väčšinou slúžia len na zaznamenanie aktivít a k nim priradených zdrojov. Pri odhadovaní je však potrebné uvažovať aj nad faktormi, ktoré spôsobujú odklon od pôvodného pl{nu, či už natiahnutím projektu alebo n{rastom rozpočtu [3]. Týmito faktormi sú obvykle natiahnutie jednotlivých činností, prípadne nedostupnosť vhodných zdrojov. K týmto problémom doch{dza najmä preto, lebo ľudia, ktorí daný softvérový výrobok pred{vajú, majú obvykle príliš optimistické pl{ny, čo je n{sledne veľkým problémom pre ľudí, ktorí sú za výrobu daného produktu zodpovední, keďže sa musia vojsť do tohto optimistického rozpočtu a termínu. Vzhľadom na povahu n{šho projektu, je úplne jasný termín, a tým je zbieranie požiadaviek na tvorbu rozvrhu. Keďže pracujeme na už rozbehnutom projekte a naše rozpočtové ohraničenie je n{š čas na tímovom projekte, musíme si zvoliť kľúčové funkcionality, ktoré v danom systéme do najbližšieho zberu rozvrhu chceme mať, a tiež musíme zistiť počas zberu požiadaviek na rozvrh, aké sú ďalšie n{roky kladené na n{š systém zo strany klienta, fakulty. Štruktúra tímu Vzhľadom na to, že v projekte sme zapojení 7 ľudia, pričom každý z n{s m{ isté špecifické schopnosti, v ktorých vynik{, bolo by obrovskou škodou toto nevyužiť. Keďže predmetom našej pr{ce bude len jeden projekt budeme vych{dzať z funkcion{lnej topológie. M{me určených jednotlivých vedúcich zodpovedných za dokument{ciu, podporné prostriedky, vývoj, pl{novanie a vedúceho projektu. Títo vedúci majú nasledovne k dispozícii zvyšok tímu, v ktorom komunikujú úlohy jednotlivým členom, sledujú plnenie úloh a tiež komunikujú medzi sebou za účelom optim{lneho využitia zdrojov. Počiatočné plánovanie Počiatočný pl{n sa vytv{ra ešte pred uzavretím zmluvy s klientom, predmetom tohto pl{novania je zistiť, či daný produkt sme schopní vytvoriť, čo n{s to bude st{ť, porovnať ho prípadne s inými ponukami. Na vypracovanie počiatočného pl{nu potrebujeme opis tohto produktu, na porovnanie potrebujeme vytvoriť strategický pl{n tvorby softvérového produktu a n{sledne stanovenie kritérií na výber produktu, ktorými môžu byť napr. zisk alebo prestíž [1]. Po prijatí projektu je potrebné vytvoriť pl{n na zabezpečenie chodu projektu. Tento musí obsahovať najmä požiadavky týkajúce sa zdrojov, množstva a kvality pr{ce. Všetky zložky, ktorých sa pl{n týka by mali byť obozn{mené so svojou zodpovednosťou, pl{n by teda mal byť taký podrobný ako je potrebné a nie ako je možné, a tiež musí byť odsúhlasený každou kritickou zložkou zapojenou v projekte

4 Roman Mészároš Pl{ny sa vytv{rajú pre rôzne oblasti projektu, nevyhnutnými pl{nmi, ktoré by mal mať každý projekt sú: pl{n rozvrhu pl{n n{kladov. Pl{n rozvrhu m{ za úlohu určiť, aké činnosti musia byť vykonané a zdokumentovať ich, zoradiť ich, vytvoriť odhad ich trvania a na koniec vytvoriť rozvrh pomocou kompozície týchto rozdrobených úloh. Pl{n n{kladov určuje potrebné zdroje na vykonanie projektu začínajúc pracovnou silou, aj zariadenia a rôzne materi{ly, ktoré sú pri tvorbe produktu potrebné. N{sledne je potrebné tieto zdroje ohodnotiť, odhadnúť n{klady a vytvoriť celkový rozpočet. Ďalšími pl{nmi, ktoré sa zvyknú vytv{rať, ale nie je to pravidlom sú: pl{n integr{cie projektu pl{n rozsahu projektu pl{n zabezpečenia akosti pl{n ľudských zdrojov pl{n komunik{cie pl{n rizík [1]. Odhadovanie Odhadom sa snažíme zistiť najpravdepodobnejšie spr{vanie, nejakú hodnotu, či už čas, prípadne potrebné zdroje alebo iné. Pozn{me rôzne druhy odhadov, ktoré sa navz{jom dopĺňajú a kombinujú. Analogické odhady sa snažia využiť analógiu, podobnosť s už existujúcimi, prípadne aj ukončenými projektami a použiť znalosti nadobudnuté na nich v ďalšom projekte. Empirické odhady majú za cieľ prostredníctvom analýzy údajov určiť z{vislosti a vzťahy medzi rôznymi charakteristikami. Teoretické modely vytv{rajú numerický model, ktorý sa overuje spravidla praxou. Heuristické modely sú modely používajúce expertné odhady. Proces odhadovania môže prebiehať rôznymi spôsobmi, a to rozbitím projektu na drobnejšie časti, tzv. dekompozícia, modelovaním softvéru, kde je cieľom zistiť, ktoré vplyvy a ako veľmi pôsobia na trvanie jednotlivých procesov, prípadne posúdením experta, kde experti dostanú požiadavky na softvér, diskutujú o ňom, vytvoria vlastné odhady a n{sledne ich opäť v skupine diskutujú, a tento postup opakujú až kým nepríde k zhode. Ako predchádzať zmene plánov Vďaka použitiu n{strojov na manažment úloh m{me k dispozícii prehľad o vyťaženiach jednotlivých členov tímu. Tiež vieme, kde sa jednotlivé úlohy nach{dzajú v akom sú stave, vieme zistiť efektívnosť jednotlivých ľudí, nakoľko sú schopní pl{ny dodržiavať, prípadne o koľko rýchlejšie sú schopní pracovať ako sme napl{novali, prípadne koľko za pl{nmi zaost{vajú. Na z{klade týchto údajov sme schopní upresňovať naše odhady, a tým

Ako plánovať zmeny plánov 5 prispieť k spokojnosti ako na našej strane, tak aj na strane zad{vateľa projektu. Tieto získané údaje vieme do projektu zapojiť dvomi spôsobmi: pl{novaním rizík pravidelnými zmenami pl{nu. Pri pl{novaní rizík uvažujeme množstvo rizík, ktoré môžu vplývať na dĺžku projektu, pričom sa budeme snažiť o čo najlepšie využitie zdrojov tak, aby sme minimalizovali cenu projektu k d{tumu ukončenia projektu. Pl{novanie s pravidelnými zmenami pl{nu umožňuje opravu pl{nov, dobiehanie omeškaní, tiež minimaliz{ciu rizík, ak je počiatočn{ analýza rizík rozsiahla. Vzhľadom na veľkosť projektu môže réžia spôsoben{ pravidelnými zmenami pl{nu spôsobiť väčšie výdavky, ako tie, ktoré vznikajú jej neaplikovaním, pri rozsiahlejších projektoch je však nutn{ a tvorí z{kladný stavebný kameň agilného programovania. Plnenie plánov Sledovanie plnenia pl{nov je u softvérových projektov veľmi špecifické, z dôvodu neviditeľnosti softvéru, kedy je častokr{t obtiažne vidieť skutočný stav projektu, resp. koľko pr{ce n{m ešte na projekte zost{va. Tento problém sa zvykne nazývať aj syndróm 90% hotovo, kde m{me pocit, že väčšina pr{ce je už za nami, avšak konečné úpravy, dolaďovanie aplik{cie a komunik{cia so z{kazníkom pred odovzdaním môže byť ďaleko viac ako 10%, ktoré sa n{m na počiatku javili. Cieľom projektu nie je splniť pl{n, avšak motiv{ciou k tvorbe pl{nu je čo najpresnejšie odhadnúť potrebné zdroje a čas na výrobu produktu. Pre plnenie pl{nov a úspešné ukončenie projektu, je nutné sledovať, čo sa z pl{nu už vykonalo, ak{ časť projektového pl{nu je splnen{, koľko ešte zost{va a na z{klade miery dosahovania pl{nov môže byť na mieste prípadn{ zmena pl{nu. V našom tímovom projekte budú úlohy obvykle napl{nované na jeden alebo viac týždňov v r{mci pl{nu stretnutí k projektu, kde bude n{sledne možné vyhodnotiť ďalšiu pr{cu na najbližšie obdobie. Pl{ny úloh, ktoré sú na sebe navz{jom z{vislé a sú pridelené viacerým riešiteľom, si budú riešitelia navz{jom sledovať. Zmena plánov V tejto časti sa budem zaoberať samotnou zmenou pl{nu. Na zmenu pl{nu vplýva najmä plnenie pl{nu, zmeny sa uskutočňujú. T{to zmena sa obvykle týka preusporiadania zdrojov, prípadne natiahnutia termínu alebo navýšenia rozpočtu. Zmeny môžu byť tiež vyvolané inými vplyvmi, môže to byť vytv{ranie ďalších modulov, možnosti zlepšenia softvéru podľa nejakej charakteristiky, zmena legislatívy alebo zmena požiadaviek zad{vateľa (klienta). Do procesu celkového riadenia zmien vstupuje projektový pl{n, spr{vy o výkone a plnení pl{nov a požiadavky na zmeny, výstupom celkového riadenia zmien sú zmeny pl{nu a opravné akcie *1]. Vo vývoji môže dôjsť k chyb{m na nasledovných miestach:

6 Roman Mészároš chyby v zmenenej entite ak bola entita ned{vno zmenen{, m{ sklon vyvolať chybu chyba v novej entite entita ned{vno pridan{ ma tendenciu spôsobiť chybu dočasné chyby entita spôsobujúca chybu, čoskoro spôsobí ďalšie chyby oblastné chyby ak nejak{ entita spôsobuje chybu, blízke entity majú tiež tendenciu spôsobovať chyby [9]. Podľa *6+ nevznikajú však v softvéri chyby len dôsledkom množstva programového kódu, či už na z{klade množstva riadkov alebo modulov alebo celkovo štruktúry. Najväčšie množstvo chýb tiež nie je z{vislé od množstva rôznych vývoj{rov, ktorí prišli s daným programovým kódom do styku a nie je z{vislé ani od sily väzby na ostatné moduly softvérového výrobku. Najčastejším zdrojom chýb sú pr{ve úpravy programu a ako vhodn{ metrika sa javí metóda priemerného veku kódu v moduloch, pričom kód starne svojou úpravou a viackr{t upravovaný programový kód m{ oveľa nižšiu kvalitu, ako pôvodný zdrojový kód, prípadne zdrojový kód, ktorý by vznikol, keby boli všetky požiadavky už na začiatku zn{me. Z hľadiska kvality zdrojového kódu a množstva chýb v ňom je vhodné mať čo najmenej úprav, avšak vzhľadom na cenu, ktorú by st{lo vytv{ranie nového miesto upravovania pôvodného, je vhodn{ pravideln{ refaktoriz{cia jednotlivých častí a zriedkavo aj celkov. V našom tímovom projekte pracujeme s existujúcim systémom, ktorý v sebe obsahuje už veľké množstvo funkcionality a bolo by zrejme takmer nemožné pustiť sa do projektu od začiatku, našou úlohou bude aj vybrať spr{vne časti, ktoré budeme používať my. Vzhľadom na množstvo úprav hlavne v d{tovom modeli je však veľmi vhodné pouvažovať nad jeho refaktoriz{ciou v spojení s existujúcimi ale aj novými požiadavkami na systém. Vznik chýb pri vývoji softvéru môžeme predpokladať ako množstvo chýb, ktoré v softvéri vznikne, alebo sa môžeme snažiť o identifik{ciu modulov, kde chyba vznikne [7]. Na z{klade identifikovania modulov, kde vznikajú chyby, alebo pri n{jdení podsystémov s chybami, ktoré pri testovaní vznikli, vieme vytv{rať dlhodobé pl{ny. Tiež m{me možnosť prealokovať zdroje a n{sledne ich po čase vieme overovať, samozrejme t{to metóda sa d{ použiť aj pri kr{tkodobom pl{novaní. Existuje množstvo spôsobov, ako prideľovať spr{vnych ľudí (zdroje) na jednotlivé projekty, úlohy, prípadne vylepšenia a riešenia chýb. V [3] sa autori zamerali na podporu zmien požiadaviek vo vývoji s otvoreným zdrojovým kódom. Ich myšlienkou bolo použiť softvérové a verziovacie úložisko ako novú príležitosť pre obrovský zdroj d{t na analýzu, možnosť sledovania chýb, zmien, znovupoužiteľnosti a zložitosti softvéru. Úlohou bolo vytvoriť podporu pre projektových manažérov, pomocou ktorej môžu pre danú úlohu vybrať najvhodnejšieho riešiteľa, tiež umožniť klasifik{ciu vývoj{rov v r{mci ich zodpovedností. Najlepším riešiteľom je teda pravdepodobne ten, kto riešil podobné zmeny. Túto podobnosť vyhodnocovali na z{klade podobnosti koment{rov a opisov k úloh{m v prirodzenom jazyku, ktoré sa nach{dzali v dokument{ci{ch alebo opisoch požadovaných zmien. V r{mci tohto riešenia boli vývoj{ri podľa ich dokumentov reprezentovaní v datab{ze, kde požiadavky na zmeny tvorili dopyt pre túto datab{zu. Ďalšou skvelou možnosťou je vytvoriť zoznam podsystémov, ktoré budú s najvyššou pravdepodobnosťou obsahovať chyby, prípadne sa v nich chyby neskôr vyskytnú *8].

Ako plánovať zmeny plánov 7 Tento zoznam sa n{sledne predloží manažérovi, ktorý vďaka nemu vie presnejšie prideliť zdroje tam, kde budú lepšie využité. Tento zoznam vznik{ na z{klade rôznych heuristík: podľa počtu predch{dzajúcich chýb podľa množstva vývoj{rov zapojených do podsystému podľa toho, kedy bola posledn{ chyba v podsystéme alebo úprava podľa množstva úprav kombin{ciou uvedených kritérií. Zoznam podľa najčastejšie upravovaných podsystémov vych{dza z faktu, že pri množstve úprav sa str{ca v zdrojovom kóde jeho pôvodn{ organiz{cia, nie je už taký čistý, ako keď bol pôvodne napísaný. Tento prístup však môže spôsobiť pri pr{ci na nejakej časti to, že zvýšeným úsilím a pr{cou na nej odstr{nime z tohto zoznamu ostatné podsystémy, ktoré by sa tam tiež potrebovali dostať. Tento problém nazývame znečistením zoznamu *8]. T{to heuristika sa často kombinuje s výberom podľa posledne modifikovaného podsystému. Heuristika výberu posledne modifikovaného vych{dza z toho, že pr{ve tieto zmeny môžu spôsobiť chyby, keďže sú len ned{vno nasadené, je možné, že ich dôsledky sa ešte neprejavili, prípadne na pr{ve bežiacej verzii sú kompatibilné, avšak nemusia sa spr{vať voči zmen{m tak, ako sa pôvodne uvažovalo. Heuristika výberu najčastejšie meneného podsystému vych{dza z predpokladu, že podsystémy, ktoré boli často menené a spôsobovali chyby ich zrejme budú pri nejakých príležitostiach spôsobovať opäť. T{to heuristika môže tiež spôsobiť znečistenie zoznamu. Heuristika posledne opravovanej časti predpoklad{, že časti spôsobujúce posledné chyby budú mať najsilnejšiu tendenciu spôsobovať chyby aj v budúcnosti, až kým sa väčšina chýb neidentifikuje a neopraví. Záver Už na začiatku pr{ce na projekte sme si stanovili ciele, ktoré budú vyžadovať značnú zmenu existujúceho systému, či už v r{mci rozhraní samotných, alebo aj prebudovania jadra. Samotn{ architektúra systému bude teda veľmi podobn{ už existujúcemu rozvrhovému systému. V prípade rapídnej zmeny bude prvotný n{vrh prebiehať zhora nadol a na z{klade toho sa bude pl{novať pr{ca toho-ktorého člena tímu, po úvodnej analýze prídu na rad črty (ang. features), ktorými by sme chceli zaujať. Vo veci pl{novania rizík sa chceme rizik{m v prvom rade vyhnúť, na ich riešenie n{m pomôže systém pl{novač úloh, podrobné zozn{menie sa s technológiami, ktoré budeme používať, porovn{vanie s existujúcim systémom, prípadne komunik{cia s minuloročným tímom. Keďže pracujeme s existujúcim už rozbehnutým systémom, naše pôvodné pl{ny a odhady môžu byť dosť nepresné, budeme však fungovať so zoznamom používajúcom najmä heuristiku najproblematickejších miest. Vzhľadom na skúsenosti minuloročných riešiteľov projektu rozvrhov očak{vame aj spätnú väzbu zo strany používateľov systému. V r{mci tímu už pozn{me isté kvality jednotlivých jeho členov. Po začatí podrobnejšej pr{ce na projekte sa naše kvality viac vyhrania a budeme vedieť presnejšie a zodpovednejšie priraďovať riešiteľov pr{ve k tým úloh{m, kde budú môcť pracovať, čo najefektívnejšie.

8 Roman Mészároš Použitá literatúra 1. Bielikov{, M.: Softvérové inžinierstvo: Princípy a manažment. STU, Bratislava, 2000. 2. Boehm, B. et al.: Bayesian Analysis of Empirical Software Engineering Cost Models. In: IEEE Transactions on Software Engineering, IEEE Press, California, San Jose, 1999. 3. Canfora, G, Cerulo, L: Supporting Change Request Assignment in Open Source Development. In: Proceedings of the 2006 ACM symposium on Applied computing, ACM Press, New York, New York, 2006. 4. Deleris, A et al.: Simulation of Adaptive Project Management Analytics. In: Proceedings of the 2007 Winter Simulation Conference, IEEE Press, New Jersey, Piscataway, 2007. 5. Gantt, H.L.: Work, Wages and Profit. In: The Engineering Magazine, Hive Publishing Company, Pennsylvania, Easton, 1919. 6. Graves, T.: Predicting Fault Incidence Using Software Change History. In: IEEE Transactions on Software Engineering. IEEE Computer Society, New Mexico, Los Alamos, 2000. 7. Hassan, A.E.: The Top Ten List: dynamic fault prediction. In: Proceedings of the 21 st IEEE International Conference on Software Maintenance, IEEE Computer Society, Canada, Ontario, 2005. 8. Kelley. J.E., Walker, M.R.: Critical-path planning and scheduling. In: Proceedings of the Eastern Joint Computer Conference, ACM, Massachusetts, Boston (1959), 160 173. 9. Kim, S. et al.: Predicting Faults from Cached History. In: Proceedings of the 29 th international conference on Software Engineering. IEEE Computer Society, DC, Washington, 2007. 10. Milosevic, D.Z.: Project Management ToolBox: Tools and Techniques for the Practicing Project Manager. Colorado, Wiley, 2003. 11. Weiss, C., Premraj, R., Zimmermann, T., Zeller, A.: How Long Will It Take to Fix This Bug? In: Mining Software Repositories, ICSE Workshops MSR, Minnesota, Minneapolis, 2007. Annotation Plan changing plans Planning is a very important part of client developer communication and it takes part in every part of a project s lifecycle. It contains estimation of project effort, resources and schedule. There are plenty of different planning methods and their success is highly dependent on project type and the project team. This essay focuses on comparison of various planning and estimation strategies based on different project characteristics that have the greatest impact on them. Because estimates change all over the project life cycle, it is necessary to be prepared for changing the early estimates. This essay describes various changes and risks, which result in changing of plans and estimations and following the plans schedule on the project s result. The last part of this essay is devoted to application of the whole analysis to our team project.