arvutiteaduse instituut - software engineering 01 · 1. kuidas hindad oma praeguseid teadmisi...

34
Kaspar Loog 6.09.2007 © Kaspar Loog - Know IT Estonia

Upload: others

Post on 18-Jan-2021

3 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Arvutiteaduse instituut - software engineering 01 · 1. Kuidas hindad oma praeguseid teadmisi suuremate tarkvaraprojektide läbiviimisel? Kirjelda seniseid kogemusi. 2. Milliseid

Kaspar Loog

6.09.2007 © Kaspar Loog - Know IT Estonia

Page 2: Arvutiteaduse instituut - software engineering 01 · 1. Kuidas hindad oma praeguseid teadmisi suuremate tarkvaraprojektide läbiviimisel? Kirjelda seniseid kogemusi. 2. Milliseid

6.09.2007 © Kaspar Loog – Know IT Estonia6.09.2007

Page 3: Arvutiteaduse instituut - software engineering 01 · 1. Kuidas hindad oma praeguseid teadmisi suuremate tarkvaraprojektide läbiviimisel? Kirjelda seniseid kogemusi. 2. Milliseid

� Austa kõiki teisi loengutes ja praksides � Austa kõiki teisi loengutes ja praksides viibijaid

� Meeskonnatöös küsi endalt, “Kas kõigi arvamust on arvestatud?”

� Ole positiivne ja haara initsiatiivi� Õppejõu käest võib küsida kõike, kui miski � Õppejõu käest võib küsida kõike, kui miski

segaseks jäi

6.09.2007 © Kaspar Loog - Know IT Estonia

Page 4: Arvutiteaduse instituut - software engineering 01 · 1. Kuidas hindad oma praeguseid teadmisi suuremate tarkvaraprojektide läbiviimisel? Kirjelda seniseid kogemusi. 2. Milliseid

� Aine koduleht� Aine koduleht� http://ats.cs.ut.ee/courses/2007/tvt/

� Loengud� 2x nädalas

� Praktikumid� 4 inimest rühmas, 7 ülesannet� 4 inimest rühmas, 7 ülesannet

� Eriülesanded/referaat� Eksam

6.09.2007 © Kaspar Loog - Know IT Estonia

Page 5: Arvutiteaduse instituut - software engineering 01 · 1. Kuidas hindad oma praeguseid teadmisi suuremate tarkvaraprojektide läbiviimisel? Kirjelda seniseid kogemusi. 2. Milliseid

� Praktikumid: 7 * 10 = 70p � Referaat: 15p � Referaat: 15p � Eksam: 35p � Kokku: 120p

� A – 91 - ... punkti� B – 81 - ... Punkti

� Ülesanded on motiveerivad� Õppejõud sõbralikud

6.09.2007 © Kaspar Loog - Know IT Estonia

Page 6: Arvutiteaduse instituut - software engineering 01 · 1. Kuidas hindad oma praeguseid teadmisi suuremate tarkvaraprojektide läbiviimisel? Kirjelda seniseid kogemusi. 2. Milliseid

6.09.2007 © Kaspar Loog - Know IT Estonia

Page 7: Arvutiteaduse instituut - software engineering 01 · 1. Kuidas hindad oma praeguseid teadmisi suuremate tarkvaraprojektide läbiviimisel? Kirjelda seniseid kogemusi. 2. Milliseid

1. Kuidas hindad oma praeguseid teadmisi Kuidas hindad oma praeguseid teadmisi suuremate tarkvaraprojektide läbiviimisel? Kirjelda seniseid kogemusi.

2. Milliseid uusi oskusi loodad seminari käigus omandada?

3. Kus loodad neid oskusi rakendada?4. Kas oled juba ainesse registreerunud4. Kas oled juba ainesse registreerunud

Vastused kirjuta tühjale paberilehele ja anna õppejõule. Nime pole peale vaja.

6.09.2007 © Kaspar Loog - Know IT Estonia

Page 8: Arvutiteaduse instituut - software engineering 01 · 1. Kuidas hindad oma praeguseid teadmisi suuremate tarkvaraprojektide läbiviimisel? Kirjelda seniseid kogemusi. 2. Milliseid

