24 resultados para ohjelmistokehitys
Resumo:
Tämä diplomityö tarkastelee TETRA-verkon soveltuvuutta turvallisuusviranomaisille tarkoitettuun telemetriasovellukseen, jossa erilaiset mittausdatat ja hälytystiedot kulkevat verkon yli SDS-viestiliikenteenä. Diplomityön tarkoituksena on tehdä kaksi sulautettua ohjelmistoa sekä yksi PCohjelmisto, joita käytetään rakennettavassa demolaitteistossa. Lisäksi selvitetään TETRA-verkon toimivuus ja rajoitukset sovelluksessa eri olosuhteissa ja eri kuormitustilanteissa. Diplomityön teoriaosassa käydään läpi työn määrittely ja ohjelmistonkehitysprosessin läpivienti eri osa-alueilla. Loppuosassa kuvataan tehdyt ohjelmistot erikseen ja yhdessä suunnittelusta toteutukseen, sekä lopullisen järjestelmän testaus.
Resumo:
Työajan seuranta ja kohdistaminen oikeisiin kustannuslajeihin on yrityksen suorituskyvyn ja kasvun kannalta usein välttämättömyys. Tässä työssä tutkitaan mobiiliteknologioiden mahdollisuuksia ja soveltuvuutta tuottaa palveluita työajan hallinnointiin, valitaan sopiva arkkitehtuuri ja kehitetään Java ME –teknologialla prototyyppi, joka on helposti integroitavissa yrityksen nykyisiin palvelinpuolen järjestelmiin ja tietokantoihin. Työn sovellusosuudessa kuvataan prototyypin ohjelmoinnissa käytetyt työkalut, menetelmät, ongelmakohdat sekä niiden ratkaisut. Suunnitelluissa käyttötapauksissa tapahtumatiedot syötetään manuaalisesti puhelimen käyttöliittymän kautta tai automatisoidummin kerätään kustannuskohdistetietoa työkohteisiin sijoitetuista NFC-tageista. Työaikaleimaamista testattiin emulaattorilla ja oikealla matkapuhelimella. Lopputuloksena asiakkaan työajanhallinnan tapahtumat siirtyvät langattomasti ja reaaliaikaisesti yrityksen webpalvelimelle JSON-formaatissa.
Resumo:
Hajautetulla järjestelmäkehityksellä tarkoitetaan tietojärjestelmän kehitysprojektin hajauttamista maantieteellisesti jakamalla projektiryhmä virtuaalitiimeiksi eri paikkakunnille tai eri maihin. Tässä diplomityössä tutustutaan hajautettuun järjestelmäkehitykseen käsitteenä sekä perehdytään kehitysprosessin hajauttamisen ja virtuaalitiimien käytön potentiaalisiin hyötyihin ja ongelmiin sekä kirjallisuuden että eräässä yrityksessä toteutetun projektin pohjalta, sekä kirjallisuudessaesiintyviin ratkaisuihin riskien pitämiseksi mahdollisimman pieninä. Tältä pohjalta etsitään keskeisimmät projektin onnistumiseen vaikuttavat tekijät. Työssä haetaan kirjallisuudessa esitettyjä keinoja yhdistämällä ratkaisuja virtuaalitiimien potentiaalisten hyötyjen toteuttamiseksi ja riskien välttämiseksi. Kehitettyjä ratkaisuja tarkastellaan sekä kirjallisuuden esimerkkitapausten, että hajautetusta järjestelmäkehitysprojektista saatujen omakohtaisten käytännön kokemusten valossa. Työssä luodaan myös silmäys hajautettua työskentelyätukeviin työkaluihin. Kirjallisuuden ja osin myös käytännön kokemusten pohjalta merkittävimmiksi hajautetun järjestelmäkehitystyön tukemisessa osoittautuivat työryhmän viestinnän tukeminen, erityisesti silloin kun ryhmänjäsenet eivät voi käyttää äidinkieltään, ryhmän jäsenten välisen luottamuksen ja yhteenkuuluvuuden luominen, sekä työn koordinointi.
Resumo:
Tämä diplomityö käsittelee kahden sotilaallisen koalition yhteentoimivuuden haasteita ja toteutusta kaupallisintyökaluin. Työ pohjautuu kahteen todelliseen, palvelusuuntautunutta arkkitehtuurisuunnittelua (SOA) hyödyntäneeseen integraatioprojektiin jotka on toteutettu Suomen IBM:n Palveluyksikössä vuosina 2006 - 2007. Työn tavoitteena on ollut tutkia sotilaallisten koalitioiden järjestelmä - ja tiedonvaihtoyhteentoimivuuden menetelmiä, näkökulmia ja teknistä toteutusta kaupallisin ohjelmistotuottein ja yhteistä tietomallia käyttäen. Lisäksi esitetään puolustustoimialan erityispiirteet tietojärjestelmätoimittajien ohjelmistokehitys - prosesseihin liittyen. Tätä varten tutkittiin koalitioiden käyttöön tarkoitettuja olemassa olevia ohjelmistoarkkitehtuureja ja yhteentoimivuusmalleja sekä sovitettiin niitä SOA - arkkitehtuuriajatteluun. Työn teoreettisena pohjana käytettiin organisatorisen ja teknisen yhteentoimivuuden kuvaavaa Layers of Coalition Interoperability (LCI) - mallia, minkä jälkeen mallin teknistä osiota käytettiin pohjana SOA - palveluihin perustuvan esimerkkijärjestelmän kehittämiseen kahden kuvitteellisen koalition tiedonvaihtoa varten. Työn keskeisinä tuloksina on syntynyt suunnitelma koalitioiden taustajärjestelmien yhdistämisestä dynaamisten SOA- palveluiden avulla yhteiseen JC3IEDM - tietomalliin. Tämä tietomalli vuorostaan antaa mahdollisuuden järjestelmän laajentamiseen esimerkiksi avustusjärjestöjen, poliisivoimien ja terveydenhuollon organisaatioiden tarpeisiin.
Resumo:
Käyttäjäkeskeinen ohjelmistokehityson nimensä mukaisesti käyttäjän tarpeista ja vaatimuksista lähtevä ohjelmistojen kehittämistapa. Tällä tavoin halutaan saada selville, millaisia vaikutusmahdollisuuksia hän haluaa. Työ käsittelee tähän perustuvaa toteutusta, jolla käyttäjät voivat toteuttaa eksplisiittistä personointia eli toisin sanoen voivat muokataitse omaa henkilökohtaista tietoaan. Käyttäjille tarjotaan mahdollisuus vaikuttaa tapauskohtaisesti, kuinka hän käyttää personointitietojaan. Työssä luodaan avoimen lähdekoodin väliohjelmistoalustalle (MUPE) personointitiedon kustomointityökalu ja sitä hyödyntävät havainnollistavat palvelut. Tämän pohjana on aikaisemmin suoritettu informaation keruu. Naiden toteutuksien avulla on luotu käyttötapausesimerkkejä, joista voidaan havaita erilaisten personointitietojen käytön vaikutukset käyttäjän kannalta. Työkalun ja havainnollistavien palvelujen avulla luodut esimerkit tarjoavat hyvän ja kestävän pohjan sekä kustomointityökalun että käyttötapausesimerkkien laajentamiselle. Naita esimerkkejä voidaan myös jo suoraan soveltaa todellisissa käyttäjäkeskeisissä kenttätutkimuksissa.
Resumo:
Ohjelmistokehitys on monimutkainen prosessi. Yksi keskeisistä tekijöistä siinä on ohjelmistolle asetettavat vaatimukset. Näitä vaatimuksia on hyvin monenlaisia, ja eri tasoisia; toivotusta toiminnallisuudesta hyvinkin yksityiskohtaisiin vaatimuksiin. Näiden vaatimusten hallinta on myöskin hyvin monitahoista, vaikkakin se on kirjallisuudessa esitetty selkeänä prosessissa, joka on sarja toisistaan erottuviavaiheita. Työn painopiste oli näiden vaatimusten muutoksen ja valmiiseen ohjelmistoon kohdistuvan palautteen hallinnassa, ja kuinka vaatimustenhallintaohjelmisto voisi olla avuksi näissä prosesseissa. Vaatimustenhallintatyökalun käyttö ei sinällään ratkaise mitään ongelmia, mutta se suo puitteet parantaa vaatimusten hallitsemista. Työkalun käytöstä on muun muassa seuraavia etuja: vaatimusten keskitetty varastointi, käyttäjäoikeuksien määrittely koskien eri käyttäjiä ja heidän pääsyään näkemään tai muuttamaan tietoa, muutoksenhallintaprosessin hallinta, muutosten vaikutuksen analysointi ja jäljitettävyys ja pääsy tietoihin web-selaimella.
Resumo:
Tutkimuksen tavoitteena oli selvittää ohjelmistotestauksen tarve ohjelmistoliiketoiminnan yrityksissä. Ensin tutkittiin ohjelmistotestauksen sekä markkinatutkimuksen teoriaa, kirjallisuuden ja lehtiartikkelien avulla. Markkinatutkimus toteutettiin kirjekyselynä. Erityistä huomiota kiinnitettiin testauksen ulkoistamiseen, yritysten haasteisiin sekä tarpeisiin liittyen ohjelmistokehitykseen ja –testaukseen. Ohjelmistotestauksen avulla saavutettava laatu on olennainen osa suomalaista ohjelmistoliiketoiminnan kilpailukykyä ja se on keino erottua edukseen muista ohjelmistotuotteista kilpailtaessa samoista asiakkaista kansainvälisillä markkinoilla. Markkinatutkimuksessa saatiin merkittäviä tuloksia ohjelmistotestausmarkkinoista, yritysten sisäisestä sekä ulkoisesta ohjelmistotestauksesta ja testaustyökalujen käytöstä. Tutkimuksissa selvisi, että yritysten suurimpana haasteena oli ohjelmistokehitys- ja testausprosessien kehittäminen. Tätä aihetta on Suomessa tutkinut Teknillinen korkeakoulusta SoberIT-yksikkö ja he ovat kehittäneet SEMS-ohjelmistotuotannon ohjausjärjestelmän pk-ohjelmistotuoteyrityksille. SoftaTest aikoo hyödyntää näitä tutkimustuloksia mm. perustamalla liiketoimintaan tähtäävän projektin vahvistamaan suomalaisten ohjelmistotuoteyritysten menestymistä markkinoilla.
Resumo:
Tämä diplomityö käsittelee vaatimusmäärittelyä. Erityinen keskittymisalue on vaatimusten jäljitettävyys. Vaatimusmäärittely on osa ohjelmistokehitysprosessia. Insinöörit tietävät, että ymmärtääkseen ongelmaa on sen lähtökohdat ymmärrettävä. Tästä huolimatta määrittelyvaihe epähuomioidaan helposti. Diplomityössä kartoitetaan ensin vaatimusmäärittelyä järjestelmäprojektin osana. Vaatimusmäärittelyn rakennetta tarkennetaan ja sen sisältöä tuodaan esille. Olemassaolevana projektina analysoidaan, kuinka Soneran Mobile Pay osaston suorittama vaatimusmäärittely on toteutunut Mobile Payment Platform projektin alkuvaiheessa. Lähinnä keskitytään näyttämään, kuinka vaatimukset on kirjattu ylös. Tämän jälkeen tarkastellaan jäljitettävyyden olemusta. Työssä kartoitetaan lukijalle, mitä jäljitettävyys tarkoittaa. Kartoituksen jälkeen käydään läpi jäljitettävyyttä tukevia toimenpiteitä Sonera Mobile Payn tuotekehitysprosessissa.
Resumo:
Diplomityö kartoittaa yleisesti tietoturvaohjelmistokehityksessä huomioitavia immateriaalioikeudellisia näkökohtia ja selvittää yksityiskohtaisemmin niiden soveltamista ja vaikutusta erään tietoturvakomponentin suunnittelussa ja toteutuksessa Soneran TradeXpress-ohjelmistoon. Kyseinen komponentti mahdollistaa muun muassa autentikaation ja salauksen käytön sähköisessä tiedonsiirrossa. Työ käsittää myös perustiedot tietoturvasta ja TradeXpress-ohjelmistosta, jotta komponentin kehitystä käsittelevän osuuden ymmärtäminen olisi helpompaa. Immateriaalioikeutta käsitellään vain niiltä osin, joilla on vaikutusta tietokoneohjelmiin ja ohjelmistotuotantoon. Näitä ovat muun muassa tekijänoikeus, patenttioikeus ja tavaramerkkioikeus. Diplomityön tuloksena syntyi selvitys immateriaalioikeudesta ja sen vaikutuksesta ohjelmistotuotantoprosesseihin.
Resumo:
This thesis studies evaluation of software development practices through an error analysis. The work presents software development process, software testing, software errors, error classification and software process improvement methods. The practical part of the work presents results from the error analysis of one software process. It also gives improvement ideas for the project. It was noticed that the classification of the error data was inadequate in the project. Because of this it was impossible to use the error data effectively. With the error analysis we were able to show that there were deficiencies in design and analyzing phases, implementation phase and in testing phase. The work gives ideas for improving error classification and for software development practices.
Resumo:
Työn tavoitteena oli selvittää asiakkuudenhallinnan aiheuttamia vaatimuksia ohjelmointikehityksen kannalta. Työ tehtiin Turussa Software Innovation Finland Oy:lle. Työssä kerrotaan PROSPEKTI-asiakkuudenhallintaohjelmiston kehittämiskäytännöistä ja ohjelmistolle asetetuista vaatimuksista. Taustaselvityksen ja kirjallisuuskatsauksen jälkeen kerrotaan ohjelmiston uusien ominaisuuksien kehittämisestä. Tämän jälkeen esitellään kaksi asiakaskohtaista räätälöintiprojektia. Seuraavaksi kuvataan, miten ohjelmiston toiminnallisuus varmennetaan sekä havaitut virheet korjataan. Tuloksena on kuvaus yrityksen tuotekehitysprosessista, jota voidaan käyttää esimerkinomaisena pohjana kun halutaan kehittää asiakkuudenhallintaohjelmistoa.
Resumo:
Yritysohjelmistojen kehittäminen on monesti aikataulukriittistä ja tuottavuusvaatimukset ovat korkeita. Työssä kehitettiin tyypillisen web-käyttöliittymän omaavan J2EE-sovelluksen koontiin soveltuva koontimenetelmä, joka hyödyntää XP:n (Extreme Programming) sovelluskehityskäytäntöjä. Tärkeimpiä näistä on automatisoitu testaus, jonka päätyypit ovat automatisoitu yksikkö- ja integrointitestaus. Työn aikana asetettiin tavoitteet koontimenetelmälle sekä evaluointiin ja valittiin markkinoilla olevista työkaluista toimeksiantajan ympäristöön sopiva joukko. Koontimenetelmän toteutuksen tarkastelussa havaittiin, että XP:n käytännöt soveltuvat J2EE-sovelluskehitykseen ja tarpeelliset työkalut tähän ovat olemassa.
Resumo:
During recent years, mobile phone markets have changed significantly. Asian markets have become vital for the manufacturers with their millions of end users and multiple major mobile network operators. This has resulted in software development as global companies have research and development sites running in multiple locations, including Asia. The reasons behind this are not only in reducing labor costs but also in capitalizing on the local knowledge and knowhow. A ramp-up site has multiple effects in the software development and software release activities. This thesis focuses on representing the importance of software testing as part of software development process and highlighting issues that need to be considered during ramp-up activities. In addition this work tries to emphasize the importance of communication between parties and information gathering prior to setting up the ramp-up site. The output of this thesis was successful software testing site ramp-up within the set time limits. The quality of software testing work was assured and the ramp-up -project requirements were achieved.
Resumo:
Kandidaatin työmme tarkoitus on tutkia voisiko ketteriä ohjelmistokehitysmenetelmiä soveltaa innovaatioprosessiin. Innovaatioprosessissa on hyvin samankaltaiset vaiheet kuin perinteisessä ohjelmistokehitysprosessissa eli vesiputousmallissa. Vesiputousmallin ongelmia on ratkaistu ketterien menetelmien keinoin, joten päätimme lähteä tutkimaan löytyisikö perinteisen ohjelmistokehitysprosessin ja innovaatioprosessin ongelmista yhteneviä piirteitä. Oletimme, että jos ongelmat yhtenevät tarpeeksi, voisi ketteristä menetelmistä löytyä keinoja innovaatioprosessin ongelmien ratkaisemiseen. Tavoitteena on löytää innovaatioprosessin parannuskohteita, joihin ketteristä menetelmistä löytyisi ratkaisu joko kokonaan tai osittain. Aluksi tarkastellaan innovaatioprosessin historiaa, kehitystä ja ongelmia. Innovaatioprosessin tutkimisen jälkeen käydään läpi järjestelmäkehitysprosessin historiaa, kehitystä ja ongelmia. Järjestelmäkehitysprosessin jälkeen käydään läpi merkittävimmät ketterät menetelmät, jotka ovat ratkaisseet perinteisen ohjelmistokehitysprosessin keskeisiä ongelmia. Työmme lopussa on innovaatioprosessin ja järjestelmäkehitysprosessin synteesi. Synteesissä tutkitaan ongelmien yhtenevyyttä ja ketterien menetelmien ratkaisuja ongelmiin. Synteesissä myös pohdimme, mitä ketterien menetelmien työkaluista voisi soveltaa innovaatioprosessin. Työn johtopäätös on, että ketteristä menetelmistä löytyy sovellettavia työtapoja innovaatioprosessiin. Työn laajuus estää soveltamisen mahdollisuuksien tarkemman tutkimisen ja yksittäisten ketterien työtapojen soveltaminen osaksi innovaatioprosessia olisikin hyvä jatkotutkimuksen aihe.
Resumo:
Modern sophisticated telecommunication devices require even more and more comprehensive testing to ensure quality. The test case amount to ensure well enough coverage of testing has increased rapidly and this increased demand cannot be fulfilled anymore only by using manual testing. Also new agile development models require execution of all test cases with every iteration. This has lead manufactures to use test automation more than ever to achieve adequate testing coverage and quality. This thesis is separated into three parts. Evolution of cellular networks is presented at the beginning of the first part. Also software testing, test automation and the influence of development model for testing are examined in the first part. The second part describes a process which was used to implement test automation scheme for functional testing of LTE core network MME element. In implementation of the test automation scheme agile development models and Robot Framework test automation tool were used. In the third part two alternative models are presented for integrating this test automation scheme as part of a continuous integration process. As a result, the test automation scheme for functional testing was implemented. Almost all new functional level testing test cases can now be automated with this scheme. In addition, two models for integrating this scheme to be part of a wider continuous integration pipe were introduced. Also shift from usage of a traditional waterfall model to a new agile development based model in testing stated to be successful.