• efektiivne (tarkvara ei tohi raisata süsteemi ressursse), • vastuvõetav (tarkvara peab olema aktsepteeritud kasutajate poolt, kelle jaoks ta on loodud – tarkvara peab olema arusaadav, kasutatav ja ühilduv teiste süsteemidega). Tarkvaratehnika vaated: • Omaniku vaade (Motivation layer), • Kavandaja vaade (System design layer), • Ehitaja vaade (Deployment layer). Tarkvaraprotsessi etapid: 1. Nõuete esiletoomine ja analüüs, 2. Kavandamine e. disain (Arhitektuuriline kavandamine, Detailne kavandamine), 3. Realiseerimine, 4. Testimine, 5. Hooldus ja evolutsioon. Tarkvaraprojekti jaoks vajalikud osad: inimesed, nõuded, vahendid, testid-mockid. Süsteem Tarkvaratehnika ei ole isoleeritud distsipliin vaid osa laiemast süsteemitehnikast. Tarkvarasüsteemid ei
erinevates iteratsioonides. Nt valideerimine ei toimu üks kord, toimub pidev ümberspetsifitseerimine, evolutsiooni osas on vaja live’s asju ümber teha vastavalt klientide vajadustele. ! Tarkvaraprotsess koosneb tegevustest, mis on vajalikud tarkvaratoodete arendamiseks. Nende tegevuste organiseerimisega tegelebki tarkvaratehnika. 17. Tarkvaraprotsessi mudel. ● Tarkvaraprotsessi lihtsustatud esitus teatud vaatepunktist. ○ Mudel on lihtsustatud esitus keerulisest asjast. ● Näited vaatepunktidest: ○ Tegevusekeskne (activitycentric) vaatepunkt: tegevuste jada. Nt BPM. ○ Andmekeskne (datacentric) vaatepunkt: andmevood. Nt andmevoogude diagrammid. ○ Rollikeskne (rolecentric või agentcentric) vaatepunkt: kes mida teeb?
risk management, system acquisition, information technology (IT) services and personnel management. Total Quality Management •Total Quality Management (TQM) is the application of quantitative methods and human resources to improve: 1 –the material and services supplied to an organization 2 –all the processes within an organization 3 –the degree to which the needs of the customer are met, now and in the future Põhimõisted Tarkvaraprotsessi võimekus (software process capability) näitab, millist tulemit võib loota organisatsiooni järgmiselt tarkvaraprojektilt. Tarkvaraprotsessi tulemuslikkus (software process performance) esindatab tegelikku tulemit, mis saadi tarkvaraprotsessi järgides. Tarkvaraprotsessi küpsus (software process maturity) on määr, milleni protsesson määratletud, juhitud, mõõdetud, kontrollitud – on tarkvaraprotsessi tõhususe mõõt. Immature versus Mature Software Organizations
kasutajate muutuvatele nõudmistele Plaanipõhine vs agiilne tarkvaraprotsess o Plaanipõhine tarkvaraprotsess: kõik tegevused on ette planeeritud ja edu kriteeriumiks on plaani järgmine o Agiilne tarkvaraprotsess: planeerimine toimub sammude kaupa töö käigus o Kumb on parem? Mõlemad on ok, see sõltub kus seda kasutatakse. Tarkvaraprotsessi mudelite põhitüübid o Kosk Selle mudel: Requirement s – nõuete analüüs Design- disain Implementatio n- realiseerimine Modifitseeritud mudeli juures, Vertification- saab minna ka vastavalt iga
Mobiilirakendused REST-i / WS-i põhised rakendused Video ja heli streamimis rakendused Mis on tarkvara arendusprotess e tarkvaraprotsess? Tarkvaraprotsess on sammude jada, mille eesmärgiks on tarkvara arendamine ja evolutsioon Tegevused tarkvaraprotsessis: 1. Spetsifitseerimine Mida süsteem peab tegema ja mis on piirangud tema arendamisel? 2. Arendamine 3. Valideerimine 4. Evolutsioon Tarkvarasüsteemi muutmine vastavatale muutuvatele nõudmistele Tarkvaraprotsessi mudel Tarkvaraprotsessi lihtsustatud esitus teatud vaatepunktist. 1. Protsessikeskne 2. Andmekeskne 3. Rollikeskne Mudelite näited: 1. Kosk 2. Iteratiivne arendamine 3. Komponendipõhine Professionaalse vastutuse aspektid 1. Konfidentsiaalsus Tarkvarainsener peab respekteerima oma tööandja ja klientide konfidentsiaalsust, sõltumata sellest, kas formaalne leping konfidentsiaalsuse kohta on alla kirjutatud 2
Millised komponendid kuuluvad tarkvara arenduskeskkonna, mitte tarkvara töökeskkonna hulka? Programmi redaktor (programm editor) Programmi silur (programm debugger) Millised vahendid on olemas standardses SQL'is? Nii andmete kirjelduskeel (DDL) kui ka andmete töötluskeel (DML) ARENDUS Arenduse elutsükkel on mudel, mida kasutatakse tarkvara kvaliteedi tõstmiseks. Nõuete analüüs määrab süsteemi nõuded, analüüsides seda, kuidas süsteem rahuldab kasutajate vajadusi. Tarkvaraprotsessi mudelid näitavad, kuidas arenduses vajalikke tegevusi järjestada. Protsessimudel prototüüpimisega on, hea meetod, kui klient ei oska oma soove selgelt kirjeldada. Tarkvaraprotsessi spiraalmudel erineb teistest mudelitest selle poolest, et sisaldab projekti riskide hindamist iga iteratsiooni sees. Tarkvaraarenduse lineaarne mudel ehk koskmudel on mõistlik lähenemine, kui nõudmised on selgelt ja hästi kirjeldatud.
kergendada. peab olema nii keeruline kui vaja, aga mitte keerulisem UML – unified modeling language – modelleerimiskeel/standard tarkvara süsteemide mudelite loomiseks Miks on mudeleid vaja – soodustada diskussiooni loodava süsteemi üle, aitab dokumenteerida, detailne esitlus, millest saab genereerida süsteemi realisatsiooni Tarkvaratehnikas on 3 vaadet: omaniku vaade kavandaja vaade ehitaja vaade Tarkvaraprotsessi etapid Nõuete esiletoomine ja analüüs Kavandamine e. disain Realiseerimine Testimine Hooldus ja evolutsioon Neid etappe tehakse iteratiivselt järjest läbi Modelleerimine – igas faasis on oma tehised (mudelid, dokumendid ja programmikood) Süsteemi käitumise analüüs 1. kokku tuleb leppida põhieesmärk ehk ülemise taseme eesmärk Tegevusdiagramm näidatakse tegevusi, mida süsteemiga toetatakse
Kasutaja- on teadmised, seega oskab valida parema tarkvara, teab, miks üks on halb ja teine hea. Hooldaja- kui ta teab, mida arendaja mõtles, on tal lihtsam vigu leida. (standardi järgi) Tarnija- kui tal on teadmised standardi järgi tehtud tarkvara kohta, siis ta oskab selle kohta ka kõige tähtsamaid asju öelda. Firmajuht- teab, mida firma rahaga tehakse, otsib uusi kliente, vaatab, kuhu turule minna, et oma ettevõtet reklaamida. 60. Millest alustada tarkvaraprotsessi kvaliteedihalduse kavandamist? Juhtkonna toe kindlustamine Kvaliteedihalduse eesmärkide planeerimine lähtudes ettevõtte strateegiast Eesmärkide ja poliitika tutvustamine töötajatele Kvaliteedihalduse meetodi valimine 61. Põhimõisted, eesmärgid, ülevaade, millal ja kuidas kasutada: ISO/IEC 20000 seeria ja ITIL, ISO/IEC 27000 seeria ja ISKE, RUP. ISO/IEC 20000- teenusehaldust käsitlev standard.
kvaliteedist ja standarditest? · süsteemiarendajatele, laiemalt süsteemse töö täitjale, et luua paremat toodet, saavutada tellija rahulolu · tellijale, ostjale, et olla kursis tarkvarale esitatavate nõuetega, osata paremini koostada pakkumiskutset ning valida toodet, jälgida arendusprotsessi ja hinnata tulemust · kasutajale, et osata küsida ostetava tarkvara omadusi ja teada, mida võib tarkvaratootelt oodata 23. Millest alustada tarkvaraprotsessi kvaliteedihalduse kavandamist? Kõigepealt tuleb lähtudes ettevõtte strateegiast planeerida kvaliteedihalduse eesmärgid (näiteks, kas soovitakse ainult töökorralduse parendamist või lisaks sellele ka kvaliteedisertifikaati) ja kvaliteedipoliitika. Vastavalt eesmärkidele valitakse kvaliteedihalduse meetod. Kvaliteedihaldus - esimesed sammud ettevõttes 1. Kindlustage juhtkonna tugi 2. Lähtudes ettevõtte strateegiast planeerige kvaliteedihalduse eesmärgid ja kvaliteedipoliitika 3