Tarkvaratehnoloogiad: erinevus redaktsioonide vahel

Allikas: Lambda
Mine navigeerimisribale Mine otsikasti
146. rida: 146. rida:
* Joel Spolsky: [http://www.joelonsoftware.com/articles/fog0000000043.html IT firma töökorraldus: 12 sammu]
* Joel Spolsky: [http://www.joelonsoftware.com/articles/fog0000000043.html IT firma töökorraldus: 12 sammu]
* Paul Reeves: [http://www.developerdotstar.com/mag/articles/reeves_design.html What is software design?] vana artikkel ja [http://www.developerdotstar.com/mag/articles/reeves_13yearslater.html What Is Software Design: 13 Years Later]
* Paul Reeves: [http://www.developerdotstar.com/mag/articles/reeves_design.html What is software design?] vana artikkel ja [http://www.developerdotstar.com/mag/articles/reeves_13yearslater.html What Is Software Design: 13 Years Later]
* Gnu manifestid [http://www.gnu.org/philosophy/free-sw.html The Free Software Definition] ja [https://www.gnu.org/licenses/license-list.en.html Gnu ülevaade litsentsidest]
* Gnu manifest [http://www.gnu.org/philosophy/free-sw.html The Free Software Definition] ja [https://www.gnu.org/licenses/license-list.en.html Gnu ülevaade litsentsidest]
* Fred Brooks 1986: [http://www.cs.nott.ac.uk/~cah/G51ISS/Documents/NoSilverBullet.html No Silver Bullet]
* Fred Brooks 1986: [http://www.cs.nott.ac.uk/~cah/G51ISS/Documents/NoSilverBullet.html No Silver Bullet]
* Random ramblings: [http://rondam.blogspot.com/2006/10/top-ten-geek-business-myths.html Top ten geek business myths]
* Random ramblings: [http://rondam.blogspot.com/2006/10/top-ten-geek-business-myths.html Top ten geek business myths]

Redaktsioon: 31. jaanuar 2019, kell 14:22

Ainekood: ITO8020
Link: http://www.lambda.ee/wiki/tarkvaratehnoloogiad
Link ÕISi https://ois.ttu.ee/aine/ito8020
Õppejõud: Tanel Tammet
Kontakt: tanel.tammet@ttu.ee, 6203457, ICT 426

Kursuse eesmärk

Mõista IT-süsteemide tehnoloogilist konstruktsiooni, arendusvahendeid ja arendusprotsesse.

Saada aru riistvara, tarkvara ja kommunikatsiooniprotokollide ehituse põhiideedest.

Mõista

  • tarkvara peamisi arhitektuurivariante,
  • erinevate programmeerimiskeelte olemust,
  • teekide ja raamistike kasutamise üldisi põhimõtteid,
  • erinevate arendusprotsesside ideid.

Maht, aeg, tulemus

Kursus lõpeb eksamiga. Eksam on kirjalik, kaks või enam tundi..

Hindamisel arvestatakse praktikumide tulemusi kaaluga 40% ja eksamitulemusi kaaluga 60%.

Praktilised ülesanded

Kursuse kodu-või-praktikumiülesandeks on reaalse rakenduse ehitamine, mis kuvab kasutajale lihtsa veebirakendusena mõistetavalt ja otsitavalt mingit reaalset andmestikku, mis on soovitavalt teie enda töökohast pärit. Kui sa sobivat andmestikku oma töökohast ei leia, vali mõni töödeldav ja huvitav andmestik eesti avaandmete portaalist.

Väga soovitavalt tuleks tulemus panna üles avalikku veebiserverisse (soovitus: digitalocean ja kood avalikku koodihoidlasse (soovitus: github).

Github on tasuta, digitalocean annab alustajatele ca 100 USD krediiti ja lisaks on olemas Github student pack, mis sisaldab ca 50 USD digitaloceani krediiti. Rangelt kohustuslik avaliku veebiserveri ja githubi kasutamine ei ole: väiksema arvu punkte saab praktikumist ka siis, kui realiseerid kõik lihtsalt oma arvutis ja ei pane kuhugi üles.

Praktikumi töökorraldus

Ülesannet võib teha üksi või kahekesi.

Kursuse praktikumipäevadel tegelemegi selle ülesande etappidega, ning iga etapi/praktikumipäeva lõpuks vaatame üle hetkeseisu ja anname esialgsed hinnangud, kui kaugele on jõutud ja mis on edasised sammud, veidi sarnaselt tüüpiliste agiilse arenduse hetkeseisu-koosolekutega.

Selleks peab iga grupp tegema praktikumipäeva lõpus üheminutise ettekande, kus on öeldud:

  • mida sel päeval üritati teha ja kuhu jõuti
  • mis on plaan järgmise praktikumikorraga saavutada

Lõpp-presentatsioon viimasel päeval peaks olema pikem, ca 5 minutit, ja kirjeldama

  • mis oli algne plaan
  • kuhu jõuti: reaalne demo
  • probleemid, mis tekkisid ja võtsid rohkem aega
  • ootamatud asjad, mida töö käigus õppisite või tähele panite

Põhiplaan praktikumipäevade kaupa on järgmine, kuid väga soovitav on neid samme kiiremini teha.

1. päev: ülesande valik, soovitud tulemuse kirjeldus, keskkonna ülesseadmine

  • Otsi andmestik, uuri, kas see on sulle kättesaadav/töödeldav.
  • Otsusta, kuidas seda avalikkusele ilusamini kuvada ja millised filtrid/valikud lasta kasutajatel teha.
  • Installeeri endale sobiv tekstiredaktor, Python, Flask.
  • Tee konto (soovitavalt) digitaloceani serverisse ja githubi koodihoidlasse.
  • Logi serverisse sisse, kopeeri sinna katseks faile, pane katseks faile githubi.

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

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

4. päev: puhver, kujunduse parandamine, lisafunktsioonide ehitamine, lõpp-presentatsioon

Loengud ja materjalid

Loengud on salvestatud youtube klippidena, iga loenguga on seotud presentatsioon ja soovitavad täiendavad materjalid ja lingid.

Videoloengute youtube üldlisti järjekord on suvaline, kasuta pigem allolevaid linke õiges järjekorras.

Sissejuhatus ja põhimõisted

Kuidas arvuti töötab

Soovitavalt loe veel:

Interneti funktsioneerimine

Programmeerimise sissejuhatus Pythonis

Veebilehed

Server ja veebirakendus

Andmebaasiga serverirakenduse ehitamine

Tehisintellekt

Arendusvahendid ja arhitektuur

Arendusprotsess

Loe kõik need artiklid kursuse käigus läbi: