Download - Detecting Similar Software Applications

Transcript

Detecting Similar Software Applications

Detecting Similar Software ApplicationsCollin McMillan, Mark Grechanik, and Denys Poshyvanyk Department of Computer Science, Graduate School of Information Science and Technology, Osaka University. http://sdl.ist.osaka-u.ac.jp/KUSUMOTO LABORATORY - Software Design LaboratoryAPIJavaCLAN MUDABlue Department of Computer Science, Graduate School of Information Science and Technology, Osaka University. http://sdl.ist.osaka-u.ac.jp/KUSUMOTO LABORATORY - Software Design Laboratory

2APIAPIAPI2API

()APIDepartment of Computer Science, Graduate School of Information Science and Technology, Osaka University. http://sdl.ist.osaka-u.ac.jp/KUSUMOTO LABORATORY - Software Design Laboratory33MUDABlueCombined(MUDABlue & CLAN)1CLANMUDABlueCombined 1010144 (4)Department of Computer Science, Graduate School of Information Science and Technology, Osaka University. http://sdl.ist.osaka-u.ac.jp/KUSUMOTO LABORATORY - Software Design Laboratory

5%Reject : Accept : MUDABlue Confidence LevelDepartment of Computer Science, Graduate School of Information Science and Technology, Osaka University. http://sdl.ist.osaka-u.ac.jp/KUSUMOTO LABORATORY - Software Design LaboratoryDepartment of Computer Science, Graduate School of Information Science and Technology, Osaka University. http://sdl.ist.osaka-u.ac.jp/KUSUMOTO LABORATORY - Software Design LaboratoryContent Classification of Development EmailsAlberto Bacchelli, Tommaso Dal Sasso, Marco DAmbros, Michele LanzaUniversity of LuganoDepartment of Computer Science, Graduate School of Information Science and Technology, Osaka University. http://sdl.ist.osaka-u.ac.jp/KUSUMOTO LABORATORY - Software Design LaboratoryMotivationML archives

Figure 1JUNKJUNKStack TracePatchDepartment of Computer Science, Graduate School of Information Science and Technology, Osaka University. http://sdl.ist.osaka-u.ac.jp/KUSUMOTO LABORATORY - Software Design Laboratory(Stop word)8MailpeekML ArchiveArgoUML, Freenetmail->OK -> 0.2%

Figure 2Department of Computer Science, Graduate School of Information Science and Technology, Osaka University. http://sdl.ist.osaka-u.ac.jp/KUSUMOTO LABORATORY - Software Design Laboratory9()JUNK

Department of Computer Science, Graduate School of Information Science and Technology, Osaka University. http://sdl.ist.osaka-u.ac.jp/KUSUMOTO LABORATORY - Software Design Laboratory

Department of Computer Science, Graduate School of Information Science and Technology, Osaka University. http://sdl.ist.osaka-u.ac.jp/KUSUMOTO LABORATORY - Software Design LaboratoryClassification ApproachTerm Based ClassificationWords, Punctuation, Bi-grams, ContextParsing Based ClassificationStack Trace, Patch, Source Code, Junk

Department of Computer Science, Graduate School of Information Science and Technology, Osaka University. http://sdl.ist.osaka-u.ac.jp/KUSUMOTO LABORATORY - Software Design Laboratory

Department of Computer Science, Graduate School of Information Science and Technology, Osaka University. http://sdl.ist.osaka-u.ac.jp/KUSUMOTO LABORATORY - Software Design LaboratoryConclusionNL text, source code, stack traces, code patches, and junk

Department of Computer Science, Graduate School of Information Science and Technology, Osaka University. http://sdl.ist.osaka-u.ac.jp/KUSUMOTO LABORATORY - Software Design LaboratoryActive Refinement of Clone Anomaly ReportsLucia, David Lo, Lingxiao Jiang, and Aditya BudiSchool of Information Systems Singapore Management UniversityDepartment of Computer Science, Graduate School of Information Science and Technology, Osaka University. http://sdl.ist.osaka-u.ac.jp/KUSUMOTO LABORATORY - Software Design Laboratory=

