ãã€ã¯ãã¯ããŒã³ã¯ãéåžžã«å°ããªãµã€ãºã®è€è£œãããã³ãŒããã©ã°ã¡ã³ãã§ãããã»ãã®æ°åœä»€ãŸãã¯è¡ã§ãã ãã®èšäºã§ã¯ããæåŸã®è¡ã®å¹æããã€ãŸãããã€ã¯ãã¯ããŒã³ã®æåŸã®è¡ãŸãã¯åœä»€ã以åã®è¡ãŸãã¯åœä»€ããããšã©ãŒãå«ãå¯èœæ§ãé«ãçŸè±¡ãæ€èšããŸãã ãã®ç®çã®ããã«ã219ã®ãªãŒãã³ãœãŒã¹ãããžã§ã¯ããšãæ¬ é¥ã®ãããã€ã¯ãã¯ããŒã³ã«é¢ãã263ã®èŠåã調æ»ããã³ãŒãã«ãã®ãããªãšã©ãŒãèµ·ãããå®éã®ã¢ããªã±ãŒã·ã§ã³ã®6人ã®èè
ã«ã€ã³ã¿ãã¥ãŒããŸããã åŠéçãªç 究ã§ã¯ããã®ã¿ã€ãã®æ¯èŒçäºçŽ°ãªãšã©ãŒãåŒãèµ·ããå¿ççã¡ã«ããºã ãç 究ãããŠããŸãã 調æ»ãšãããªãæè¡åæã®çµæã«åºã¥ããŠããããããã·ãŒã±ã³ã¹ãšã©ãŒããæåŸã®è¡å¹æã®ååšã«ãããŠéèŠãªåœ¹å²ãæãããŠãããšä»®å®ããŸãã ããã«ããã®èµ·æºã確ç«ã§ãããã¹ãŠã®ãã€ã¯ãã¯ããŒã³ã¯ãç°åžžã«å€§ããªã³ãããã§çºèŠãããŸããã ãã®å¹æãç¥ãããšã¯ãããã°ã©ããŒã«ãšã£ãŠ2ã€ã®æçšãªçµæããããããŸãã
1ïŒãã¯ãã¯ããŒã³ã§ééããç¯ãå¯èœæ§ãç¹ã«é«ãç¶æ³ãèªèãããããªããŸãã
2ïŒèªåãã€ã¯ãã¯ããŒã³æ€åºåš/ PVS-Studioã䜿çšã§ããããããã®ã¿ã€ãã®ãšã©ãŒã®æ€åºãç°¡åã«ãªããŸãã
ããŒã¯ãŒã
ãã€ã¯ãã¯ããŒã³ãã³ãŒãã¯ããŒã³ãã³ãŒãã¯ããŒã³æ€åºãæçµã©ã€ã³å¹æãå¿çåŠãåŠéçç 究ã
1ã¯ããã«
ãœãããŠã§ã¢éçºè
ã¯ã次ã®TrinityCoreãããžã§ã¯ãã®äŸã®ããã«ãããããªå€æŽãå ããŠã1è¡ã®ã³ãŒããæ°åé£ç¶ããŠè€è£œããå¿
èŠããããŸãã
äŸ1ããªããã£ã³ã¢

ä»ã®ãªããžã§ã¯ãã®ç©ºé座æšã¯ã座æšxãyãzã«å¯Ÿå¿ãããã£ãŒã«ãã«è¿œå ãããŸãããåãã¿ã€ãã®3è¡ã®ãã®ãã©ã°ã¡ã³ãã®æåŸã®è¡ã«ã¯ãšã©ãŒãå«ãŸããŸããy座æšãz座æšã«è¿œå ãããŸãã å®éãæåŸã®è¡ã¯æ¬¡ã®ããã«ãªããŸãã

次ã®äŸã¯ã人æ°ã®ããChromium Webãã©ãŠã¶ãŒããååŸãããã®ã§ã1è¡å
ã®åãçš®é¡ã®æ瀺ã§åé¡ã®å¹æã®çºçŸã瀺ããŠããŸãã
äŸ2ã¯ãã

ãã¹ãã®ç©ºè¡ãäºéãã§ãã¯ãã代ããã«ãport_strã®2çªç®ã®ãã§ãã¯ãè¡ãå¿
èŠããããŸãã

