Konvence » Historie » Verze 15
Jan Ulrych, 2024-02-26 18:51
1 | 1 | Adam Šmucr | h1. Konvence |
---|---|---|---|
2 | 2 | Adam Šmucr | |
3 | 8 | Adam Šmucr | Tento dokument obsahuje dohodnutá týmová pravidla, které je nutné dodržovat po celou dobu práce na projektu. Byla vymyšlena a odsouhlasena všemi členy týmu na první společné schůzce. |
4 | Obsahuje konvence týkající se softwarového procesu, vývoje cílové aplikace, projektové dokumentace i interních záležitostí týmu. V případě, že v průběhu práce na projektu dojde tým k závěru, že některá z konvencí není přínosná, je možné ji v rámci některé z interních schůzek změnit. |
||
5 | 2 | Adam Šmucr | |
6 | h2. Softwarový proces |
||
7 | 3 | Adam Šmucr | |
8 | 4 | Adam Šmucr | *Standardní délka iterace je 2 týdny* a vždy začíná v *ÚTERÝ*. Délka může být upravena před začátkem iterace. |
9 | Každý týden bude probíhat *_Standup_* (interní týmová schůzka) a to v *PONDĚLÍ od 19h online*. Každý druhý týden má tato schůzka i funkci _Plánovací a retrospektivní_. |
||
10 | Na konci iterace probíhá *_Demo se zákazníkem_* a *_Schůzka s mentorem_* v tomto preferovaném pořadí. |
||
11 | Preferovaný den pro tyto schůzky je *ÚTERÝ*, přesné datum a čas se bude domlouvat operativně dle času zúčastněných osob. |
||
12 | 5 | Adam Šmucr | |
13 | h2. Práce v ALM nástrojích |
||
14 | |||
15 | 6 | Adam Šmucr | Při práci na projektu budou používány nástroje *Redmine* a *Gitlab* pro komunikaci týmu bude použit interní *Discord*. Pro správu dokumentů pak *Google Drive*. |
16 | 12 | Adam Šmucr | |
17 | h3. Redmine |
||
18 | |||
19 | 6 | Adam Šmucr | Na plánovací schůzce budou týmově navrženy úkoly pro další iteraci. Některé budou přiřazeny zodpovědným osobám (klíčové, pro konkrétní osobu) a ostatní je možné si přiřadit během iterace. Každý člen týmu by měl mít přehled o odpracovaných hodinách a dle toho si vybrat další úkol. |
20 | 9 | Adam Šmucr | |
21 | *Za vytváření úkolů v Redmine zodpovídá Team Leader* s výjimkou bugů, které může vytvořit kdokoliv. Typy úkolů jsou popsány následovně. |
||
22 | 10 | Adam Šmucr | |
23 | 9 | Adam Šmucr | *Typy úkolů a jejich popis* |
24 | * Feature - hlavní funkcionalita aplikace |
||
25 | * Task - úkoly vyplývající z Feature, analýzy |
||
26 | * Support - podpůrné činnosti projektu (administrativa, dokumentace, schůzky) |
||
27 | 11 | Adam Šmucr | * Bug - nalezený defekt (měl by obsahovat screen a detailní popis) |
28 | 9 | Adam Šmucr | * Risk - analyzované riziko |
29 | 11 | Adam Šmucr | |
30 | *Používané kategorie úkolů* |
||
31 | * Analýza - zkoumání technologie, architektury, možného řešení |
||
32 | * Dokumentace - všechny dokumenty odevzdávané zadavateli |
||
33 | * Schůzka - fyzická nebo online schůzka zainteresovaných stran |
||
34 | * Programování - vývojová činnost související s aplikací, testování |
||
35 | * Administrativa - všechny dokumenty související s procesem odevzdávané mentorovi |
||
36 | |||
37 | 15 | Jan Ulrych | *Životní cyklus vývojových úkolů* |
38 | 11 | Adam Šmucr | * New - nový úkol, nemusí být časově ohodnocen, není přiřazen do iterace |
39 | * Accepted - časově ohodnocený úkol, zaplánován do některé z iterací |
||
40 | * Assigned - přiřazený úkol někomu ze členů týmu, pracuje na něm |
||
41 | 13 | Adam Šmucr | * Resolved - přiřazený člen považuje úkol za dokončený na své _Feature_ větvi |
42 | 1 | Adam Šmucr | * Verified - úkol je zkontrolován, provedeno code review a je v _dev_ větvi |
43 | 15 | Jan Ulrych | * Closed - úkol je dokončen |
44 | |||
45 | *Životní cyklus nevývojových úkolů* |
||
46 | * New - nový úkol, nemusí být časově ohodnocen, není přiřazen do iterace |
||
47 | * Accepted - časově ohodnocený úkol, zaplánován do některé z iterací |
||
48 | * Assigned - přiřazený úkol někomu ze členů týmu, pracuje na něm |
||
49 | * Resolved - přiřazený člen považuje úkol za dokončený |
||
50 | 11 | Adam Šmucr | * Closed - úkol je dokončen |
51 | 12 | Adam Šmucr | |
52 | 13 | Adam Šmucr | *Nejpozději na konci pracovního dne si každý člen týmu zaznamená odvedený čas a pokrok*, může uvést komentář pokud k tomu existuje důvod. |
53 | 1 | Adam Šmucr | |
54 | h3. Gitlab |
||
55 | |||
56 | 13 | Adam Šmucr | Budou vytvořeny dvě důležité větvě - *main* a *dev*. Následně pro každou _Feature_ vznikne separátní větev, kde bude proveden merge do větve _dev_ po dokončení úkolu. |
57 | Před každou _Demo schůzkou se zadavatelem_ bude proveden merge do větvě main. Tag je uváděn ve tvaru *<číslo TSP>.<iterace>.<0>* |
||
58 | Každý člen týmu zodpovídá za své provedené merge requesty a řeší na nich vzniklé problémy. |
||
59 | |||
60 | Commit message obsahuje odkaz na úkol, ke kterému se vztahuje a popis v angličtině. |
||
61 | |||
62 | h2. Programové a dokumentační konvence |
||
63 | |||
64 | Názvy proměnných, tříd a komentáře jsou vedeny v angličtině. |
||
65 | Komentáře jsou uvedeny u všech metod/funkcí, kde mají smysl (funkčnost není na první pohled jasná). |
||
66 | 12 | Adam Šmucr | Code review dělá pokaždé někdo jiný než kdo danou funkci naprogramoval. |
67 | 13 | Adam Šmucr | |
68 | 14 | Adam Šmucr | Dokumentace pro *zadavatele* je vedena v *ANGLIČTINĚ*. |
69 | Dokumenty *týkající se procesu* jsou v *ČEŠTINĚ*. |
||
70 | |||
71 | Většina dokumentů jsou ukládána na _Google Drive_. Zápisy ze schůzek jsou vedeny na _Wiki_, stejně jako dokumenty kterým to definuje popis úkolu. |