8 resultados para C Programming
em Doria (National Library of Finland DSpace Services) - National Library of Finland, Finland
Resumo:
Software integration is a stage in a software development process to assemble separate components to produce a single product. It is important to manage the risks involved and being able to integrate smoothly, because software cannot be released without integrating it first. Furthermore, it has been shown that the integration and testing phase can make up 40 % of the overall project costs. These issues can be mitigated by using a software engineering practice called continuous integration. This thesis work presents how continuous integration is introduced to the author's employer organisation. This includes studying how the continuous integration process works and creating the technical basis to start using the process on future projects. The implemented system supports software written in C and C++ programming languages on Linux platform, but the general concepts can be applied to any programming language and platform by selecting the appropriate tools. The results demonstrate in detail what issues need to be solved when the process is acquired in a corporate environment. Additionally, they provide an implementation and process description suitable to the organisation. The results show that continuous integration can reduce the risks involved in a software process and increase the quality of the product as well.
Resumo:
Katselmoinnit ja tarkastusmenettelyt ovat osa ohjelmistotuotantoprosessin laadunvarmistusta. Staattisella tarkastamisella tarkoitetaan ohjelmistotuotteen visuaalista tarkastamista ohjelmistovirheiden havaitsemiseksi ja korjaamiseksi. Ohjelmiston lähdekoodin tarkastaminen voidaan suorittaa automaattisesti tarkoitukseen sopivalla ohjelmistolla l. analyysityökalulla. Tässä työssä toteutettiin analyysityökalu C#-kielisten lähdekoodien tarkastamiseen. Työkalulla suoritetussa kenttätestauksessa havaittiin tarkastettavissa ohjelmistoissa ohjelmiston ylläpitoon vaikuttavia puutteita. Lisäksi työssä tarkasteltiin katselmointeja osana ohjelmistotuotantoprosessin laadunvarmistusta sekä erilaisia ohjelmistovirheitä ja niiden lähteitä.
Resumo:
Ohjelmiston kehitystyökalut käyttävät infromaatiota kehittäjän tuottamasta lähdekoodista. Informaatiota hyödynnetään ohjelmistoprojektin eri vaiheissa ja eri tarkoituksissa. Moderneissa ohjelmistoprojekteissa käytetyn informaation määrä voi kasvaa erittäin suureksi. Ohjelmistotyökaluilla on omat informaatiomallinsa ja käyttömekanisminsa. Informaation määrä sekä erilliset työkaluinformaatiomallit tekevät erittäin hankalaksi rakentaa joustavaa työkaluympäristöä, erityisesti ongelma-aluekohtaiseen ohjelmiston kehitysprosessiin. Tässä työssä on analysoitu perusinformaatiometamalleja Unified Modeling language kielestä, Python ohjelmointikielestä ja C++ ohjelmointikielestä. Metainformaation taso on rajoitettu rakenteelliselle tasolle. Ajettavat rakenteet on jätetty pois. ModelBase metamalli on yhdistetty olemassa olevista analysoiduista metamalleista. Tätä metamallia voidaan käyttää tulevaisuudessa ohjelmistotyökalujen kehitykseen.
Resumo:
Matkustajainformaatio junassa koostuu vaunujen ulkopuolisilla kylkinäytöillä esitettävistä junan lähtö-, väli- ja määräasematiedoista yhdessä junan ja vaunujen myyntinumeroiden kanssa sekä vaunujen sisäpuolella automaattisista kuulutuksista ja matkustamon näytöillä esitettävästä staattisesta ja vaihtuvasta informaatiosta. Työssä toteutetaan matkustajainformaatiojärjestelmä käytettäväksi matkustajunissa. Järjestelmään syötetään ennen matkan alkua junan tiedot, jonka jälkeen se toimii automaattisesti ilman tarvetta junahenkilökunnan toimenpiteille. Poikkeustilanteissa junahenkilökunta voi estää järjestelmän toiminnan tai valita esiohjelmointuja erikoiskuulutuksia. Toteuttamismenetelmäksi valittiin C-ohjelmointikieli Linux-käyttöjärjestelmällä varustetulla sulautetulla rautatiekäyttöön suunnitellulla laitealustalla.
Resumo:
Työssä suunnitellaan kierrosnopeusmittauksen toteutus vanhaan Ford -teollisuusdieseliin käyttäen moottorin alkuperäistä kierrosnopeusanturia. Anturi kunnostetaan vaihtamalla vanha, palanut käämi uuteen digitaaliseen järjestelmään soveltuvaan käämiin. Sen toimin-ta halutulla kierrosnopeusalueella varmistetaan mittauksin ja tämän perusteella suunnitel-laan kytkentä sen liittämiseksi kierrosnopeuden laskevaan mikrokontrolleriin. Kytkennän toimivuutta testataan simuloimalla ennen prototyypin rakentamista. Erilaisia vaihtoehtoja analogisen näytön toteuttamiseksi tutkitaan ja niistä valitaan yksi ve-nekäyttöön soveltuva, joka toteutetaan järjestelmän näyttöratkaisuksi. Järjestelmälle suunnitellaan piirilevy, jolle prototyyppi kasataan. Mikrokontrollerille koodataan C -ohjelmointikielellä ohjelma, joka laskee dieselmoottorin kierrosnopeuden anturipulssien perusteella ja ohjaa näyttöä.
Resumo:
Ohjelmointitaito on asia, jonka oppimisesta ja opettamisesta voidaan olla montaa mieltä, eikä yhtä oikeaa tapaa toteuttaa ohjelmoinnin opetusta tunnu olevan olemassa. Se on kuitenkin selvää, että jotkin menetelmät ja työkalut tuntuvat olevan parempia kuin toiset. Lukuvuoden 2005-2006 päätteeksi Lappeenrannan teknillinen yliopisto päätti päivittää ohjelmoinnin perusopetusta, ja kokeili siirtymistä Python-ohjelmointikieleen ohjelmoinnin alkeiskursseilla. Koska kurssin varsinaiset muutokset keskittyivät tekniseen infrastruktuuriin, tutustuttiin alustavassa kirjallisuustutkimuksessa ensin erilaisiin lähestymistapoihin,aiempiin tapauksiin sekä mielekkäiden työkalujen löytämiseen. Tässä diplomityössä perehdytään ohjelmoinnin opetuksen työkaluihin sekä erityisesti Python-ohjelmointikielen hyödyntämiseen ohjelmoinnin perusopetuksessa. Diplomityö esittelee useita lähestymistapoja sekä keskittyy tutkimaan Pythonin soveltuvuutta alkeisopetuksen käyttötarkoituksiin. Diplomityö tutustuu myös Lappeenrannassa järjestetyn ohjelmoinnin perusteiden kurssin tuloksiin, ja analysoi sitä, pystyikö Python-pohjainen kurssi toteuttamaan teknisen yliopiston sille asettamat vaatimukset. Lopuksi aineistosta analysoidaan jatkotutkimuksen tarpeita sekä pyritään löytämään ne osa-alueet, joita näissä jatkotutkimuksissa tulisi vielä kehittää.
Resumo:
Tämä kandidaatintyö tutkii tietotekniikan perusopetuksessa keskeisen aiheen,ohjelmoinnin, alkeisopetusta ja siihen liittyviä ongelmia. Työssä perehdytään ohjelmoinnin perusopetusmenetelmiin ja opetuksen lähestymistapoihin, sekä ratkaisuihin, joilla opetusta voidaan tehostaa. Näitä ratkaisuja työssä ovat mm. ohjelmointikielen valinta, käytettävän kehitysympäristön löytäminen sekä kurssia tukevien opetusapuvälineiden etsiminen. Lisäksi kurssin läpivientiin liittyvien toimintojen, kuten harjoitusten ja mahdollisten viikkotehtävien valinta kuuluu osaksitätä työtä. Työ itsessään lähestyy aihetta tutkimalla Pythonin soveltuvuutta ohjelmoinnin alkeisopetukseen mm. vertailemalla sitä muihin olemassa oleviin yleisiin opetuskieliin, kuten C, C++ tai Java. Se tarkastelee kielen hyviä ja huonoja puolia, sekä tutkii, voidaanko Pythonia hyödyntää luontevasti pääasiallisena opetuskielenä. Lisäksi työ perehtyy siihen, mitä kaikkea kurssilla tulisi opettaa, sekä siihen, kuinka kurssin läpivienti olisi tehokkainta toteuttaa ja minkälaiset tekniset puitteet kurssin toteuttamista varten olisi järkevää valita.
Resumo:
Työn tavoitteena on sovittaa Qt opetussuunnitelmaan. Työ sisältää Qt:n lyhyen historian sekä katsauksen sen nykytilaan. Nykytilakatsaus sisältää kolme näkökulmaa: miten ja missä Qt:ta voidaan käyttää, sekä sen käyttötarkoitukset teollisuudessa ja opetuksessa. Työn tuloksena syntyy luentodemonstraatiota varten pieni ohjelma, joka on luotu C++:n ja Qt Designerin avulla ja käyttää olennaisia käyttöliittymäkirjaston olioita. Toisena tuotteena työssä syntyy luonnos Lappeenrannan Teknillisen Yliopiston ohjelmointikursseista, joissa Qt:ta voitaisiin käyttää avustamaan opiskelijoita näkemään, miten graafinen ohjelma luodaan sekä valmentaa heitä ymmärtämään viitekehyksien ja graafisten kirjastojen tuomat edut.