äŸ1ã®1è¡ç®ãã3è¡ç®ã¯ãäŸ2ã®è¡3ã®ifæŒç®åã®æ¡ä»¶ãšåæ§ã«ãäºãã«é¡äŒŒããŠããŸããã»ãšãã©åãç¹°ãè¿ãè¡ãŸãã¯åœä»€ã§æ§æããããã®ãããªéåžžã«çãã³ãŒããããã¯ã¯ããã€ã¯ãã¯ããŒã³ãšåŒã°ããŸãã ãœãããŠã§ã¢å質ã®åé¡ã®éçºãšã¢ããã€ã¹ã«é¢ããç§ãã¡èªèº«ã®çµéšããããã€ã¯ãã¯ããŒã³ã®æåŸã®è¡ãŸãã¯åœä»€ã¯ä»¥åã®è¡ãŸãã¯åœä»€ããããšã©ãŒãå«ãå¯èœæ§ãã¯ããã«é«ãããšãçŽæçã«ããããŸããã ãã®ç 究ã®ç®çã¯ãç§ãã¡ã®æèŠã®çå®ãæ€èšŒããããšã§ããããã®ç 究ã®æ çµã¿ã§æèµ·ããã2ã€ã®è³ªåã決å®ããã®ã¯ãã®ç®æšã§ãã
- RQ 1è€æ°è¡ã®ãã€ã¯ãã¯ããŒã³ã®æåŸã®è¡ã«ãšã©ãŒãå«ãŸããŠããå¯èœæ§ãé«ããšããã®ã¯æ¬åœã§ããïŒ
- RQ 2 1è¡ã®é·ãã®ãã€ã¯ãã¯ããŒã³ã®æåŸã®åœä»€ã«ãšã©ãŒãå«ãŸããŠããå¯èœæ§ãé«ããšããã®ã¯æ¬åœã§ããïŒ
ããã°ã©ã ãæžããšãã«ã³ãŒãã®ãããã¯ãã³ããŒããããšã¯ã»ãšãã©ã®ããã°ã©ãã³ã°èšèªã§äœ¿çšããããããã»ãšãã©ãã¹ãŠã®éçºè
ã¯æçµè¡ã®åœ±é¿ãåããå¯èœæ§ããããŸãã åãã¿ã€ãã®ããã€ãã®é£ç¶ããåœä»€ã®æåŸããããšã©ãŒãçºçããããããšã蚌æã§ããã°ãäœæè
ãšã³ãŒãã€ã³ã¹ãã¯ã¿ãŒã¯ã©ã®ã»ã¯ã·ã§ã³ã«ç¹å¥ãªæ³šæãæãã¹ãããç¥ãããšãã§ãããšã©ãŒã®æ°ãæžãããŠããã°ã©ã ã®å質ãåäžãããã®ã«åœ¹ç«ã¡ãŸãã
ã³ããŒãšè²Œãä»ãã¯ãã³ãŒããäœæããèªç¶ãªæ¹æ³ã®1ã€ã§ãããäŸ1ããã³2ã«äŒŒãŠããŸããè¡ããšã®ã³ããŒãšè²Œãä»ããšã³ãŒãã»ã¯ã·ã§ã³ã®ãè€è£œãã ãããã®ã¡ãœããã¯ãæãäžè¬çãªããã°ã©ãã³ã°ã®ã€ãã£ãªã ã®1ã€ã§ããïŒKim et alã2004ïŒãæå°éã®ç©ççããã³æéçã³ã¹ãã§æžããããå®äŸ¡ã§ãã ããã«ããã®ãããªã³ãŒããå®è¡å¯èœã§ããããšãç¥ãããŠããŸãã ã³ãŒãã®å°ããªã»ã¯ã·ã§ã³ãã³ããŒããããšã¯ãã°ãã°æªãç¿æ
£ãšèŠãªãããŸããïŒKapser and Godfrey 2008ïŒããããäžèšã®äŸã®ããã«ãããã°ã©ã ã®æãŸããåäœãå®è£
ããå¯äžã®æ¹æ³ã§ããå ŽåããããŸãã ãã€ã¯ãã¯ããŒã³ãæ€åºããå¯èœã§ããã°æé€ããããã«ãããã€ãã®ããŒã«ãéçºãããŠããŸãïŒBellon et alã2007; Roy et alã2009ïŒã ãããã®ããŒã«ã¯æ¹æ³ã®ã¬ãã«ãŸã§å°è±¡çãªçµæã瀺ããŠããã«ããããããã誀æ€åºãå€ããããããå®éã®ãã€ã¯ãã¯ããŒã³èªèã«ã¯ããŸãé©ããŠããŸããã
人æ°ã®ç§åŠããã°ã§æåŸã®è¡ã®å¹æã«é¢ããèšäºãå
¬éããåŸãä»ã®ãã©ãŒã©ã ã§è¿
éãã€ç±ççã«åŒçšãããŸããã å€ãã®ããã°ã©ããŒãç§ãã¡ã®èŠ³å¯ã«åæããè°è«äžã®å¹æã®èåŸã«å¿ççãªçç±ãããããšã瀺åããŸããã ããããããã®ç 究ã®æ çµã¿ã«ããã3çªç®ã®æåŸã®è³ªåãæ¥ãŸãã
- RQ 3äžè¬çã«æ¬ é¥ã®ãããã€ã¯ãã¯ããŒã³ãååšããçç±ãšãç¹ã«æåŸã®è¡ã®åœ±é¿ã¯äœã§ããïŒ
éçºè
ã®èª¿æ»ã®çµæãäŸã®åŸ¹åºçãªæè¡åæãå¿çåŠè
ãšã®ååã«åºã¥ããŠãå¿ççåŽé¢ãããããã§ããã°ãã©ã®åŽé¢ãæçµè¡ã®å¹æã®çºçŸã«åœ±é¿ãäžãããã調ã¹ãŸãã èªç¥å¿çåŠã§é·ãé芳å¯ãããŠããçŸè±¡ãç 究ããŠããã®ã§ã圌ãã®å©ããåããŠã³ãŒãã®ãã€ã¯ãã¯ããŒã³ã®æåŸã®è¡ã®å¹æã説æããããšãã§ãããã©ãããèŠã€ããŸãã
æåŸã®è¡ã®åœ±é¿ã«é¢ãã以åã®èª¿æ»ïŒBeller et alã2015ïŒã«åºã¥ããŠã次ã®è¿œå ãè¡ããŸããã
- ããã€ã¯ãã¯ããŒã³ããšããçšèªãå°å
¥ãããå®çŸ©ãããŸããã
- åŸæ¥ã®æ¹æ³ã§ã¯æ€åºã§ããªãæ¬ é¥ã®ãããã€ã¯ãã¯ããŒã³ãæ€åºããããã«ãèªåéçåæããŒã«ïŒBeller 2016ïŒPVS-Studioã§äœ¿çšããã蚺æãå°å
¥ããŸããã
- åãšã©ãŒã¯ã1,891åã®ã¢ãã©ã€ã¶ãŒèŠåã«åºã¥ããŠã219ã®äžè¬çãªãªãŒãã³ãœãŒã¹ãããžã§ã¯ãããéžæããã263åãã¹ãŠã®ãã€ã¯ãã¯ããŒã³ã§åå¥ã«èª¿æ»ãããŸããã
- æåŸã®è¡ã®å¹æã®æ ¹åºã«ããå¿ççã¡ã«ããºã ã®äºååæãå®æœããŸããã
- ãã€ã¯ãã¯ããŒã³ã§ãã¹ãç¯ããå®éã®ãããžã§ã¯ãã®6人ã®éçºè
ã«ã€ã³ã¿ãã¥ãŒããŸããã
- ãšã©ãŒãšç°åžžã«å€§ããªã³ããããšã®é¢ä¿ã瀺ã調æ»ã«åºã¥ããŠã4ã€ã®äººæ°ã®ãããªãŒãã³ãœãŒã¹ãããžã§ã¯ãã®ãªããžããªã調æ»ããŸããã
芳å¯çµæãããäŸ1ããã³2ã§ç€ºãããã®ãšåæ§ã«ããã€ã¯ãã¯ããŒã³ã®æåŸã®è¡ãŸãã¯åœä»€ã¯ã以åã®è¡ãŸãã¯åœä»€ã®ãããããããšã©ãŒãå«ãå¯èœæ§ãã¯ããã«é«ãããšãããããŸãã ãã®çŸè±¡ã®ååšã¯ããã€ã¯ãã¯ããŒã³ã®æè¡çãªè€éãã«ãããã®ã§ã¯ãªããå¿ççãªçç±ã«ãããã®ãšæãããŸããããã¯ãäž»ã«ããã°ã©ããŒã®çæèšæ¶ãéè² è·ã«ããããšã«èµ·å ããŸãã 5ã€ã®ãããžã§ã¯ãã«åºã¥ãäºå調æ»ã«ããããšã©ãŒã®ãããã¹ãŠã®ãã€ã¯ãã¯ããŒã³ã¯ãæšæºå€ã®å€åæéäžã«ç°åžžã«å€§ããªã³ãããã§æžã蟌ãŸããããšãæããã«ãªããŸããã ãããã®æ©èœãç解ããèªååãããPVS-Studioéçã¢ãã©ã€ã¶ãŒã䜿çšãããšãããããèªåçã«æ€åºããããšã«ãããæåŸã®ã©ã€ã³å¹æã«é¢é£ããäºçŽ°ãªãšã©ãŒã®æ°ãæžããããšãã§ããŸãã
2ç 究èšç»
ç§ãã¡ã®ä»äºã¯ãC1ãšC2ã®å®èšŒç 究ã®2ã€ã®éšåã§æ§æãããŠããŸãã ãã®ã»ã¯ã·ã§ã³ã§ã¯ãç 究ãå®æœããæé ãšãã®ç®çã«ã€ããŠèª¬æããŸãã
2.1ç 究èšç»C1ïŒãã¯ãã¯ããŒã³ã®æçµåå¹æã®æç
çãšæç
ç
5ã€ã®ç°¡åã«åçŸå¯èœãªã¹ãããã§æ§æãããç 究C1ã§ã¯ããã€ã¯ãã¯ããŒã³ã®æçµåå¹æã®æç
çã®çµ±èšåæãè¡ããŸããã ããã«ããã€ã¯ãã¯ããŒã³ã®äœæããã»ã¹ã«å
ãåœãŠãããã«ãã³ãŒãã®å
ã®ã»ã¯ã·ã§ã³ãšãã®ã³ããŒãèå¥ããããã®è¿œå äœæ¥ãè¡ããŸããã
- ãã¹ãŠã®èšºæãæå¹ã«ããŠPVS-StudioããŒã«ã䜿çšããŠãç 究ãªããžã§ã¯ãã®éç解æãå®è¡ããŸãã PVS-Studioã¯ãã·ã¢ã®äŒç€ŸOOO Program Verification Systems LLCã«ãã£ãŠéçºãããåçšã®éçã¢ãã©ã€ã¶ãŒã§ãããCã®ç¹å®ã®ã©ã€ãã©ãªé¢æ°ã䜿çšããŠãã³ãŒãã®ã¯ããŒã³ãããã¯ã®æ€åºããããã°ã©ãã³ã°ã®ã¢ã³ããã¿ãŒã³ãŸã§ãå€æ°ã®èšºæã«ãŒã«ãå«ãŸããŠããŸãã PVS-Studioã®ãªãŒãã³ã¢ã¯ã»ã¹ç¡æè©Šçšçã
- PVS-Studioã¬ããŒãã調ã¹ãŠããã€ã¯ãã¯ããŒã³ã«é¢é£ããªãã¡ãã»ãŒãžã ãã§ãªãã誀æ€ç¥ãåé€ããŸãã
- æ¬ é¥ã®ãããã€ã¯ãã¯ããŒã³ããšã«ãã³ãŒãã®è¡ã®ç·æ°ïŒRQ 1ïŒãŸãã¯åœä»€ïŒRQ 2ïŒãã«ãŠã³ããããšã©ãŒã衚瀺ãããè¡ãŸãã¯åœä»€ã瀺ããŸãã å¯èœã§ããã°ãå
ã®ã³ãŒãã»ã¯ã·ã§ã³ãšãã®ã³ããŒã決å®ããŸãïŒããšãã°ãäŸ6ã§ã¯ããªãªãžãã«ã¯2è¡ç®ã§ãã³ããŒã¯3è¡ç®ã§ãïŒã
- ç 究ãéå§ãããšãããã©ã«ãã§ã¯ãé·ãnè¡ã®æ¬ é¥ãã€ã¯ãã¯ããŒã³ã§ã¯ãåè¡ã®ãšã©ãŒç¢ºçã¯ãæ€èšäžã®ãã©ã°ã¡ã³ãå
ã®ãã®æ°ã«é¢ä¿ãªã1 / nã§ãããšããä»®å®ããé²ããããŸãïŒä»®èª¬H0ïŒã ããšãã°ã2è¡ã®ãããã¯ã®1è¡ç®ãš2è¡ç®ã®ãšã©ãŒç¢ºçã¯åã0.5ã§ãã ãã ãã段éïŒ3ïŒã§ãç·ã«æ²¿ã£ã誀差ã®ååžãæææ°Žæºã®äžæ§ååžãšã¯å€§ããç°ãªãããšã瀺ãããšãã§ããå Žå
ãåž°ç¡ä»®èª¬ãæ£åŽãããšã©ãŒãäžåäžã«ååžããŠãããšä»®å®ããŸãã nè¡ã®é·ãããšã«ããã¢ãœã³ã®äžèŽåºæºã䜿çšãããŸã
芳枬ããŒã¿ãšåž°ç¡ä»®èª¬ïŒååž1 / nïŒéã®å¯Ÿå¿ã確ç«ããããã®èªç±åºŠn-1
- ã¹ãããïŒ4ïŒã§æšå®ååžãšå®éã®ååžã®éã«å€§ããªäžäžèŽãèŠã€ãã£ãå Žåããããã®éã®ãªããºæ¯ããæåŸã®è¡ã®å¹æã®çºçŸã®åŒ·åºŠã®çŽèŠ³çãªå°ºåºŠãšããŠèšç®ããŸãïŒBland and AltmanïŒ2000ïŒïŒã
2.2ç 究èšç»C2ïŒæçµè¡ã®åœ±é¿ã®åå ã®åæ
ç 究C1ã®æåŸã®è¡ã®å¹æã®ååšã確ç«ããã®ã§ãä»åºŠã¯åå ã®ç¹å®ãè©Šã¿ãå¿
èŠããããŸãïŒRQ 3ïŒã ãã®ããã«ãæã
ã¯èªç¥å¿çåŠã®åéã§ã®ç 究ã®çµæã«åºã¥ããŠãèªç¥å¿çåŠã®ææã§ãããã«ãã»ãºã¯ãŒã³ãå©ããŠãããåæ仮説ãç«ãŠãŸããã 仮説ã確èªããéçºè
ã®å®è·µãã蚌æ ãåéããããã«ãC1ç 究ã§èŠã€ãã£ããã€ã¯ãã¯ããŒã³ãäœæããããã°ã©ããŒã«ã€ã³ã¿ãã¥ãŒããŸããã 圌ãã®ã³ã¡ã³ããšæèŠã¯ãæçµè¡ã®å¹æã®ååšã説æããäºåããŒãžã§ã³ãéçºããã®ã«åœ¹ç«ã¡ãŸãã æ¬ é¥ã®ãããã€ã¯ãã¯ããŒã³ã«é¢ããèè
ãæ£ç¢ºã«ç¢ºç«ãããŠãã人ã ãã«åçè
ã®èŒªãçããããšã§ã次ã®ããšãå¯èœã«ãªããŸããïŒ1ïŒåçè
ãçŽæ¥é¢ä¿ããŠããç¹å®ã®äŸã«çŠç¹ãåœãŠãããšã ïŒ2ïŒè°è«ããããã€ã¯ãã¯ããŒã³ã®äœæãæ
åœããã®ã¯ãããã®éçºè
ã§ããããšã確å®ã§ãããããæãæçšãªåçãåŸãããã
å³ å³1ã¯ã調æ»ã®äžè¬çãªèšç»ã瀺ããŠããŸãã äž»ãªã¿ã¹ã¯ã¯ããã€ã¯ãã¯ããŒã³ã®äœæè
ãšã®é£çµ¡ã確ç«ããããšã§ãïŒå€ãã®å Žåããããžã§ã¯ãã®ææ°ããŒãžã§ã³ã«ã¯æ¬ é¥ã³ãŒãããããŸããïŒã èšç»ã«ã¯4ã€ã®äž»èŠãªæ®µéãå«ãŸããŸãã
- ãã€ã¯ãã¯ããŒã³ã®ãããžã§ã¯ããšäŸã¯ã©ã³ãã ã«éžæãããŸããC2ç 究ã®äœæ¥ã¯é¢åãªããã»ã¹ã§ãããäŸã®èè
ãšã®é£çµ¡ã確ç«ããåã
ã®èª¿æ»ãå®æœããå¿
èŠãããããã§ãã ãã³ãŒã«ãã³ãŒã«ãã«å¯Ÿããã¬ã¹ãã³ããŒã®æšæºçãªå²åã¯30ïŒ
ã§ãããšããäºå®ã«åºã¥ããŠãèªç¥å¿çåŠã®èŠ³ç¹ããæçµã©ã€ã³å¹æã®ååšã説æããåæ仮説ãçå®ããã®ã«ååãªæ
å ±ãäžãã3ã€ã®æåããæ祚ãåœãŠã«ã§ããŸãã åãã€ã¯ãã¯ããŒã³ãåæãããšãã¯ããã®ãããžã§ã¯ãã§æ¡çšãããŠããéçºã«ãŒã«ã«ç²Ÿéãããªããžããªã調æ»ããå¿
èŠããããŸãã
- 次ã«ããããžã§ã¯ãã®ãœãŒã¹ããªãŒã§ãã€ã¯ãã¯ããŒã³ãèŠã€ããŸãã ãšã©ãŒã®å€ãã¯ä»¥åã®èŠ³æž¬çµæã®å
¬éåŸã«ä¿®æ£ãããçŸåšã®ãã©ã³ãã«ã¯ååšããªãããããã®æ®µéã§ã¯ããŸããŸãªæ€çŽ¢æŠç¥ã®é©çšãäœåãªããããŠããŸãã ãŸããC1調æ»ãå®æœãããæ¥ãããªããžããªã調æ»ããŸãã 倱æããå Žå-ããšãã°ããã€ã¯ãã¯ããŒã³ã«é£æ¥ããã³ãŒãããªãã¡ã¯ã¿ãªã³ã°ãããå ŽåïŒãŸãã¯å€æŽã®å±¥æŽãäžæžããããå ŽåïŒ-ãããžã§ã¯ãã®ãã°ãã©ãã«ãŒã§æ€çŽ¢ã䜿çšããŠãä¿®æ£ãè¡ãããã³ããããèŠã€ããŸãã ãã®æé ã§ãçµæãåŸãããªãå Žåã¯ããã¹ãŠã®ãããžã§ã¯ãã³ãããã«å¯ŸããŠãã«ããã¹ãæ€çŽ¢ïŒagããŒã«ã䜿çšïŒã䜿çšããŸãã
- ãªãªãžãã«ã®ãã€ã¯ãã¯ããŒã³ãçºèŠãããããgit blameããŒã«ã䜿çšããŠãã®å±¥æŽããã¬ãŒã¹ããè¡ãããä¿®æ£ã«é¢ããæ
å ±ãååŸãããã®ã³ãŒãã®äœæè
ã確ç«ããŸãã
- æåŸã«ãgit blame -eã³ãã³ãã䜿çšããŠéçºè
ã®é»åã¡ãŒã«ã¢ãã¬ã¹ãèŠã€ããŸãã åçè
ã®å²åãé«ããããã«ãã€ã³ã¿ãŒããããæ€çŽ¢ããŠåçè
ã«é¢ããè¿œå æ
å ±ãåéããŸããããã«ãããã¡ãŒã«ã¢ãã¬ã¹ã®é¢é£æ§ãå€æã§ããŸãã æãæ£çŽãªåçãåŸãããã«ãåçè
ã«å人ããŒã¿ãé瀺ããªãããšãä¿èšŒããŸãã 次ã«ãåéçºè
ã«ãäœæè
ã®ãã€ã¯ãã¯ããŒã³ã®ããã¹ããå€æŽ/ä¿®æ£ã®å±¥æŽããšã©ãŒã®ã³ã³ããã¹ããããã³èª¿æ»ã®çç±ã®èª¬æãšä»é²ãèšèŒããé»åã¡ãŒã«ãéä¿¡ããŸãã

