Comparing observed bug and productivity rates for Java']Java and C++

被引:0
|
作者
Phipps, G [1 ]
机构
[1] Spirus, Paddington, NSW 2021, Australia
来源
SOFTWARE-PRACTICE & EXPERIENCE | 1999年 / 29卷 / 04期
关键词
C++; !text type='Java']Java[!/text; programming languages; metrics;
D O I
10.1002/(SICI)1097-024X(19990410)29:4<345::AID-SPE238>3.0.CO;2-C
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
An experiment was conducted to compare programmer productivity and defect rates for Java and C++. A modified version of the Personal Software Process (PSP) was used to gather defect rate, bug rate, and productivity data on C++ and Java during two real world development projects. A bug is defined to be a problem detected during testing or deployment. A defect is either a bug, or an error detected during compile time. A typical C++ program had two to three times as many bugs per line of code as a typical Java program. C++ also generated between 15 per cent and 50 per cent more defects per line, and perhaps took six times as long to debug. Java was between 30 per cent and 200 per cent more productive, in terms of lines of code per minute. When defects were measured against development time, Java and C++ showed no difference, but C++ had two to three times as many bugs per hour. Statistics were generated using Student's t-test at a 95 per cent confidence level. Some discussion of why the differences occurred is included, but the reasons offered have not been tested experimentally. The study is limited to one programmer over two projects, so it is not a definitive experimental result. The programmer was experienced in C++, but only learning Java, so the results would probably favour Java more strongly for equally-experienced programmers. The experiment shows that it is possible to experimentally measure the fitness of a programming language. Copyright (C) 1999 John Wiley & Sons, Ltd.
引用
收藏
页码:345 / 358
页数:14
相关论文
共 50 条
  • [41] Java与C/C++的结合
    曹敬
    高璟
    计算机与现代化, 2005, (11) : 116 - 119
  • [42] A Public Unified Bug Dataset for Java']Java
    Ferenc, Rudolf
    Toth, Zoltan
    Ladanyi, Gergely
    Siket, Istvan
    Gyimothy, Tibor
    PROMISE'18: PROCEEDINGS OF THE 14TH INTERNATIONAL CONFERENCE ON PREDICTIVE MODELS AND DATA ANALYTICS IN SOFTWARE ENGINEERING, 2018, : 12 - 21
  • [43] Java']Java Bug Fixed with Formal Methods
    不详
    ERCIM NEWS, 2015, (101): : 55 - 55
  • [44] A comparison of bug finding tools for Java']Java
    Rutar, N
    Almazan, CB
    Foster, JS
    15TH INTERNATIONAL SYMPOSIUM ON SOFTWARE RELIABILITY ENGINEERING, PROCEEDINGS, 2004, : 245 - 256
  • [45] EA COMPARATIVE REVIEW OF EXCEPTION HANDLING IN ADA 95, C++, AND JAVA']JAVA
    Molki, Arman
    EDULEARN10: INTERNATIONAL CONFERENCE ON EDUCATION AND NEW LEARNING TECHNOLOGIES, 2010,
  • [46] Lightweight framework for passing data between C++ and Java']Java distributed applications
    Pelcz, A.
    Moraru, S.
    Bujdei, C.
    PROCEEDINGS OF THE 10TH INTERNATIONAL CONFERENCE ON OPTIMIZATION OF ELECTRICAL AND ELECTRONIC EQUIPMENT, VOL III: INDUSTRIAL AUTOMATION AND CONTROL, 2006, : 217 - 220
  • [47] Implementing C++ servlet containers - Harnessing thepower of the Java']Java servlet API
    Hinke, J
    DR DOBBS JOURNAL, 2002, 27 (04): : 52 - +
  • [48] Java战胜C/C++的奥秘——从语言和实现机制角度剖析Java与C/C++
    徐鹏
    王克宏
    微型机与应用, 1999, (03) : 30 - 32
  • [49] Java']JavaDL: Automatically Incrementalizing Java']Java Bug Pattern Detection
    Dura, Alexandru
    Reichenbach, Christoph
    Soderberg, Emma
    PROCEEDINGS OF THE ACM ON PROGRAMMING LANGUAGES-PACMPL, 2021, 5 (OOPSLA):
  • [50] Writing high performance Java']Java code which runs as fast as fortran, C or C++
    Schatzman, JC
    JAVA/JINI TECHNOLOGIES, 2001, 4521 : 106 - 114