KORDAMISKÜSIMUSED 1. Kvaliteetse tarkvara atribuudid. eksam 2. Mis on tarkvaratehnika? 3. Üldistatud protsessid tarkvaraarenduses. 4. Tarkvaraprotsesside 2 suuremat liiki. 5. Manifesto for Agile Software Development. 6. Kuidas liigitada nõudeid? eksam 7. Nõude 3 põhiomadust. 8. Nõuete valideerimise tehnikad. 9. Komponentidel põhinev arhitektuur 10.Kihiline arhitektuur eksam 11.Objektorienteeritud arhitektuur 12.Teenusorienteeritud arhitektuur 13.Lihtsa koodi disaini 4 elementi 14.Miks peab nõudeid haldama? 15.Milleks kasutatakse versioonihaldust? eksam 16
Objekt Orienteeritud käsitlus vs Traditsiooniline käsitlus Autor: Mart Kolk Rühm: D21 Juhendaja: Andres Mulin Tallinn 2012 SISSEJUHATUS Tarkvaraarenduses on kasutusel nii traditsiooniline kui ka objekt - orienteeritud käsitlus. lähenemist. Töö eesmärk on mõlemat tutvustada ja leida nende tugevad ja nõrgad küljed. Toimub ka käsitluste vaheline võrdlus. Analüüsi põhjal selgub kumba käsitlust on mõistlikum ja kasulikum kasutada. Kindlasti on soosingus objekt - orienteeritud käsitlus, kuna see on tänapäeval laialdaselt kasutuses ja omab avaramaid võimalusi. TRADITSIOONILINE KÄSITLUS
rohkem aega ning rohkem ressursse (raha) IT projekti lõpptulemuse kvaliteeti iseloomustavateks märksõnadeks võivad olla kasutajasõbralikus hooldamiskergus rikete esinemise sagedus funktsionaalsus efektiivsus kiirus ökonoomsus jne. Kui pakutud lahendus lähtub küll kliendi vajadusest, aga: on keeruline kasutada ei ole turvaline on täis selliseid vigu, mis takistavad normaalset tööd on raskesti õpitav jms Tarkvara testimine Tarkvara testimine on protsess tarkvaraarenduses, mille käigus püütakse hinnata arvutitarkvara kvaliteeti. Tarkvara testimine on kogemustel põhinev tehniline uurimine, mis viiakse läbi selleks, et arvestades konteksti, milles programm töötama peab, informeerida huvitatud osapooli tarkvara kvaliteedist. Testimise peamiseks tegevuseks on vea leidmine eesmärgiga programmi käivitamine. Testimise eesmärgid Leida vigu Veenduda nõuetele vastavuses Pakkuda informatsiooni Veenduda, et muudatused ei toonud
operatsioonisüsteemides. Peamisteks Windows XP ja selle eelkäijate kritiseerimise põhjusteks olid nende suured puudujäägid turvalisuses ja avatus viirustele ja puhvrite üleuputamisele. Seda silmas pidades kuulutas Microsoft’i juht Bill Gates 2002. aasta alguses välja ettevõtte- sisese "Trustworthy Computing" ("Usaldusväärse Arvutikasutuse") algatuse, mille eesmärgiks oli suurendada turvalisust tarkvaraarenduses. Microsoft teatas, et prioriteediks on Windows XP ja Windows Server 2003 julgeoleku parandamine, mis tingis Windows Vista tootmise viibimise. Windows Vista arendus Microsoft alustas Windows Vista’ga, sel ajal koodnimega "Longhorn", tööd 2001. aasta mais, viis kuud enne Windows XP ilmumist. See pidi algselt välja tulema 2003. aasta lõpuks, Windows XP ja Blackcomb’i, mis oli kompanii järgmine plaanitud operatsioonisüsteem. Longhorn’i ilmumist lükati mitu korda edasi
Microsofti peamiseks ülesandeks Windows Vista puhul oli suurendada turvalisust Windowsi operatsioonisüsteemides. Peamisteks Windows XP ja selle eelkäijate kritiseerimise põhjusteks olid nende suured puudujäägid turvalisuses ja avatus viirustele ja puhvrite üleuputamisele. Seda silmas pidades kuulutas Microsofti juht Bill Gates 2002. aasta alguses välja ettevõtte-sisese "Trustworthy Computing" ("Usaldusväärse Arvutikasutuse") algatuse, mille eesmärgiks oli suurendada turvalisust tarkvaraarenduses. Microsoft teatas, et prioriteediks on Windows XP ja Windows Server 2003 julgeoleku parandamine, mis tingis Windows Vista tootmise viibimise. Kuigi uued funktsioonid ja turvalisuse parandamine on saanud palju kiitvaid kommentaare, on Windows Vista ajakirjanduses pälvinud ka rohkesti kriitikat ja negatiivset tähelepanu. Selle põhjuseks on peamiselt operatsioonisüsteemi kõrged süsteeminõuded, kuid ka rangemad litsentsitingimused ning mitmete uute
Andmete analüüs pakub võimalust tooteid paremini suunata, luua uusi lahendusi ja rakendusi. Võimalus andmepankade loomiseks. *Kursiivis toodud kommentaarid ja argumentatsioon on otsene tsiteering Eesti Arengufondi koostatud analüüsist "Välistrendid Eesti fookuses 2020". TEHNOLOOGIAGA SEOTUD TRENDID Võimalused Ohud Uued kasutajaliidesed traditsiooniliste asemele – võimalused tarkvaraarenduses - paindlikkuse ja kiiruse suurendamine. Naftasõltuvuse vähendamine (sünteetilise bioloogia areng, elektromobiilsuse ja muu säästva transpordi arendamine, energia tehnoloogiate areng) – on võimalus, sest biotehnoloogiate areng võib tulevikus asendada nii kütuse kui ka kemikaalide ja plastide tootmiseks vajaminevat naftat. Võimalused arendamiseks, biomassi- ning lõpp-produkti tootmiseks. Tehnoloogiate konvergents kiireneb - avab uusi võimalusi mõne ala eriteadmisi erinevates
aasta 25. septembrit, mil Torvalds postitas e-kirja, milles teatas uue operatsioonisüsteemi loomisest, loetakse tinglikult Linuxi-nimelise operatsioonisüsteemi sünnipäevaks. Ajavahemikul 1991-1996 tehti esimesed katsetused operatsioonisüsteemi graafilise keskkonnaga, loodi esimesed distributsioonid (SLS, MCC, Debian, Red Hat) ning arendati operatsioonisüsteemi tuuma. (Kikkas 2004:8) Kuigi Linuxi loomine oli põhimõtteliselt ühe mehe algatus, ei saa mööda vaadata tööst, mida oli tarkvaraarenduses tehtud enne Torvaldsit: eelnevalt kirjeldatud GNU projekt, BSD ning MINIX. Õigupoolest on Linux algpäraselt lihtsalt operatsioonisüsteemi tuum, mis ühes GNU projekti abiprogrammide ja muu tarkvaraga moodustab operatsioonisüsteemi. Ka Torvalds ise on öelnud: "Kui GNU või 386BSD kernelid olnuks saadaval siis, kui ma Linuxit alustasin, poleks ilmselt Linuxit juhtunud." (Linksvayer 1993) 6 2. Mac OSi kujunemine 2.1 Macintoshi projekt
PHP+MySQL Andmebaasitarkvara populaarsusel on ilmselt suur tänuvõlg ka skriptimiskeele PHP ees -- just siis kui üle maailma hakkasid levima andmebaasipõhised veebilehed, oli MySQL parim ja mugavaim valik. Kindlasti märkasid ka tuhanded ettevõtete juhid, kuidas pakkumistesse hakkas tekkima kallite süsteemide alternatiivina PHP ning MySQL. Murrang oli toimunud -- edasi tuli vaid müügimeestele seletada PHP+MySQL'i ning veebipõhiste süsteemide tohutuid eeliseid ning uus laine tarkvaraarenduses sai alata. Kõike sooviti hakata tegema veebipõhiselt, unustades tihti alternatiivide eelised. Kahtlemata laiendas see tarkvaraarenduse turgu -- üha väiksemad ettevõtted said endale lubada moodsaid andmebaasipõhiseid lehekülgi. Iga asja liigne surumine keerab paraku vindi üle, mistõttu võime ka tänasel päeval näha ääretult ebaefektiivsetes kohtades veebipõhiste süsteemide pealesurutud pakkumisi. Ei tasu unustada, et
intesiivselt miniarvuteid. 4. põlvkond - aastad 1971 - 1981; Keskmise ja kõrge integratsioonitasemega mikrolülituste massiline kasutamine; esimesed mikroprotsessorlülitused (intel 4004(1971)); personaalarvutid; jõudlus vahemikus 9,5 kuni 1000 miljonit operatsiooni sek; rööptöötlusele orienteeritud multiprotsessorsüsteemid; lausintegraallülitusena hakatakse valmistama kiireid ja suure infomahitavusega pooljuhtmälukiipe. Tarkvaraarenduses on tähelepanu keskmes operatsioonisüsteemide, kompilaatorite ja rööptöötluseks sobivate kõrgkeelte arendamine; 5. põlvkond - aastad 1981 - 1991; mikrolülituste integratisoonitaseme jätkuv tõus; võimsad RISC-arhitektuuriga mikroprotsessorid; info töötlemisel massiliselt rakendama rööp- ehk paralleeltöötlust; Intensiivselt tegeletakse hajus- ja võrkstruktuuride uurimise ning arendamisega. 6. põlvkond - alates 1991
pooled neist peavad olema kirjavahemärgid ning ükski märk ei tohi korduda), siis ei suuda kasutaja sellist monstrumit korraga meelde jätta ning kinnitab ta paberitükile kirjutatuna kuvari külge. Kui ründaja satub antud kontorisse, ei ole tal enam mingit tarvidust paroolimurdmistarkvara pruukida - aga just sellise tarkvara tõö raskendamiseks olid algsed pikkusenõuded kehtestatud. Kuigi viimase aja suund tarkvaraarenduses paistab üldiselt olevat funktsioonide ja kasutamismugavuse laiendamisele turvalisuse arvelt, ei maksa siiski ka turvalisusaspekti päriselt tähelepanuta jätta. Teine arvutivõrgu varadele esitatav nõue on terviklusnõue (integrity). Lühidalt tähendab see, et varasid peavad saama muuta, lisada või kustutada ainult selleks igal juhul eraldi volitatud kasutajad. Jällegi on tegemist suhteliselt laia mõistega, mis hõlmab muuhulgas nii riistvara
Täiustatakse superarvuteid ja intensiivselt uuritakse uusi arvutiarhitektuure; Lausintegraallülitustena hakatakse valmistata kiireid ja suhteliselt suure infomahutavusega pooljuhtmälukiipe. Kui kolmanda põlvkonna arvuteis olid integraallülitustel üksnes vahe- ja registermälud, siis neljanda põlvkonna arvuteis on nendel ka põhimälud Mikroprotsessoritele põhinevad personaalarvutid hakkavad järk-järgult välja tõrjuma miniarvuteid Tarkvaraarenduses on tähelepanu keskmes operatsioonisüsteemide, kompilaatorite ja rööptöötluseks sobivate kõrgkeelte arendamine Esindajaid: IBM System 370, MITS 816, Apple II, Cray 1, CYBER 205, VAX11/780 Viies põlvkond (1981 – 1991) Iseloomulikud jooned: Mikrolülituste integratsioonitaseme jätkuv tõus. Valmistatakse keerukaid ja võimsaid mikroprotsessorkiipe ning suure infomahutavusega mälulülitusi Turule tulevad võimsad RISC-arhitektuuriga mikroprotsessorid.
vaatest on eelpool nimetatud osad olulised selleks, et hankimise ja tarkvara implementeerimise protsessid oleksid jälgitavad, dokumenteeritud ning tagaksid võimalikult sujuva töö nii hankija kui ka arendaja seisukohalt. Kokkuvõttes loob see hea aluse kvaliteetse tarkvara loomiseks. Nõuete kirjeldamisel on lähtutud tarkvaraarenduses levinud FURPS+ mudelist. Mudel näeb ette nõuete jaotamist järgmistesse üksustesse: • funktsionaalsus (functionality); • kasutatavus (usability); • usaldusväärsus (reliability); • jõudlus (performance); • teenindatavus (supportability)
o Lean UX: kliendi poolt tajutav väärtus, mitte tingimata tarkvara. Küsimused eksami kohta: Tarkvaraarenduse kolmnurga näide- ressurss, aeg, funktsionaalsus. Selgitada, probleemiülesande kontekstis. Nt. Aeg hakkab otsa saama- kas tuleb raha juurde küsida või ületunde teha vms Kvaliteetse tarkvara funktsionaalsed ja mittefunktsionaalsed atribuudid. 1 loengu teema. Vastuvõetavus, efektiivsus, kasutatavus jne. Metoodikad tarkvaraarenduses ja mida nad kirjeldavad. Mis on metoodika, miks on seda vaja. See on mingi kindel viis, mis on kindalt defineeritud tarkvarasüsteemide arendamiseks Erinevate tarkvarasüsteemide nõuete kirjeldamine. Näiteks panga veebi iseteeninduskeskkond, iPhone aplikatsioon jne. Nõuete vastavus nõuete kolmele olulisele omadusele. Nõuete kolm olulist omadust: üheselt mõistetav, testitav ja lihtne Komponentidel, teenustel jne. põhinevad arhitektuuride positiivsed ja
• Parallels Desktop • VM Ware Workstation • Virtualbox tasuta Näited: Mida küsiti eksamil eelmisel aastal? 103 ● Kvaliteetse tarkvara funktsionaalsed ja mittefunktsionaalsed atribuutid. ● Metoodikad tarkvaraarenduses ja mida nad kirjeldavad. ● Erinevate tarkvarasüstemide nõuete kirjeldamine. Näiteks panga veebi iseteeninduskeskkond, iPhone aplikatsioon jne. Nõuete vastavus nõuete kolmele olulisele omadusele. ● Komponentidel, teenustel jne. põhinevad arhitektuurid. Erinevate arhitektuuride positiivsed ja negatiivsed omadused, kasutusvaldkonnad. ● Mudeli olemus ja mudelite klassifitseerimine.