� Tutvuda valdkonna ja ajalooga� Tutvuda valdkonna ja ajalooga� Õppida tarkvara arenduse põhimõisteid ja

metoodikat� Õppida üksteiselt� Mõista meeskonnatööd� Kogeda tarkvara arendamisega seotud � Kogeda tarkvara arendamisega seotud

probleeme� Et natuke lõbus ka oleks!

6.09.2007 © Kaspar Loog - Know IT Estonia

Page 9: Arvutiteaduse instituut - software engineering 01 · 1. Kuidas hindad oma praeguseid teadmisi suuremate tarkvaraprojektide läbiviimisel? Kirjelda seniseid kogemusi. 2. Milliseid

1. Sissejuhatus1. Sissejuhatus2. Tarkvaratehnika ajalugu3. Rusikareeglid tarkvaraarendusest4. Tarkvaratehnika distsipliinide

helikopterivaade

6.09.2007 © Kaspar Loog - Know IT Estonia

Page 10: Arvutiteaduse instituut - software engineering 01 · 1. Kuidas hindad oma praeguseid teadmisi suuremate tarkvaraprojektide läbiviimisel? Kirjelda seniseid kogemusi. 2. Milliseid

1 – Sissejuhatus ja ajalugu

6.09.2007 © Kaspar Loog - Know IT Estonia

Page 11: Arvutiteaduse instituut - software engineering 01 · 1. Kuidas hindad oma praeguseid teadmisi suuremate tarkvaraprojektide läbiviimisel? Kirjelda seniseid kogemusi. 2. Milliseid

Valdkond, mis tegeleb tarkvara arendamise ja hooldamisega, kasutades tehnoloogiaid ja praktikaid arvutiteadusest, projektijuhtimisest ja teistest valdkondadest.projektijuhtimisest ja teistest valdkondadest.

Tarkvaratehnika...

6.09.2007 © Kaspar Loog - Know IT Estonia

Page 12: Arvutiteaduse instituut - software engineering 01 · 1. Kuidas hindad oma praeguseid teadmisi suuremate tarkvaraprojektide läbiviimisel? Kirjelda seniseid kogemusi. 2. Milliseid

6.09.2007 © Kaspar Loog - Know IT Estonia

Page 13: Arvutiteaduse instituut - software engineering 01 · 1. Kuidas hindad oma praeguseid teadmisi suuremate tarkvaraprojektide läbiviimisel? Kirjelda seniseid kogemusi. 2. Milliseid

