SYSTEEMITYÖ. Tärkeitä sanoja

Samankaltaiset tiedostot
Toiminnan laadunvarmistus SYSTEEMITYÖ. Laatu

Laatu ohjelmistotyössä

TT00AA Ohjelmoinnin jatko (TT10S1ECD)

Ohjelmistojen mallintaminen. Luento 11, 7.12.

On instrument costs in decentralized macroeconomic decision making (Helsingin Kauppakorkeakoulun julkaisuja ; D-31)

Katselmoinnin määritelmä. Katselmoinnit osa 1. ja vielä ajatuksia katselmoinneista. Katselmointi. Katselmointi, katselmus (review) IEEE Std

Tarjolla tänää: Ohjelmiston toteutuksesta. Kuinka tulla hyväksi ohjelmoijaksi? CRC-kortit. Testilähtöinen kehittäminen JOT2007. Uudelleenrakentaminen

Ohjelmiston testaus ja laatu. Ohjelmistotekniikka elinkaarimallit

Laatukäsikirja - mikä se on ja miten sellainen laaditaan?

FinFamily PostgreSQL installation ( ) FinFamily PostgreSQL

Choose Finland-Helsinki Valitse Finland-Helsinki

Elämä on enemmän kuin yksi ilta (Finnish Edition)