å³ 1-調æ»èšç»C22.3調æ»å¯Ÿè±¡
ä»ã®ç 究è
ã«ããç 究ã®åçŸãä¿é²ããããã«ãç§ãã¡ã¯ããç¥ããããªãŒãã³ãœãŒã¹ãããžã§ã¯ãã奜ã¿ãŸããã C1ã®èª¿æ»ã§èª¿æ»ãã219ã®ãããžã§ã¯ãã®ãã¡ãAudacityãªãŒãã£ãªãšãã£ã¿ãŒïŒ1äŸïŒãChromiumïŒ9ïŒããã³FirefoxïŒ9ïŒWebãã©ãŠã¶ãŒãlibxmlïŒ1ïŒXMLã©ã€ãã©ãªãŒãMySQLããŒã¿ããŒã¹ãªã©ã®æåãªãããžã§ã¯ãã§èª€ã£ããã€ã¯ãã¯ããŒã³ãèŠã€ãããŸããïŒ1ïŒããã³MongoDBïŒ1ïŒãC clangïŒ14ïŒèšèªã³ã³ãã€ã©ãŒãQuake IIIïŒ3ïŒããã³Unreal 4ïŒ25ïŒFPSã·ã¥ãŒãã£ã³ã°ãBlenderïŒ4ïŒã³ã³ãã¥ãŒã¿ãŒã°ã©ãã£ãã¯ã¹äœæçšããã±ãŒãžã3次å
ã¢ããªã³ã°ããã³èŠèŠåVTKçšããã°ã©ã ïŒ 8ïŒããããã¯ãŒã¯ãããã³ã«SambaïŒ4ïŒããã³OpenSSLïŒ2ïŒããããªãšãã£ã¿ãŒVirtualDubïŒ3ïŒãããã³ããã°ã©ãã³ã°èšèªPHPïŒ1ïŒã C2ãç 究ããããã«ãChromiumãlibjingleãMesa 3Dãããã³LibreOfficeãããžã§ã¯ããã10åã®ãã€ã¯ãã¯ããŒã³ãéžæããŸããã
2.4ç 究åçŸããŒã
ä»ã®ç 究è
ã®äœæ¥ã容æã«ããããã«ããã¹ãŠã®åæããŒã¿ãšèšºæãå«ãç¹å¥ãªããã±ãŒãžãçšæããŸããã ããã«ã¯ã2ã€ã®ãã£ã¬ã¯ããªã«ã°ã«ãŒãåããããã¹ãŠã®ãã£ã«ã¿ãªã³ã°ãããŠããªãPVS-Studioã¡ãã»ãŒãžãå«ãŸããŸããfindings_old
/ã«ã¯ ãããã°ã©ã å¯èŠæ§ã«é¢ããåœéäŒè°ïŒICCïŒïŒBeller et al.2015ïŒã®èšäºã§äœ¿çšãããå€ãããŒã¿ãå«ãŸããŸããã®èšäºã§äœ¿çšãããããŒã¿ã ããã«ãããã±ãŒãžã«ã¯ãåœç€Ÿãåæãããããžã§ã¯ãããšã«åé¡ããããã€ã¯ãã¯ããŒã³ïŒ
analyze_data.csv ïŒãããŒã¿è©äŸ¡ä»ãã®ã¹ãã¬ããã·ãŒãïŒ
evaluation.ods ïŒãããã³ç 究C1ããã³C2ã®ãªããžããªãŒã®åæçµæãå«ãŸããŸãã ãŸãããã®èšäºã®çµæãšå³ãåçŸããRã¹ã¯ãªãããè¿œå ããŸããã æåŸã«ãããã±ãŒãžã«ã¯ãåçè
ãžã®è³ªåãå«ãã¢ã³ã±ãŒããã³ãã¬ãŒããå«ãŸããŠããŸãã
3ãã€ã¯ãã¯ããŒã³ã®æ€åºæ¹æ³
ãã®ã»ã¯ã·ã§ã³ã§ã¯ãéè€ããã³ãŒããã©ã°ã¡ã³ããæ€åºããåŸæ¥ã®æ¹æ³ã調ã¹ããããããã€ã¯ãã¯ããŒã³ã®æ€çŽ¢ã«é©ããªãçç±ã説æããç¬èªã®éçåæ蚺æã䜿çšããŠãã®åé¡ãåé¿ããæ¹æ³ã瀺ããŸãã ããã«ããã€ã¯ãã¯ããŒã³ã®å
ã®ã»ã¯ã·ã§ã³ãšã³ããŒãã©ã®ããã«æ±ºå®ãããã³ãããã®ãµã€ãºãã©ã®ããã«èæ
®ããããã瀺ããŸãã
3.1ææ°ã®ã³ãŒãã¯ããŒã³æ€åºããŒã«ãç§ãã¡ã®ã¿ã¹ã¯ã«é©ããªãçç±
äŸ1ãš2ã瀺ãããã«ããã®èšäºã®ãã¬ãŒã ã¯ãŒã¯ã§æ€èšãããã³ãŒããã©ã°ã¡ã³ãã¯ãããã¹ãå
ã§å®å
šã«äžèŽãããããå€æ°ãåããŸãã¯é¢æ°ã®èå¥åã®ã¿ãç°ãªãåãæ§ææ§é ãæã€ã¯ããŒã³ããå«ã¿ãŸãïŒKoschke 2007ïŒã ãã®ããããããã¯éåžžã«å°ãããµã€ãºïŒéåžžã¯5è¡/åœä»€æªæºïŒã®
ã¿ã€ã 1
ãŸã㯠2ã®ã¯ããŒã³ã§ãããããããã€ã¯ãã¯ããŒã³ãšåŒã³ãŸãã
éè€ã³ãŒããæ€åºããåŸæ¥ã®æ¹æ³ã¯ãããŒã¯ã³ãã³ãŒãè¡ãæœè±¡æ§æããªãŒïŒASDïŒã®ããŒãããŸãã¯ã°ã©ãïŒKoschke 2007ïŒãæ¯èŒããããšã§ãã ãã ããå®éã«ã¯ããããã®ã¢ãããŒãã®ããããã§ãåœéœæ§ã®å²åãæžããããã«ãä»»æã®æž¬å®åäœïŒããŒã¯ã³ãåœä»€ãæååããŸãã¯ASDããŒãïŒã§æå°ã¯ããŒã³ãµã€ãºã決å®ããå¿
èŠããããŸãã ååãšããŠããã®å€ã¯5-10åäœã®é åã§ååŸããïŒBellon et alã2007; Juergens et alã2009ïŒãããã¯æ€èšäžã®ãã€ã¯ãã¯ããŒã³ã®ãµã€ãºïŒ2-5åäœïŒãããã¯ããã«å€§ãããããããæ€çŽ¢ããããšã¯ã§ããŸããã
ãã®ãããäŸ1ã§ã¯ãè¡1ã3ã¯ãã€ã¯ãã¯ããŒã³ã®ã¯ã©ã¹ãè¡šããŸãã 3ã€ã®è¡ãããããããã®äŸã§ã¯ãã®ã¯ã©ã¹ã3åç¹°ãè¿ããŠç€ºããŸãã åæ§ã«ãåã€ã³ã¹ã¿ã³ã¹ã¯å€æ°ãå²ãåœãŠæäœãå²ãåœãŠããããªããžã§ã¯ããããã³ãã®ãã£ãŒã«ãã§æ§æãããŠãããããé·ãã¯4ãŠãããã§ãã
3.2æ¬ é¥ã®ãããã€ã¯ãã¯ããŒã³ã®æ€åºã«äœ¿çšãããæ¹æ³
å®éã«ã¯ãåŸæ¥ã®æ€çŽ¢æ¹æ³ã§ã¯ãã€ã¯ãã¯ããŒã³ã確å®ã«æ€åºã§ããªããããç¬èªã®ã¢ãããŒãã䜿çšããŸããã ç§ãã¡ã®ã¿ã¹ã¯ã¯ããã€ã¯ãã¯ããŒã³ãæ€åºããããšã§ã¯ãªãããšã©ãŒãå«ããã€ã¯ãã¯ããŒã³ã®ã¿ãæ€åºããããšã§ãã ãã®è¿œå ã®å¶éãèãããšãéåžžã®æåããšã®äžèŽã«åºã¥ããŠãã€ã¯ãã¯ããŒã³ãæ€åºãã匷åãªèšºæã®ã»ããå
šäœãéçºããããšãã§ããŸããã ãããã®èšºæã¯ãå°ããªãã©ã°ã¡ã³ãã®ã³ããŒã«èµ·å ããå¯èœæ§ãæãé«ãã³ãŒãã®æ¬ é¥ã»ã¯ã·ã§ã³ãèŠã€ããããšãã§ããŸãã è¡šã®äžã è¡š1ã«ããã®èª¿æ»ã®äžéšãšããŠãã€ã¯ãã¯ããŒã³ãšã©ãŒãæ€åºãã12åã®èšºæãã¹ãŠããªã¹ãããŠèª¬æããŸãã æåŸã®åã¯ããã®ã¿ã€ãã®èŠåã®ç·æ°ã«å¯Ÿããåäžããã³è€æ°è¡ã¯ããŒã³ã®æ°ã®æ¯çã瀺ããŠããŸãã ããšãã°ãV501ã®èšºæã§ã¯ãäžéšã®è«çæŒç®åã®ãªãã©ã³ããåäžã§ãããã©ããã®ã¿ãå€æãããŸãã çãããã¯ããã§ããå Žåãæè¯ã®å Žåãããã¯å°æ¥ãææªã®å Žåã«ã¯ããã°ã©ã ã®ãµããŒããè€éã«ããå¯èœæ§ã®ããäœåãªã³ãŒãã§ã-æ¬åœã®ééãã ä»ã®èšºææ³ã¯ãV501ã»ã©ãã€ã¯ãã¯ããŒã³ã«é¢ããŠé«åºŠã«å°éåãããŠããŸããã 526åã®èŠåããããã調æ»ããå®éã®ãã€ã¯ãã¯ããŒã³ã®272ã±ãŒã¹ã®ã¿ã調æ»å¯Ÿè±¡ãšããŠéžæããŸããã ããŒãã«ããã 1ãŸãããã€ã¯ãã¯ããŒã³ã®78ïŒ
ã1ã€ã®èšºæïŒV501ïŒã«ãã£ãŠæ€åºããã3ïŒ
ã®éåžžã«äœãåœéœæ§çã§ããããšãããããŸãã ä»ã®èšºæã¯ããã€ã¯ãã¯ããŒã³ã§ã¯ãªãã³ãŒãã®ã»ã¯ã·ã§ã³ã§åäœããå¯èœæ§ãé«ããªããŸãã

