Tarkvaratehnoloogia praktikumide etapid

Allikas: Lambda
Mine navigeerimisribale Mine otsikasti

Siintoodud etappide sisu töö reaalse töö käigus veidi muutub, kuid on üldjoontes järgmine:

1. päev: ülesande valik, soovitud tulemuse kirjeldus, keskkonna ülesseadmine, katse-html lehe tegemine

Päeva eesmärk on (a) valida andmestik ja otsustada, mida meie rakendus sellega teeks, (b) töövahendite installeerimine ja katsetamine.

kohe algul ei ole seda vaja.

  • Otsi andmestik, uuri, kas see on sulle kättesaadav/töödeldav.
  • Otsusta, kuidas seda avalikkusele ilusamini kuvada ja millised filtrid/valikud lasta kasutajatel teha.
  • Kirjuta oma kavadest väike memo markdowni kasutades.
  • Installeeri endale putty ja winscp või analoogilised vajalikud vahendid serverisse sisselogimiseks ja failide kopeerimiseks.
  • Alusta oma rakenduse veebilehe tegemist esmaste html-pisikatsetustega omaenda arvutis.
  • Logi katseks dijkstra serverisse ja püüa sinna mõni fail veebiserveri alla kopeerida.
  • Tee soovitavalt konto digitaloceani serverisse ja githubi koodihoidlasse, lae viimasesse sinna faile. Digitaloceani kontoga on tööd (mis on soovitav :) lihtsam alternatiiv on kasutada ainult dijkstra serverit.


Kui Pythonit ja Flaski ei õnnestu enda arvutisse installeerida, saab nendega töötada ka üle võrgu otse dijkstra või digitaloceani serveris.

Päeva lõpuks teeb iga grupp paariminutise ettekande, kus on öeldud (a) grupiliikmete nimed, (b) mis andmekogu ja ülesanne valiti, (b) mis töövahendid käima saadi ja kuhu õnnestus sisse logida/andmeid kopeerida, (c) kuhu aeg peamiselt kulus ja mis olid ootamatused. (d) mis on plaan järgmiseks korraks.

2. päev: andmete töötlemine ja baasi panek, esmase html lehe tegemine serveris

Päeva eesmärk on (a) katsetada tehnoloogiaid: python ja flask, sqlite (b) teha oma andmebaas ja laadida andmed oma andmebaasi (c) teha katseid päringutega andmebaasist (d) ideaalis realiseerida juba mingi mõttekas osa süsteemist. Päeva lõpuks teeb iga grupp ühe-kahe minutise ettekande, kus on öeldud (a) grupiliikmete nimed, (b) mis käima saadi (c) kuhu aeg peamiselt kulus ja mis olid ootamatused. (d) mis on plaan järgmiseks korraks.

See, mis sa päeva lõpuks (ja kuidas) realiseerid, sõltub sellest, mis tehnoloogiad sa käima saad (kas saad flaski ja pythoni ja sqlite käima, kas oled juba saanud sisse logida ja tegutseda jne). Kui sa mingite tehnoloogiatega hätta jääd, vali alternatiivne lahendus, millega asjad välja tulevad.

Kui andmete saamine andmebaasi osutub keeruliseks (sest näiteks sa ei saanud Pythonit ja Flaski ja sqlite oma arvutisse, serverisse ei õnnestu või on keeruline sisse logida vms) siis on OK teha alternatiivselt lihtsamaid ülesandeid ilma andmebaasita:

  • Andmete sqlite sisestamise asemel võid panna andmed otse veebilehele või csv faili, nii et neid serveris eraldi ei töödeldagi ja kuvamist ja valikuid teeb javascript otse veebilehel. Loe ja kasuta õpetust ja näitekoodi
  • Html lehe digitalocean serverisse panemise asemel kas paned nad tehnikaülikooli dijkstra serverisse või jätkad html lehe arendamist oma arvutis failidena, mida brauser siis kuvab.

3. päev: veebilehe kasutajaliidese tegemine ja seostamine andmebaasiga

Siit alates on kolm tegevussuunda kursuse lõpuni:

  • Brauserist Flaskiga pythoni programmilt andmete küsimine.
  • Andmete arusaadav kuvamine.
  • Kasutajaliidese parandamine.

4. päev: kujunduse parandamine, testimine, arenduse jätk

5. päev: edasiarenduse planeerimine, vigade ja puuduste parandamine, ettekanne

Päeva põhieesmärk on edasiarenduse planeerimine: mida saaks/tasuks süsteemi juurde teha, kes ja kui palju neid täiendusi kasutaks, mis oleks tehnoloogiline/arhitektuuriline plaan edasiarenduse jaoks, mis on ajalise ja rahalised hinnangud, milline oleks projektiplaani kondikava. Edasiarenduse kontekstiks oleks selle tellimine, mitte teiepoolne tegelik ehitamine.

Ülejäänud aeg kasuta oma rakenduse täiustamisele: tee need asjad korda, mis jäid puudulikuks.

Kursuse lõpus teevad kõik grupid veidi pikema presentatsiooni, ca 15 minutit:

  • kui kaugele te oma rakendusega jõudsite, sh reaalne demo,
  • mis oli algses plaanis, aga mis tingimata päris lõpp-rakendusse veel ei jõudnud,
  • ettekanne oma edasiarenduse plaanist ja selle lühike arutelu.