Katselmoinnit. review) Katselmoinnit (review( Mitä ovat katselmoinnit? Katselmoinnin määritelmä (IEEE 1988)

COTOOL dokumentaatio SEPA: Refaktorointi

Copyright by Haikala. Ohjelmistotuotannon osa-alueet

On instrument costs in decentralized macroeconomic decision making (Helsingin Kauppakorkeakoulun julkaisuja ; D-31)

Uusi Ajatus Löytyy Luonnosta 4 (käsikirja) (Finnish Edition)

Valtiovarain controller toiminto riskienhallinnan kehittäjänä Esko Mustonen

Ohjelmointitekniikka lyhyesti Survival Kit 1 Evtek KA ELINKAARIMALLEISTA

Ohjelmistotekniikka kevät 2003 Laatujärjestelmät

Test-Driven Development

Ohjelmistotuotteen hallinnasta

$$$ Raha ratkaisee. $$$ Raha ratkaisee. Ohjelmistotuote. Ohjelmistotekniikan määritelmä

Software engineering

Yksikkötestaus. import org.junit.test; public class LaskinTest public void testlaskimenluonti() { Laskin laskin = new Laskin(); } }

On instrument costs in decentralized macroeconomic decision making (Helsingin Kauppakorkeakoulun julkaisuja ; D-31)

Kertaus: yleistys-erikoistus ja perintä

812341A Olio-ohjelmointi, I Johdanto

BDD (behavior-driven development) suunnittelumenetelmän käyttö open source projektissa, case: SpecFlow/.NET.

T Tietojenkäsittelyopin ohjelmatyö. Testiraportti, vaihe T1. Tietokonegrafiikka-algoritmien visualisointi. Testiraportti, vaihe T1

LAATU, LAADUNVARMISTUS JA f RISKIEN HALLINTA JOUNI HUOTARI ESA SALMIKANGAS PÄIVITETTY

Hotel Sapiens (Finnish Edition)

Onnistunut ohjelmistoprojekti

Verifioinnin ja validoinnin ero. 7. Verifiointi ja validointi. Verifiointi- ja validointitekniikat. Verifiointi- ja validointitekniikat II

Tietojärjestelmän osat

Miksi Suomi on Suomi (Finnish Edition)

Ohjelmistoprosessit ja ohjelmistojen laatu Kevät Ohjelmistoprosessit ja ohjelmistojen laatu. Projektinhallinnan laadunvarmistus

Määrittelydokumentti NJC2. Helsinki Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos

Tutkittua tietoa. Tutkittua tietoa 1

TOIMINNALLINEN MÄÄRITTELY MS

Avoimen lähdekoodin kehitysmallit

Onnistunut SAP-projekti laadunvarmistuksen keinoin

Nuku hyvin, pieni susi -????????????,?????????????????. Kaksikielinen satukirja (suomi - venäjä) ( (Finnish Edition)

2. päivä. Etätehtävien purku Poikkeamat. Poikkeamat Auditoinnin raportointi Hyvän auditoijan ominaisuudet Harjoituksia

VERSIONHALLINTA. PARIOHJELMOINTI Lari Ahti, 62634M Antti Kauppinen, 58390D

Testausdokumentti. Kivireki. Helsinki Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos

Oma sininen meresi (Finnish Edition)

T Tietojenkäsittelyopin ohjelmatyö Tietokonegrafiikka-algoritmien visualisointi Vaatimustenhallinta

KONEAUTOMAATION LAATU JA TURVALLISUUS Marko Varpunen

tsoft Tarkastusmenettelyt ja katselmukset Johdanto Vesa Tenhunen

15224 standardi johtamisen ja laadukkaan työn tukena auditoijan näkökulma YTL Merja Huikko

Testaus käsite. Sekalaista testausasiaa. Testauksen käsitteestä. Kattavuusmitat. Jos ajatellaan, että testaus = V&V, voidaan erottaa:

Vertaispalaute. Vertaispalaute, /9

Testauksen tuki nopealle tuotekehitykselle. Antti Jääskeläinen Matti Vuori

Ohjelmiston testaus ja laatu. Testaustasot

Hotel Sapiens (Finnish Edition)

Alueellinen yhteistoiminta

Uudelleenkäytön jako kahteen

Tietotekniikan opintojen aktivointi

DOKUMETTIENHALLINTASUUNNITELMA Virtuaaliyhteisöjen muodostaminen Versio 1.0 (Luonnos 1)

Laatu, laadun mittaaminen, auditointi, laatujärjestelmät

T SEPA päiväkirja

Tik Tietojenkäsittelyopin ohjelmatyö Tietotekniikan osasto Teknillinen korkeakoulu. LiKe Liiketoiminnan kehityksen tukiprojekti

Käyttöliittymät II. Käyttöliittymät I Kertaus peruskurssilta. Keskeisin kälikurssilla opittu asia?

Ylläpito. Ylläpidon lajeja

. LIFE+ HAKEMUKSEN VA V L A M L I M ST S E T L E U L 1

Ylläpito. Ylläpito. Ylläpidon lajeja Ohjelmistotuotanto, syksy 1998 Ylläpito

Laatu syntyy tekemällä

Data Sailors - COTOOL dokumentaatio Riskiloki

Tietotekniikan hyödyt Rakennustietosäätiö, Rakli, RTK, RTT, SKOL,

Suunnitteluvaihe prosessissa

TDD Käytännössä Todellinen työkalu vai lehmipoikien laukkaa? Harri Kulmala Solita Oy

Ohjelmistotuotanto, s /27/2003

1.3Lohkorakenne muodostetaan käyttämällä a) puolipistettä b) aaltosulkeita c) BEGIN ja END lausekkeita d) sisennystä

Miten johdan huolto- ja korjaamotoimintaa laadukkaasti? Autokauppa Finlandiatalo

Ohjelmistotuotanto s

Test-Driven Development

Digitaalinen haavoittuvuus MATINE Tampere

Ohjelmointikielet ja -paradigmat 5op. Markus Norrena

Uusi Ajatus Löytyy Luonnosta 3 (Finnish Edition)

Miten näkökulmat ovat syventyneet ISO ja välillä? Lassi Väisänen

Software product lines

Loppuraportti. Virtuaali-Frami, CAVE-ohjelmisto. Harri Mähönen projektiassistentti Seinäjoen ammattikorkeakoulu. Versio

Esikaupallisesti ratkaisu ongelmaan. Timo Valli 58. ebusiness Forum

