Tarkvaraarendus

EUCIP materjal

Tarkvaraarendus tarkvara projekteerimine/arendus
Andmetöötlustöötamine andmetega arvuti abil ja andmete tõlkimine arvutile arusaadavasse vormi
Andmetöötlussüsteem personal + arvuti + tarkvara on süsteem, mille abil töödeldakse sisendandmeid erinevate matemaatiliste operatsioonide abil, et muuta need arvutile arusaadavaks.
Tarkvara – TATarkvara
Riistvara Arvutiriistvara
Rakendustarkvara näide– kontoritarkvara, andmebaasid, multimeedia programmid, CAD-programmid, Arendusprogrammid jne
Süsteemne tarkvara Operatsioonisüsteem, draiverid (nt videodriver), failihaldusprogrammid.

TA Elutsükkel

Tarkvara elutsükkel on protsess, mille käigus luuakse uus tarkvarasüsteem või muudetakse vana. LCI etapid:

Analüüs mis tahes arengu esimene etapp, ilma selleta on võimatu liikuda edasi järgmistesse etappidesse.
Projekteerimine/kavandamine tulevane tarkvara peab vastama IEEE standarditele
TEOSTUS tarkvara loomine + verifitseerimine * valideerimine – algsete nõuete kehtivuse kontrollimine.
Hoolduspärast seda, kui tarkvara on kliendile tarnitud

TA protsessi etapid ja nende tulemused

1. TA spetsifitseerimine (Nõuete spetsifikatsioon)

Tegevused:

  1. Nõuete kogumine (intervjuud, küsitlused, konkurentide analüüs)
  2. Nõuete analüüs ja täpsustamine
  3. Nõuete dokumenteerimine (funktsionaalsed ja mittefunktsionaalsed nõuded)
  4. Nõuete valideerimine ja kinnitamine

Tulemused:

  1. Nõuete spetsifikatsioonidokumendid (SRS – Software Requirement Specification)
  2. Kasutuslood ja stsenaariumid
  3. Mockupid ja prototüübid (vajadusel)

2. Tarkvaraarendus (Süsteemi ja tarkvara disain + implementeerimine)

Tegevused:

  1. Süsteemi arhitektuuri ja disaini loomine
  2. Andmebaasi ja API-de kavandamine
  3. Tehnoloogiate ja raamistikute valik
  4. Koodi kirjutamine ja modulaarsuse tagamine
  5. Versioonihalduse kasutamine (Git, CI/CD)

Tulemused:

  1. Tarkvara arhitektuuridokument
  2. Andmebaasi skeemid ja API kirjeldused
  3. Koodi ja tarkvara moodulid

3. TA valideerimine (Testimine ja kontrollimine)

Tegevused:

  1. Üksuse testimine (Unit Testing)
  2. Süsteemi ja integratsiooni testimine
  3. Kasutajatestimine ja koormustestid
  4. Vigade tuvastamine ja parandamine

Tulemused:

  1. Testiraportid
  2. Kvaliteediaruanded
  3. Vigade logi ja nende lahendused

4. TA muutmine (Hooldus ja arenduse jätkamine)

Tegevused:

  1. Tarkvara veaparandused ja turvauuendused
  2. Uute funktsioonide lisamine ja optimeerimine
  3. Kasutaja tagasiside analüüs
  4. Versioonihalduse ja muudatuste haldamine

Tulemused:

  1. Uued versioonid ja uuendused
  2. Patchid ja hotfixid
  3. Täiendatud dokumentatsioon ja kasutajajuhendid

TA protsessi etapid ja nende tulemused

1. TA spetsifitseerimine (Nõuete spetsifikatsioon)

Tegevused:

  1. Nõuete kogumine (intervjuud, küsitlused, konkurentide analüüs)
  2. Nõuete analüüs ja täpsustamine
  3. Nõuete dokumenteerimine (funktsionaalsed ja mittefunktsionaalsed nõuded)
  4. Nõuete valideerimine ja kinnitamine

Tulemused:

  1. Nõuete spetsifikatsioonidokumendid (SRS – Software Requirement Specification)
  2. Kasutuslood ja stsenaariumid
  3. Mockupid ja prototüübid (vajadusel)

2. Tarkvaraarendus (Süsteemi ja tarkvara disain + implementeerimine)

Tegevused:

  1. Süsteemi arhitektuuri ja disaini loomine
  2. Andmebaasi ja API-de kavandamine
  3. Tehnoloogiate ja raamistikute valik
  4. Koodi kirjutamine ja modulaarsuse tagamine
  5. Versioonihalduse kasutamine (Git, CI/CD)

Tulemused:

  1. Tarkvara arhitektuuridokument
  2. Andmebaasi skeemid ja API kirjeldused
  3. Koodi ja tarkvara moodulid

3. TA valideerimine (Testimine ja kontrollimine)

Tegevused:

  1. Üksuse testimine (Unit Testing)
  2. Süsteemi ja integratsiooni testimine
  3. Kasutajatestimine ja koormustestid
  4. Vigade tuvastamine ja parandamine

Tulemused:

  1. Testiraportid
  2. Kvaliteediaruanded
  3. Vigade logi ja nende lahendused

4. TA muutmine (Hooldus ja arenduse jätkamine)

Tegevused:

  1. Tarkvara veaparandused ja turvauuendused
  2. Uute funktsioonide lisamine ja optimeerimine
  3. Kasutaja tagasiside analüüs
  4. Versioonihalduse ja muudatuste haldamine

Tulemused:

  1. Uued versioonid ja uuendused
  2. Patchid ja hotfixid
  3. Täiendatud dokumentatsioon ja kasutajajuhendid