search query: @keyword ohjelmistokehitys / total: 85
reference: 47 / 85
Author: | Kuokkala, Juha |
Title: | Static analysis tools in software development |
Staattisen analyysin työkalut ohjelmistokehityksessä | |
Publication type: | Master's thesis |
Publication year: | 2010 |
Pages: | 53 Language: eng |
Department/School: | Informaatio- ja luonnontieteiden tiedekunta |
Main subject: | Informaatiotekniikka (T-115) |
Supervisor: | Simula, Olli |
Instructor: | Seppänen, Jukka |
OEVS: | Electronic archive copy is available via Aalto Thesis Database.
Instructions Reading digital theses in the closed network of the Aalto University Harald Herlin Learning CentreIn the closed network of Learning Centre you can read digital and digitized theses not available in the open network. The Learning Centre contact details and opening hours: https://learningcentre.aalto.fi/en/harald-herlin-learning-centre/ You can read theses on the Learning Centre customer computers, which are available on all floors.
Logging on to the customer computers
Opening a thesis
Reading the thesis
Printing the thesis
|
Location: | P1 Ark Aalto 8757 | Archive |
Keywords: | software software development software quality static analysis program analysis ohjelmistot ohjelmistokehitys ohjelmiston laatu staattinen analyysi ohjelma-analyysi |
Abstract (eng): | Static code analysis comprises techniques which statically examine a piece of computer program code and make inferences about its dynamic, run-time behaviour. Static analysis methods have a wide range of applications in software quality assurance. A significant amount of these are tools which can be used by software developers to test and check their code during the implementation. This thesis gives an overview of automatic code analysis techniques, with focus on static analysis methods and the use of them in assistance of software development. A review is made on the current supply of static analysis tools as well as experiences and research on the usefulness of this kind of methods and tools in software development. Finally, a case study is carried out with two automatic analysis tools attached to a Continuous Integration server used in a commercial software development process. The benefits and shortcomings of the tools are assessed, and suggestions for future development are given. The most important results of the study include:. 1. Static code analysis can be a useful tool when used wisely. The results of automated analysis should not be taken without critique, but common sense should be used. 2. Static analysis is most efficient when applied regularly on all parts of a code base from the very beginning of its development. When analysis runs are started on a code base with long history, the overwhelming number of warnings issued makes it difficult to find a starting point for making improvements. 3. Static code analysis should be made as automated and easy-to-use as possible. This involves making the analyses run as a part of the Continuous Integration process and send direct feedback to developers whose recent code changes have deteriorated the code. |
Abstract (fin): | Staattinen koodianalyysi käsittää erilaisia tekniikoita, jotka tutkivat ohjelmakoodia staattisesti ja tekevät sen pohjalta päätelmiä koodin dynaamisesta ei ajonaikaisesta käyttäytymisestä. Staattisilla analyysimenetelmillä on laaja valikoima sovellutuksia ohjelmistojen laadunvarmistuksessa. Merkittävä osa näistä on työkaluja, joilla ohjelmistokehittäjät voivat testata ja tarkistaa koodinsa ominaisuuksia sen toteutuksen aikana. Tämä diplomityö antaa yleiskuvan automaattisen koodianalyysin tekniikoista, painottuen staattisiin analyysimenetelmiin ja niiden käyttöön ohjelmistokehityksen apuna. Työssä luodaan katsaus staattisen analyysin työkalujen tämänhetkiseen tarjontaan samoin kuin erilaisiin kokemuksiin ja tutkimustuloksiin kyseisten menetelmien ja työkalujen hyödyllisyydestä. Lopuksi kuvataan tapaustutkimus, jossa kaksi automaattista analysaattoria liitettiin kaupallisessa ohjelmistokehitysprojektissa käytössä olevaan jatkuvan integraation (Continuous Integration) palvelimeen. Työkalujen etuja ja puutteita arvioidaan, ja tehdään ehdotuksia jatkokehityksestä. Tutkielman tärkeimpiä tuloksia ovat:. 1. Staattinen koodianalyysi voi olla hyödyllinen apuneuvo järkevästi käytettynä. Automaattianalyysin tuloksia ei pidä ottaa kritiikittä vaan käyttää myös tervettä järkeä. 2. Staattinen analyysi on tehokkainta, kun sitä sovelletaan säännöllisesti koko koodikantaan sen kehityksen alusta alkaen. Kun analyyseja aletaan ajaa koodikannassa, jolla on jo pitkä historia, työkalun antamien varoitusten valtava määrä tekee hankalaksi päättää, mistä aloittaa korjausten tekeminen. 3. Staattinen koodianalyysi tulisi toteuttaa mahdollisimman automatisoituna ja helppokäyttöisenä. Tämä tarkoittaa esimerkiksi analyysiajojen sulauttamista osaksi jatkuvan integraation prosessia ja suoran palautteen automaattista lähettämistä ohjelmoijille, joiden äskeiset koodimuutokset ovat huonontaneet koodia. |
ED: | 2010-08-26 |
INSSI record number: 40284
+ add basket
INSSI