Millainen on onnistunut ICT-projekti?

TAVOITTEIDEN ASETTAMINEN JA MITTAAMINEN

Avoin lähdekoodi hankinnoissa Juha Yrjölä

Liite 1: KualiKSB skenaariot ja PoC tulokset. 1. Palvelun kehittäjän näkökulma. KualiKSB. Sivu 1. Tilanne Vaatimus Ongelma jos vaatimus ei toteudu

Käytettävyyslaatumallin rakentaminen verkkosivustolle

Standardi IEC Ohjelmisto

Mihin kaikkeen voit törmätä testauspäällikön saappaissa?

Operatioanalyysi 2011, Harjoitus 4, viikko 40

Projektin suunnittelu

Projektisuunnitelma. KotKot. Helsinki Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos

Luovuudesta muutama lisäys insinöörin työkalupakkiin

Manu Setälä Suomen open source -keskus COSS

Tik Projektiryhmä: TeamAhma. Projektin HAYABUSA opponointi. Opponointisuunnitelma

Digitalisoituminen, verkottuminen ja koulutuksen tulevaisuus. Teemu Leinonen Medialaboratorio Taideteollinen korkeakoulu

Palvelusopimukset ja niiden laskuttaminen

SEPA päiväkirja. BetaTeam. Juho Mäkinen, 57796V, Jari Leppä, 42710V, Versio Pvm Tekijä Kuvaus

Transkriptio:

SYSTEEMITYÖ Tärkeitä sanoja

SYSTEEMITYÖN TÄRKEITÄ SANOJA Laatu (itse tuotteessa ja sen tekemisessä) Dokumentaatio Riskienhallinta Vaatimustenhallinta Uudelleenkäytettävyys Versionhallinta 2

LAATU Parityönä: Kirjoita paperille ajatuksia siitä, mitä on laatu ohjelmistotyössä Laita jokainen määritelmä omalle paperilleen ja kiinnitä paperi seinälle nastalla

LAATU ERI TAHOILTA MÄÄRITELTYNÄ Deming: Asiakkaalle tärkein tuote Crosby: Täyttää vaatimukset Ishikawa: Asiakastyytyväisyys Wesselius: Laatu = objektiivisesti arvioitavissa oleva komponentti + subjektiivisesti arvioitavissa oleva komponentti + kokonaan arvioimattomissa oleva komponentti. PIMS -tietokanta: Laatu: hintaa lukuun ottamatta kaikki muut ostopäätökseen vaikuttavat attribuutit Oxford dictionary: Erinomaisuuden aste ISO: Tuotteen tai palvelun kaikki piirteet ja ominaisuudet, joilla tuote tai palvelu täyttää sille asetetut tai oletettavat vaatimukset Kauppamiehen aksiooma: Asiakastyytyväisyys on tärkeintä. Tyytyväiset asiakkaat ostavat uudestaan ja kertovat muillekin hyvästä tuotteesta. Hyvä tuote tarkoittaa parempaa kuin kilpailijoilla. Weinberg: Laatu on arvoa (value) jollekin henkilölle

LAATU ERI NÄKÖKULMISTA Asiakas Vaatimukset Virheettömyys Aikataulu Budjetti Johto Aikataulu Budjetti Tehokkuus Työntekijä Virheettömyys Speksit

LAADUN ERITTELY 90-luvulla käsite laatujärjestelmä, sertifiointi, nykyisin integroitu johtamisjärjestelmään, puhutaan laadunhallinnasta 1. Tuotoksen laatu- Virheettömyys (aika)- Vaatimukset- Speksit- Ylläpidettävyys- Dokumentaatio 2. Prosessin laatu- Laadukas prosessi tuottaa laatua?- Aikataulu ja budjetti- Sisäiset kustannukset resurssien kulutus 3. (Resurssilaatu)- Kehittäjien osaamisella vaikutus tehokkuuteen ja tuotteen laatuun

