Introducing Continuous Integration for C and C++ Software Development Projects on Linux Platform
Data(s) |
04/12/2009
04/12/2009
2009
|
---|---|
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. Integraatio on ohjelmistokehitysprossesin vaihe, jossa erillisistä komponenteista kootaan kokonainen tuote. Kyky integroida sujuvasti ja vaiheeseen sisältyvien riskien hallinta on tärkeää, sillä ohjelmistoa ei voida julkaista ennenkuin se on integroitu. On myös osoitettu, että integraatio- ja testausvaihe voi kattaa jopa 40 % projektin kokonaiskuluista. Näitä ongelmia voidaan pienentää käyttämällä jatkuvaa integraatiota. Tämä diplomityö esittää, kuinka jatkuva integraatio voidaan ottaa käyttöön kirjoittajan työnantajaorganisaatiossa. Työssä tutkitaan kuinka prosessi toimii, ja luodaan tekniset edellytykset soveltaa sitä tulevissa projekteissa. Toteutettu järjestelmä tukee C ja C++ -ohjelmointikielillä kirjoitettuja ohjelmistoprojekteja Linux-ympäristössä, mutta työssä kuvattuja konsepteja voidaan hyödyntää ohjelmointikielestä ja -ympäristöstä riippumatta valitsemalla niihin soveltuvat työkalut. Työn tulokset havainnollistavat yksityiskohtaisesti ongelmia, jotka on ratkaistava kun prosessi omaksutaan yrityskäytössä. Integraatiojärjestelmän toteutus ja siihen liittyvä prosessikuvaus ovat mukana tuloksissa. Työn tulokset osoittavat, että jatkuva integraatio voi pienentää ohjelmiston kehitysprojektiin liittyviä riskejä ja parantaa ohjelmiston laatua. |
Identificador |
http://www.doria.fi/handle/10024/50565 URN:NBN:fi-fe200911122336 |
Idioma(s) |
en |
Palavras-Chave | #ohjelmistotekniikan käytännöt #koontikäännöksen hallinta #jatkuva integraatio #software engineering practices #build management #continuous integration |
Tipo |
Master's thesis Diplomityö |