›_ ebskola.lv
← Tēma 5.2 →

5.1 Projekta specifikācija un laika plānošana

Stundas uzdevums: Definēt savas spēles tehnisko specifikāciju (MVP) un izveidot detalizētu darbu plānu (Backlog) nākamajām 5 dubultstundām.

1.3.1. Plāno un pamato sava darba gaitu; 1.5.1. Formulē darba uzdevumu un sasniedzamo rezultātu.

70 min darba sadalījums: 1. uzdevums (~20 min) - atjauno teorijas piemēru vai minimālo prototipu; 2. uzdevums (~25 min) - pielieto to galvenajā uzdevumā; 3. uzdevums (~25 min) - pārbaudi rezultātu, izlabo kļūdas un pieraksti, kas strādā. Papildus/4. līmeņa uzdevums ir paredzēts tikai tad, ja pamatdarbs ir pabeigts.

Pirms sāc: izmanto iepriekš apgūto un šīs lapas teorijas/koda piemērus. Ja vajadzīga jauna komanda vai rīks, vispirms atrodi tās paraugu teorijas sadaļā.

Teorija: MVP un Agile plānošana

Profesionāļi izmanto MVP (Minimum Viable Product) koncepciju - tas ir vienkāršākais iespējamais produkts, kas strādā.

# Roadmap.md piemērs
## 1. nedēļa - Mehānika
- [x] Spēlētāja kustība
- [ ] Sadursmju noteikšana
## 2. nedēļa - Saturs
- [ ] Pretinieki, līmeņi
## 3. nedēļa - Polish
- [ ] Skaņa, animācijas, publicēšana

Praktiskie uzdevumi

1. uzdevums - Izpēti pamatus

Atpazīsti šīs stundas galveno ideju un sasaisti to ar gala projektu Pilnvērtīga spēle internetā.

  1. Atver teorijas sadaļu un izlasi "Must-have" un "Nice-to-have" konceptus.
  2. Pieraksti 3 "Must-have" prasmes savai spēlei - bez kurām spēli nevar izspēlēt.
  3. Pieraksti 3 "Nice-to-have" prasmes - ko pievienotu, ja paliek laiks.
  4. Sadalī atlikušās 5 stundas: kādā stundā ko paveiksi (kustība, dizains, loģika, polish, publicēšana).
  5. Atver index.html vai jaunu failu roadmap.html un izveido <ul> ar 5 plānošanas soļiem.
  6. Iezīmē katru soli ar atbilstošu datumu vai stundas numuru.
  7. Saglabā un atver pārlūkā - pārbaudi, ka saraksts ir redzams.
  8. Parādi plānu klasesbiedram - pajautā, vai tas šķiet reālistisks.
  9. Salabo vismaz vienu pārāk ambiciozu vai pārāk vāju soli, balstoties uz atsauksmi.
  10. Pieraksti vienu secinājumu: kāpēc svarīgi sākt ar MVP (minimālu strādājošu spēli) pirms uzlabojumiem.

2. uzdevums - Izveido risinājumu

Izmanto šīs stundas prasmi nelielā, strādājošā projekta daļā.

  1. Atver tēmas projekta mapi un atrodi failu vai scēnu, kurā šīs stundas prasme loģiski iederas projektā Pilnvērtīga spēle internetā.
  2. Izveido rezerves kopiju ar Git commit vai pārliecinies, ka darba koks ir saprotamā stāvoklī.
  3. Pievieno nelielu funkciju, sadaļu vai elementu index.html, style.css vai script.js, izmantojot teorijas piemēru kā sākumpunktu.
  4. Nosauc jaunos mainīgos skaidri un ikdienišķi, piemēram, par punktiem, laiku, klases grupu, pogu vai rezultātu.
  5. Ievieto risinājumu tur, kur tas būs lietotājam redzams vai spēles loģikai izmantojams, nevis atsevišķā nesavienotā failā.
  6. Pārbaudi, ka risinājums netraucē iepriekšējām stundām izveidoto funkcionalitāti.
  7. Pievieno vienu lietotājam saprotamu tekstu vai izvadi, kas parāda, ka jaunā daļa strādā.
  8. Atver lapu pārlūkā un pārbaudi devtools konsoli.
  9. Salabo pirmo kļūdu, kuru pamani, pirms pievieno nākamo uzlabojumu.
  10. veic Commit ar īsu ziņu, kurā minēts, kā šī prasme tika pielietota gala projektā.