LAADUNHALLINTAKEINOT Tuotoksen laatu Testaus Katselmoinnit/katselmukset (Tekninen katselmointi, läpikäynti, tarkastus - tarkoitus etsiä tuotoksesta virheitä lukemalla tuotosta esim. katselmus V-mallissa tai koulun ohjauspisteissä tai tarkastus tarkemmin määriteltynä kokouksena) Verifiointi ja validointi Prosessin laatu Laatujärjeselmät CMM SPICE

VIRHEEN SUHTEELLINEN KUSTANNUS

OHJELMISTON LAATU (OHJELMOIJAN NÄKÖKULMA) http://www.codinghorror.com/blog/2006/05/code-smells.html "Any fool can write code that a computer can understand. Good programmers write code that humans can understand."

OHJELMISTON LAATU - OHJEITA Martin Fowler DRY: do not repeat yourself, eli älä toista itseäsi. Ei siis copypasta-koodia! Boyscout Rule (partiolaisten sääntö): jätä leiripaikka siistimmäksi kuin mitä se oli tullessasi. Eli refaktoroi (kirjoita uudestaan) aikaisempaa koodia tarvittaessa. Single Responsibility Principle: yhdellä luokalla on yksi vastuualue. Vältetään monoliitteja, tuhansien rivien pituisia luokkia, jotka tekevät puolet järjestelmän toiminnoista. Koodistandardit/-käytännöt: yhdenmukaistetaan koodin ulkoasua (sisennökset, kommentointi, rakenteet) standardeilla. Esimerkkiä tästä: PHP: PSR-2 coding style guide tai Code conventions for Java.https://github.com/php-fig/fig-standards/blob/master/accepted/PSR-2-coding-style-guide.md Suunnittelumallit."A good developer should always want another dev to read his code, because that makes it possible for at least one of them to learn something" Mario Fuscohttp://www.codinghorror.com/blog/2006/01/code-reviews-just-do-it.html TDD: testivetoinen kehitys. Yksinkertaistettuna tarkoittaa sitä, että aina aluksi kirjoitetaan testitapaus, jota vasten toteutetaan varsinainen tuotantokoodi. Näin varmistetaan, että ohjelma tekee sen mikä on testien mukaan tarkoitus. Pomodoro-tekniikka: voi käyttää hyödyksi pariohjelmoinnissa, ja voi metodina auttaa saamaan asioita aikaiseksi: http://en.wikipedia.org/wiki/pomodoro_technique.

ESIMERKKEJÄ OHJELMATUOTTEEN VERSIOISTA järjestelmän kehitysversio, johon tehdään versionsuunnitelman mukaisia muutoksia järjestelmän toimitusversio, joka syntyy, kun kehitysversio on testattu, hyväksytty ja virallistettu järjestelmän asennettu versio, joka on tietylle asiakkaalle toimitettu ja asennustestauksessa hyväksytty toimitusversio 11

DOKUMENTTIEN VERSIONHALLINTA Versio Pvm Selitys Tekijät 0.1 0.2 1.0 12

HUOMIONARVOISTA Jokaisella yrityksellä on vähän oma tapansa toimia omat mallit omat menetelmät oma kuvausjärjestelmä jne. em. johdettu vuosien aikana ns. perusmalleista ja menetelmistä 13

VERSIONHALLINTA Mieti parin kanssa, kuinka toteuttaisitte versionhallintaa, jos teillä olisi käytössä: - palvelin ja tietoliikenneyhteydet - haluaisitte tehdä samasta ohjelmistosta kahta eri kehityslinjaa

HYTT -DOKUMENTTIMALLIT Hyväksytty ToimintaTapa http://www.cs.tut.fi/ohj/laatu/ 15

LOPUKSI Systeemityö on vaikeaa, mutta seuraavat seikat helpottavat RAAKA TYÖ LUOVUUS KOKEMUS MENETELMÄT ja MALLIT 16