5.1 Input Features Our CUEZILLA tool measures quality of bug reports on the basis of their contents. From the survey, we know the most desired features in bug reports by developers. Endowed with this knowledge, CUEZILLA first detects the features listed below. For each feature a score is awarded to the bug report, which is either binary (e.g., attachment present or not) or continuous (e.g., readability).
Itemizations. In order to recognize itemization in bug reports, we checked whether several subsequent lines started with an itemization character (such as -, *, or +). To recognize enumerations, we searched for lines starting with numbers or single characters that were enclosed by parenthesis or brackets or followed by a single punctuation character.
Keyword completeness. We reused the data set provided by Andy Koetal.[20] o define a quality-score of bug reports based on their content. In a first step,we removed stop words,reduced the words to their stem, and selected words occurring in at least 1% of bug reports. Next we categorized the words into the following groups:
– action items (e.g., open, select, click) – expected and observed behavior (e.g., error, missing) – steps to reproduce (e.g., steps, repro) – build-related (e.g., build) – user interface elements (e.g., toolbar, menu, dialog) In order to assess the completeness of a bug report, we computed for each group a score based on the keywords present in the bug report. The maximum score of 1 for a group is reached when a keyword is found. In order to obtain the final score (which is between 0 and 1), we averaged the scores of the individual groups. In addition to the description of the bug report, we analyze the attachments that were submitted by the reporter within 15 minutes after the creation of the bug report. In the initial description and attachments, we recognize the following features: CodeSamples. We identify C++ and JAVA code examples using techniques from island parsing [24]. Currently, our tools can recognize declarations (for classes, methods, functions, and variables),comments,conditional statements(suchasifand switch), and loops (such as for and while). StackTraces. We currently can recognize JAVA stack traces, GDB stack traces, and MOZILLA talkback data. Stack traces are easy to recognize with regular expressions: they consist of a start line (that sometimes also contains the top of the stack) and trace lines. Patches. In order to identify patches in bug reports and attachments we again used regular expressions. They consist of several start lines(which file to patch) and blocks (which are the changes to make) [23]. Screenshots. We identify the type of an attachment using the file toolinUNIX.If an attachment is an image,we recognizeitas a screenshot. If the file is recognized as text, we process the file and search for code examples, stack traces, and patches (see above). For more details about extraction of structural elements from bug reports we refer to our previous work [7], in which we showed that we can identify the above features with a close to perfect precision. After cleaning the description of a bug report from source code, stack traces, and patches, we compute its readability. Readability. To compute readability we use the style tool, which “analyses the surface characteristics of the writing style of a document” [10]. It is important to not confuse readability with grammatical correctness. The readability of a text is measured by the number of syllables per word and the length of sentences. Read ability measures are used by Amazon.com to inform customers about the difficulty of books and by the US Navy to ensure readability of technical documents [19]. In general, the higher a readability score the more complex a text is to read. Several readability measures return values that correspond to school grades. These grades tell how many years of education a reader should have before reading the text without difficulties. For our experiments we used the following seven readability measures: Kincaid, Automated Readability Index (ARI), Coleman-Liau, Flesh, Fog, Lix, and SMOG Grade.
5.5 Recommendations by CUEZILLA The core motivation behind CUEZILLA is to help reporters file better quality bug reports. For this, its ability to detect the presence of information features can be exploited to tip reporters on what information to add. This can be achieved simply by recommending additions from the set of absent information, starting with the feature that contributes to the quality further by the largest margin. These recommendations are intended to serve as cues or reminders to reporters of the possibility to add certain types of information; likely to improve bug report quality. The left panel of Figure 1 illustrates the concept. The text in the panel is determined by investigating the current contents of the report, and then determining that would be best, for instance, adding a code sample to the report. As and when new in formation
5.1 Input คุณสมบัติของเรา cuezilla มาตรการคุณภาพของเครื่องมือการรายงานข้อผิดพลาดบนพื้นฐานของเนื้อหาของพวกเขา จากการสำรวจ เราทราบคุณลักษณะที่ต้องการมากที่สุดในรายงานข้อผิดพลาด โดยนักพัฒนา endowed กับความรู้นี้ cuezilla จึงตัดสินใจเดินทางไปตรวจสอบคุณสมบัติที่ระบุด้านล่าง สำหรับแต่ละคุณลักษณะคะแนนเป็นรางวัลเพื่อรายงานข้อผิดพลาด ซึ่งเป็นทั้งแบบไบนารี ( เช่นสิ่งที่แนบมาปัจจุบันหรือไม่ ) หรือต่อเนื่อง ( เช่น อ่าน )itemizations . ในการรับรู้ itemization ในรายงานข้อผิดพลาด เราตรวจสอบว่าบรรทัดถัดไปก็เป็น itemization หลายตัว ( เช่น - , * หรือ + ) รู้จักเครื่อง เราตามหาสายที่เริ่มต้นด้วยตัวเลข หรือตัวอักษรเดี่ยวที่ถูกล้อมรอบด้วยวงเล็บหรือวงเล็บหรือตามด้วยอักขระเครื่องหมายวรรคตอนเดียวสมบูรณ์คำหลัก เราใช้ชุดข้อมูลโดย แอนดี้ koetal [ 20 ] โอ เดอ จึงต้องการคะแนนคุณภาพของการรายงานข้อผิดพลาดตามเนื้อหาของ จึงตัดสินใจเดินทางไปในขั้นตอน เราเอาคำหยุด ลดคำต้นของพวกเขาและเลือกคำที่มีในอย่างน้อย 1% ของการรายงานข้อผิดพลาด ต่อไปเราสามารถพูดในกลุ่มต่อไปนี้ :แอ็คชั่นรายการ ( เช่นเปิด , เลือก , คลิกและที่คาดหวังและสังเกตพฤติกรรม ( เช่นข้อผิดพลาดที่ขาดหายไป ) –ขั้นตอนการทำซ้ำ ( เช่น , ขั้นตอน , repro ) –สร้างที่เกี่ยวข้อง ( เช่น สร้าง และองค์ประกอบส่วนติดต่อผู้ใช้ ( เช่นแถบเครื่องมือกล่องเมนู ) เพื่อประเมินความสมบูรณ์ของ รายงานข้อผิดพลาด เราคำนวณให้แต่ละกลุ่มได้คะแนนตามคำหลักที่นำเสนอในรายงานข้อผิดพลาด คะแนนสูงสุดของ 1 ในกลุ่มถึงเมื่อมีการพบ เพื่อให้ได้จึงนาล คะแนน ( ซึ่งอยู่ระหว่าง 0 และ 1 ) เราเฉลี่ยคะแนนของกลุ่มบุคคล นอกจากรายละเอียดของข้อผิดพลาดที่เราวิเคราะห์สิ่งที่แนบที่ถูกส่งโดยนักข่าวภายใน 15 นาที หลังจากการสร้างรายงานบั๊ก ในรายละเอียดเบื้องต้นและสิ่งที่แนบมา เรารู้จักคุณสมบัติดังต่อไปนี้ : codesamples . เราระบุ C + + และตัวอย่างรหัส Java โดยใช้เทคนิคจากเกาะแยก [ 24 ] ปัจจุบันเครื่องมือของเราสามารถรับรู้ประกาศเพื่อเรียนวิธีการฟังก์ชันและตัวแปร ) , ความคิดเห็น , งบเงื่อนไข ( สลับ suchasifand ) และลูป ( เช่น และในขณะที่ ) stacktraces . ขณะนี้เราสามารถรับรู้เป็นสแต็คร่องรอย gdb สแต็คร่องรอยและ Mozilla talkback ข้อมูล ร่องรอยสแต็กง่ายต่อการจำด้วยการแสดงออกปกติ : มันประกอบด้วยบรรทัดที่เริ่มต้น ( ที่บางครั้งก็มีด้านบนของสแต็ค ) และติดตามบรรทัด แพทช์ เพื่อที่จะหาแพทช์ในรายงานข้อผิดพลาดและสิ่งที่แนบมาเราอีกครั้งใช้นิพจน์ปกติ ประกอบด้วยหลายบรรทัดเริ่มต้น ( ซึ่งจึงเลอปะ ) และบล็อก ( ซึ่งมีการเปลี่ยนแปลงเพื่อให้ ) [ 23 ] ภาพหน้าจอ เราระบุประเภทของสิ่งที่แนบมาใช้จึงเลอ toolinunix หากสิ่งที่แนบมาเป็นภาพ เรา recognizeitas หน้าจอ ถ้าจึงเลอ ได้รับการยอมรับว่าเป็นข้อความที่เราประมวลผลจึงเลอและค้นหาตัวอย่างรหัสร่องรอยแตกและแพทช์ ( ดูข้างต้น ) สำหรับรายละเอียดเพิ่มเติมเกี่ยวกับการสกัดส่วนประกอบจากรายงานข้อผิดพลาดที่เราอ้างถึงก่อนหน้านี้ของเราทำงาน [ 7 ] , ที่เราพบว่า เราสามารถระบุคุณสมบัติข้างต้นด้วยใกล้ความสมบูรณ์แบบ หลังจากการทำความสะอาดรายละเอียดของรายงานข้อผิดพลาดจากซอร์สโค้ด สแต็คร่องรอยและแพทช์ เราคำนวณของการอ่าน . อ่านง่าย จากการอ่านที่เราใช้รูปแบบเครื่องมือที่ " การวิเคราะห์ลักษณะพื้นผิวของลักษณะการเขียนของเอกสาร " [ 10 ] มันเป็นสิ่งสำคัญที่จะไม่สับสนในการอ่านด้วยไวยากรณ์ที่ถูกต้อง . อ่านของข้อความเป็นวัดโดยจำนวนพยางค์ต่อคำและความยาวของประโยค อ่านวัดความสามารถในใช้โดย Amazon.com เพื่อแจ้งลูกค้าเกี่ยวกับ DIF จึง culty หนังสือโดยกองทัพเรือสหรัฐเพื่อให้อ่านเอกสาร [ 19 ] เทคนิค โดยทั่วไป ยิ่งเป็นระดับคะแนนที่ซับซ้อนมากขึ้นข้อความถูกอ่าน อ่านหลาย ๆมาตรการคืนค่าที่สอดคล้องกับโรงเรียนเกรด เกรดนี้บอกวิธีการหลายปีของการศึกษา ผู้อ่านจะต้องมีก่อนที่จะอ่านข้อความได้โดยไม่ต้องแยกจึง culties . สำหรับการทดลองของเรา เราใช้มาตรการดังต่อไปนี้เจ็ดอ่าน Kincaid , ดัชนีการอ่านอัตโนมัติ ( อารี ) , โคลแมน เลียว , เนื้อ , หมอก , lix และเกรด หมอกควัน5.5 แนะนำโดย cuezilla หลักแรงจูงใจที่อยู่เบื้องหลัง cuezilla คือการช่วยให้นักข่าวจึงเลอ คุณภาพดีกว่า รายงานข้อผิดพลาด นี้ความสามารถในการตรวจสอบสถานะของลักษณะข้อมูลสามารถใช้เคล็ดลับนักข่าวข้อมูลอะไรเพิ่ม นี้สามารถทำได้โดยเพียงแค่การแนะนำเพิ่มเติมจากชุดของข้อมูลที่ขาดหาย เริ่มต้น ด้วยคุณลักษณะที่ก่อให้เกิดคุณภาพต่อไปโดยกำไรที่ใหญ่ที่สุด คำแนะนำเหล่านี้มีวัตถุประสงค์เพื่อใช้เป็นคิว หรือเตือนให้นักข่าวของความเป็นไปได้ที่จะเพิ่มข้อมูลบางประเภท ; แนวโน้มที่จะปรับปรุงคุณภาพรายงานข้อผิดพลาด แผงด้านซ้ายของรูปที่ 1 แสดงให้เห็นถึงแนวคิด ข้อความในแผงจะถูกกำหนดโดยการตรวจสอบเนื้อหาปัจจุบันของรายงาน และจากนั้น กำหนดว่า จะดีที่สุด เช่น การเพิ่มรหัสตัวอย่างรายงาน
การแปล กรุณารอสักครู่..