� Tarkvara arenduse (Software (Software engineering) mõiste 1968 Garmish-Partenkirchen, Saksamaal

� Esimesed konverentsid konverentsid (NATO teaduskomitee) 1968 ja 1969

© Kaspar Loog - Know IT Estonia6.09.2007

Page 14: Arvutiteaduse instituut - software engineering 01 · 1. Kuidas hindad oma praeguseid teadmisi suuremate tarkvaraprojektide läbiviimisel? Kirjelda seniseid kogemusi. 2. Milliseid

� Ajakava ja eelarve mitmekordsed ületamised � Ajakava ja eelarve mitmekordsed ületamised olid tavalised

� Tarkvara (eriti vead) hakkas mõjutama igapäevaelu

� Inimesed said surma

6.09.2007 © Kaspar Loog - Know IT Estonia

Page 15: Arvutiteaduse instituut - software engineering 01 · 1. Kuidas hindad oma praeguseid teadmisi suuremate tarkvaraprojektide läbiviimisel? Kirjelda seniseid kogemusi. 2. Milliseid

� CHAOS Report 1994 2003� Edukaid projekte 16% � 35%

2000 2003� Katkestatud projekte 31% � 16%

� Tähtaja ületanud 82% � 63%

� Funktsionaalsus 67% � 52%� Põhjused� Põhjused

� Keerukus

� Ootused

� Muutused

� Haridus

6.09.2007 © Kaspar Loog - Know IT Estonia

Page 16: Arvutiteaduse instituut - software engineering 01 · 1. Kuidas hindad oma praeguseid teadmisi suuremate tarkvaraprojektide läbiviimisel? Kirjelda seniseid kogemusi. 2. Milliseid

� Denver International Airport 1993� Denver International Airport 1993

� Therac-25 kiiritusravi seade 1985

� Ariane 5 lend 501 1996

� UK National Healthcare project 2007 –ehk briti digitaalne terviselugu

6.09.2007 © Kaspar Loog - Know IT Estonia

Page 17: Arvutiteaduse instituut - software engineering 01 · 1. Kuidas hindad oma praeguseid teadmisi suuremate tarkvaraprojektide läbiviimisel? Kirjelda seniseid kogemusi. 2. Milliseid

� Pidevalt hüppasid välja uued tehnoloogiad, � Pidevalt hüppasid välja uued tehnoloogiad, mis väitsid tarkvara arendust mitmekümnekordselt parandavat/kiirendavat jne.

� 1987 – Fred Brooks “No Silver Bullet”� Ükski üksik tehnoloogia või praktika ei too kaasa � Ükski üksik tehnoloogia või praktika ei too kaasa

võitu üle 10x arendusajas, -rahas või funktsionaalsuses.

6.09.2007 © Kaspar Loog - Know IT Estonia

Page 18: Arvutiteaduse instituut - software engineering 01 · 1. Kuidas hindad oma praeguseid teadmisi suuremate tarkvaraprojektide läbiviimisel? Kirjelda seniseid kogemusi. 2. Milliseid

� Elukutse “Tarkvarainsener” teketeke

� Naised domineerisid tarkvara arendust 1950-1960-ndatel

� Protsesside ja metoodikate pealetung

� Riistvara-tarkvara hinnasuhte � Riistvara-tarkvara hinnasuhte drastiline muutus

� USA-s tarkvara arvel 25% majanduskasvust 1990-ndatel

6.09.2007 © Kaspar Loog - Know IT Estonia

Page 19: Arvutiteaduse instituut - software engineering 01 · 1. Kuidas hindad oma praeguseid teadmisi suuremate tarkvaraprojektide läbiviimisel? Kirjelda seniseid kogemusi. 2. Milliseid

Globaalne IT eelarve Ca 48 triljonit krooni48 000 000 000 000 EEK48 000 000 000 000 EEK

Kulu tarkvaravigadele USA-s(64% kannavad lõppkasutajad36% kannavad arendajad ja tarnijad)

$60 miljardit

Äriline kahju tarkvaravigadest ja –katkestustest

$200 miljarditkatkestustest

Üle 80% arendustest ja tarkvaraostudest tehakse arvestamata tarkvaralist keskkonda

6.09.2007 © Kaspar Loog - Know IT Estonia

Page 20: Arvutiteaduse instituut - software engineering 01 · 1. Kuidas hindad oma praeguseid teadmisi suuremate tarkvaraprojektide läbiviimisel? Kirjelda seniseid kogemusi. 2. Milliseid

6.09.2007 © Kaspar Loog - Know IT Estonia

Page 21: Arvutiteaduse instituut - software engineering 01 · 1. Kuidas hindad oma praeguseid teadmisi suuremate tarkvaraprojektide läbiviimisel? Kirjelda seniseid kogemusi. 2. Milliseid

� Umbes pooltel arendajatel on kraad � Umbes pooltel arendajatel on kraad arvutitega seotud alal

� Mis tagab projektide edukuse?

6.09.2007 © Kaspar Loog - Know IT Estonia

Page 22: Arvutiteaduse instituut - software engineering 01 · 1. Kuidas hindad oma praeguseid teadmisi suuremate tarkvaraprojektide läbiviimisel? Kirjelda seniseid kogemusi. 2. Milliseid

Barry Boehm

6.09.2007 © Kaspar Loog - Know IT Estonia

Page 23: Arvutiteaduse instituut - software engineering 01 · 1. Kuidas hindad oma praeguseid teadmisi suuremate tarkvaraprojektide läbiviimisel? Kirjelda seniseid kogemusi. 2. Milliseid

Tarkvaraprobleemi lahendamine varajastes disainietappides on on 100 korda odavam kui...

6.09.2007 © Kaspar Loog - Know IT Estonia

Page 24: Arvutiteaduse instituut - software engineering 01 · 1. Kuidas hindad oma praeguseid teadmisi suuremate tarkvaraprojektide läbiviimisel? Kirjelda seniseid kogemusi. 2. Milliseid

Tarkvaraprojekti ajagraafikut saab tihendada maksimaalselt 25% võrra

6.09.2007 © Kaspar Loog - Know IT Estonia

Page 25: Arvutiteaduse instituut - software engineering 01 · 1. Kuidas hindad oma praeguseid teadmisi suuremate tarkvaraprojektide läbiviimisel? Kirjelda seniseid kogemusi. 2. Milliseid

Iga arendusele kuluv kroon tähendab, et hooldusele kulub 2 krooni

6.09.2007 © Kaspar Loog - Know IT Estonia

Page 26: Arvutiteaduse instituut - software engineering 01 · 1. Kuidas hindad oma praeguseid teadmisi suuremate tarkvaraprojektide läbiviimisel? Kirjelda seniseid kogemusi. 2. Milliseid

Tarkvara arendamise ja hoolduse kulud on funktsioon koodiridade arvust

6.09.2007 © Kaspar Loog - Know IT Estonia

Page 27: Arvutiteaduse instituut - software engineering 01 · 1. Kuidas hindad oma praeguseid teadmisi suuremate tarkvaraprojektide läbiviimisel? Kirjelda seniseid kogemusi. 2. Milliseid

Inimestevahelised erinevused on kõige suurem produktiivsuse mõjutaja

6.09.2007 © Kaspar Loog - Know IT Estonia

Page 28: Arvutiteaduse instituut - software engineering 01 · 1. Kuidas hindad oma praeguseid teadmisi suuremate tarkvaraprojektide läbiviimisel? Kirjelda seniseid kogemusi. 2. Milliseid

1955 – 15:851985 – 85:152006 - ???

6.09.2007 © Kaspar Loog - Know IT Estonia

Page 29: Arvutiteaduse instituut - software engineering 01 · 1. Kuidas hindad oma praeguseid teadmisi suuremate tarkvaraprojektide läbiviimisel? Kirjelda seniseid kogemusi. 2. Milliseid

Ülejäänu on programmeerimist toetav ja abistav töö

6.09.2007 © Kaspar Loog - Know IT Estonia

Page 30: Arvutiteaduse instituut - software engineering 01 · 1. Kuidas hindad oma praeguseid teadmisi suuremate tarkvaraprojektide läbiviimisel? Kirjelda seniseid kogemusi. 2. Milliseid

Tarkvarasüsteemi koodirida maksab 3x rohkem kui üksiku programmi koodirida“Diseconomy of scale”

6.09.2007 © Kaspar Loog - Know IT Estonia

Page 31: Arvutiteaduse instituut - software engineering 01 · 1. Kuidas hindad oma praeguseid teadmisi suuremate tarkvaraprojektide läbiviimisel? Kirjelda seniseid kogemusi. 2. Milliseid

6.09.2007 © Kaspar Loog - Know IT Estonia

Page 32: Arvutiteaduse instituut - software engineering 01 · 1. Kuidas hindad oma praeguseid teadmisi suuremate tarkvaraprojektide läbiviimisel? Kirjelda seniseid kogemusi. 2. Milliseid

6.09.2007 © Kaspar Loog – Know IT Estonia

Page 33: Arvutiteaduse instituut - software engineering 01 · 1. Kuidas hindad oma praeguseid teadmisi suuremate tarkvaraprojektide läbiviimisel? Kirjelda seniseid kogemusi. 2. Milliseid

Pareto printsiip

6.09.2007 © Kaspar Loog - Know IT Estonia

Page 34: Arvutiteaduse instituut - software engineering 01 · 1. Kuidas hindad oma praeguseid teadmisi suuremate tarkvaraprojektide läbiviimisel? Kirjelda seniseid kogemusi. 2. Milliseid

Kohtumiseni reedel!

6.09.2007 © Kaspar Loog - Know IT Estonia