è¡š1-PVS-Studioã§æ€åºããããšã©ãŒã®çš®é¡ãš219ã®ãªãŒãã³ãããžã§ã¯ãéã®ãšã©ãŒã®ååž3.3誀ã£ããã€ã¯ãã¯ããŒã³ã®èµ·æºã®ç¢ºç«æ¹æ³
質åRQ 3ã«çããŠãæçµè¡ã®å¹æã®ååšã®çç±ãé©åã«è°è«ããããã«ããã€ã¯ãã¯ããŒã³ã®åã¯ã©ã¹ã§ãã³ãŒãã®å
ã®ã³ããŒãšãããããã³ããŒããããšæãããã³ããŒãèŠã€ããŸããã ãã®ãããªçµéšçåæã§ã¯ãã³ããŒæé ããã®æ¹åã«é²ãã ãšãã100ïŒ
ã®ç¢ºå®æ§ã¯åŸãããŸããããå°ãªããšãäžéšã®éçºè
ããã®æ¹æ³ã§ã³ãŒããæ©æ¢°çã«è€è£œãããšããååãªèšŒæ ããããŸãïŒRQ 3ãåç
§ïŒã ã»ãšãã©ã®å Žåããã€ã¯ãã¯ããŒã³ã®2ã€ã®ã³ããŒã®ãã¡ã©ã¡ãããªãªãžãã«ã§ãã©ã¡ããã³ããŒã§ããããããã«å€æã§ããŸãã ãããã£ãŠãäŸ1ã§ã¯ããšã©ãŒãå«ãè¡3ã«ã¯è¡2ããã®ã³ãŒãã®ãã¬ãŒã¹ãå«ãŸããŠãããããã¯è¡2ïŒå
ïŒã®è¡3ïŒã³ããŒïŒãžã®åœ±é¿ãæå³ããŸãã å
ã®è¡ãšã³ããŒã®åæ§ã®èªç¶ãªã·ãŒã±ã³ã¹ã¯ãã»ãšãã©ã®ãã€ã¯ãã¯ããŒã³ã§èŠ³å¯ãããŸã-ããšãã°ãäŸ1ã®å€æ°
xãyãzã®ã·ãŒã±ã³ã¹ããŸãã¯æ°å€ã®ããã«ãèŸæžåŒé åºã§ãã£ãŠãïŒ
äŸ3Cmake

äŸ1ããã³3ã®ããã«ãå
ã®ã³ããŒãšã³ããŒã®èªç¶ãªé
眮ãæ瀺çã«è¡šçŸãããŠããªãå Žåã§ããäŸ2ã®ããã«ã³ã³ããã¹ãã«ãã£ãŠåŸ©å
ã§ããŸã
ã2è¡ç®ã«
port_strãé
眮ãã2è¡ç®ã«
ãã¹ããé
眮ããã®ã¯é åºã«åããŸãããããã®å€æ°ãäºåã«å®çŸ©ãããŠããå Žåãæåã®åœä»€
ãã¹ããæå³ã
ãŸãïŒ= buzz :: STR_EMPTYããªãªãžãã«ã§ã2çªç®ãã³ããŒã§ãã
èæ
®ãããäŸã§ã³ããŒã®èµ·æºã確ç«ããããã»ã¹ã§ã¯ã2ã€ã®åé¡ãçºçããŸããã€ãŸãã1ïŒã³ããŒãããé åã®ãµã€ãºã¯å€åããå¯èœæ§ããããŸãã 2ïŒéè€ã®é·ãã4ãè¶
ãããã€ã¯ãã¯ããŒã³ã¯ãå°ãªãäŸã§è¡šãããŸãã ãã ããç°ãªããµã€ãºã®ãã€ã¯ãã¯ããŒã³ã®ããŒã¿ãäžè¬åã§ããããã«ãåãã€ã¯ãã¯ããŒã³
iã«ã€ããŠèšç®ããŸã

ããã¯ç§ãã¡ã«é éæ§ã®çšåºŠãäžããŸã

ã
é é床1ã¯ãäŸ4ã®ããã«ãçŽåã®è¡/åœä»€ããã³ããŒããããšã瀺ããŸããå€0ïŒãã€ã¯ãã¯ããŒã³ã®åãè¡ã§ãšã©ãŒãçºçããŸããã å€-1ã¯ãã³ããŒã®éé ã瀺ããŸãã2çªç®ã®ãŠãããããæåã®ãŠããããžïŒ
äŸ4UnrealEngine4

ãã®äŸã®1è¡ç®ã§ã¯ã
cyïŒïŒã®ä»£ããã«
cxïŒïŒãIsRelativeãæåŸ
ããã®ãèªç¶
ã§ããIsRelativeã¯ã2è¡ç®ã®ã³ããŒã®å¯èœæ§ã瀺ããŠããŸãã åæ§ã®ååã®å€æ°ã䜿çšããããžãã¯ãããã³3è¡ç®ãš4è¡ç®ã®é åºã¯ãã³ããŒãæåã®è¡ã§
return cxïŒïŒãIsRelativeïŒïŒã§å§ãŸãããšã瀺ããŠããŸãã
ãããããé éã®åºŠåããååŸããŸã

ãŸãã¯

ãè€è£œãããã»ã¯ã·ã§ã³ã®åèšãµã€ãºã«é¢ä¿ãªãã1è¡ãŸãã¯2ã€ã®é£æ¥ããè€è£œã®2ã€ã®è€è£œãããè¿ãã«ããããšã瀺ããŸãã
3.4ã³ããããµã€ãºã®èæ
®æ¹æ³
æ¬ é¥ã®ãããã€ã¯ãã¯ããŒã³ãå«ãåã³ãããã®ãµã€ãºãšæ®ãã®ã³ãããã®ãµã€ãºã®æ¯çãèšç®ããŠè¡šç€ºããã«ã¯ããŸããªããžããªå
ã®åã³ãããã®å€åæ§ãèšç®ããŸãã ãããè¡ãã«ã¯ã
git logããŒã«ã䜿çšã
ãŸã ãããã«ããããªããžããªå
ã®ãã¹ãŠã®ã³ãããïŒããŒãžãé€ãïŒã®é åºä»ãã°ã©ããäœæããåã³ãããã§è¿œå ããã³åé€ãããã³ãŒãã®è¡æ°ãæããã«ã§ããŸãã ãããã®æ°å€ã®åèšã¯ãå€æŽãããè¡ã®åèšæ°ã瀺ããŸãã åã³ãããã®ãã©ãã£ãªãã£ã®éã 次ã«ãæ¬ é¥ã®ãããã€ã¯ãã¯ããŒã³ãå«ãã³ãããã®å€åæ§ããæ®ãã®ã³ãããã§ã®ãã®ãã©ã¡ãŒã¿ãŒã®ååžãç¹ã«äžå€®å€ãšæ¯èŒããŸãã ãµã³ãã«ïŒ10åã®ãµã³ãã«ïŒã¯ä¿¡é Œã§ããçµ±èšåæã«ã¯å°ããããŸããããã®ã¢ãããŒãã§ã¯ãã³ããããµã€ãºã®éãã«ã€ããŠåççãªçµè«ãåºãããšãã§ããŸãã 誀ã£ãååžãæ±ã£ãŠãããããäžå€®å€ã䜿çšããŸãïŒããšãã°ãå¹³åå€ã§ã¯ãããŸããïŒã äžå€®å€ã¯ç¬ç«ããå®éã®æå³ã§ãããä»ã®åæ§ã®æå³ãšæ¯èŒããŸãã
4件
ãã®ã»ã¯ã·ã§ã³ã§ã¯ãäŸã調ã¹ãŠçµ±èšçè©äŸ¡ãå®æœããããšã«ãããæ¬ é¥ã®ãããã€ã¯ãã¯ããŒã³ããã詳现ã«èª¿æ»ããŸãã
4.1çµæã®äžè¬çãªèª¬æ
è¡šã®äžã 2äž»ãªçµ±èšã¯ãç 究C2ã®çµæã«åŸã£ãŠåéãããŸãã 2011幎åã°ãã2015幎7æãŸã§ã®æéã219ã®ãªãŒãã³ãããžã§ã¯ãã§PVS-Studio蚺æã®ãã«ã»ããã䜿çšããŸããã ãœãããŠã§ã¢éçºã®ã³ã³ãµã«ãã£ã³ã°ãå°éãšããAndrey Karpovã¯ãç¹å®ã®åãããžã§ã¯ãã®æ€èšŒæã«å©çšå¯èœãªææ°ããŒãžã§ã³ã®PVS-Studioã䜿çšããŠãããããã¹ãŠã®ãããžã§ã¯ãã®åæãè¡ããŸããã 圌ã¯ãã³ãŒãã®æœåšçãªæ¬ é¥ã瀺ãåèš1,891ã®èŠåãæ®ããŠã誀æ€ç¥ãé€å€ããŸããã ãããã®èŠåã¯162ã®èšºæã«ãã£ãŠã°ã«ãŒãåãããŸããã 次ã«ãåã¡ãã»ãŒãžã調ã¹ãŠããã®ãã¡ã®272ã12ã®èšºæã«ãã£ãŠçºè¡ããããã€ã¯ãã¯ããŒã³ã«é¢é£ããŠããããšãçºèŠããŸããã 9ã€ã®ã±ãŒã¹ã§ã¡ãã»ãŒãžãè€è£œããããããæçµçã«263åã®ãã€ã¯ãã¯ããŒã³ãæ®ããŸããã ãããžã§ã¯ãã¬ãã«ã§ã®çµ±èšåæã¯ãéžæãããããžã§ã¯ãã®ååã§èšºæãæ¬ é¥ã¯ããŒã³ãèªèã§ããããšã瀺ããŠããŸãã ãããã®ã±ãŒã¹ã®ã»ãšãã©ãã¹ãŠïŒ92ïŒ
ïŒã«ã¯ãæåŸã®è¡ã®å¹æãæã€å°ãªããšã1ã€ã®äŸãå«ãŸããŠããŸãã

è¡š2-調æ»çµæã®çµ±èšã¿ãã 3ã«ã¯ã263åã®ãã€ã¯ãã¯ããŒã³ã§æ€åºããããšã©ãŒã®æŠèŠãå«ãŸããŠããŸãã åèšã§ãè€æ°è¡ã®ã¯ããŒã³ã®74ïŒ
ã«ã¯æåŸã®è¡ã«ãšã©ãŒãå«ãŸãã90ïŒ
ã®åäžè¡ã®ã¯ããŒã³ã«ã¯æåŸã®åœä»€ãå«ãŸããŸãã

è¡š3-調æ»çµæã®èŠçŽ4.2çµæã®è©³çŽ°åæ
ãã€ã¯ãã¯ããŒã³ã®æ€åºã«äœ¿çšãã蚺æã®åçãããå®å
šã«ç解ããããã«ã以äžã§ã¯ããã€ã¯ãã¯ããŒã³ã«é¢é£ãã263ã®PVS-StudioèŠåã®æãæãããªäŸãããã€ãèŠãŠãè¡šããæãäžè¬çãªãšã©ãŒãç¹å®ããŸãã 1ã
4.2.1 V501-çããéšååŒ
è¡šãããããããã«ã 1ãã»ãšãã©ã®ãã€ã¯ãã¯ããŒã³èŠåã¯V501蚺æã«ãã£ãŠçºè¡ãããŸããã 以äžã¯ãChromiumãã©ãŠã¶ããã®ãã®ãããªãšã©ãŒã®å
žåçãªäŸã§ãã
äŸ5ã¯ãã

