Ohjelmistojen testaus
Seminaari, syksy 2009 (3 op)
Jukka Paakki
Aika ja paikka
8.9.-13.10., 3.11.-8.12.2009, tiistaisin klo 14-16,
C220 (Exactum).
Yleistä
Seminaarissa tarkastellaan ohjelmistotestauksen uusia suuntia,
menetelmiä, prosesseja ja työkaluja. Aihepiiriin kuuluu "normaalien"
ohjelmistotyyppien lisäksi erityisohjelmistojen (kuten web-sovellusten)
testaaminen. Opiskelijoiden omaan työhön ja kokemuksiin liittyvät aiheet
ovat tervetulleita.
Työskentely
Seminaarissa jokainen opiskelija pitää kirjalliseen tiivistelmään
perustuvan suullisen esitelmän jostain ohjelmistotestaukseen
liittyvästä aiheesta.
Esitelmöinnnin lisäksi jokaisen on muutoinkin osallistuttava
aktiivisesti seminaarityöhön.
Jokaisella esitelmällä on nimetty opponentti,
joka tutustuu erityisen huolellisesti esitelmään ja sen aiheeseen.
Opponentin tehtävänä on seminaaritilaisuudessa tuoda esiin
esitelmään liittyviä täydentäviä ja kriittisiäkin näkökulmia.
Opponenttina toimii yleensä edellisen seminaarikerran esitelmöijä
(ensimmäisen esitelmän opponenttina toimii viimeinen esitelmöijä).
Kirjallisen alustuksen (7-10 sivua) on oltava valmiina viikkoa ennen
esitelmää. Alustus julkaistaan tällä seminaarisivulla,
ja jokaisen osallistujan - ei pelkästään opponentin - on tutustuttava
siihen etukäteen pystyäkseen osallistumaan seminaaritilaisuudessa
käytävään keskusteluun.
Arvostelu
Seminaarin arvosana muodostuu seuraavista tekijöistä:
(1) kirjallinen alustus 30%,
(2) suullinen esitelmä 40%,
(3) opponointi 10%,
(4) muu aktiivinen osallistuminen keskusteluun 20%.
Suullisista esitelmätilaisuuksista saa olla poissa enintään
kaksi kertaa ilman hyvin perusteltua syytä.
Esitiedot
Ohjelmistotuotanto, Ohjelmistotuotantoprojekti ja joitakin ohjelmistotekniikan
laudaturkursseja.
Aikataulu
Mahdollisia aiheita
Alla luetellaan mahdollisia esitelmäaiheita ja annetaan vähintään yksi
lähdeviite kuhunkin aiheeseen. Esitelmille on etsittävä
muitakin lähteitä! Esitelmille on annettava aihetta hyvin
kuvaava otsikko.
Myös opiskelijoiden omat aiheet (esimerkiksi käytännön kokemukset)
ovat mahdollisia ja jopa toivottavia.
-
Regressiotestausmenetelmien tehokkuus
G. Rothermel et al: On Test Suite Composition and Cost-Effective
Regression Testing. ACM Transactions on Software Engineering and
Methodology 13, 3, 2004, 277-331.
-
GUI-testien ylläpito
M. Grechanik, Q. Xie, C. Fu: Maintaining and Evolving
GUI-Directed Test Scripts.
In: Proc. 31st International Conference on Software Engineering
(ICSE'09), Vancouver, Canada. ACM / IEEE, 2009, 408-418.
-
Taulukkolaskinohjelmien testaus
M. Fisher II et al: Integrating Automated Test Generation into the
WYSIWYT Spreadsheet Testing Methodology.
ACM Transactions on Software Engineering and Methodology
15, 2, 2006, 150-194.
-
Koodikattavuustyökalut ja käytäntö
Q. Yang, J.J. Li, D. Weiss: A Survey of Coverage Based Testing Tools.
In: Proc. 1st International Workshop on Automation of
Software Test (AST'06), Shanghai, China. ACM/IEEE,
2006, 99-103.
S. Berner, R. Weber, R.K. Keller: Enhancing Software Testing
by Judicious Use of Code Coverage Information.
In: Proc. 29th International Conference on Software Engineering
(ICSE'07), Minneapolis, Minnesota. ACM / IEEE, 2007, 612-620.
-
Testiaineistojen generointi
P. Godefroid et al: Automating Software Testing Using
Program Analysis. IEEE Software 25, 5, 2008, 30-37.
-
Testiaineistojen minimointitekniikat
D. Jeffrey, N. Gupta: Improving Fault Detection Capability
by Selectively Retaining Test Cases during Test Suite Reduction.
IEEE Transactions on Software Engineering 33, 2, 2007, 108-123.
Y. Yu, J.A. Jones, M.J. Harrold: An Empirical Study of the Effects
of Test-Suite Reduction on Fault Localization.
In: Proc. 30th International Conference on Software Engineering
(ICSE'08), Leipzig, Germany. ACM / IEEE, 2008, 201-210.
-
Testausprosessin tehokkuuden mittaaminen
L.-O. Damm, L. Lundberg, C. Wohlin: Faults-slip-through -
A Concept for Measuring the Efficiency of the Test Process.
Software Process Improvement and Practice 11, 1, 2006, 47-59.
-
Testiperustainen ohjelmistokehitys käytännössä
C. Martin: Professionalism and Test-Driven Development.
IEEE Software 24, 3, 2007, 32-36.
D.S. Janzen, H. Saiedian. Does Test-Driven Development Really
Improve Software Design Quality?
IEEE Software 25, 2, 2008, 77-84.
-
Pariohjelmointi ja testaustehokkuus
L. Madeyski: Impact of Pair Programming on Thoroughness and
Fault Detection Effectiveness of Unit Test Suites.
Software Process Improvement and Practice 13, 3, 2008, 281-295.
-
"Hyviä" syitä "huonolle" testaamiselle"
D. Martin, J. Rooksby, M. Rouncefield, I. Sommerville:
"Good" Organisational Reasons for "Bad" Software Testing:
An Ethnographic Study of Testing in a Small Software Company.
In: Proc. 29th International Conference on Software Engineering
(ICSE'07), Minneapolis, Minnesota. ACM / IEEE, 2007, 602-611.
-
Sosiaalinen ja yhteisöllinen näkökulma ohjelmistovirheisiin
J. Aranda, G. Venolia: The Secret Life of Bugs:
Going Past Errors and Omissions in Software Repositories.
In: Proc. 31st International Conference on Software Engineering
(ICSE'09), Vancouver, Canada. ACM / IEEE, 2009, 298-308.
J. Anvik, L. Hiew, G.C. Murphy: Who Should Fix This Bug?
In: Proc. 28th International Conference on Software Engineering
(ICSE'06), Shanghai, China. ACM / IEEE, 2006, 361-370.
-
Ohjelmistotestaus teollisuudessa
P. Runeson: A Survey of Unit Testing Practices.
IEEE Software 23, 4, 2006, 22-29.
D. Talby, A. Keren, O. Hazzan, Y. Dubinsky:
Agile Software Testing in a Large-Scale Project.
IEEE Software 23, 4, 2006, 30-37.
Viewpoints / Software Testing and Industry Needs.
IEEE Software 23, 4, 2006, 55-57.
-
Virheiden löytäminen staattisesti
N. Ayewah et al: Using Static Analysis to Find Bugs.
IEEE Software 25, 5, 2008, 22-29.
-
Katselmoinnit vai testaaminen?
P. Runeson et al: What Do We Know about Defect Detection Methods?
IEEE Software 23, 3, 2006, 82-90.
-
Formaalit menetelmät ja testaus
R.M. Hierons et al: Using Formal Specifications to Support Testing.
ACM Computing Surveys 41, 2, 2009, 9:1-9:76.
-
Ohjelmistotestauksen tulevaisuus
A. Bertolino: Software Testing Research: Achievements,
Challenges, Dreams.
In: Proc. International Conference on the Future of Software
Engineering (FOSE'07), Minneapolis, Minnesota. ACM/IEEE, 2007, 85-103.