clone-based anomaly detectioninconsistencies

Department of Computer Science, Graduate School of Information Science and Technology, Osaka University. http://sdl.ist.osaka-u.ac.jp/KUSUMOTO LABORATORY - Software Design LaboratoryInconsistency among clonesanomaly

If(dentry) [12] L. Jiang, Z. Su, and E. Chiu, Context-based detection of clone-related bugs, in ESEC/SIGSOFT FSE, 2007.anomalyFigure 1Department of Computer Science, Graduate School of Information Science and Technology, Osaka University. http://sdl.ist.osaka-u.ac.jp/KUSUMOTO LABORATORY - Software Design Laboratory17Inconsistency among clonesanomalyfalse positives()[12]57/800

[12] L. Jiang, Z. Su, and E. Chiu, Context-based detection of clone-related bugs, in ESEC/SIGSOFT FSE, 2007.

FalsePositiveFigure 2Department of Computer Science, Graduate School of Information Science and Technology, Osaka University. http://sdl.ist.osaka-u.ac.jp/KUSUMOTO LABORATORY - Software Design Laboratory18Active Refinement of Clone Anomaly Reports

Clone based Anomaly Detection ToolTrue PositiveFalse PositiveDepartment of Computer Science, Graduate School of Information Science and Technology, Osaka University. http://sdl.ist.osaka-u.ac.jp/KUSUMOTO LABORATORY - Software Design LaboratoryActive Refinement of Clone Anomaly ReportsClone based Anomaly Detection ToolTrue PositiveFalse Positive

Department of Computer Science, Graduate School of Information Science and Technology, Osaka University. http://sdl.ist.osaka-u.ac.jp/KUSUMOTO LABORATORY - Software Design LaboratoryLinux Kernel: 11%inconsistencyEclipse: 87%ArgoUML:86%

True PositiveTable IIDepartment of Computer Science, Graduate School of Information Science and Technology, Osaka University. http://sdl.ist.osaka-u.ac.jp/KUSUMOTO LABORATORY - Software Design Laboratory11%, 87%, and 86% for the Linux kernel, Eclipse, and ArgoUML21Department of Computer Science, Graduate School of Information Science and Technology, Osaka University. http://sdl.ist.osaka-u.ac.jp/KUSUMOTO LABORATORY - Software Design LaboratoryIdentifying Linux Bug Fixing PatchesYuan Tian, Julia Lawall, and David LoSingapore Management University, SingaporeINRIA/LIP6-Regal, FranceDepartment of Computer Science, Graduate School of Information Science and Technology, Osaka University. http://sdl.ist.osaka-u.ac.jp/KUSUMOTO LABORATORY - Software Design Laboratory2Linuxcurrentlongterm support2bug fix patchcurrent bug fix patchlongterm supportCurrentpatchbug fix patch

Department of Computer Science, Graduate School of Information Science and Technology, Osaka University. http://sdl.ist.osaka-u.ac.jp/KUSUMOTO LABORATORY - Software Design Laboratory1/2)Data AcquisitionGitpatchFeature Extraction(1) wordsstop-wordstemmingwords(2) loopif

Department of Computer Science, Graduate School of Information Science and Technology, Osaka University. http://sdl.ist.osaka-u.ac.jp/KUSUMOTO LABORATORY - Software Design Laboratory2/2Model LearningLPUSVMbug fix patches buf fix patchesLPUpatcheskbug fix bug fix patchesSVMBug Fix IdentificationSVM bug fix patches Department of Computer Science, Graduate School of Information Science and Technology, Osaka University. http://sdl.ist.osaka-u.ac.jp/KUSUMOTO LABORATORY - Software Design Laboratory

45F-measureDepartment of Computer Science, Graduate School of Information Science and Technology, Osaka University. http://sdl.ist.osaka-u.ac.jp/KUSUMOTO LABORATORY - Software Design Laboratory