ããã¯1è¡ã®ãã€ã¯ãã¯ããŒã³ã§ã2çªç®ãš3çªç®ã®éšååŒã¯å®å
šã«åäžã§ãããåæã«è«çæŒç®åORïŒ
|| ïŒã§æ¥ç¶ãããŠãããããåŒãåé·ã«ãªããŸãã å®éãå§ïŒ
NAME_LAST ïŒã確èªããå¿
èŠããããŸãããããã¯ããã®3ã€ã®ãŠãããã®ãããã¯ã®æåŸã®è¡å¹æã§ãã
4.2.2 V517-åäžã®æ¡ä»¶åŒ
Diagnostics V517ã¯ãifã¹ããŒãã¡ã³ãã®2ã€ã®ãã©ã³ãã«å¯ŸããŠåãæ¡ä»¶ãæ€åºããŸãã
å®æœäŸ6linux-3.18.1

è¡9ã®3çªç®ã®ãã€ã¯ãã¯ããŒã³ã®åŸã®
else ifã¹ããŒãã¡ã³ãã®æ¬äœã¯ãããã³ãŒãã§ããããã¯ãå®è¡ã®ã¹ã¬ãããå°éããªãããã§ãã
ã¹ãããå€ã0ã®å Žåã¯ãæåã®æ¡ä»¶ã§ãã§ã«åŠçãããŸãã
4.2.3 V519-å€æ°ã«åãå€ãå²ãåœãŠã
(, , , , ), , . MTASA
m_ucRed ,
m_ucBlue .
7MTASA

V519 «» , , 8:
8linux-3.18.10

f->fmt.vbi.samples_per_line , . , , 1 . , , (, , ) - . Release: , , .
4.2.4 V523 â
if- , ,
Haiku :
9Haiku

, ,
else mpa_size - . , 3 , « », .
4.2.5 V524 â
. 10 5
PerPtrBottomUp.clear() . ,

ã
10Clang

4.2.6 V537 â
V537, , Quake III. PVS-Studio
rectf.X :
11Quake III

(.. ) y-
rectf.X .
4.2.7 V656 â
V656 , . , . , , , , . , V656, LibreOffice.
12LibreOffice

maSelection.Max() aSelection , .
4.2.8
12, . Chromium â 12 , (. . 4):
13Chromium

2
data_[M02] , :

4 â ?? 24.3
. 4 158 , . 5 â 105 . . , 2 . , , .

5 â. 4 5

p = 0,05, , . p-, , . 2-6 . 4 2-4 . 5ã
RQ1 RQ2, p- 2, 3, 4, 5 6 2, 3 4 (p < 0,05). , / . . , , , . . 4 5.
: «
/» « /» (. . 3). , , 1, , . . 4, 2, 4 5 ( ) . , 2, : 9,5 , . 72 , .
, , /, RQ 1 RQ 2.
4.4
, , , . RQ 3 :
, .
. 6 . , . , 263 245.

6 â ( ) ( )å³ 2 . , 165 245 (67%) . â 18 %, (9%) (3%). 4% . , , , . , : , . 117 /, , 33 (28%). 4,9 , , 20% , . 28% , , . , , .

å³ 2 â () ()å³ 2 ,

(. 3.3). , 84% (220 245), ..

89% (195 220)

ãŸãã¯

ã , . , ..

(3 220). , , , 81% (66 81). , :
- . , .
- , . , .
4.5
C2 , . . , :
- (.. ).
- .
- , .
- .
. 7 , . Skype. , , , , .
I1-I7 ID- . , , - . .
I1, I2, I4, I6 I7 . , .

7 â 6.10.2016, . , , , .
7b37fbb I1 , ( . 7 ), , (
6b7fcb4 ).
I1 :
14I1

, -, ,
!has_mic !has_audio . , , . , « - », , « , ». , - , , ,
!a && !a .
I4 , , , , :
15I4

,
field.type == trans(«string») ||, , :
16I4

, « , ». , , , -. (. 3.3), , , . , . I4 , , « ». I1, , .
I6 , « , [...] , ». , « ». , I6 -, . « ». , , « , ». I6 , , « , ». , «», . « . -. , [...], ».
I7 :
17I7

圌ã®èšæ¶ã«ãããšã圌ã¯ãã³ããŒïŒããŒã¹ãã䜿ããã«ãã®è¡ãå
¥åããã ããã§ããæããã«æ¥ãã§ã³ãŒãã泚ææ·±ãèªãã§ããããã ããšãããšã©ãŒãéããŸããã åçè
ã¯ããã®ã³ãããã®äœæã®æ£ç¢ºãªæ¥ä»ãæãåºãããšãã§ããŸããã§ãããã圌ã¯ãã»ãšãã©åžžã«å€ãã®ä»äºããããŸãããšè¿°ã¹ãŸããã
ã¢ã³ã±ãŒãã®çµæãããã³ãããã®ãµã€ãºã¯ãæ¬ é¥ã®ãããã€ã¯ãã¯ããŒã³ãåçè
ãèšåããããŸããŸãªæ段ãšä¿è·ã¡ã«ããºã ã«ããæ€åºãåé¿ããå¯èœæ§ãé«ãèŠå ã®1ã€ã§ãããšçµè«ä»ããããšãã§ããŸãã ãã®ä»®å®ãæ£ããå Žåããã®ãããªãã€ã¯ãã¯ããŒã³ãéã¶ã³ãããã¯ç°åžžã«å€§ãããªãã¯ãã§ãã ãç°åžžã«å€§ãããã®å®çŸ©ã¯çžå¯Ÿçãªå€ã瀺ãããªããžããªå
ã®ã³ããããæ¯èŒããå Žåã«ã®ã¿æå³ããããŸãã ãã®ããšã念é ã«çœ®ããŠããã€ã¯ãã¯ããŒã³ã«æ¬ é¥ãããã³ãããã®ãµã€ãºããåãããžã§ã¯ãã®ã³ãããã®ãµã€ãºã®äžå€®å€ãšæ¯èŒããŸããããããå³ã«ç€ºããŸãã 3.åŸãããããŒã¿ã¯ããã¹ãŠã®å Žåã«ãããŠãæ¬ é¥ã®ãããã€ã¯ãã¯ããŒã³ãå«ãã³ãããã®ãµã€ãºãäžå€®å€ãããæ°æ¡å€§ããããšã瀺ããŠããŸãã

