2500 University Drive N.W.
Calgary, Alberta, T2N 1N4
Phone: 1 403 210 5412
DVP term expires December 2015
Vahid Garousi is an Associate Professor at the University of Calgary, Canada and a Visiting Associate Professor in the Middle East Technical University (METU) in Ankara, Turkey. His research expertise include: software engineering (in general), software testing and quality assurance, software maintenance and model-driven development. He has been involved as an organizing or program committee member in many software engineering conferences such as ICST, ICSP, CSEE&T, and MoDELS. He is a member of the IEEE and the IEEE Computer Society, and is also a licensed professional engineer (PEng) in the Canadian province of Alberta. He has been selected a Distinguished Visitor (speaker) for the IEEE Computer Society's Distinguished Visitors Program (DVP) for the period of 2012-2015. Among his awards is the Alberta Ingenuity New Faculty Award in June 2007. For more information, visit: www.ucalgary.ca/~vgarousi
Practical Software Testing: Linking Industry and Academia
Software testing is a very important aspect of the software development life-cycle. The National Institute of Standards and Technology (NIST) estimates that the negative economic impacts of inadequate infrastructure for software testing is about $59.5 billion annually in the US alone. There is a large community of software testing practitioners in the industry and also researchers in the academia. Each "camp" has had its own set of approaches to testing and also events/conferences. Having roots in the software industry and now in academia, the speaker has been passionate and advocating for a few years now to improve the linkage between industry and academia in software testing. In this talk, he will present what has been achieved in this regard and what more needs to be done by both software testing practitioners and researchers to reach out to one another, since after all, it would be a win-win situation for both communities to collaborate more. Success stories from the speaker's past industry-academic testing projects will be discussed. The talk will have a mix of technical and non-technical aspects.
Software Testing Education: How can we train Highly-skilled Software Test Engineers?
Software testing is a very important aspect of the software development life-cycle. The National Institute of Standards and Technology (NIST) estimates that the negative economic impacts of inadequate infrastructure for software testing is about $59.5 billion annually in the US alone.
Training highly-skilled software test engineers is a very important issue as the software systems and software technologies are rapidly evolving and hot areas are emerging (e.g., rich internet applications, and smart phones). The challenge of training highly-skilled software tester is both applicable in university and industrial (corporate) training contexts. According to three provincial and national surveys conducted by the speaker, there is a huge demand in the industry for expert software testers. Software and IT-related university programs should use innovative approaches to train students in specific issues of software test engineering and software quality. In order to effectively teach software engineering students how to test large-scale systems effectively, the software tools, projects and assignments chosen by testing educators should be practical and realistic. In the context of software testing education, the above need implies the use of realistic and relevant Systems Under Test (SUT), and making use of realistic commercial testing tools. Otherwise, the skills that students learn in those courses will not enable them to be ready to test large-scale industrial software systems after graduation.
The speaker has had many years of experience as a software testing educator in both university and industrial (corporate) contexts and has been contributing to the field of software testing education research, e.g., a online open courseware of modern and innovative software testing laboratory exercises. This talk will touch on the current state of the software testing education in North America and will discuss the opportunities and solutions for new educations and learners in the software testing field. The talk will have a mix of technical and non-technical aspects.
Test Cost-Effectiveness and Defect Density: A Case Study on the Android Platform
The Android operating system is one of the most popular open-source platforms in the mobile operating system market. It had a worldwide smart-phone market share of 68% at the second quarter of 2012. However, there has been little research on test coverage and test cost-effectiveness in this platform. The goal of the case study to be presented in the presentation is to assess test coverage, fault detection effectiveness, test cost-effectiveness and defect density in code-base of version 2.1 of the Android platform. We raise and address five research questions (RQs) in this study. Among our results are: (1) in contrary to what one would expect, for packages with larger coverage values (meaning more rigorous testing), it is not necessarily true that less defects have been reported by the users after release. Also, it is not necessarily true that components with low coverage have more defects; (2) We re-confirm (replicate) the existence of correlation between code coverage and mutation score, similar to existing studies; and (3) The package with the highest defect density (DD) in the Android code-base is Music (DD=190 per 1 KLOC) and the package with the lowest DD value is ContactsProvider (DD=3 per 1 KLOC). Results of our study will help us and other researchers to get a better view on test coverage, fault detection effectiveness, test cost-effectiveness and defect density in Android code-base.