130823 eric vitouley - supporting source code maintenance using screencasts
DESCRIPTION
Screencasts, software developers, social studies, training, support, maintenanceTRANSCRIPT
Link……?
Presented by Eric VITOULEY, trainee. Supervisor : Bram ADAMS
Two videos… (from www.youtube.com; keyword : firefox)
What is the fundamental difference ?
But… What is a screencast ?
A screencast is a digital video recording that captures actions taking place on a computer desktop. Screencasts, which often contain voice-over narration, are useful for demonstrating how to use specific operating systems, software applications or website
features.
3 categories of screencasts
Identifying important features…
Virus Scanning
Link Scanner
Theme ChangingMeta-data
Report Bugs ! Which part Which part of the code of the code
??
Information extraction & Identifiers in source code
User feedback…
End user software testing
Test/Comparisonscreencasts
Software Comparison
Ideas for next Release
Keeping documentation up to date…
Documentation
Release v1.0 New Release v1.1
Which part Which part of those doc of those doc
should be should be changed ?changed ?
5s
5s
So far…
ScreencastsScreencasts
ScreencastsScreencastsSource Source Code Code
About traceability…
Extraction
Extractio
n
Research Questions
Does the audio file yield syntactically correct,
meaningful text ?
Does a screencast file yield syntactically
correct, meaningful text ?
Can we correctly link screencast to source
code ?
Speech to text…
Dragon Naturally Speaking tool
Filtered by Aspell list
If you handed it Kannel with basic text editors like Notepad you're probably woefully familiar with Google Earth air messages like this parse error on line 8 one set of waiting until you open your file in Google Earth discover errors in your Kannel this video tutorial will show you how to use Janet invalidate your Kannel as you type the first step is to make sure that you have the Java runtime environment installed on your computer you don't have already you can get [email protected] next a J edit.org and install the latest stable version of genetic which is currently 4.2 was the programs on your computer Glenn launch J edit first we need to install some plug-ins to work with XML documents so click on the plug-ins menu plug-ins manager then click uninstall tab click on download options in an update from your list pick a location that's geographically close to you click okay the list of plug-ins will refresh buttons for this alphabetically by clicking on the name column then scroll down to the bottom because were…
IfYouHandedItWithBasicTextEditorsLikeNotepadYouReProbablyWoefullyFamiliarWithGoogleEarth
Syntax correct fo
r majority
of words but n
ot for sentences !
Syntax correct fo
r majority
of words but n
ot for sentences !
Text from video…
Frames
VoiceAlre
ady done !
Already done !
filtering weird symbols + Aspell list
Name [ Version Status0 Latest Version Check 1.5 Loaded0 OuickNotepad 4.2 LoadedRemoveHelpDownload Options.. Plugin Options... CloseIflPlugin Manager00®Manage Update instaiName Category Version Size□ Calculator Applications 1.1.6 124KB□ Console Applications 4.2.6.5 378KB□ JcrontabPlugin Applications 0.7.2 81KB□ JMailApplications 14 431KB□ JTAPIugin Applications 01 565KB _["I 1 arvfil Rrioftr Annlir.atinns _2_l.fi -7_1 MR.........................................
PlacesMyIIIFfAddSearchMaMMFtftPlacesMyEdAddSHMyOpenTrctr
More words syntactically incorrects
More words syntactically incorrects
greater waste
of
greater waste
of
informatio
n !
informatio
n !
Images and video processing…
Feature Tracking Contour Detection
Foreground Catching
Similarity Calculation Process
Text from voice
Text from voice
Text from im
ages
Text from im
ages
FILTERED
FILTERED
WS4J
Calulate similarity with WordNet Similarity tool
Documentation
Array[n x m] words
Similarity Calculation Process (2)
WORDNET SIMILARITY
WUP
LESK
JCN
PATH
LCH
HSO
LIN
RES
• Threshold : 0,5 Dice Coefficient
Dice Coefficient
Matching average
Matching average
Source : Measuring similarities between sentences, Thanh Ngoc Dao et al.,
Similarity Calculation Process (3)
Relative similarity values to be able to compare.
Max similaritiy values for each couple of file (X and Y)
A B C
P 1,0 1,0 1,0
N 1,0 1,0 1,0
M 1,0 1,0 1,0 Relative similarity :
Case Study (1)
Low similarity throughout !
Low similarity throughout !
Case Study (2)
Low similarity throughout !
Low similarity throughout !
Work in progress…
Split the screencast into scenes and compute similarities per scene.
Advanced identifier splitting techniques for filtering the video/audio data.
Deeper look on images/video processing to gain more information
Similarity measurement without removing duplicate words
Try to find link directly between screencasts and source code (by splitting identifiers)
Build a model for traceability links retrieval between screencasts and source code
Conclusion