Vaatimusmäärittely osana ohjelmistokehitysprosessia

Tässä tutkielmassa tutkittiin, mistä tekijöistä ohjelmistokehitysprosessi koos-tuu. Tämän lisäksi pyrittiin selvittämään, minkälainen on vaatimusmäärittelyn rooli ohjelmistokehityksessä. Tämä on tärkeää, sillä ohjelmistot ovat välttämättömiä nyky-yhteiskunnan toiminnalle. Vaatimusmäärittelyn roolin...

Täydet tiedot

Bibliografiset tiedot
Päätekijä: Virtala, Jani
Muut tekijät: Informaatioteknologian tiedekunta, Faculty of Information Technology, Informaatioteknologia, Information Technology, Jyväskylän yliopisto, University of Jyväskylä
Aineistotyyppi: Kandityö
Kieli:fin
Julkaistu: 2019
Aiheet:
Linkit: https://jyx.jyu.fi/handle/123456789/63545
_version_ 1828193210164314112
author Virtala, Jani
author2 Informaatioteknologian tiedekunta Faculty of Information Technology Informaatioteknologia Information Technology Jyväskylän yliopisto University of Jyväskylä
author_facet Virtala, Jani Informaatioteknologian tiedekunta Faculty of Information Technology Informaatioteknologia Information Technology Jyväskylän yliopisto University of Jyväskylä Virtala, Jani Informaatioteknologian tiedekunta Faculty of Information Technology Informaatioteknologia Information Technology Jyväskylän yliopisto University of Jyväskylä
author_sort Virtala, Jani
datasource_str_mv jyx
description Tässä tutkielmassa tutkittiin, mistä tekijöistä ohjelmistokehitysprosessi koos-tuu. Tämän lisäksi pyrittiin selvittämään, minkälainen on vaatimusmäärittelyn rooli ohjelmistokehityksessä. Tämä on tärkeää, sillä ohjelmistot ovat välttämättömiä nyky-yhteiskunnan toiminnalle. Vaatimusmäärittelyn roolin tutkiminen on tärkeää, sillä puutteelliset vaatimukset ovat isoin syy ohjelmistoprojektin epäonnistumiselle. Tutkimus suoritettiin kirjallisuuskatsauksena. Lähteinä tutkielmaan kerättiin alan oppikirjoista ja tieteellisistä artikkeleista. Ohjelmistokehitysprosessia tutkittiin kolmen tekijän avulla: ohjelmistokehityksen kerrokset, ohjelmistokehityksen elinkaari ja ohjelmistokehitysprosessimallit. Ohjelmistokehitys pitää sisällään neljä kerrosta: organisaation sitoutuminen laatuun, prosessikerros, menetelmäkerros ja työkalukerros. Eri kirjoittajat kuvaavat ohjelmistonkehityksen elinkaaren eri vaiheita eri tavoin. Laajimman ja vähiten yksityiskohtaisen kategorisoinnin mukaan ohjelmistonkehityksen elinkaari jaetaan kolmeen vaiheeseen: määrittely-, kehitys- ja käyttöönottovaihe. Ohjelmistokehitysprosessimallilla tarkoitetaan yksinkertaistettua esitystapaa ohjelmistoprosessista. Malleja voidaan käyttää selittämään ohjelmistokehityksen eri lähestymistapoja. Tähän tutkielmaan valittiin tarkempaan tarkisteluun vesiputousmalli sekä Extreme Programming, jotka ovat kaksi toisestaan poikkeavaa mallia eri aikakausilta. Vaatimustenmäärittelyn roolia tutkittiin vaatimusmäärittelyprosessin, vaatimusten kategorioinnin ja hyvien vaatimusten kriteerien avulla. Vaatimusmäärittelyprosessi pitää sisällään kolme päävaihetta: vaatimusten kerääminen ja analysointi, vaatimusten määrittely sekä vaatimusten validointi. Vaatimukset kategorisoidaan toiminnallisiin ja ei-toiminnallisiin vaatimuksiin. Toiminnalliset vaatimukset ovat vaatimuksia, jotka kuvaavat millaisia palveluita ohjelmiston tulee tarjota, kuinka se reagoi syötteisiin ja kuinka sen tulisi käyttäytyä. Ei-toiminnalliset vaatimukset ovat ohjelmiston tarjoamien palveluiden tai toimintojen rajoituksia. Jotta vaatimukset ovat hyviä, täytyy niiden olla täydellisiä, selkeitä, yksiselitteisiä, johdonmukaisia, sopivia, priorisoituja, toteutettavissa olevia, ymmärrettäviä, asiaankuuluvia, hyvin jäsenneltyjä, muokattavissa olevia, jäljitettäviä, sekä niiden pitää olla mitattavissa.
first_indexed 2019-08-19T08:21:23Z
format Kandityö
fullrecord [{"key": "dc.contributor.advisor", "value": "Palonen, Teija", "language": "", "element": "contributor", "qualifier": "advisor", "schema": "dc"}, {"key": "dc.contributor.author", "value": "Virtala, Jani", "language": "", "element": "contributor", "qualifier": "author", "schema": "dc"}, {"key": "dc.date.accessioned", "value": "2019-04-18T07:02:02Z", "language": null, "element": "date", "qualifier": "accessioned", "schema": "dc"}, {"key": "dc.date.available", "value": "2019-04-18T07:02:02Z", "language": null, "element": "date", "qualifier": "available", "schema": "dc"}, {"key": "dc.date.issued", "value": "2019", "language": "", "element": "date", "qualifier": "issued", "schema": "dc"}, {"key": "dc.identifier.uri", "value": "https://jyx.jyu.fi/handle/123456789/63545", "language": null, "element": "identifier", "qualifier": "uri", "schema": "dc"}, {"key": "dc.description.abstract", "value": "T\u00e4ss\u00e4 tutkielmassa tutkittiin, mist\u00e4 tekij\u00f6ist\u00e4 ohjelmistokehitysprosessi koos-tuu. T\u00e4m\u00e4n lis\u00e4ksi pyrittiin selvitt\u00e4m\u00e4\u00e4n, mink\u00e4lainen on vaatimusm\u00e4\u00e4rittelyn rooli ohjelmistokehityksess\u00e4. T\u00e4m\u00e4 on t\u00e4rke\u00e4\u00e4, sill\u00e4 ohjelmistot ovat v\u00e4ltt\u00e4m\u00e4tt\u00f6mi\u00e4 nyky-yhteiskunnan toiminnalle. Vaatimusm\u00e4\u00e4rittelyn roolin tutkiminen on t\u00e4rke\u00e4\u00e4, sill\u00e4 puutteelliset vaatimukset ovat isoin syy ohjelmistoprojektin ep\u00e4onnistumiselle. Tutkimus suoritettiin kirjallisuuskatsauksena. L\u00e4htein\u00e4 tutkielmaan ker\u00e4ttiin alan oppikirjoista ja tieteellisist\u00e4 artikkeleista.\nOhjelmistokehitysprosessia tutkittiin kolmen tekij\u00e4n avulla: ohjelmistokehityksen kerrokset, ohjelmistokehityksen elinkaari ja ohjelmistokehitysprosessimallit. Ohjelmistokehitys pit\u00e4\u00e4 sis\u00e4ll\u00e4\u00e4n nelj\u00e4 kerrosta: organisaation sitoutuminen laatuun, prosessikerros, menetelm\u00e4kerros ja ty\u00f6kalukerros. Eri kirjoittajat kuvaavat ohjelmistonkehityksen elinkaaren eri vaiheita eri tavoin. Laajimman ja v\u00e4hiten yksityiskohtaisen kategorisoinnin mukaan ohjelmistonkehityksen elinkaari jaetaan kolmeen vaiheeseen: m\u00e4\u00e4rittely-, kehitys- ja k\u00e4ytt\u00f6\u00f6nottovaihe. Ohjelmistokehitysprosessimallilla tarkoitetaan yksinkertaistettua esitystapaa ohjelmistoprosessista. Malleja voidaan k\u00e4ytt\u00e4\u00e4 selitt\u00e4m\u00e4\u00e4n ohjelmistokehityksen eri l\u00e4hestymistapoja. T\u00e4h\u00e4n tutkielmaan valittiin tarkempaan tarkisteluun vesiputousmalli sek\u00e4 Extreme Programming, jotka ovat kaksi toisestaan poikkeavaa mallia eri aikakausilta.\nVaatimustenm\u00e4\u00e4rittelyn roolia tutkittiin vaatimusm\u00e4\u00e4rittelyprosessin, vaatimusten kategorioinnin ja hyvien vaatimusten kriteerien avulla. Vaatimusm\u00e4\u00e4rittelyprosessi pit\u00e4\u00e4 sis\u00e4ll\u00e4\u00e4n kolme p\u00e4\u00e4vaihetta: vaatimusten ker\u00e4\u00e4minen ja analysointi, vaatimusten m\u00e4\u00e4rittely sek\u00e4 vaatimusten validointi. Vaatimukset kategorisoidaan toiminnallisiin ja ei-toiminnallisiin vaatimuksiin. Toiminnalliset vaatimukset ovat vaatimuksia, jotka kuvaavat millaisia palveluita ohjelmiston tulee tarjota, kuinka se reagoi sy\u00f6tteisiin ja kuinka sen tulisi k\u00e4ytt\u00e4yty\u00e4. Ei-toiminnalliset vaatimukset ovat ohjelmiston tarjoamien palveluiden tai toimintojen rajoituksia. Jotta vaatimukset ovat hyvi\u00e4, t\u00e4ytyy niiden olla t\u00e4ydellisi\u00e4, selkeit\u00e4, yksiselitteisi\u00e4, johdonmukaisia, sopivia, priorisoituja, toteutettavissa olevia, ymm\u00e4rrett\u00e4vi\u00e4, asiaankuuluvia, hyvin j\u00e4senneltyj\u00e4, muokattavissa olevia, j\u00e4ljitett\u00e4vi\u00e4, sek\u00e4 niiden pit\u00e4\u00e4 olla mitattavissa.", "language": "fi", "element": "description", "qualifier": "abstract", "schema": "dc"}, {"key": "dc.description.provenance", "value": "Submitted by Miia Hakanen (mihakane@jyu.fi) on 2019-04-18T07:02:02Z\nNo. of bitstreams: 0", "language": "en", "element": "description", "qualifier": "provenance", "schema": "dc"}, {"key": "dc.description.provenance", "value": "Made available in DSpace on 2019-04-18T07:02:02Z (GMT). No. of bitstreams: 0\n Previous issue date: 2019", "language": "en", "element": "description", "qualifier": "provenance", "schema": "dc"}, {"key": "dc.format.extent", "value": "25", "language": "", "element": "format", "qualifier": "extent", "schema": "dc"}, {"key": "dc.language.iso", "value": "fin", "language": null, "element": "language", "qualifier": "iso", "schema": "dc"}, {"key": "dc.rights", "value": "In Copyright", "language": "en", "element": "rights", "qualifier": null, "schema": "dc"}, {"key": "dc.title", "value": "Vaatimusm\u00e4\u00e4rittely osana ohjelmistokehitysprosessia", "language": "", "element": "title", "qualifier": null, "schema": "dc"}, {"key": "dc.type", "value": "bachelor thesis", "language": null, "element": "type", "qualifier": null, "schema": "dc"}, {"key": "dc.identifier.urn", "value": "URN:NBN:fi:jyu-201904182219", "language": "", "element": "identifier", "qualifier": "urn", "schema": "dc"}, {"key": "dc.type.ontasot", "value": "Bachelor's thesis", "language": "en", "element": "type", "qualifier": "ontasot", "schema": "dc"}, {"key": "dc.type.ontasot", "value": "Kandidaatinty\u00f6", "language": "fi", "element": "type", "qualifier": "ontasot", "schema": "dc"}, {"key": "dc.contributor.faculty", "value": "Informaatioteknologian tiedekunta", "language": "fi", "element": "contributor", "qualifier": "faculty", "schema": "dc"}, {"key": "dc.contributor.faculty", "value": "Faculty of Information Technology", "language": "en", "element": "contributor", "qualifier": "faculty", "schema": "dc"}, {"key": "dc.contributor.department", "value": "Informaatioteknologia", "language": "fi", "element": "contributor", "qualifier": "department", "schema": "dc"}, {"key": "dc.contributor.department", "value": "Information Technology", "language": "en", "element": "contributor", "qualifier": "department", "schema": "dc"}, {"key": "dc.contributor.organization", "value": "Jyv\u00e4skyl\u00e4n yliopisto", "language": "fi", "element": "contributor", "qualifier": "organization", "schema": "dc"}, {"key": "dc.contributor.organization", "value": "University of Jyv\u00e4skyl\u00e4", "language": "en", "element": "contributor", "qualifier": "organization", "schema": "dc"}, {"key": "dc.subject.discipline", "value": "Tietoj\u00e4rjestelm\u00e4tiede", "language": "fi", "element": "subject", "qualifier": "discipline", "schema": "dc"}, {"key": "dc.subject.discipline", "value": "Information Systems Science", "language": "en", "element": "subject", "qualifier": "discipline", "schema": "dc"}, {"key": "yvv.contractresearch.funding", "value": "0", "language": "", "element": "contractresearch", "qualifier": "funding", "schema": "yvv"}, {"key": "dc.type.coar", "value": "http://purl.org/coar/resource_type/c_7a1f", "language": null, "element": "type", "qualifier": "coar", "schema": "dc"}, {"key": "dc.rights.accesslevel", "value": "restrictedAccess", "language": null, "element": "rights", "qualifier": "accesslevel", "schema": "dc"}, {"key": "dc.type.publication", "value": "bachelorThesis", "language": null, "element": "type", "qualifier": "publication", "schema": "dc"}, {"key": "dc.subject.oppiainekoodi", "value": "601", "language": "", "element": "subject", "qualifier": "oppiainekoodi", "schema": "dc"}, {"key": "dc.subject.yso", "value": "ohjelmistokehitys", "language": null, "element": "subject", "qualifier": "yso", "schema": "dc"}, {"key": "dc.subject.yso", "value": "vaatimukset", "language": null, "element": "subject", "qualifier": "yso", "schema": "dc"}, {"key": "dc.subject.yso", "value": "vaatimusm\u00e4\u00e4rittelyt", "language": null, "element": "subject", "qualifier": "yso", "schema": "dc"}, {"key": "dc.rights.url", "value": "https://rightsstatements.org/page/InC/1.0/", "language": null, "element": "rights", "qualifier": "url", "schema": "dc"}, {"key": "dc.rights.accessrights", "value": "The author has not given permission to make the work publicly available electronically. Therefore the material can be read only at the archival workstation at Jyv\u00e4skyl\u00e4 University Library (https://kirjasto.jyu.fi/en/workspaces/facilities).", "language": "en", "element": "rights", "qualifier": "accessrights", "schema": "dc"}, {"key": "dc.rights.accessrights", "value": "Tekij\u00e4 ei ole antanut lupaa avoimeen julkaisuun, joten aineisto on luettavissa vain Jyv\u00e4skyl\u00e4n yliopiston kirjaston arkistoty\u00f6semalta. Ks. https://kirjasto.jyu.fi/fi/tyoskentelytilat/laitteet-ja-tilat..", "language": "fi", "element": "rights", "qualifier": "accessrights", "schema": "dc"}]
id jyx.123456789_63545
language fin
last_indexed 2025-03-31T20:01:39Z
main_date 2019-01-01T00:00:00Z
main_date_str 2019
publishDate 2019
record_format qdc
source_str_mv jyx
spellingShingle Virtala, Jani Vaatimusmäärittely osana ohjelmistokehitysprosessia Tietojärjestelmätiede Information Systems Science 601 ohjelmistokehitys vaatimukset vaatimusmäärittelyt
title Vaatimusmäärittely osana ohjelmistokehitysprosessia
title_full Vaatimusmäärittely osana ohjelmistokehitysprosessia
title_fullStr Vaatimusmäärittely osana ohjelmistokehitysprosessia Vaatimusmäärittely osana ohjelmistokehitysprosessia
title_full_unstemmed Vaatimusmäärittely osana ohjelmistokehitysprosessia Vaatimusmäärittely osana ohjelmistokehitysprosessia
title_short Vaatimusmäärittely osana ohjelmistokehitysprosessia
title_sort vaatimusmäärittely osana ohjelmistokehitysprosessia
title_txtP Vaatimusmäärittely osana ohjelmistokehitysprosessia
topic Tietojärjestelmätiede Information Systems Science 601 ohjelmistokehitys vaatimukset vaatimusmäärittelyt
topic_facet 601 Information Systems Science Tietojärjestelmätiede ohjelmistokehitys vaatimukset vaatimusmäärittelyt
url https://jyx.jyu.fi/handle/123456789/63545 http://www.urn.fi/URN:NBN:fi:jyu-201904182219
work_keys_str_mv AT virtalajani vaatimusmäärittelyosanaohjelmistokehitysprosessia