Iterace 3 zadavatel dotazy 2 » Historie » Verze 3
Štěpán Faragula, 2025-04-01 09:54
otázky na schůzce
1 | 1 | Štěpán Faragula | h1. 3. iterace - Schůzka se zadavatelem ohledně technických dotazů 2 |
---|---|---|---|
2 | |||
3 | ---- |
||
4 | |||
5 | h3. Informace o schůzce |
||
6 | |||
7 | * *Datum: 1.4.2025* |
||
8 | * *Čas: 10:00* |
||
9 | * *Forma: online přes Teams* |
||
10 | |||
11 | h3. Účastníci: |
||
12 | |||
13 | * Bc. Jakub Pavlíček, jpvlck@students.zcu.cz |
||
14 | * Bc. Štěpán Faragula, farag844@students.zcu.cz |
||
15 | |||
16 | h3. Poznámky ze schůzky |
||
17 | |||
18 | Zeptali jsme se na dotazy: |
||
19 | 3 | Štěpán Faragula | # Jak máme uložit data do tabulky <code>project</code>? Je <code>startDate</code> datum prvního commitu? |
20 | ** Ano, <code>startDate</code> je datum prvního commitu. |
||
21 | ** Ne každé ALM má svůj vlastní koncept pro startdate, máme vzít jakékoliv první datum čehokoliv (první commit / první změna v projektu čehokoliv) |
||
22 | *** <code>startDate</code> máme uložit na konci dolování až po tom, co budeme znát všechny <code>work_item</code> a <code>configuration</code> |
||
23 | *** Na konci vybereme položku s nejnižší hodnotou |
||
24 | # V tabulce <code>work_unit</code> je atribut <code>progress</code> nastavený na NOT NULL, jakou hodnotu zde máme nastavit pro GitHub pumpu? |
||
25 | ** Máme nastavit 0, tak jak děláme teď |
||
26 | # Máme dodržovat strukturu dat v ukázkových datech? Např. že URL GitHub projektu končí koncovkou <code>.git</code> či název <code>project_instance</code> obsahuje i datum. |
||
27 | ** Je to jedno, ale u Git pumpy to dává smysl, u GitHub pumpy to může být jinak |
||
28 | *** Dříve bylo nutné zadat .git kvůli knihovně JGit, protože to procházelo Git pumpou, když se repository muselo stáhnout na lokál |
||
29 | ** Datum u <code>project_instance</code> = datum těžení (nemusíme vyplňovat, sloužilo pro debug, můžeme ignorovat) |
||
30 | # Můžeme v tabulce <code>project_instance</code> do atributu <code>description</code> dát text z About na GitHubu? Tento text je uložen v atributu <code>description</code> tabulky <code>project</code>, takže bychom ho ukládali i zde (tj. <code>project_instance.description</code> by byl stejný jako <code>project.description</code>). |
||
31 | ** Může být v obojím |
||
32 | ** Otázka, jestli dávat podle délky (nejdelší popis je správný), nebo appendovat -> víc detailnější |
||
33 | *** Na <code>description</code> nebude žádná analýza viset, jde spíš o orientační záznam a lepší vědět co nejvíce informací (appendování) |
||
34 | ** <code>project_instance<code> může mít každá jiný název, u těch se vezme nejdelší možné jméno (dobrá heuristika, fungovalo dříve) |
||
35 | # V tabulce <code>role</code> jsou uloženy role (v případě GitHub repozitáře), které se nepoužívají, např. documenter, tester apod., máme je tedy také vždy vytvářet? Můžeme v GitHub pumpě mapovat roli <code>Contributor</code> na SPADe <code>Developer</code>? |
||
36 | ** Ano, je to tam z důvodu, když se chtějí lidi po těžení přemapovat |
||
37 | *** Člověk reálně ví, jaké role zastává a měli bysme umožnit přemapování dat, když už budou v databázi a budou se nad nimi dělat analýzy |
||
38 | ** I u ostatních enumů bysme měli vytvářet všechny |
||
39 | *** Dává smysl u stavů, resolutions |
||
40 | *** Priority nejspíše ne |
||
41 | ** Contributor a developer dává smysl |
||
42 | # Máme počítat s tím, že Git pumpa se bude spouštět také na lokálním repozitáři, tj. bez zadaného URL? |
||
43 | ** Není pro to rozumný usecase, i kdyby chtěl uživatel těžit na lokále, tak repozitář spíš zvěřejní online a vytěží |
||
44 | *** Důvod: na lokále jsou necommitované změny a ty nás nezajímají |
||
45 | 1 | Štěpán Faragula | # U Git pumpy, do jaké tabulky máme ukládat změny souborů (tj. smazán, přidán, upraven)? Co všechno by měla Git pumpa umět? Naše zatím umí dolovat: <code>Identity</code>, <code>Person</code>, <code>Commit</code>, <code>Tag</code>, <code>Branch</code>, <code>Project</code>, <code>ProjectInstance</code> a <code>ToolInstance</code>. |
46 | 3 | Štěpán Faragula | ** work_item_change -> atribut name |
47 | ** U čistě gitové pumpy není nic jiného co by se dalo těžit, takhle stačí |
||
48 | ** Configuration person relation se dá najít přes parsování řádků na commit message |
||
49 | *** Lze se spoléhat na formát, kde je na konci commitu je "Reviewed by: ...", můžeme splitnout dvojtečkou a vzít člověka |
||
50 | # V GitHub pumpě, jak máme těžit tabulky <code>iteration</code>, <code>phase</code>, <code>milestone</code>? U <code>iteration</code> a <code>phase</code> jsou v ukázkových datech stejná data, proč? V <code>milestone</code> není nic, proč? Když GitHub milestone nemá žádný issues, máme milestone i tak těžit? |
||
51 | ** Data u <code>phase</code> a <code>milestone</code> jsou stejné kvůli testům |
||
52 | ** U těchto dvou položek je lepší je dávat do iterace, protože to více odpovídá skutečnému kontextu. |
||
53 | *** Vše dáme do iterace, zbytečné dávat data do obou |
||
54 | ** Milestones neřešíme vůbec |
||
55 | *** Velmi zřídka se dá najít koncept v ALM který by jim odpovídal |
||
56 | *** Spíše odpovídá popisu na Wiki a to je moc složitý koncept těžení |
||
57 | *** Uživatel si dodefinuje sám |
||
58 | ** Když github nemá issues, i tak to máme těžit, je to zajímavá informace |
||
59 | 1 | Štěpán Faragula | # Když ukládáme časy do tabulek, máme vždy používat časová pásma těch akcí, nebo naše? Tj. <code>issue.createdAt() = "Mon Jun 01 19:10:43 CEST 2020"</code> -> <code>“2020-06-01T19:10:43Z"</code> s Timezone, nebo <code>"2020-06-01T17:10:43Z"</code> bez Timezone (tj. -2 hodiny). |
60 | 3 | Štěpán Faragula | ** Bez timezone a vše máme převést na UTC |
61 | ** Lidé mohou commitovat z různých timezone, takže je potřeba standarzidovat |
||
62 | 1 | Štěpán Faragula | # Jaký význam má relace mezi <code>work_item</code> a <code>configuration</code>? |
63 | 3 | Štěpán Faragula | ** id w_i = id configuration |
64 | *** Relace 1:1 |
||
65 | ** configuration je jeden z typů work itemu (speciální typ work_item) |
||
66 | *** configuration je stejné rozšíření wor_itemu stejně jako je work_unit rozšíření work_itemu |
||
67 | *** configuration obená = změna ticketů/artefaktů |
||
68 | *** commited = worklog (kdy se vytvořil záznam, kdy se strávil ten čas, to může být i zpětně) |
||
69 | ** v PDF je hierarchická struktura mezi configuration |
||
70 | 2 | Štěpán Faragula | |
71 | 1 | Štěpán Faragula | ---- |
72 | |||
73 | Autor: Štěpán Faragula |
||
74 | Datum: 1.4.2025 |
||
75 | Stav: hotový |