å³ 3-ãªããžããªã®å±¥æŽå
šäœã®ã³ãããã®ãµã€ãºã®äžå€®å€ïŒéãç Žç·ïŒããã³æ¬ é¥ã®ãããã€ã¯ãã¯ããŒã³ãå«ãã³ãããã®ãµã€ãºïŒå¯Ÿæ°ã¹ã±ãŒã«ã§ã®å€åã®å€§ããã§è¡šãããïŒïŒãªã¬ã³ãžã®ç Žç·ïŒ4.6çµæã®æçšæ§
ãªãŒãã³ãœãŒã¹ãããžã§ã¯ãã§å€ãã®æœåšçãªãšã©ãŒãçºèŠããã®ã§ããªãŒãã³ãœãŒã¹éçºè
ã®ã³ââãã¥ããã£ãæ¯æŽããèè
ãããããä¿®æ£ããã®ã«ååéèŠãªãšã©ãŒãèŠã€ãããã©ããããã§ãã¯ãããã£ãã ãããè¡ãããã«ããããžã§ã¯ããã°ãã©ãã«ãŒã«ã³ã¡ã³ããæçš¿ããŸããã ãã®çµæãã¡ãã»ãŒãžã®å€ããèæ
®ããããããžã§ã¯ãã³ãŒãã®å質ãåäžããŸããã ãã®ãããäŸ2ïŒChromiumãããžã§ã¯ãïŒã®æ€èšŒãšã©ãŒãä¿®æ£ãããŸããã æ€çŽ¢ã¯ãšãª
pvs-studioãã°| ãã®åé¡ã¯ãFirefoxãlibxmlãMySQLãClangãsambaãããã³ä»ã®å€ãã®ãããžã§ã¯ãã§ã®å€æ°ã®ç·šéã«é¢ããã¡ãã»ãŒãžãçºè¡ããŸããããã¯ã調æ»ã®çµæã«ãã£ãŠä¿é²ãããŸããã ããšãã°ã2016幎10æ11æ¥ã®caff670
ã³ãããã§ã 2005幎以éã«Sambaã³ãŒãã«ååšããŠããæ¬ é¥ã®ãããã€ã¯ãã¯ããŒã³ãä¿®æ£ããå Žåã§ãã
5調æ»çµæã®åæ
ãã®ã»ã¯ã·ã§ã³ã§ã¯ããšã©ãŒãã¿ãŒã³ã«ã€ããŠåéããæ
å ±ãšããšã©ãŒã®æ ¹åºã«ããå¿ççã¡ã«ããºã ã«é¢ããããŒã¿ãçµã¿åãããŸãã çµè«ãšããŠãçµè«ã®åŠ¥åœæ§ãè
ããå¯èœæ§ã®ããèŠå ãæ€èšããŸãã
5.1æçµè¡ã®å¹æã®æè¡çãªè€éãããã³ãã®ä»ã®æè¡ççç±
æçµè¡ã®åœ±é¿ã®æè¡çãªçç±ãšããŠãä»ã®è¡ãšæ¯èŒããŠæçµè¡ã®æè¡çãªè€éããé«ãããã®çµæããšã©ãŒã®çŽ å ã倧ãããªãå¯èœæ§ããããŸãã ããšãã°ãã³ã³ãã€ã©ã¯ãã§ãã¯æã«æåŸã®è¡ãã¹ãããããããã³ãŒããIDEãŠã£ã³ããŠã«æžã蟌ãŸãããã€ã¯ãã¯ããŒã³ã®æåŸã®è¡ãçŸåšã®ã³ãŒããšãã£ã¿ãŠã£ã³ããŠã®æåŸã®è¡ã§ããããšãã«ãã§ãã¯ã«å€±æããå ŽåããããŸãã ãã ãã次ã®çç±ã«ããããããã®èæ
®äºé
ã¯æ£ãããããŸããã
- ååãšããŠãææ°ã®IDEã¯æ§æã®ãã§ãã¯ãé
ããåŸåã¯ãããŸããã
- ãã€ã¯ãã¯ããŒã³ã®æåŸã®è¡ãŸãã¯åœä»€ã¯ãæ§æã«é¢ããŠæ£ããã§ãã ã³ã³ãã€ã©ãŒã¯ãåé¡ã«ããã°ã©ããŒã®æ³šæãåŒãèŠåãçºè¡ã§ããŸããã
äžæ¹ãIDEã«èšºæãå«ãããšããã€ã¯ãã¯ããŒã³ãæ€åºããã³ã³ãã€ã©ãŒã䜿çšãããšããšã©ãŒãã³ããããããåã«èŠã€ãããããªããŸãã
å¥ã®æè¡çãªçç±ã¯ãããã€ãã®åœä»€ã®ã·ãŒã±ã³ã¹ã§ã¯ãæåŸã®åœä»€ãä»ã®åœä»€ãããäœæããã®ãé£ãããšããäºå®ã«é¢é£ããŠããå¯èœæ§ããããŸãã ãã ããäŸ1ã2ã5ã7ãããã³11ã瀺ãããã«ãéã®ããšãåœãŠã¯ãŸããŸãããã¹ãŠã®è€è£œã¯1ã€ã®ãã³ãã¬ãŒãã«åŸã£ãŠäœæããããããæåã®ãã³ãã¬ãŒãã®ã¿ãæ倧ã®é£æ床ãæã¡ãŸãã ãªãªãžãã«ããã以éã¯ãã¹ãŠã³ããŒã®ã¿ã§ãã
5.2å¿ççã¡ã«ããºã ãšåå
æåŸã®è¡ã®å¹æã®ååšã¯æè¡çãªçç±ã«ãããã®ã§ãããšã¯çãããã®ã§ããã®æ ¹åºã«ãããããããªãå¿ççã¡ã«ããºã ãèæ
®ãã¹ãã§ãã çžè«ã®ããã«ãèªç¥å¿çåŠã®ææïŒãã®èšäºã®4çªç®ã®èè
ïŒã«ç®ãåããŠã圌ã«ç§ãã¡ã®èŠ³å¯çµæãæ瀺ããŸããã ãã®æ®µéã§ã¯ããã培åºçãªç 究ã«ã¯å¿çå®éšãå¿
èŠã«ãªããããçµè«ã¯äºåçãªãã®ã§ãããæ¬ é¥ã®ããéè€ã®åå ã®åæããåæ§ç¯ã§ããªããã¹ãç¯ãããã»ã¹ãçŽæ¥èŠ³å¯ããããšãã§ããŸãïŒã»ã¯ã·ã§ã³3.3ãåç
§ïŒããã³åçè
ã®åæ³ïŒåç
§ãã»ã¯ã·ã§ã³4.5ïŒã
èªç¥å¿çåŠã§ã¯ãäžé£ã®ã¢ã¯ã·ã§ã³ã®ãšã©ãŒã¯ãæ¥åžžçãªæäœäžã«çºçãããšã©ãŒã§ãã ãã®ã¿ã€ãã®ãšã©ãŒã¯ãå°é家ã«ãã£ãŠåºç¯ã«ç 究ãããŠããŸããïŒAnderson 1990ïŒã ãã®ãããªééãã®å
žåçãªäŸã¯ãçä¹³ã1å泚ãã§ããç ç³ãå
¥ãã代ããã«ãã³ãŒããŒã«2åçä¹³ãå ããå Žåã§ãã ãã€ã¯ãã¯ããŒã³ã®èµ·æºã®åæçµæã瀺ãããã«ãéçºè
ã¯ã³ãŒããã³ããŒããéã«ããŸããŸãªæ©æ¢°çææ³ãšã¢ã«ãŽãªãºã ã®å
µåšåº«ã䜿çšããŸãã 次ã®ã¢ã«ãŽãªãºã ã®ããããïŒã[å
ã®ãã©ã°ã¡ã³ããæžã蟌ã]ã[å
ã®ã³ããŒ]ã[å
ã®ã³ããŒ]ã...ã[ã³ããŒã®ç·šé]ã[ã³ããŒã®ç·šé]ã...ãïŒæ祚I4ãI6ãåç
§ïŒã ãããšãšãã«ãã¢ã«ãŽãªãºã ãé©çšãããŸãïŒã[å
ã®ãã©ã°ã¡ã³ããæžã蟌ã]ã[å
ã®ã³ããŒãã³ããŒãç·šé]ã[å
ã®ã³ããŒãã³ããŒãç·šé]ã...ã極端ãªå ŽåãããŒã¿ã»ããã§ã¯ããã®ã¢ã«ãŽãªãºã ã¯æ倧34åç¹°ãè¿ãããããã§ãã ãã€ã¯ãã¯ããŒã³ãäœæãããšããããŸããŸãªæ¹æ³ã䜿çšããããšããäºå®ã«ããããããããããã¯ãã¹ãŠãèªåæäœãšæèçæäœã®ç°ãªãæ¯çãæã€äžé£ã®ã¢ã¯ã·ã§ã³ã«ãªããŸãã ãããã£ãŠãèªç¥å¿çåŠã®èŠ³ç¹ããèŠããšãéçºè
ããã€ã¯ãã¯ããŒã³ã§è¡ã£ããšã©ãŒã¯ãäžé£ã®ã¢ã¯ã·ã§ã³ã®å
žåçãªãšã©ãŒã§ãã
詳现ã«ã¯éãããããŸããããã¹ãŠã®ã·ãŒã±ã³ã¹ã¢ãã«ã¯ããã®çš®ã®ãšã©ãŒã®äž»ãªåå ã¯æããã«èªç¥ãã€ãºã§ããããšã«åæããŠããŸãïŒBotvinick and Plaut 2004; Cooper and Shallice 2006; Trafton et al.2011ïŒã ãã®å Žåããã€ãºãšã¯ãçŸåšã®ã¿ã¹ã¯ã«é¢ä¿ã®ãªãè¡šçŸãæå³ããããã°ã©ãã®æ³šæãããããŸãã ãã€ãºã¯ãã¿ã¹ã¯ã®ã¿ã€ãã³ã°ã®å¶éãªã©ã®å€éšèŠå ããŸãã¯å€§èŠæš¡ãªã³ããããªã©ã®å
éšèŠå ã«ãã£ãŠåŒãèµ·ããããã¹ãã¬ã¹ã«ãã£ãŠçæãããå¯èœæ§ããããŸãã ã·ãŒã±ã³ã¹å¶åŸ¡ã¢ãã«ã¯ãæåŸã®è¡ã®å¹æã®æ ¹åºã«ããå¯èœæ§ã®ããå¿ççã¡ã«ããºã ã«ã€ããŠæšæž¬ããããšãå¯èœã«ããæçšãªçè«çåºç€ãæäŸããŸãã ãã®æ®µéã§ã¯ããã€ã¯ãã¯ããŒã³ã®ç¹å®ã®äŸãšã³ãŒãå
ã§ã®ãããã®äœçœ®ã«é¢ããæ
å ±ãããããŸãããããããã®çºçã®è©³çŽ°ã¯ããããŸããã ããã§ããã»ã¯ã·ã§ã³4.4ã«ç€ºãããã«ãã€ã³ã¿ãã¥ãŒããéçºè
ã®åçãšãã€ã¯ãã¯ããŒã³ã®èµ·æºã®åæçµæã«ããããã€ã¯ãã¯ããŒã³ã®è¡šç€ºæ¹æ³ã«ã€ããŠåççãªçµè«ãå°ãåºãããšãã§ããŸãã ã³ããŒãšç·šéã¯ãã³ãŒããæžããšãã«ããã°ã©ããŒã«ãã£ãŠå®è¡ãããäž»ãªæäœã§ãã äŸ1ãããäžåºŠèŠãŠã¿ãŸããããããã§ã®ç·šéæäœã¯ãå€æ°åã®ç·šéãšå€ã®ç·šéãšãã2ã€ã®å°ããªã¹ãããã§æ§æãããŠããŸãã
äŸ1ããªããã£ã³ã¢