3. uzdevums - Pārbaudi un uzlabo

Pārbaudi risinājumu, salīdzini rezultātus un atrodi, ko uzlabot.

  1. Atver savu spēles projektu un pārliecinies, ka visi "Must-have" elementi no roadmap ir ieviesti.
  2. Parādi lapu klasesbiedram - lai viņš pārbauda, vai spēli var izspēlēt bez papildu instrukcijām.
  3. Pieraksti vienu konkrētu atsauksmi vai kļūdu, ko klasesbiedrs pamanīja.
  4. Novērtē savu roadmap: ko paveici, kas vēl jādara, kur esi priekšā plānam.
  5. Atjaunini roadmap failu - atzīmē paveiktos soļus.
  6. Salabo vienu atrasto problēmu spēles kodā.
  7. Pārbaudi konsoli - nav jābūt kļūdas ziņojumiem.
  8. Veic git commit -m "Update roadmap and fix one issue".
  9. Atver GitHub.com - pārbaudi, ka commits vēsturē atspoguļojas tavs progress.
  10. Pieraksti vienu secinājumu: vai tavs projekts ir "on track" un ko darīsi nākamajā stundā.

Papildu uzdevums - Izveido savu papildinājumu

Pievieno nelielu radošu uzlabojumu ar klases dzīves piemēru, nepārsniedzot apgūto vielu.

  1. Izvēlies vienu nelielu radošu papildinājumu, kas iederas projektā Pilnvērtīga spēle internetā un balstās tikai uz jau apgūto.
  2. Izvēlies klases dzīves motīvu, piemēram, zvana taimeri, pazudušu marķieri, grupu punktus vai pārāk entuziastisku prezentācijas pogu.
  3. Uzraksti papildinājuma mērķi vienā teikumā, lai tas nekļūtu par pārāk lielu projektu.
  4. Pievieno vienu jaunu mainīgo, tekstu, vizuālo elementu vai pārbaudes nosacījumu.
  5. Pārliecinies, ka papildinājums neizmanto jaunu bibliotēku vai komandu, kas šajā kursā vēl nav mācīta.
  6. Savieno papildinājumu ar jau esošo projekta daļu, nevis atstāj to kā atsevišķu demonstrāciju.
  7. Pārbaudi, vai lietotājs saprot, kas jādara, bez garas instrukcijas ekrānā.
  8. Atver lapu pārlūkā un pārbaudi devtools konsoli un pārbaudi, vai pamata funkcija joprojām darbojas.
  9. Palūdz klasesbiedram 30 sekundēs izmēģināt papildinājumu un pateikt, kas nav skaidrs.
  10. Pieraksti, ko atstāsi kā nākamo uzlabojumu, bet šodien nepievieno, lai projekts paliek stabils.

Zelta padomi plānošanai:

Piemērs: Spēles plāns (README.md)

# Spēle "Kosmosa Izdzīvotājs"
**Mērķis:** Izvairīties no asteroīdiem.

### MVP (Obligāti):
- [ ] Varoņa kustība pa kreisi/labi.
- [ ] Asteroīdi, kas krīt no augšas.
- [ ] Sadursmes noteikšana.
- [ ] Rezultāta (punktu) skaitītājs.

### Ekstras (Ja paspēs):
- [ ] Paātrināšanās pēc katrām 10 sekundēm.
- [ ] Lāzera skaņas efekts.
- [ ] Uzlabota grafika.
⬅ Tēmas apkopojums Nākamā stunda ➡