Software project management Bohumír Zoubek, Vladimír Rytíř
[email protected],
[email protected] http://www.profinit.eu/podpora-univerzit/univerzitni-vyuka.html
Kde se s projektovým řízením potkáme?
Softwarový proces
? ?
?
Softwarový proces
Převzato z http://csse.usc.edu/csse/research/CORADMO/
Co to je vlastně je?
PM dle SWEBOK
PM dle NASA
o Začátek plánování projektu, porozumění obsahu práce o Definování technického přístupu – výběr a adaptace vhodného modelu životního cyklu – výběr vhodných aktivit, metod a produktů
o Dokončení plánu projektu, definování přístupu k vedení – organizace, odhadování, časové plánování, …
o Provádění projektu (vykonání SW plánu projektu) – monitorování, řízení (Control), údržba SW plánu, …
o Uzavření projektu
PM dle Sybase
o Initiation – Definice problému a možných řešení – Naplánování projektu
o Execution – Provádění plánu – Monitorování a řízení vývoje (progress)
o Closeout – Ukončení projektu
Projektové řízení v Profinitu
Kontext o o o o
Projekty 5-10 000 MD/rok Projekt? Aktuálně 58 běžících projektů Finance, telco a public – Softwarové systémy – Datové sklady a BI
o Cca. 250 lidí na projektech
Odpovědnosti za projekt Zákazník
Profinit
ZT 1
Projektový tým
ZT 2
ZT 3
Projektový tým PM
TL
Analytik
Vývojář Tester …
Odpovědnosti PM/TL o Vůči Profinitu – – – –
Rozsah Čas Kvalita Tým
o Vůči zákazníkovi – Nutno dohodnout s DM nebo PM (v případě TL) – KAM = Key Account Manager – DM = Delivery Manager
Inicializace projektu
Inicializace projektu
o připraví detailní plán projektu, komunikační matici o spolu s DM připraví kick-off u zákazníka o u vyjmenovaných skupin zakázek (integrační ETL v TO2, instalace ve VF) zakládá a udržuje bugy v obchodní bugzille (včetně nastavení správného stavu (FIXED při realizaci, CLOSED po akceptaci a fakturaci)) o založí projektový bug, projektové stránky, projektový adresář v svn atd. - viz postup na podstránce "Rozjetí projektu„ o Ukázka strankaProjektu.PNG
Průběh projektu – 1/4 o na schůzkách se zákazníkem dělá zápis (pokud není dohodnuto jinak), u každého úkolu musí být uvedena zodpovědná osoba a termín splnění o u jakýchkoliv dalších požadavků na součinnost vše dávat písemně včetně termínu splnění, při nesplnění eskalovat o průběžně evidovat neplnění součinnosti ze strany zákazníka, problémy, které nám navyšují pracnost atd. a toto včas komunikovat s PM na straně zákazníka, eskalovat na projektových schůzkách u zákazníka o v případě požadavku započetí práce před vystavením objednávky nebo smlouvy, řešit toto s KAM/DM a domluvit se na dalším postupu, např. zajistit potvrzení od vlastníka budgetu započetí prací v určitém rozsahu a potvrzení zaplacení těchto prací – toto řešit i se zákazníkem předem, ne po započetí nebo dokončení požadované činnosti
Průběh projektu – 2/4 o u každého nového požadavku zákazníka nebo změny požadavku v rámci projektu – zvážit zda vyplývá z našich závazků a odhadnout jeho pracnost – pokud z našich závazků nevyplývá, dohodnout se s KAM/DM, zda toto uděláme v rámci dobrých vztahů či jiných důvodů nebo budeme trvat na ChR – pokud to v dané situaci dává smysl: založit obchodní bug, vytvořit nabídku a nechat schválit KAM/DM – toto řešit se KAM/DM i zákazníkem předem, ne po započetí nebo dokončení požadované činnosti
o udržuje projektové stránky (jednoduché, stačí odkazy na důležité dokumenty, systémy atd.) o zakládá etapy projektu v Profisu – etapy musí být navrženy tak, aby bylo možné porovnat odhadované náklady s reálnými, tj. strukturovat podle nabídek, objednávek (tam kde je to rozumné)
o schvaluje utilizaci na svém projektu, zároveň kontroluje, zda utilizace v Profisu odpovídá plánu
Průběh projektu – 3/4 o udržuje souhrnný report projektu, aktualizace 1x týdně před interním status meetingem o granularita podle granularity odhadů pro nabídku; pokud to dává smysl, tak klidně rozvrhnout jinak o z reportu musí být vidět zejména – – – – – – – –
stav, ve kterém se nacházíme milníky rizika původně odhadovaná pracnost (a náklady) odpracovaný čas (a náklady) aktuální odhad zbývající pracnosti (a nákladů) dohodnuté a reálné termíny plánované rozložení čerpání kapacit konzultantů v průběhu projektu
Průběh projektu – 4/4
o identifikovat (riziko) nárůstu pracnosti a včas řešit s KAM/DM o reviduje WIP reporty (ukázka viz WIP RoCPj_JOKrev.xlsx) a posílá v kopii také na SAMa a KAMa (optimálně by mělo stačit překopírovat do WIPu několik čísel z reportu o zodpovídá za profitabilitu projektu, tj. sleduje vše i z pohledu financí, nejen MD o před interním projektovým statusem provede přípravu plnění výše uvedených bodů
Závěr projektu o zodpovídá za rozjetí podpory (může (částečně) předat na ...) – – – – –
dotažení smlouvy na podporu nastudování parametrů podpory domluvu zdrojů, plánování služeb, předání informací konzultantům držícím podporu pravidelný reporting zákazníkovi i interně splnění interních nároků na zajištění podpory
o zajišťuje akceptaci a fakturaci na základě nabídky (platební milníky, etapy projektu, akceptační kritéria) nebo dalších dohod se zákazníkem o uzavírá projekty a jejich etapy v Profisu (nemělo by se stát, že na projekt, který vyhodnotíme z pohledu ziskovosti, někdo za několik měsíců vykáže práci) o vytvoří informace o historii projektu, zejména – srovnání odhadovaných a reálných nákladů – problémy, které ovlivnili pracnost a na které by se nemělo zapomínat v budoucích nabídkách – informace o specifikách daných prostředím zákazníka a jak toto ovlivňuje pracnost
Zákazník
Zákazník o Dává nám práci o Zákazníci jsou různí o Mají různé důvody pro svoje chování – KPI – Košile bližší než kabát –…
o Nechce problémy o Místní trh IT je malý
Tlak ze strany zákazníka
Co s tím? „Čekal bych, že jako profesionálové v IT ;-) zajistíte, že to bude v pořádku.“
o Na všechno nemusíte odpovídat hned – „Prověřím situaci a dám Vám vědět.“
o Na něco nemůžete odpovědět bez toho, aniž byste se poradili s KAM, DM, PM, … – „Není v mé pravomoci toto rozhodnout…“
o Na něco můžete jen říct – „Velmi mě mrzí nepříjemnosti, které Vám vznikly a bude se snažit, aby se v budoucnu neopakovaly.“
Co s tím? „Bohužel jsme se na minulém statusu projektu zmýlili a věci, které jsme schválili jako změnová řízení, nyní od Vás budeme požadovat v rámci rozsahu projektu.“
o Zhluboka se nadechnout o Nevyjadřovat se hned o Nebrat si to osobně
Den projektového manažera
S kým se projektový manažer setkává?
Kdo je zákazník?
Bezpečnost Držitel budgetu Solution manager Infrastruktura Business Architektura Business Zadavatel Uživatel Projektový vedoucí Uživatel Vlastník procesu
S čím projektový manažer pracuje?
Nástroje projektového manažera o Nabídka -> Cenotvorba a termíny – Odhady a předpoklady, zdroje, milníky, harmonogram, nabídka
o Plán projektu, WBS – Menší úkoly 1-10 MD – Sleduji i tzv. earned value
o Vykazování (na jaké bázi?) – Hlídání odvedené práce – Kontrola zbývající práce, komentáře k výkyvům – Zdroje
o Řízení lidí – Jasné a srozumitelné úkoly na několik dní dopředu – Když nemám co dělat, tak se ozvu
Co Vám projektový plán pověděl? o Dekomponovaný rozsah (WBS) o Harmonogram a milníky (naše i součinnost) o Zdroje – Lidské (mám jich dostatek?) – Počítače, licence, stůl, židle, …
o Aktuální stav projektu! – Povídání, sedět v jedné místnosti, účast na schůzkách, obcházet lidi, SCRUM… – Rizika
o Původní odhady o Seznam CR o Seznam Favours
Nesklouznout k mechanice Používat zdravý rozum
Jaký dopad má stav projektu na cash flow společnosti?
Dopad stavu projektu na Cash flow společnosti RFI -> Odpověď -> RFP -> Nabídka (Rámcová smlouva) -> Objednávka -> Zápisy ze schůzek -> Akceptační protokol Platební kalendář o splátka ve výši 40% z ceny díla při zahájení prací, o splátka ve výši 20% z ceny díla při předání k uživatelským testům o splátka ve výši 40% z ceny díla po podepsání protokolu o akceptaci díla
Fakturace o Fakturace proběhne na základě podepsaného akceptačního protokolu. Splatnost řádně vystavených a schválených faktur navrhujeme 30 kalendářních dní.
S kým projektový manažer pracuje?
Tým a práce s ním
o Pocit zodpovědnosti i za to, co dělají členové vašeho týmu o A zároveň ať mají všichni v týmu pocit zodpovědnosti za úspěch projektu o Probírat s týmem všechny aspekty projektu, pokud je to zajímá
Tým a práce s ním
o Rozdělovat úkoly o Kontrolovat jejich splnění
Tým a práce s ním
o Znát „svoje“ lidi, jejich silné a slabé stránky o Snažit se o profesní rozvoj svěřených lidí (budete mít méně práce ) o Zajímat se o to, jak je práce baví, co by chtěli dělat, dát jim prostor k růstu o Zajímat se i o to, co dělají mimo práci o Občas nějaké neformální setkání pomůže
Komunikace se zákazníkem
o Prezentovat stav o Komunikovat rizika („plechovat si pozadí“) o Řešit sporné body
Schůzky o Na schůzku vždy připraven/a! o Naučte se základní schůzovací mechaniku. – Na začátku říct agendu a cíle, moderovat schůzi, dělat zápis (pozor na schvalování bez termínů). – Nepřetahovat čas.
o Nebát se říci „nerozumím agendě a cílům schůzky“. o Nenechávat otevřené body na status meetingy a „velké“ schůzky, vše dohadovat efektivně v co nejmenším kruhu. o Neplánujte si moc schůzek za sebou, nebudete si dost pamatovat.
Rizika
Kdy to všechno máte stíhat?
Metodiky vývoje
Modely SDLC
Tradiční vs. Agilní
S čím hýbu, pokud mi zákazník zafixuje všechny tři oblasti?
Co si dnes zapamatovat?
Stačí 8 bodů!
PM v kostce o Musíte vytvořit a udržovat plán s výhledem do dostatečně daleké budoucnosti o Musíte mít jasno v – termínech a – závazcích vašich a třetích stran
o Vaši lidé musí vždy přesně vědět, – co mají dělat v nejbližších dnech (cca týden), – aby si mohli sami zorganizovat práci
PM v kostce o Musíte dbát o efektivitu práce vlastních lidí a mít vše dobře zorganizované, měřit a přemýšlet o ekonomice projektu, poučit se rychle z vlastních a cizích chyb o Musíte rozumět systému, chápat jeho složitost a umět se rozhodovat, když vás zákazník tlačí na nějaké schůzi k závazku na rozsah, termíny, … o Musíte komunikovat se zákazníkem, chodit na schůze, psát zápisy, předávat protokoly, … o Musíte mít přehled a evidenci všech problémů a rizik a názor na jejich řešení resp. eliminaci o Musíte být stále na pozoru a hlídat rozsah !
Materiály
Otázky?