ãšã©ãŒã¯3è¡ç®ã«ãããŸãããã®è¡ã¯2è¡ç®ãã³ããŒããããšã§äœæãããããã§ããæåã®çœ®æã¯æåããŸããïŒå€æ°åã¯
yãã
zã«å€æŽãããŸããïŒãã2çªç®ã®ã¹ãããïŒå€ã®ç·šéïŒã¯ã¹ãããããããšã©ãŒã«ãªããŸããã çè«çã«ã¯ããã®ã³ãŒãã¯ãè¡1ãäºéã«ã³ããŒããçµæã®è€è£œãç·šéããããšã§äœæã§ããŸãã ãã ãã3è¡ç®ã®
xã®ä»£ããã«å€æ°å
yã䜿çšãããšã2è¡ç®ãã³ããŒããããšèããçç±ãããããŸãã ã»ã¯ã·ã§ã³4.4ã«ç€ºãããã«ã2è¡ããé·ãã»ãšãã©ã®ãã€ã¯ãã¯ããŒã³ã§ã¯ãéåžžãåã®è¡ãã³ããŒãããŸãã ãã®ãããªå Žåãã¢ã«ãŽãªãºã ã䜿çšãããããšã«ãªããŸãïŒã[ã³ããŒãç·šéãç·šé]ã[ã³ããŒãç·šéãç·šé]ã...ã
ã·ãŒã±ã³ã¹å¶åŸ¡ã¢ãã«ã«ãããšããã®ã¿ã€ãã®ãšã©ãŒã¯èªç¥ãã€ãºãåå ã§çºçããŸããããã¯ãåãã¿ã€ãã®äžé£ã®æäœã®çµããè¿ãã§çºçããå¯èœæ§ãæãé«ãã§ããããã°ã©ããŒã®æ³šæããããšãã°æ°ããã³ãŒãã®äœæãªã©ã次ã®ã¿ã¹ã¯ã«ææå°æ©ã«åãæ¿ããããã§ãïŒããŒãªã³ã°I6ãåç
§ïŒã æ¢ã«è¿°ã¹ãããã«ãèªç¥ãã€ãºã®åå ã説æãããããã«ç°ãªãããŒãžã§ã³ãããã€ããããŸãã äŸãšããŠãééã£ãã¢ã¯ã·ã§ã³ãã©ã³ãéžæããŠãæåŸã®è¡ã®å¹æã説æããããŒãžã§ã³ïŒCooper and Shallice 2006ïŒãæäŸããŸãïŒããšãã°ãéçºè
ã¯çŸåšã®ãã©ã°ã¡ã³ãã®å®æã«éäžããã®ã§ã¯ãªãããã§ã«æ¬¡ã®è¡ã«ç§»åããŠããŸãïŒã
ã€ã³ã¿ãã¥ãŒããããã°ã©ããŒã®èª°ãããã€ã¯ãã¯ããŒã³ã®äœæäžã«é床ã«é«ãã¬ãã«ã®ã¹ãã¬ã¹ã蚎ããããšã¯ãããŸããã§ããããåçè
I6ãšI7ã®èšŒèšã¯ä»ãšã¯ç°ãªããŸãïŒåœŒãã¯äžè¬ã«é«ãäœæ¥è² è·ãšã³ãŒããæžãããšã§ããéãåé²ããããšãã欲æ±ãææããŸãã è¡šã«åŸã£ãŠãæ¬ é¥ãã€ã¯ãã¯ããŒã³ãå«ãã³ããããäœæããããã®çŸå°æéã®åæ 7ã¯ãå¿
é ã®å€åæéäžã«äœæãããã®ã¯ãã®ãã¡2ã€ã ãã§ãããæ®ãã®ããã°ã©ããŒã¯å€åæéå€ã«ã³ãŒããäœæããŸããããå€åäžã«äœæããããšã瀺ããŠããŸãã ç²åŽã¯è³ã®ããã©ãŒãã³ã¹ãäœäžãããçæèšæ¶ã«æªåœ±é¿ãäžããããšãç¥ãããŠããŸãïŒKane et alã2007ïŒã ããããç²åŽãšéæ»ã¯ãæ¬ é¥ã®ãããã€ã¯ãã¯ããŒã³ã®åºçŸã«éèŠãªåœ¹å²ãæãããŸãã
ããã«ãæ¬ é¥ã®ãããã€ã¯ãã¯ããŒã³ãå«ããã¹ãŠã®ã³ãããïŒãªãã¡ã¯ã¿ãªã³ã°ãå«ãïŒã®ãµã€ãºãéåžžã«å€§ããããªããžããªã®ã³ãããã®æšæºãµã€ãºãããæ¡éãã«å€§ããããšãããããŸããã ããã¯ãã³ãããã®ãµã€ãºãèªç¥çãã€ãºãåŒãèµ·ããéèŠãªèŠå ã§ã¯ãªãã«ããŠããéèŠã§ãããšããèãã«ç§ãã¡ãå°ããŸãããã®ããããšã©ãŒã¯æ°ä»ãããŸããã ãã®çµè«ã¯ãçæèšæ¶ã®ãªãŒããŒããŒãã«é¢ããããŒãžã§ã³ãšãæçµã³ãŒãã倧éã«å¶åŸ¡ããããšã¯éåžžã«é£ãããšããåçè
I1ã®çºèšãšããäžèŽããŠããŸãã
äžè«èª¿æ»ã®çµæãããçåœã®æ¬ é¥ã®ãããã€ã¯ãã¯ããŒã³ã¯ãœãããŠã§ã¢éçºã®åéã§åºãŸã£ãŠããçŸè±¡ã§ããããšãããããŸããããããã¯éåžžãåæ段éã§ããŸãã¯å°ãªããšãç¬ç«ããŠããŸãã¯ååã®å©ããåããŠè¡ãããã³ãŒããã¬ãã¥ãŒããããã»ã¹ã§æ€åºãããŸãïŒBeller et al.2014ïŒ ãããã£ãŠãæ®ãã®ä¿®æ£ãããŠããªããã€ã¯ãã¯ããŒã³ã§èŠ³å¯ãããèªç¥ãšã©ãŒã¯ãããã°ã©ãã³ã°ãšã©ãŒã ãã§ãªããã¬ãã¥ãŒãšã©ãŒïŒHealy 1980ïŒã§ããããã³ãŒãã®ã¬ãã¥ãŒäžã«éçºè
ãæåŸã®è¡ãä»ã®è¡ã®æ¬ é¥ã«æ°ä»ããªããšããäºå®ã«åºã¥ããŠããŸãã å®éãç§ãã¡ã®äžè«èª¿æ»ã§ã¯ãæããã«ãã³ãããã§ãã£ããããããã€ã¯ãã¯ããŒã³ã§ããã®ãããªãšã©ãŒã2åè¡ãããããšã瀺ããŠããŸãã1åã¯äœè
ã«ããã³ãŒãã®ã¬ãã¥ãŒæã§ããã1åã¯ååã«ããã³ãŒãã®åé€æã§ãã åã®è¡ãããé«ã確çã§æåŸã®è¡ã«ãšã©ãŒã衚瀺ãããã®ã¯ããããããã·ãŒã±ã³ã¹ãšã©ãŒã§ããããã§ãã 人ã¯ãçŸåšã®ã¿ã¹ã¯ïŒã¬ãã¥ãŒïŒãå®äºããæéãæããã«ã次ã®ã¿ã¹ã¯ïŒããšãã°ãã³ãŒãã®æ¬¡ã®éšåãæžãïŒã«ç²Ÿç¥çã«åãæ¿ããŸãã å¥ã®èª¬æã§ã¯ã次ã®åæ§ã®æ瀺ãé£ç¶ããŠè¡ãããŠããããããšã©ãŒã¯ç®ç«ããªãããšã瀺åããŠããŸãã ããã«ãå
ã®ã³ããŒãšã³ããŒã®èŠèŠçãªé¡äŒŒæ§ã«ãããåã
ã®è¡ãèªèãã«ãããªãå¯èœæ§ããããŸãã ã³ãŒãã¬ãã¥ãŒã®åé¡ã«é¢ããç 究ã¯ããã©ã°ã¡ã³ãã®é¡äŒŒæ§ïŒåèªã®ç¹°ãè¿ãã®é »åºŠã«çŸããïŒã«ãããã¬ãã¥ãŒæ
åœè
ãæ ¡æ£ã«è²»ããæéãå°ãªããªããããã¹ãã®ãšã©ãŒãèªèããèœåã«æªåœ±é¿ãäžããããšã瀺ããŠããŸãïŒMoravcsik and Healy 1995ïŒã
æåŸã®è¡ã®å¹æã®çºçŸã®ãã¹ãŠã®æœåšçãªèŠå ã¯ãèªç¥ãã€ãºã®ããã«ããã°ã©ãã®æ³šæã®éãæžå°ããç¶æ³ã§ããã®çš®ã®ééããç¯ãå¯èœæ§ã®å¢å ã«é¢é£ä»ããããŠããŸãã ãã®çºçã®èããããåå ã¯ãäž»ã«å€§èŠæš¡ãªã³ããããéãã¯ãŒã¯ããŒããã¹ãã¬ã¹ã泚ææ£æŒ«ãç²åŽã«é¢é£ããŠããå¯èœæ§ããããŸãïŒO'Malley and Gallas 1977ïŒã éã«ãç§ãã¡ã®èŠ³å¯ã¯ãå€éšãã€ãºãžã®å¿çãå¶åŸ¡ããéçºè
ã®èœåïŒFukuda and Vogel 2009ïŒãããªãã¡ ã¿ã¹ã¯ã«éäžã§ãããã©ããã¯ãã·ãŒã±ã³ã¹ãšã©ãŒã®ãããã€ã¯ãã¯ããŒã³ã®å¯èœæ§ã«å€§ãã圱é¿ããŸãã
5.3ç 究çµæã®åŠ¥åœæ§ãè
ããèŠå
ãã®ã»ã¯ã·ã§ã³ã§ã¯ãçµæã®åŠ¥åœæ§ã«å¯Ÿããå
éšããã³å€éšã®è
åšãæ€èšãããããã®åœ±é¿ãæå°éã«æããæ¹æ³ã瀺ããŸãã
5.3.1å
éšèŠå
äž»ãªå
éšèŠå ã®1ã€ã¯ããšã©ãŒãã©ã®è¡ã«ããããæ£ããå€æããããšã§ãã ãããã£ãŠãäŸ2ã§ã¯ãââ2ã€ã®åœä»€ã®ããããã³ããŒãšããŠååŸã§ããŸãã ãã ããã³ãŒãã®èªã¿æžãã¯éåžžãäžããäžãå·Šããå³ã«è¡ãããŸãïŒSiegmund et alã2014ïŒã ãããã£ãŠãè¡ãšåœä»€ã®ãšã©ãŒã®é
眮ãåãé åºã«åŸãããšãèããã®ã¯èªç¶ã§ãããåã«æ£ããã§ãããïŒäŸ2ã§ã¯ãââ2çªç®ã®åœä»€ããããèªã¿åãããšã«ãã£ãŠã®ã¿æåã®åœä»€ã®ã³ããŒã§ããããšãç解ã§ããããã2çªç®ã®åœä»€ãæ¬ é¥ãšããŠããŒã¯ããŸãã ããã«ãå€ãã®å Žåããã®äŸã®ããã«ãæãè¿ã
ãã€ã¯ãã¯ããŒã³ã³ã³ããã¹ãïŒäŸ2ã§ã¯ã
ãã¹ãå€æ°ãæåã«å®£èšããã次ã«
port_strã宣èšãããŸãïŒã¯ãããã°ã©ã ããã¹ãã®æ®ãã®èªç¶ãªé åºãèšå®ããŸãïŒæåã«
ãã¹ãããã§ãã¯ãã3è¡ç®ã®
port_strããã§ãã¯ã
ãŸã ïŒ ã ç 究è
ã®ãã€ã¢ã¹ã®æœåšçãªåœ±é¿ãæå°éã«æããããã«ãããŒã¿ã¯æåã®2人ã®èè
éã§ç¬ç«ããåŠçã®ããã«é
åžãããè«äºã®ããã±ãŒã¹ãå
±åã§è°è«ãããŸããã çµæã«ã€ããŠåæã«è³ããªãã£ãå ŽåãåŽäžãããŸããã äœæ¥ã®éçšã§ã以åã®ç 究ïŒBeller et alã2015ïŒã®202ã®çµæãã¹ãŠãååé¡ãã以åã®èª¿æ»çµæãšã»ãŒå®å
šã«äžèŽããŠããããšãçºèŠããŸããã ãã®ãããªç¶æ³ã§æ¬ é¥ã©ã€ã³ãããŒã¯ããæé ã¯è©³çŽ°ã«èŠå®ãããŠãããããåå°é家ã®æšå®å€éã®é«åºŠãªçžäºåæã«èªä¿¡ããããããã«ããç 究ã®åçŸæ§ãä¿èšŒãããŸãã
蚺æã§ã¯ããã¹ãŠã®æ¬ é¥ãã€ã¯ãã¯ããŒã³ãæ€åºãããªãå¯èœæ§ããããŸãã ãã®èŠå ã¯ããã®çš®ã®ãšã©ãŒããã¹ãŠæ€åºãããšã¯äž»åŒµããŠããªããããããããªè
åšã§ãã 蚺æã®æ°ã12ã«å¢ããããšã§ãã»ãšãã©ã®ãã€ã¯ãã¯ããŒã³ãèŠã€ããããšãã§ãããšèããŠããŸãïŒè¡š1ãåç
§ïŒã ããã¯ãV501ãV517ãV519ãããã³V537ãããã€ãã®äž»èŠãªèšºæã§ã»ãšãã©ã®ãšã©ãŒãæ€åºããããšããäºå®ã«ãã£ãŠç¢ºèªãããŸãã van TonderãšLe Guã蚺æã®ççž®ã»ããã䜿çšããŠ24,000ãè¶
ãã誀ã£ããã€ã¯ãã¯ããŒã³ãçºèŠãããšããäºå®ïŒvan Tonder and Le Goues 2016ïŒã
å
ã®ã³ããŒãšã³ããŒã®æ£ããå®çŸ©ã«å¯Ÿããèªä¿¡ã«ãããããããã³ããŒãéçºè
ã«ãã£ãŠã©ã®ããã«äœæããã³ç·šéããããã¯ããããŸããã ãªããžããªã®å®èšŒåæã¯ãã³ãŒãã®ãããã¯ãäžããäžãžãããã³åã
ã®è¡ãå·Šããå³ãžèªã¿åãé åºã«åºã¥ããŠããŸãã éçºè
ã¯ã³ãŒããèªã¿ãªããã³ãŒãã®ããŸããŸãªéšåããã¹ããããããçŸåšã®åé¡ã®è§£æ±ºã«é¢é£ãããšæããããããã¯ã®ã¿ã«ç¹å¥ãªæ³šæãæã£ãŠããããšãç¥ã£ãŠããŸãïŒBusjahn et alã2015; Siegmund et alã2014ïŒã åæã«ãå¶åŸ¡ãããŒã®ç§»åæ¹åã«ã³ãŒããèªã¿åãã ãã§ããã€ã¯ãã¯ããŒã³ã§ããå°ããªè«ççã«æ¥ç¶ããããã©ã°ã¡ã³ããç解ããããšãã§ããŸãã äžããäžãžãå·Šããå³ãžã ç¹ã«ã次ã®è³ªåãžã®åçã«èå³ããããŸãã1ïŒãããããŒã·ãŒã±ã³ã¹ãctrl + cãctrl + vããäœå䜿çšãããŸãããïŒ 2ïŒãã€ã¯ãã¯ããŒã³ã¯ã©ã®é åºã§äœæãããŸããïŒ 3ïŒããã°ã©ããŒã¯ãã³ãŒãããµããŒãããéçšã§ãã€ã¯ãã¯ããŒã³ãã©ã®é åºã§èªã¿åããç·šéããŸããïŒ ãããã®è³ªåã«çããã«ã¯ãWatchDogãã©ã°ã€ã³ãè¡ãæ¹æ³ãšåæ§ã«ãããã°ã©ããŒã®äœæ¥ããçŸå Žãã§èŠ³å¯ã§ãã調æ»ãå®æœããå¿
èŠããããŸãïŒBeller et alã2015ã2015ã2016ïŒã ãã®ç®çã®ããã«ãCloneBoardããŒã«ã®åã
ã®ã³ã³ããŒãã³ãã䜿çšã§ããŸãããã®ããŒã«ã¯ãEclipseã§ãã¹ãŠã®åãåããã³ããŒã貌ãä»ãæäœãèšé²ããŸãïŒde Wit et alã2009ïŒã
ãããã®å¶éãèãããšããã®æ®µéã§ã®æåŸã®è¡ã®å¹æã®å¿ççåºç€ã«é¢ããæã
ã®çµè«ã¯è°è«ã®äœå°ããããããããŸããã ãã培åºçãªåæãè¡ãã«ã¯ããšã©ãŒãäœæããããã»ã¹ãçäœå
ã§èª¿æ»ã§ããå¿çå®éšãå¿
èŠã§ãã éžæããç 究æ¹æ³ã®ç¹æ§ã«ããããã€ã¯ãã¯ããŒã³äœæã®ç¹å®ã®æé ãéãããªã¹ã¯ããããŸãã ããã«ãããããããç§ãã¡ã®åçè
ã¯æ¯èŒçå°æ°ã®ãã®ãããªæçãäœæããã®ã«æéãããããšææããã®ã§ãå®éšå®€æ¡ä»¶äžã§æ¬ é¥ã®ãããã€ã¯ãã¯ããŒã³ãåºçŸããç¶æ³ãåçŸããããšã¯éåžžã«åé¡ã ãšèããŠããŸãã , , , (Adair 1984), , . , , , , .
5.3.2
, PVS-Studio C C++. C â (Meyerovich and Rabkin 2013), , , , C C++ . , , : , if-, (. 1, 2, 5, 7 11). , C: Java, JavaScript, C#, PHP, Ruby Python. , ?1,2 , (. . 2). , PVS-Studio, , , , , . : , .
6
« », (Roy . 2014). : « â , - » (Baxter . (1998)) « â [...] , » (Basit and Jarzabek (2007)). , , . , (Koschke 2007). 1 , 2 ( ). 3 , 4 (Roy . 2014). , . (Koschke 2007; Balazinska . 1999; Kapser and Godfrey 2003). : , , « », . .
. 2007 . C Java (Bellon . 2007). 25 . 2014 , (Svajlenko and Roy 2014). 50 , 15 15 (Svajlenko and Roy 2014). . , , . .
(Beller . 2015) 380 125 Java (van Tonder and Le Goues 2016) 24 304 , , . 43 , . , .
, , , 9% 17% (Zibran . 2011), 1, 2 3 (Koschke 2007). « » 5% (Roy and Cordy 2007) 50% (Rieger . 2004; Roy . 2014). , , , . , â , « ». , , , . (Chatterji . 2011; Gode and Koschke 2011; Inoue . 2012; Xie . 2013).
7
, .
, , . , , . . , , . IDE: .
, , , , , . .
219 , 263 . , â . . , , â , .
, , , - , . , - . , , - . , -, , .
, , , , . , , , , . , ; , - , , . PVS-Studio , , , .
泚é
- TrinityCore â - (MMOG), www . trinitycore . org .
- Chromium â Google Chrome, www.chromium.org .
- http://www.viva64.com/ru/b/0260
- www.reddit.com/r/programming/comments/270orx/the_last_line_effect
- http://www.viva64.com/ru/pvs-studio-download
- 10.6084/m9.figshare.1313697
- . , .
- : http://viva64.com/ru/d/0368/ .
- https :// codereview . chromium . org /7031055
- www . google . com / search ? q = pvs - studio + bug +|+ issue
- https :// bugzilla . samba . org / show _ bug . cgi ? id =12373
- Clang . : https :// llvm . org / bugs / show _ bug . cgi ? id =9952 .
è¬èŸ
ICSE'15 «Mercato Centrale», , .
Adair JG (1984) The Hawthorne effect: a reconsideration of the methodological artifact. J Appl Psychol 69(2):334-345
CrossRef Google ScholarAnderson JR (1990) Cognitive psychology and its implications. WH Freeman/Times Books/Henry Holt & Co
Balazinska M, Merlo E, Dagenais M, Lague B, Kontogiannis K (1999) Measuring clone based reengineering opportunities. In: Proceedings of the international software metrics symposium (METRICS). IEEE, pp 292-303
Basit HA, Jarzabek S (2007) Efficient token based clone detection with flexible tokenization. In: Proceedings of the 6th joint meeting of the European software engineering conference and the ACM SIGSOFT international symposium on foundations of software engineering (ESEC/FSE). ACM, pp 513-516
Baxter ID, Yahin A, de Moura LM, Sant'Anna M, Bier L (1998) Clone detection using abstract syntax trees. In: Proceedings of the international conference on software maintenance (ICSM). IEEE, pp 368-377
Beller M, Bacchelli A, Zaidman A, Juergens E (2014) Modern code reviews in open-source projects: Which problems do they fix? In: Proceedings of the 11th working conference on mining software repositories. ACM, pp 202-211
Beller M, Bholanath R, McIntosh S, Zaidman A (2016) Analyzing the state of static analysis: a large-scale evaluation in open source software. In: Proceedings of the 23rd IEEE international conference on software analysis, evolution, and reengineering. IEEE, pp 470-481
Beller M, Gousios G, Panichella A, Zaidman A (2015) When, how, and why developers (do not) test in their IDEs. In: Proceedings of the 10th joint meeting of the european software engineering conference and the ACM SIGSOFT symposium on the foundations of software engineering (ESEC/FSE). ACM
Beller M, Gousios G, Zaidman A (2015) How (much) do developers test? In: 37th International conference on software engineering (ICSE). ACM, pp 559-562
Beller M, Levaja I, Panichella A, Gousios G, Zaidman A (2016) How to catch 'em all: watchdog, a family of ide plug-ins to assess testing. In: 3rd International workshop on software engineering research and industrial practice (SER&IP 2016). IEEE, pp 53-56
Beller M, Zaidman A, Karpov A (2015) The last line effect. In: 23rd International conference on program comprehension (ICPC). ACM, pp 240-243
Bellon S, Koschke R, Antoniol G, Krinke J, Merlo E (2007) Comparison and evaluation of clone detection tools. IEEE Trans Softw Eng 33(9):577-591
CrossRef Google ScholarBland JM, Altman DG (2000) The odds ratio. Bmj 320(7247):1468
CrossRef Google ScholarBotvinick M, Plaut DC (2004) Doing without schema hierarchies: a recurrent connectionist approach to routine sequential action and its pathologies 111:395-429
Busjahn T, Bednarik R, Begel A, Crosby M, Paterson JH, Schulte C, Sharif B, Tamm S (2015) Eye movements in code reading: relaxing the linear order. In: Proceedings of the international conference on program comprehension (ICPC). ACM, pp 255-265
Chatterji D, Carver JC, Massengil B, Oslin J, Kraft N et al (2011) Measuring the efficacy of code clone information in a bug localization task: an empirical study. In: Proceedings of the international symposium on empirical software engineering and measurement (ESEM). IEEE, pp 20-29
Cooper R, Shallice T (2006) Hierarchical schemas and goals in the control of sequential behaviour, vol 113
de Wit M, Zaidman A, van Deursen A (2009) Managing code clones using dynamic change tracking and resolution. In: Proceedings of the international conference on software maintenance (ICSM). IEEE, pp 169-178
Fukuda K, Vogel EK (2009) Human variation in overriding attentional capture. J Neurosci 29(27):8726- 8733
CrossRef Google ScholarGode N, Koschke R (2011) Frequency and risks of changes to clones. In: Proceedings of the international conference on software engineering (ICSE). ACM, pp 311-320
Healy AF (1980) Proofreading errors on the word the: new evidence on reading units. J Exper Psychol Human Percep Perform 6(1):45
CrossRef Google ScholarInoue K, Higo Y, Yoshida N, Choi E, Kusumoto S, Kim K, Park W, Lee E (2012) Experience of finding inconsistently-changed bugs in code clones of mobile software. In: Proceedings of the international workshop on software clones (IWSC). IEEE, pp 94-95
Juergens E, Deissenboeck F, Hummel B, Wagner S (2009) Do code clones matter? In: Proceedings of the international conference on software engineering (ICSE). IEEE, pp 485-495
Kane MJ, Brown LH, McVay JC, Silvia PJ, Myin-Germeys I, Kwapil TR (2007) For whom the mind wanders, and when an experience-sampling study of working memory and executive control in daily life. Psychol Sci 18(7):614-621
CrossRef Google ScholarKapser C, Godfrey M (2003) A taxonomy of clones in source code: the re-engineers most wanted list. In: 2nd International workshop on detection of software clones (IWDSC-03), vol 13
Kapser CJ, Godfrey MW (2008) Cloning considered harmful-considered harmful: patterns of cloning in software. Emp Softw Eng 13(6):645-692
CrossRef Google ScholarKim M, Bergman L, Lau T, Notkin D (2004) An ethnographic study of copy and paste programming practices in oopl. In: Proc. International symposium on empirical software engineering (ISESE). IEEE, pp 83-92
Koschke R (2007) Survey of research on software clones. In: Koschke R, Merlo E, Walenstein A (eds) Duplication, redundancy, and similarity in software, no. 06301 in Dagstuhl seminar proceedings. Internationales Begegnungs- und Forschungszentrum fur Informatik (IBFI).
https://web.archive.org/web/20161024110147/http://drops.dagstuhl.de/opus/volltexte/2007/962/ . Schloss Dagstuhl, Dagstuhl
Meyerovich L, Rabkin A (2013) Empirical analysis of programming language adoption. In: ACM SIGPLAN notices, vol 48. ACM, pp 1-18
Moravcsik JE, Healy AF (1995) Effect of meaning on letter detection. J Exper Psychol Learn Memory Cogn 21(1):82
CrossRef Google ScholarO'Malley JJ, Gallas J (1977) Noise and attention span. Percep Motor Skills 44(3):919-922
CrossRef Google ScholarRieger M, Ducasse S, Lanza M (2004) Insights into system-wide code duplication. In: Proceedings of the working conference on reverse engineering (WCRE). IEEE, pp 100-109
Roy C, Cordy J, Koschke R (2009) Comparison and evaluation of code clone detection techniques and tools: a qualitative approach. Sci Comput Program 74 (7):470-495
MathSciNet CrossRef MATH Google ScholarRoy CK, Cordy JR (2007) A survey on software clone detection research. Tech. Rep. TR 2007-541. Queens University
Roy CK, Zibran MF, Koschke R (2014) The vision of software clone management: past, present, and future (keynote paper). In: 2014 Software evolution week â IEEE conference on software maintenance, reengineering, and reverse engineering, (CSMR-WCRE). IEEE, pp 18-33
Siegmund J, Kastner C, Apel S, Parnin C, Bethmann A, Leich T, Saake G, Brechmann A (2014) Understanding understanding source code with functional magnetic resonance imaging. In: Proceedings of the international conference on software engineering (ICSE). ACM, pp 378-389
Svajlenko J, Roy CK (2014) Evaluating modern clone detection tools. In: 30th IEEE International conference on software maintenance and evolution (ICSME). IEEE, pp 321-330
van Tonder R, Le Goues C (2016) Defending against the attack of the micro-clones. In: 2016 IEEE 24th International conference on program comprehension (ICPC). IEEE, pp 1-4
Trafton JG, Altmann EM, Ratwani RM (2011) A memory for goals model of sequence errors. Cogn Syst Res 12:134-143
CrossRef Google ScholarXie S, Khomh F, Zou Y (2013) An empirical study of the fault-proneness of clone mutation and clone migration. In: Proceedings of the 10th working conference on mining software repositories (MSR). IEEE
Zibran MF, Saha RK, Asaduzzaman M, Roy CK (2011) Analyzing and forecasting near-miss clones in evolving software: an empirical study. In: Proceedings of the international conference on engineering of complex computer systems (ICECCS). IEEE, pp 295-304
, 2016
Creative Commons Attribution 4.0 International , , , , Creative Commons , .