SlideShare a Scribd company logo
1 of 168
Download to read offline
CHARANJIT MAHEROO 14094229 1
UNIVERSITY OF HERTFORDSHIRE
School of Computer Science
Modular BSc Honours in Computer Science
6COM0283 – Software Engineering Project
Final Report
April 2015
Novice Programmers Developing Small Java Applications: NetBeans or
Eclipse IDE
Author's initials and surname
CSM MAHEROO
Supervised by: Nathan Baddo
CHARANJIT MAHEROO 14094229 2
Abstract
As the demand for developing program applications to be created increases, so does
the demand for IDEs and most importantly developers who have the best possible
skills and resources available to develop these Java Applications. This report also
aims to find which IDE is the best suited to program Java Applications. Using the
Evidence Based Software Engineering (EBSE) Methodology and applying the
DESMET assessment, this overall report will systematically and scientifically
evaluate two well-known IDEs used for Application development. Once the study is
completed, a recommendation will be made based on which IDE is ideal for Novice
Programmers.
CHARANJIT MAHEROO 14094229 3
1. Introduction Page 4
1.1 What I am doing for my project Page 4
1.2 Why I am doing this project Page 4
1.3 Why I chose these two IDEs Page 5
1.4 How I am going to do this project Page 6
1.5 Subsequent Chapters
2. Background Page 9
2.1 Evidence Based Software Engineering Question Page 9
2.2 Components of the EBSE question Page 9
2.3 EBSE Question Page 10
3. Systematic Literature Review Page 11
3.1 Search Terms Page 11
3.2 Selection/Rejection Criteria Page 12
3.3 Conduct Searches Page 13
3.4 List Articles Page 16
3.5 Retain/Reject Articles Page 23
3.6 Retain or Reject Articles Systematic Literature Review Page 24
3.7 Appraisal of Articles Page 32
4 Feature Analysis Page 48
5 Survey Study Page 54
5.1 Create Questionnaire Page 54
5.2 Record Results Page 55
5.3 Appraisal of Survey Study Page 70
6 Practical Research Page 72
7 Recommendation Page 76
8 Conclusion Page 83
9 Reflection Page 84
10 Appendix
10.1 References Page 86
10.2 SLR article references Page 87
10.3 Feature analysis questionnaire Page 94
10.4 Survey study questionnaire Page 114
10.5 Practical research Page 161
10.6 Ethical approval document Page 168
CHARANJIT MAHEROO 14094229 4
Chapter 1: Introduction
1.1 What I am doing for my Project
In this project, I am conducting an Empirical Evaluation exercise to find out a
suitable Integrated Development Environment (IDE) for Novice programmers to
develop small Java Applications. I will be conducting an Evidence Based Software
Engineering (EBSE) exercise to find out the solution to this problem.
I will be using elements of the DESMET Methodology that will evaluate software
engineering methods and tools. Furthermore, my personal and practical experience
with these two IDEs will test to see if the core knowledge from the SLR is being
upheld by my own experience.
1.2 Why am I doing this Project?
An Integrated Development Environment is a software application that provides
comprehensive facilities to computer programmers for software development. An
IDE consists of a source code editor, build computerisation tools and a debugger.
During my time at University, I was asked to program many numerous small Java
Applications. I decided to use NetBeans as it was recommended by the University,
therefore I used this IDE to construct my code in the source code editor. The only
reason I chose this IDE was due to being advised by the University.
I am currently a final year student, I have decided to conduct an extensive Empirical
Evaluation, so I can find out myself which environment is best suited for
programmers who do not have much experience, however enjoys trying to program
and learn to develop cool small Java Applications.
I also want to demonstrate to practitioners that, conducting an extensive Empirical
Evaluation is a better way to find out a new or old Technology. Software
practitioners and managers seeking to improve the quality of their software
development process, often adopt new technologies without sufficient evidence that
they will be effective, while other technologies are ignored despite the evidence that
they most probably will be useful. So, I am finding out which IDE is appropriate to
use to produce a small Java Application by conducting extensive Empirical
Evaluation.
CHARANJIT MAHEROO 14094229 5
1.3 Why I chose these two IDEs
I chose NetBeans and Eclipse as the two IDEs that I am comparing as these two
IDEs are the two main IDEs that are trending at the moment. ‘For many Java
developers, Eclipse is the IDE of choice’ [Murphy, G (2006)]. However NetBeans is
catching Eclipse in being the favourite IDE on the market.[Jurado, F(2013)] states,
‘Students should learn to design, develop and debug programs with certain tools that
are designed to be used by professional programmers, using IDEs such as NetBeans
or Eclipse’. NetBeans is the IDE that is taught and provided by the University of
Hertfordshire from the start of year 3. Some lecturers also mention the Eclipse IDE
to use, as it is also vastly used among developers. These Two IDEs are the only ones
that are mentioned by the University which are both free to download and use from
their Web Sites. BlueJ is also vastly used across Year 1 and Year 2, however BlueJ
isn’t much of a good/professional software tool to develop small Java Applications.
The above is not the only reason why I chose these two IDEs, after conducting
background research, I found that many Universities only use and recommend
Eclipse or NetBeans to third year students. This lecturer states that, ‘Up until 2006, I
used commercial versions of IntelliJ IDEA for my lessons. But then I switched to
NetBeans IDE and I’ve been quite happy with it.’[Weigend, J (2014)]]
The table below contains student project types and which IDE they used. Eclipse and
NetBeans was mentioned in every different project as well as being used the highest
among any other IDE. This shows that, Eclipse and NetBeans are the two favourite
IDEs to use to develop small Java Applications, thus I will be evaluating these two
IDEs.
[Makiaho, P (2012)]
CHARANJIT MAHEROO 14094229 6
1.4 How am I going to do this Project?
I will conduct an Extensive EBSE exercise which stands for Evidence Based
Software Engineering. The concept tries to bring evidence to decisions made in the
software engineering. The main instrument of EBSE is the Systematic Literature
Review (SLR). The concept is derived from medicine and was adapted by
Kitchenham. The idea behind the SLR is to obtain accurate data by analysing other
primary studies, eliminating possible bias that this study may suffer.
I will also be using a few DESMET Methodologies such as; Surveys, Feature
Analysis and Experiments to help me in producing my own primary evidence.
EBSE Step One: Convert a relevant problem or information need into an
answerable question. This will involve creating an official EBSE question that will
answer the problem I have. The EBSE question will be constructed in a way that was
taught to do so in Semester A of Empirical Evaluation in Software Engineering.
EBSE Step Two: Search the literature for the best available evidence to answer the
question. This is where I will be creating my search terms based around the EBSE
question that I have created. This will involve creating couple of suitable search
terms that will find various articles, journals and books.
I will be using numerous search engines that would provide me with a vast diverse
range of articles that I could use for my project. These search engines will be;
Google, Google Scholar, Yahoo, IEEE Scholar etc.
I would need to find a suitable range of reliable articles (between 40-80) based on
answering the EBSE question. Once this is achieved, I will set out a list of select and
reject criteria that will assist in producing a list of articles that is directly related in
answering the EBSE question.
EBSE Step Three: Critically appraise the evidence for its validity, impact and
applicability. I will by now have selected reliable literature that I could then appraise.
This would involve including a description of how the literature has matched up with
my criteria.
I would need to critically analyse every article to find out the key points it expresses
for and against both IDEs. This will be used to help me evaluate each findings that
will assess how good the articles are.
CHARANJIT MAHEROO 14094229 7
EBSE Step Four: Integrate the appraised evidence with practical experience and
the customer’s values and circumstances to make decisions about practice. At the
point, I should have completed my research and be preparing to start my own
personal findings.
Here in this step, I will conduct a few DESMET methodologies, which would give
me another method of research that I could use. This would include conducting
Surveys that would involve estimated 20-30 personal opinions. The results produced
would be used to develop a greater scope of opinions from professionals, Novice
Programmers and CS & IT students.
Furthermore, I will be conducting tests that will enable me to create small Java
Applications. This then allows me to compare different functionalities based on the
findings I have found from my Systematic Literature Reviews and also my Surveys.
Finally, after all this, I will gather all my personal practical findings with the surveys
and the SLR articles collected and practical experience, to move onto the stage of
making a precise recommendation of which IDE is suitable, in an overall context
while answering the EBSE question.
EBSE Step Five: Evaluate performance and seek ways to improve it. Here I will
evaluate my EBSE Methodology and look at ways I could have done things better or
used EBSE better. I will consider every factor that has played a vital role in
conducting this research, coming to a final conclusion for areas of improvements.
CHARANJIT MAHEROO 14094229 8
Following Chapters
In Chapter two, I will demonstrate how I constructed my EBSE question, identifying
the key components of the question in a way that has been taught to me in my EBSE
Lectures.
In Chapter three, The EBSE question constructed will be used to create the search
criteria for the SLR. After conducting this thoroughly documented SLR, it will allow
me to have a better understanding and core knowledge of both IDEs.
Continuing from Chapter three, I will create a Feature Analysis in chapter four for
the two IDEs, explaining in depth of the features they have.
In chapter five, I will conduct an experiment which will consist of a survey and will
appraise the articles from the SLR.
Chapter six will involve me documenting my practical experience which I will be a
novice programmer creating a small Java applications on both IDEs.
Chapter seven is where the SLR, Personal experience and practical experience will
be combined in order to produce a conclusion with a recommendation.
Chapter eight is the conclusion and the overall experience of this project. I will
explain how the work carried out in the project will relate to both industry and
academia fields.
CHARANJIT MAHEROO 14094229 9
Chapter 2: EBSE Question
Background
In this chapter I will demonstrate how I constructed my question and carefully
identifying all the key parameters of that question.
2.1 Evidence Based Software Engineering Question Concept
‘EBSE has been proposed as methodologies to help practitioners improve their
technology adoption decisions given their particular circumstances’ (Rainer A,
2008). I will attempt to take a practical problem and re-frame it into a software
engineering question, which would help me find reliable and relevant articles.
I would basically construct an EBSE question comprising of five components:
 A statement of the intervention of interest: For example, the instrument of
change, such as the introduction of a new tool.
 A statement of a baseline against which the performance of the intervention
is compared.
 A statement of the users of the technology: For example, the users’
experience and skills.
 A statement of the situation within which the users apply the intervention:
For example, the type of project or type of application.
 A statement of the particular outcome that intervention is expected to change
and ideally improve.
2.2 Components of the EBSE Question
Intervention
From my own experience, NetBeans seems to be one of the easiest and productive
IDEs on the market for providing support of Java Applications. The NetBeans IDE
allows creation of many range of applications, containing a wide range of great
features packed into one well-developed software.
Baseline
The Eclipse IDE is the technology that will be compared with NetBeans IDE. This is
a powerful tool that has been in the market for many years and is recognised amongst
vast number of developers.
CHARANJIT MAHEROO 14094229 10
Users
The users of both IDEs are focused around Novice Programmers. I chose Novice
programmers due to myself being a novice programmer. I am a final year student
who has only programmed applications that are small for one single module, besides
I am a student that has not reached that enterprise level yet.
Situation
The day and age we live in, Java applications are seem to be trending with more
people learning this all-rounder program language, developing applications that can
be found on computers or mobiles.
Outcome
I plan to compare different aspects of both IDEs, resulting in showing which
elements are more suitable for Novice programmers in what circumstances.
2.3 EBSE Question
Is the NetBeans integrated Development Environment (IDE) [Intervention] more
suited [outcome] to develop small Java Applications [situation] when used by Novice
programmers [users] rather than the Eclipse IDE [baseline]?
Following Chapters
In Chapter three, The EBSE question constructed will be used to create the search
criteria for the SLR. After conducting this thoroughly documented SLR, it will allow
me to have a better understanding and core knowledge of both IDEs.
Continuing from Chapter three, I will create a Feature Analysis in chapter four for
the two IDEs, explaining in depth of the features they have.
In chapter five, I will conduct an experiment which will consist of a survey and will
appraise the articles from the SLR.
Chapter six will involve me documenting my practical experience which I will be a
novice programmer creating a small Java applications on both IDEs.
Chapter seven is where the SLR, Personal experience and practical experience will
be combined in order to produce a conclusion with a recommendation.
Chapter eight is the conclusion and the overall experience of this project. I will
explain how the work carried out in the project will relate to both industry and
academia fields.
CHARANJIT MAHEROO 14094229 11
Chapter 3: Systematic Literature Review
The SLR will help in finding appropriate articles from previous conducted
evaluations of NetBeans and Eclipse. Furthermore it will appraise the articles and
evaluate them, when the SLR is completed; the findings from the SLR will then be
used to create a Survey Study and Feature Analysis.
All searches will be conducted using Google Scholar, IEEE Xplore, Yahoo, and
ACM Digital Library. Some articles will be retained and rejected according to the
select & reject criteria below. I will be using Yahoo as one of the search engines as
it’s got a very detailed advanced search modifiers, thus allowing me to get a more
relevant articles.
When I will be selecting the articles, the abstract of articles will be read to determine
if the article should be kept or discarded. Then after it is retained, the full text will be
viewed for a more thorough read.
3.1 Search Terms
Table 1 displays the search terms that I will use for the searches, to gain those
articles that are relevant to the EBSE question that was created in the earlier chapter.
I needed to narrow down my search terms in order to have resources that related
directly with the articles I was looking for.
Task 1
Table 1: EBSE question of search terms
EBSE question
component
Phrase from actual
question
Your search terms for each component /
phrase
Technology intervention NetBeans IDE  NetBeans IDE Technology
 NetBeans IDE
 Advantages of NetBeans
Outcome Is more suited  NetBeans is suited for who?
 Eclipse is suited for who?
Situation To developing small java
applications
 Developing small java applications
NetBeans IDE
 What situation is NetBeans IDE
used for
Users of the technology Novice Programmers  Novice programmers using
NetBeans
 Novice programmers using Eclipse
 For inexperienced programmers
 Better for learning
 Best suited environment for Novice
Programmers.
Baseline technology Eclipse IDE  Eclipse IDE
 Eclipse Best IDE
 Eclipse or NetBeans, which one is
better
CHARANJIT MAHEROO 14094229 12
3.2 Select/Reject Criteria
This table is important as it will help in judging if I should retain or reject the articles
from reading its abstract. This is important as it will start to narrow my findings
better towards the EBSE question, therefore I will not have articles that are too old or
irrelevant.
Table 2: The selection and rejection criteria
Criterion Selection or rejection Explanation of criterion
Up-to-date version of
NetBeans or Eclipse
Select I will select the article because it is
published less than 6 years ago,
furthermore the article is talking about
NetBeans or Eclipse
Article Talks about the
issues of Novice
Programmers Developing
Small Java Applications
Select I will select this article as the article
mentions Novice Programmers Developing
small Java App, this would highlight
factors that may be seen as an advantage of
the IDE when used by inexperienced users
or experienced users.
Article Relates to the
EBSE Question
Select I will select all article that relate in some
way to the EBSE question that was
constructed in Chapter 2.
Opinion-based Reject Reject the articles due to being too opinion
based and not factual.
Out-of-date version of
NetBeans/Eclipse
Reject Reject the article because the article is too
old. For example: The article was published
more than 6 years ago, thus the article may
not contain or appraise features of the IDE
that was adopted within the 6 years.
No References Reject The article that contains no references or
evidence to back up his points, is not
reliable and due to this, it is categorising
itself under opinion based criteria.
Reliable Author Select If the article is written by someone that has
experience from using different kinds of
software, or is in a neutral point of view,
then his articles are retained.
Compares NetBeans to
Eclipse Directly
Select The article that fits this criterion will be
most valuable, as it will provide direct
comparisons between the two IDEs.
Applying the Selection/Rejection criteria above allowed me to quickly go through all
the articles that was collected via my search terms.
CHARANJIT MAHEROO 14094229 13
3.3 Conduct Searches
Table 3 displays the searches I conducted, the modifiers used, the search engine used
and the number of results produced. The search terms were placed in various
different search engines to gain a wide scope of findings.
Table 3: The searches
Search Engine Date and
Time of
Search
EBSE
Component
Searched
Search Terms Modifiers Number of
Results
Google Scholar 17/02/15
15:29
Technology NetBeans
Integrated
Development
Environment
Technology
Quotation
marks around
NetBeans.
Year 2009-
2015
9,490
Google Scholar 17/02/15
17:33
Outcome NetBeans IDE is
suited for who?
Quotation
marks around
Suited.
Year 2009-
2015
884
Google Scholar 17/02/15
17:45
Situation Developing small
Java
Applications
with NetBeans
IDE
Quotation
marks around
Small.
Year 2009-
2015
3,320
Google Scholar 17/02/15
18:05
Users of the
Technology
Novice
Programmers
using NetBeans
Quotation
marks around
Novice.
Year 2009-
2015
538
Google Scholar 17/02/15
18:28
Baseline
Technology
Eclipse IDE is
the best
Quotation
marks around
Eclipse.
Year 2009-
2015
13,900
IEEE Xplore 17/02/15
18:46
Technology NetBeans
Integrated
Development
Environment
Technology
“NetBeans”
Year 2009-
2015
52
IEEE Xplore 17/02/15
18:58
Outcome NetBeans IDE is
suited for which
person?
“NetBeans”
Year 2009-
2015
59
IEEE Xplore 17/02/15
19:10
Situation Developing small
Java
Applications
with NetBeans
IDE
Year 2009-
2015
70
IEEE Xplore 17/02/15
19:27
Users of the
Technology
Novice
Programmers
using NetBeans
Year 2009-
2015
1,969
CHARANJIT MAHEROO 14094229 14
Table 3: The searches
Search Engine Date and
Time of
Search
EBSE
Component
Searched
Search Terms Modifiers Number of
Results
IEEE Xplore 18/02/15
13:34
Baseline
Technology
Eclipse IDE is the
best
2010-2015 6
ACM Digital
Library
18/02/15
13:45
Technology NetBeans Integrated
Development
Environment
Technology
2009-2015 151
ACM Digital
Library
18/02/15
13:58
Outcome NetBeans IDE is
suited for who?
2009-2015 20
ACM Digital
Library
18/02/15
14:16
Situation Developing small
Java Applications
with NetBeans IDE
2009-2015 66
ACM Digital
Library
18/02/15
14:29
Users of the
Technology
Novice Programmers
using NetBeans
2009-2015 44
ACM Digital
Library
18/02/15
14:47
Baseline
Technology
Eclipse IDE is the
best
2009-2015 781
Springer Link 18/02/15
17:01
Technology NetBeans Integrated
Development
Environment
Technology
2010-2015
Articles
Computer
Science
85
Springer Link 18/02/15
17:45
Outcome NetBeans IDE is
suited for who?
2009-2015
Articles
Computer
Science
Applicatio
ns
5
Springer Link 18/02/15
17:58
Situation Developing small
Java Applications
with NetBeans IDE
2009-2015
Articles
Computer
Science
Applicatio
ns
12
Springer Link 18/02/15
18:16
Users of the
Technology
Novice Programmers
using NetBeans
2009-2015
Articles
Computer
Science
7
CHARANJIT MAHEROO 14094229 15
Springer Link 18/02/15
18:38
Baseline
Technology
Eclipse IDE is the
best
2009-2015
Articles
Computer
Science
282
Table 3: The searches
Search Engine Date and
Time of
Search
EBSE
Component
Searched
Search Terms Modifiers Number of
Results
Google Scholar 19/02/15
15:29
Technology Benefits of using
NetBeans
Year 2009-
2015
2,830
Google Scholar 19/02/15
11:33
Outcome NetBeans and
Eclipse suited for
what type of
programmers
Year 2009-
2015
1,580
Google Scholar 19/02/15
11:45
Situation What situation is
NetBeans IDE
used for
Year 2009-
2015
2,480
Google Scholar 19/02/15
12:05
Users of the
Technology
Novice
programmers
using Eclipse
IDE
Year 2009-
2015
7,680
Google Scholar 19/02/15
12:28
Baseline
Technology
Eclipse or
NetBeans, which
one is better
Year 2009-
2015
2,250
Springer Link 19/02/15
12:46
Technology Benefits of using
NetBeans
Article
Computer
Science
Year 2009-
2015
68
Springer Link 19/02/15
12:58
Outcome NetBeans and
Eclipse suited for
what type of
programmers
Article
Computer
Science
Year 2009-
2015
7
Springer Link 19/02/15
13:10
Situation What situation is
NetBeans IDE
used for
Article
Computer
Science
Year 2009-
2015
31
Springer Link 19/02/15
13:27
Users of the
Technology
Novice
programmers
using Eclipse
IDE
Article
Computer
Science
Year 2009-
2015
17
Springer Link 19/02/15
13:58
Baseline
Technology
Eclipse or
NetBeans, which
one is better
Article
Computer
Science
Year 2009-
2015
1,117
CHARANJIT MAHEROO 14094229 16
3.4 List Articles
1. Abi-Antoun, M, Giang, A, Chandrashekar, S, Khalaj, E (2014). ‘The Eclipse
Runtime for Object-Oriented Code Exploration and Program Comprehension’.
Publisher Available at: http://dl.acm.org/citation.cfm?id=2688133 Accessed on:
14/3/15
2. Ami, A, Islam S (2015). ‘A Content Assist Based Approach for Providing Rationale
of Method Change for Object Oriented Programming’. Publisher Available at:
http://www.mecs-press.org/ijieeb/ijieeb-v7-n1/IJIEEB-V7-N1-7.pdf Accessed on:
14/3/15
3. Agarwal, H, Saxena, A, Karishna, V, Saritha, D (2011). ‘FlexiSim: A User Friendly
Environment for Network Simulations’. Publisher Available at:
http://www.lidi.info.unlp.edu.ar/WorldComp2011-Mirror/ICW3947.pdf Accessed
on: 14/3/15
4. Burnette, E (2007). 'NetBeans vs. Eclipse, this time with attitude'. ZDNET available
at: http://www.zdnet.com/blog/burnette/netbeans-vs-eclipse-this-time-with-
attitude/387 Accessed on: 14/3/15
5. Burch, C (2009). ‘Jigsaw, a Programming Environment for Java in CS1’. Publisher
Available at: http://dl.acm.org/citation.cfm?id=1516604 Accessed on: 14/3/15
6. Balsiger, M (2010). ‘Representing Software Features in the Eclipse IDE’. Publisher
Available at:
https://uhvpn.herts.ac.uk/archive/projects/,DanaInfo=scg.unibe.ch+Bals10a-
BOA.pdf Accessed on: 14/3/15
7. Boxtel, J (2010). ‘An Evaluation of Interactive Curriculum Using the Java
Instructional Gaming Engine’. Publisher Available at:
https://uhvpn.herts.ac.uk/projects/thesis/,DanaInfo=jamesvanboxtel.com+thesis-4-6-
10.pdf Accessed on: 14/3/15
8. Chen, Z, Marx, D (2005). 'Experience with Eclipse IDE in programming courses'.
ACM DL Digital Library available at: http://dl.acm.org/citation.cfm?id=1089068
Accessed on: 14/3/15
9. Chatley, R, Timbul, T (2005). 'KeyaEclipse: learning to program in eclipse'. ACM
DL Digital Library available at: http://dl.acm.org/citation.cfm?id=1081746 Accessed
on: 14/3/15
10. Cadenhead, R. (2014). Java in 24 Hours, Sams Teach Yourself (Covering Java 8).
7th
edn. [EBook] USA: Pearson Education, Inc. Accessed on: 14/3/15
11. Carlisle, M (2010). ‘Using You Tube to enhance Student Class Preparation in an
Introductory Java Course’. Publisher Available at:
http://dl.acm.org/citation.cfm?id=1734419 Accessed on: 16/3/15
12. Das. P, Chakraborty, S, Dutta, P (2012). ‘Inception of Medi Java: an Open Source
Library for Medical Science’. Publisher Available at:
http://research.ijais.org/volume3/number2/ijais12-450473.pdf Accessed on: 16/3/15
13. DeReamer, S (2010). ‘Teaching Computer Science: a Neumont Philosophy’.
Publisher Available at: http://dl.acm.org/citation.cfm?id=1668880 Accessed on:
16/3/15
CHARANJIT MAHEROO 14094229 17
14. Dillon, E (2009). ‘Which environment is more suitable for novice programmers:
editor/command line/console environment vs. integrated development environment’?
Publisher available at:
http://acumen.lib.ua.edu/content/u0015/0000001/0000103/u0015_0000001_0000103
.pdf Accessed on: 16/3/15
15. Djasmir, M, Idris, S, Bakar, M, Zin, A (2012). ‘An Integrated Development
Environment for Blocks Creation’. Publisher available at:
http://docsdrive.com/pdfs/medwelljournals/ajit/2012/194-200.pdf Accessed on:
16/3/15
16. Ertl, D (2009). ‘A Case Study of Developing an IDE for Embedded Software Using
Open Source’. Publisher available at: Accessed on:
16/3/15http://ieeexplore.ieee.org/xpls/abs_all.jsp?arnumber=5298435&tag=1
17. Eriksen, K, (2013). ‘Implementation of Editors for Text-Based Domain-Specific
Languages’. Publisher Available at: https://uhvpn.herts.ac.uk/wp-
content/uploads/,DanaInfo=www.2k3.org+Kyrrehe_Master.pdf Accessed on:
16/3/15
18. Fenwick, J, Norris, C, Barry, F, Rountree, J, Spicer, C, Cheek, S (2009). ‘Another
Look at the Behaviours of Novice Programmers’. Publisher Available at:
http://dl.acm.org/citation.cfm?id=1508973 Accessed on: 16/3/15
19. Foltin, M, Fodrek, P, Blaho, M, Murgas, J (2011). ‘Open Source Technologies in
Education’. Publisher available at: http://www.wseas.us/e-
library/conferences/2011/Corfu/EDUC/EDUC-22.pdf Accessed on: 16/3/15
20. Fleming, C, Morey, J, Sedig, K (2013). ‘Students’ Perception on the Use of Visual
tilings to Support their Learning of Programming Concepts’. Publisher Available at:
https://uhvpn.herts.ac.uk/xpls/,DanaInfo=ieeexplore.ieee.org+abs_all.jsp?arnumber=
6654412&tag=1 Accessed on: 16/3/15
21. Furmankiewicz, J (2010). ‘Eclipse, NetBeans, and IntelliJ: Assessing the Survivors
of the Java IDE Wars’. Publisher Available at:
http://www.devx.com/Java/Article/34009/1954 Accessed on: 16/3/15
22. Galvan C, Hernandez, I (2011). ‘Educational Software for Metrology Using Java
Applets’. Publisher Available at:
http://limcserver.dee.ufcg.edu.br/metrologia_2011/iicimmec/83502.pdf Accessed on:
16/3/15
23. Geer, D (2005). ‘Eclipse Becomes the Dominant Java IDE’. Publisher available at:
http://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=1463097 Accessed on:
16/3/15
24. German, D, Davies, Julius, D (2011). 'Apples vs. oranges? An explanation of the
challenges of comparing the source code of two software systems'. ACM DL Digital
Library available at: http://dl.acm.org/citation.cfm?id=1985483 Accessed on:
16/3/15
25. Gray, J (2009). ‘Readers’ choice awards 2009’. ACM DL Digital Library available
at: http://dl.acm.org/citation.cfm?id=1554324.1554325&coll=DL&dl=ACM&C
Accessed on: 16/3/15
CHARANJIT MAHEROO 14094229 18
26. Grekova, E, Zuniga, G, Gupta, G, Goldring, J, Nguyen, M (2012). ‘Aspect-Oriented
Programming’. Publisher Available at:
https://uhvpn.herts.ac.uk/courses/seng403/W2012/papers/,DanaInfo=kremer.cpsc.uc
algary.ca+6%20Aspect-Oriented%20Programming.pdf Accessed on: 16/3/15
27. Golman, M (2010). ‘Thesis Proposal: All the Program’s a Stage, and all the
Programmers Merely Players’. Publisher Available at:
https://uhvpn.herts.ac.uk/maxg/proposal/,DanaInfo=people.csail.mit.edu+maxg-
proposal.pdf Accessed on: 16/3/15
28. Hou, D, Wang, Y (2009). ‘An Empirical Analysis of the Evolution of User-Visible
Features in an Integrated Development Environment’. Publisher Available at:
http://dl.acm.org/citation.cfm?id=1723044 Accessed on: 16/3/15
29. Husain, M (2013). ‘Teaching Programming Course Elective: A New Teaching and
Learning Experience’. Publisher Available at:
http://ieeexplore.ieee.org/xpls/abs_all.jsp?arnumber=6756349 Accessed on: 16/3/15
30. Jackson, J (2012). ‘Oracle Gears NetBeans for Building Better User Interfaces’.
Publisher Available at:
http://www.cio.com/article/697392/Oracle_Gears_Netbeans_for_Building_Better_U
ser_Interfaces Accessed on: 16/3/15
31. JavaWorld (2008). ‘Eclipse 3.3 or NetBeans 6.0?’ Publisher Available at:
http://www.javaworld.com/article/2077841/open-source-tools/eclipse-3-3-or-
netbeans-6-0-.html?page=4 [Accessed: 20 February, 2015]. Accessed on: 16/3/15
32. Johnson, C (2012). ‘SpecCheck: Automated Generation of Tests for Interface
Conformance’. Publisher Available at:
https://uhvpn.herts.ac.uk/,DanaInfo=dl.acm.org+citation.cfm?id=2325343 Accessed
on: 16/3/15
33. Jurado, F, Molina, A, Redondo, M, Ortega, M (2013). ‘Cole-Programming: Shaping
Collaborative Learning Support in Eclipse’. Publisher Available at:
http://ieeexplore.ieee.org/xpl/articleDetails.jsp?arnumber=6634224 Accessed on:
16/3/15
34. Knaub, M (2008). ‘Eclipse as a Tool for Program Understanding’. Publisher
Available at:
http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.102.2579&rep=rep1&type
=pdf Accessed on: 16/3/15
35. Kannangara, P (2013). ‘Teaching Tools and Techniques for Efficient Teaching and
Learning of Computer Programming for Beginners using Java’. Publisher Available
at: https://uhvpn.herts.ac.uk/cgi-
bin/,DanaInfo=espace.library.curtin.edu.au+espace.pdf?file=/2013/08/02/file_1/1920
78 Accessed on: 16/3/15
36. Lapolla, M, Risi, M, Scanniello G (2009). ‘An Empirical Evaluation of the Eclipse
Framework’. Publisher Available at: http://eit09.unibg.it/pdfs/eit09.pdf#page=74
Accessed on: 16/3/15
CHARANJIT MAHEROO 14094229 19
37. Lytinen, S, Railsback, S (2011). ‘Agent-Based Simulation Platforms: An Updates
Review’. Publisher Available at:
https://uhvpn.herts.ac.uk/slytinen/abm/,DanaInfo=condor.depaul.edu+Lytinen-
Railsback-EMCSR_2011-12-15.pdf Accessed on: 18/3/15
38. Major, L (2012). ‘Systematic Literature Review: Teaching Novice Programming
Using Robots’. Publisher Available at:
http://ieeexplore.ieee.org/xpl/articleDetails.jsp?tp=&arnumber=6353335&ranges%3
D2009_2015_p_Publication_Year%26queryText%3DNovice+Programmers+using+
NetBeans Accessed on: 18/3/15
39. Maksimova, N (2013). ‘JAVA IDEs For Easily Learning and Understanding Object
Oriented Programming’. Publisher Available at: http://eprints.ugd.edu.mk/8235/
Accessed on: 18/3/15
40. Murgia, A, Concas, G, Tonelli, R, Turnu, I (2009). ‘Empirical Study of Software
Quality Evolution in Open Source Projects Using Agile Practices’. Page: 11 ,
Publisher Available at:
https://books.google.co.uk/books?hl=en&lr=&id=xgJoAgAAQBAJ&oi=fnd&pg=P
A11&dq=Eclipse+or+NetBeans,+which+one+is+better&ots=3LmNmXptV-
&sig=ZiwoogRaf5TtK7bcEFfi9ZWY6qw#v=onepage&q=Eclipse%20or%20NetBea
ns%2C%20which%20one%20is%20better&f=false Accessed on: 18/3/15
41. Murphy, G.C, Kersten, M, Findlater, L (2006).'How are java software developers
using the Eclipse IDE'. IEEE Software available at:
http://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=1657944 Accessed on:
18/3/15
42. Mbogo, C, Blake, E, Suleman, H (2013). ‘A Mobile Scaffolding Application to
Support Novice Learners of Computer Programming’. Publisher Available at:
http://dl.acm.org/citation.cfm?id=25179410 Accessed on: 18/3/15
43. Moritz, R (2012). ‘mJeliot: An Interactive Smartphone-Based Learning Tool for
Programming Lectures’. Publisher Available at:
https://uhvpn.herts.ac.uk/smash/,DanaInfo=www.diva-
portal.org+record.jsf?pid=diva2%3A553245&dswid=-680 Accessed on: 18/3/15
44. Naveed, A (2010). ‘Multi-Attribute Metrics for Evaluating Quality of Student
Programming Assignments’. Publisher Available at:
http://undergraduate.csse.uwa.edu.au/year4/Current/Students/Files/2010/AsadNavee
d/CorrectedDissertation.pdf Accessed on: 18/3/15
45. Neve, P, Hunter, G, Livingstone, D (2014). ‘NoobLab: An E-learning Platform for
Teaching Programming’. Publisher Available at:
http://ieeexplore.ieee.org/xpl/articleDetails.jsp?arnumber=6949453&sortType%3Da
sc_p_Sequence%26filter%3DAND%28p_IS_Number%3A6949433%29 Accessed
on: 18/3/15
46. Pendergast, M (2005). ‘Teaching Java to IS Students: Top Ten Most Heinous
Programming Errors’. Publisher Available at:
http://aisel.aisnet.org/cgi/viewcontent.cgi?article=1801&context=amcis2005
Accessed on: 18/3/15
CHARANJIT MAHEROO 14094229 20
47. Pendergast, M (2006). 'Teaching introductory programming to IS Students: java
problems and pitfalls'. Journal of Information Technology Education: Research,
5(1), 491-515 available at: http://www.editlib.org/p/111559/ Accessed on: 18/3/15
48. Plastino, A (2014). ‘What Should I Code Now’? Publisher Available At:
http://www.jucs.org/jucs_20_5/what_should_i_code/jucs_20_05_0797_0821_silva.p
df Accessed on: 18/3/15
49. Pyshkin, E (2011). ‘Teaching Programming: What We Miss in Academia’. Publisher
Available at: http://ieeexplore.ieee.org/xpls/abs_all.jsp?arnumber=6188472
Accessed on: 18/3/15
50. Piasecki, M (2011). ‘Application Programming- Mobiles Computing’. Publisher
Available at: http://www.dbc.wroc.pl/Content/23914/piasecki_application.pdf
Accessed on: 18/3/15
51. Pribela, I, Pracner, D, Budimac, Z (2014). ‘Tool for Testing Student Programs’.
Publisher Available at: http://ceur-ws.org/Vol-1266/SQAMIA2014_Paper9.pdf
Accessed on: 18/3/15
52. Rigby, P, Thompson, S (2005). ‘Study of Novice Programmers Using Eclipse and
Gild’. Publisher Available at: http://dl.acm.org/citation.cfm?id=1117718 Accessed
on: 19/3/15
53. Ratchford, T (2011). ‘Creating Application Programming Interface Code Templates
From Usage Patterns’. Publisher Available at:
http://www.cs.mcgill.ca/~martin/theses/msc-ratchford-2011.pdf Accessed on:
19/3/15
54. Reed, D (2010). ‘Sometimes Style Really Does Matter’. Publisher Available at:
http://dl.acm.org/citation.cfm?id=1747172 Accessed on: 19/3/15
55. Roy, A (2012). ‘Active Learning Animations for the Theory of Computing the FSA
Simulator’. Publisher Available at:
http://web3.cs.montana.edu/techreports/1112/Roy.pdf Accessed on: 19/3/15
56. Salviulo, F, Scanniello, G (20130. ‘Comprehending and Maintaining Object-
Oriented Source Code: an Ethnographically-Informed Study’. Publisher available at:
http://www2.unibas.it/gscanniello/SCCMEthno/Comprehending_and_Maintaining_
Object-Oriented_Source_Code__an_Ethnographically-
informed_Study/Study_Information_files/ICSM_2013_Ethn.pdf Accessed on:
19/3/15
57. Schroter, A (2011). 'MSR challenge 2011: Eclipse, Netbeans, Firefox, and Chrome'.
ACM DL Digital Library available at: http://dl.acm.org/citation.cfm?id=1985478
Accessed on: 19/3/15
58. Snellenburg, J, Laptenok, S, Seger, R, Mullen, K, Stokkum, I (2012). ‘Glotaran: A
Java-Based Graphical User Interface for the R Package TIMP’. Publisher Available
at: https://hal-polytechnique.archives-ouvertes.fr/hal-00817159/document Accessed
on: 19/3/15
CHARANJIT MAHEROO 14094229 21
59. Storey, M, Damian, D, Michaud, J, Myers, D, Mindel, M, German, D, Sanseverino,
M, Hargreaves, E (2003). 'Improving the usability of Eclipse for novice
programmers'. ACM DL Digital Library available at:
http://dl.acm.org/citation.cfm?id=965668 Accessed on: 19/3/15
60. Soares, G (2011). ‘Identifying Overly Strong Conditions in Refactoring
Implementations’. Publisher Available at:
http://ieeexplore.ieee.org/xpls/abs_all.jsp?arnumber=6080784 Accessed on: 19/3/15
61. The server side (2012) ‘what’s the big IDE? Comparing Eclipse and NetBeans’.
Publisher Available at: http://www.theserverside.com/feature/Whats-the-Big-IDE-
Comparing-Eclipse-vs-NetBeans Accessed on: 21/3/15
62. Vihavainen, A, Helminen, J, Ihantola, P (2014). ‘How Novices tackle their First
Lines of Code in an IDE: analysis of Programming Session Traces’. Publisher
Available at: http://dl.acm.org/citation.cfm?id=2674692 Accessed on: 21/3/15
63. Wang, X, Baik, E, Devanbu, P (2011). ‘Operating System Compatibility analysis of
Eclipse and NetBeans based on Bug Data’. Publisher Available at:
http://dl.acm.org/citation.cfm?id=1985479 Accessed on: 21/3/15
64. Witte, R, Sateli, B, Khamis, N, Rilling, J (2011). ‘Intelligent Software Development
Environments: Integrating Natural Language Processing with the Eclipse Platform’.
Publisher available at: http://link.springer.com/chapter/10.1007/978-3-642-21043-
3_49#page-2 Accessed on: 21/3/15
65. Watson, G.R (2006). 'Developing scientific applications using eclipse'. IEEE
software available at: http://ieeexplore.ieee.org/xpls/abs_all.jsp?arnumber=1644709
Accessed on: 21/3/15
66. Walters, B (2013). ‘Towards an Eye-Tracking Enabled IDE for Software
Traceability Tasks’. Publisher Available at:
https://uhvpn.herts.ac.uk/xpls/,DanaInfo=ieeexplore.ieee.org+abs_all.jsp?arnumber=
6620154&tag=1 Accessed on: 21/3/15
67. Wurthinger, T, Binder, W, Ansaloni, D, Moret, P, Mossenbock, H (2010).
‘Applications of enhanced dynamic code evolution for Java in GUI development and
dynamic aspect-oriented programming’. Publisher Available at:
http://dl.acm.org/citation.cfm?id=1868312 Accessed on: 21/3/15
68. Xinogalos, S (2012). ‘Programming Techniques and Environments in a Technology
Management Department’. Publisher Available at:
http://dl.acm.org/citation.cfm?id=2371342 Accessed on: 21/3/15
69. Yalamanchili, D (2013). ‘AZ-Nuggets: An IDE for Programming by Concept’.
Publisher Available at:
https://uhvpn.herts.ac.uk/bitstream/handle/10222/35438/,DanaInfo=Dalspace.library.
dal.ca+Yalamanchili-Lakshmi%20Deepak-MCSc-CSCI-July-2013.pdf?sequence=1
Accessed on: 21/3/15
CHARANJIT MAHEROO 14094229 22
70. Yefim, K (2010). ‘Learning Management System Technologies and Software
Solutions for Online Teaching: Tools and Applications’. Publisher Available at:
https://books.google.co.uk/books?hl=en&lr=&id=2OsPGIvgjGwC&oi=fnd&pg=PA
332&dq=NetBeans+for+Novice+programmers&ots=LSnphXpyTK&sig=ImoChlZ
MhrSjiv3ACTFjs-qDGqA#v=snippet&q=eclipse&f=false Accessed on: 21/3/15
71. Unanimous, (2011). ‘NetBeans vs Eclipse vs JDeveloper’. Publisher Available at:
http://www.indicthreads.com/1513/java-ides-netbeans-vs-eclipse-vs-jdeveloper/
Accessed on: 21/3/15
72. Zhen, Hu (2011). ‘To enlighten Students’ thinking of Programming by Java
Language.’ Publisher Available at:
https://uhvpn.herts.ac.uk/xpls/,DanaInfo=ieeexplore.ieee.org+abs_all.jsp?arnumber=
6001826 Accessed on: 21/3/15
CHARANJIT MAHEROO 14094229 23
3.5 Selection/Rejection Criteria for Articles
Table 5 The selection and rejection criteria
Criterion Number Criteria Explanation of criteria
1 Is evidence valid and is
it based on experience or
facts.
In order for the article to be valid, the article must
contain evidence backing its reasons/points, rather
than just being opinion based. It must use citations
and include a reference/bibliography section.
Furthermore, the article should contain more facts
than the authors own experience, as I don’t want an
article that’s more experience based than factual.
2 Any vested Interest? Does the researcher have any vested interest in the
results, in other words, does the Author have
something to gain from writing a positive article.
This is important in looking up and selecting the
right articles that aren’t bias, so that my
recommendation isn’t supported by bias points.
3 Does the Article Tackle
the issue of Novice
Programmers
The article must clearly state issues Novice
Programmers have, as well as the article, should be
based around Novice Programmers. This is
important as it will allow articles to be selected more
precisely towards the EBSE Components.
4 Does the article talk
about NetBeans or
Eclipse
The article must imply on either or at least one of the
IDEs, as it will only then make it relevant to the
EBSE question. This is important, as obtaining
articles that do not mention either IDEs are useless
and irrelevant.
5 Does the article compare
the two IDEs?
The article will need to compare the two IDEs,
stating clearly why one is better than the other. This
is important, as I would need at least few articles that
actually compare the IDEs, this will be useful in
deciding which IDE I will recommend in the report.
6 Is the article
understandable as a
Novice Programmer?
The article must at least contain the basic
information you can understand. Furthermore, if the
article is too complicated for a Novice Programmer
like me, then it should not be obtained. For example,
you would not choose to read an article that is too
scientific or based around enterprise level, as it will
be hard to refer to due to the fact that, I would not
understand it.
CHARANJIT MAHEROO 14094229 24
3.6 Retain or Reject Articles from Systematic Literature Review
Table 6 The Reject and Retain Articles
Appraisal Criteria Number From Table 5
Article Identifier 1 2 3 4 5 6 Article retained or rejected
1
Abi-Antoun, M
(2014).
Met Met Failed Met Failed Failed This article will be Rejected as it only met 3/6 of the Criteria. It failed criteria 3, 5 and 6. The
criteria failed were the most vital ones needed to be met in order for any article to be
retained.
2
Ami, A, Islam S
(2015)
Met Met Failed Met Failed Met The article rejected. This is due to the fact that, the article doesn’t really help in providing
any useful information to tackle the EBSE Question, even though it met 4/6 of the criteria.
3
Agarwal, H
(2011)
Met Met Failed Met Failed Met The Article Retained.
This article met 4/6 of the criteria. This is due to the fact that, the article provides useful
information about NetBeans IDE and shows some benefits of using the IDE.
4
Burnette, E
(2007)
Failed Failed Failed Failed Failed Met This article will be Rejected as it only met 1/6 of the Criteria. This article was rejected as it
was just full of opinions and it didn’t mention any range of NetBeans or Eclipse features.
5
Burch, C
(2009)
Met Met Met Failed Failed Met The article retained. This is due to the fact that, the article mentions few key points, that
could be useful in my report to back up, why an IDE with too many features is too
distracting for any students or Novice programmers.
6
Balsiger, M
(2010)
Met Met Failed Met Failed Met The Article Retained.
This article met 4/6 of the criteria. This is due to the fact that, the article provides depth
information about Eclipse features that would be useful in the report as well as in the feature
analysis section.
7
Boxtel, J
(2010)
Met Met Met Met Met Met This article is retained as it met 6/6 of the criteria. This article contained various useful
points, which would be very helpful in my recommendation.
8
Chen, z
(2005)
Met Met Met Met Met Met Article retained as it met 6/6 of the criteria.
This article is clearly stating more than one of the EBSE components.
9
Chatley, R
(2005)
Met Met Met Met Failed Met The Article Retained.
This article met 5/6 of the criteria. This is due to the fact that, the article provides depth
information about Eclipse features that would be useful for students as well as few bad
points to why it’s not that great for Novices.
CHARANJIT MAHEROO 14094229 25
Table 6 The Reject and Retain Articles
Appraisal Criteria Number From Table 5
Article Identifier 1 2 3 4 5 6 Article retained or rejected
10
Cadenhead, R
(2014)
Met Met Failed Failed Failed Met The Article Rejected.
This article met 3/6 of the criteria.
11
Carlisle, M
(2010)
Met Met Met Met Failed Met The Article Retained.
This article met 5/6 of the criteria.
12
Das, P (2012)
Met Met Failed Met Failed Met The Article Retained.
This article met 4/6 of the criteria. This is due to the fact that, the article provides some
useful information about NetBeans IDE.
13
DeReamer, S
(2010)
Met Met Met Met Failed Met The Article Retained.
This article met 5/6 of the criteria.
14
Dillon, E
(2009)
Met Met Met Met Met Met The Article Retained. Met 6/6 of my Criteria.
15
Djasmir, M
(2012)
Met Met Failed Met Met Met The Article Retained.
This article met 5/6 of the criteria.
16
Ertl, D
(2009)
Met Met Failed Met Failed Met The article Rejected.
This article Met 4/6, however was rejected as it didn’t provide enough information in
answering the EBSE question.
17
Eriksen, K
(2013)
Met Met Met Met Met Met Article retained as it met 6/6 of the criteria.
This article is clearly stating more than one of the EBSE components.
18
Fenwick, J
(2009)
Met Met Met Met Failed Met The Article Retained.
This article met 5/6 of the criteria.
CHARANJIT MAHEROO 14094229 26
Table 6 The Reject and Retain Articles
Appraisal Criteria Number From Table 5
Article Identifier 1 2 3 4 5 6 Article retained or rejected
19
Foltin, M
(2011)
Met Met Met Met Met Met The Article Retained.
This article met 6/6 of the criteria.
20
Fleming, C
(2013)
Met Met Met Failed Failed Met The Article Failed.
This article met 4/6 of the criteria, however it failed due to failing the most important criteria
4 and 5.
21
Furmankiewicz,
J
(2010)
Met Met Met Met Met Met The Article Retained.
21
Galvan, C
(2011)
Met Met Met Met Failed Met The Article Retained.
This article met 5/6 of the criteria. This is due to the fact that, the article provides some
useful information about NetBeans IDE, and its advantages/disadvantages.
22
Geer, D
(2005)
Met Met Failed Met Met Met The Article Retained.
This article met 5/6 of the criteria.
23
German, D
(2011)
Met Met Failed Met Met Met The Article Retained. Met 5/6 of my Criteria.
24
Gray, J
(2009)
Met Met Failed Met Met Met The Article Retained.
This article met 5/6 of the criteria.
25
Grekova, E
(2012)
Met Met Failed Met Failed Failed The Article Rejected.
This article met 3/6 of the criteria.
26
Golman, M
(2010)
Met Met Met Failed Failed Met This Article Rejected.
27
Hou, D
(2009)
Met Met Failed Met Met Met The Article Retained.
This article met 5/6 of the criteria.
CHARANJIT MAHEROO 14094229 27
Table 6 The Reject and Retain Articles
Appraisal Criteria Number From Table 5
Article Identifier 1 2 3 4 5 6 Article retained or rejected
28
Husain, M
(2013)
Met Met Met Met Met Met The Article Retained.
This article met 6/6 of the criteria.
29
JavaWorld
(2008)
Met Met Met Failed Failed Met The Article Rejected.
30
Jackson, J
(2012)
Met Met Met Met Failed Met The Article Retained.
31
Johnson, C
(2012)
Met Met Met Met Failed Met The Article Retained.
This article met 5/6 of the criteria. This is due to the fact that, the article provides some
useful information about NetBeans IDE, and its advantages/disadvantages.
32
Jurado, F
(2013)
Met Met Met Met Failed Met The Article Retained.
This article met 5/6 of the criteria.
33
Knaub, M
(2008)
Met Met Met Met Met Met The Article Retained. Met 6/6 of my Criteria.
34
Kannangara, P
(2013)
Met Met Met Met Failed Met The Article Retained.
This article met 5/6 of the criteria.
35
Lapolla, M
(2011)
Met Met Met Met Met Met The Article Retained.
Article Met 6/6 of the criteria.
36
Lytinen, S
(2011)
Met Met Met Met Failed Met This Article Retained.
37
Major, L
(2012)
Met Met Met Failed Failed Failed The Article Rejected.
CHARANJIT MAHEROO 14094229 28
Table 6 The Reject and Retain Articles
Appraisal Criteria Number From Table 5
Article Identifier 1 2 3 4 5 6 Article retained or rejected
38
Maksimova, N
(2013)
Met Met Met Met Met Met The Article Retained.
This article met 6/6 of the criteria.
39
Murgia, A
(2009)
Met Met Failed Met Failed Failed The Article Rejected.
40
Murphy, G.C
(2006)
Met Met Met Met Failed Met The Article Retained.
This article met 5/6 of the criteria.
41
Mbogo, C
(2013)
Met Met Met Met Failed Met The Article Retained.
This article met 5/6 of the criteria.
42
Moritz, R
(2012)
Met Met Met Failed Failed Met The Article Rejected.
43
Naveed, A
(2012)
Met Met Failed Met Failed Met The Article Failed.
44
Neve, P
(2014)
Met Met Met Failed Failed Met The Article Failed.
45
Pendergast, M
(2005)
Met Met Met Met Failed Met This Article Retained.
46
Pendergast, M
(2006)
Met Met Met Met Met Met The Article Retained.
CHARANJIT MAHEROO 14094229 29
Table 6 The Reject and Retain Articles
Appraisal Criteria Number From Table 5
Article Identifier 1 2 3 4 5 6 Article retained or rejected
47
Plastino, A
(2014)
Met Met Failed Met Met Met The Article Retained.
This article met 5/6 of the criteria.
48
Pyshkin, E
(2011)
Met Met Failed Failed Failed Met The Article Rejected.
Only met 3/6 of the criteria.
49
Piasecki, M
(2011)
Met Met Met Met Failed Met The Article Retained.
This article met 5/6 of the criteria.
50
Pribela, L
(2014)
Met Met Met Failed Failed Met The Article Rejected.
51
Rigby, P
(2005)
Met Met Met Met Failed Met The Article Retained.
52
Ratchford, T
(2011)
Met Met Failed Met Failed Failed The Article Failed.
53
Reed, D
(2010)
Met Met Failed Failed Failed Met The Article Failed.
54
Roy, A
(2012)
Met Met Failed Failed Failed Met This Article Rejected.
55
Salviulo, F
(2013)
Met Met Met Met Met Met The Article Retained.
CHARANJIT MAHEROO 14094229 30
Table 6 The Reject and Retain Articles
Appraisal Criteria Number From Table 5
Article Identifier 1 2 3 4 5 6 Article retained or rejected
56
Schroter, A
(2011)
Met Met Failed Met Met Met The Article Retained.
This article met 5/6 of the criteria.
57
Snellenburg, J
(2012)
Met Met Failed Met Failed Met The Article Rejected.
58
Storey, M
(2003)
Met Met Met Met Failed Met The Article Retained.
This article met 5/6 of the criteria.
59
Soares, G
(2011)
Met Met Failed Met Failed Failed The Article Rejected.
60
The Server Side
(2011)
Met Met Failed Met Met Met The Article Retained.
61
Vihavainen, A
(2014)
Met Met Met Met Failed Met The Article Retained.
62
Wang, X
(2011)
Met Met Failed Met Met Met The Article Retained.
63
Witte, R
(2011)
Met Met Failed Met Failed Met This Article Rejected.
64
Watson, G.R
(2006)
Failed Met Failed Met Failed Met The Article Rejected.
CHARANJIT MAHEROO 14094229 31
Table 6 The Reject and Retain Articles
Appraisal Criteria Number From Table 5
Article Identifier 1 2 3 4 5 6 Article retained or rejected
65
Walters, B
(2013)
Met Met Failed Met Failed Failed The Article Rejected.
66
Wurthinger, T
(2010)
Met Met Failed Met Failed Failed The Article Rejected.
67
Xinogalos, S
(2012)
Met Met Failed Met Failed Met The Article Rejected.
68
Yalamanchili, D
(2013)
Met Met Failed Met Met Met The Article Retained.
69
Yefim, K
(2010)
Met Met Failed Met Failed Failed The Article Rejected.
70
Zhu, J
(2013)
Met Met Met Failed Failed Met The Article Rejected.
71
Unanimous
(2009)
Met Met Met Met Met Met The Article Retained.
72
Zhen, Hu
(2011)
Met Met Met Failed Failed Met The Article Rejected.
CHARANJIT MAHEROO 14094229 32
3.7 Appraisal of Articles from Systematic Literature Review
1. Agarwal, H, Saxena, A, Karishna, V, Saritha, D (2011). FlexiSim: A User
Friendly Environment for Network Simulations’.
o The article mentions NetBeans and the positive input it has towards
building their software. E.g. ‘NetBeans offered unparallel support for
development and debugging in Java’.
o Article also states: ‘NetBeans development environment was used for
rapid and organised development’.
o ‘NetBeans provides a simplified development of the Java Swing
Desktop application’.
2. Burch, C (2009). ‘Jigsaw, a Programming Environment for Java in CS1’.
Publisher
o The article mentions students, and how students feel about professional
IDE. E.g. ‘Many feel that the number of features in such professional
environments is a distraction for students, and they choose an
environment designed specifically for beginning students’.
o The article also shows that, they introduce Eclipse in CS2, which
introduces very little difficulty for students.
3. Balsiger, M (2010). ‘Representing Software Features in the Eclipse IDE’.
Publisher Available at:
https://uhvpn.herts.ac.uk/archive/projects/,DanaInfo=scg.unibe.ch+Bals10a-
BOA.pdf
o This article mainly talks about Eclipse and the usefulness it has as an
IDE. It also represents the Eclipse Features and it says say’s that many
Java developers work in Eclipse as well as, ‘creating a plug-in for the
Eclipse IDE again makes sense to provide a solution for a big audience’.
o The article also points out a bad side of Eclipse, ‘Eclipse IDE only
provides static views of the source code, thus missing runtime
information of a software system’.
4. Boxtel, J (2010). ‘An Evaluation of Interactive Curriculum Using the Java
Instructional Gaming Engine’. Publisher Available at:
https://uhvpn.herts.ac.uk/projects/thesis/,DanaInfo=jamesvanboxtel.com+thesis-
4-6-10.pdf
o The article mentions students throughout the article. The author writes
what students gain from an IDE like Eclipse as well as the drawbacks of
using Eclipse IDE as a student.
o The article also talks about Eclipse in depth, while evaluating features
the IDE has and how it is useful to a student.
o This article mentions few drawbacks Eclipse has in general. This is
useful as it shows some kind of flaw the IDE has. ‘Major drawback is
the students do not get to use the features of a popular IDE such as
Eclipse’.
CHARANJIT MAHEROO 14094229 33
5. Chen, Z, Marx, D (2005). 'Experience with Eclipse IDE in programming
courses'. ACM DL Digital Library available at:
http://dl.acm.org/citation.cfm?id=1089068
o The article meets the users of the technology component of the EBSE
question. E.g. IDEs like Eclipse are for general programming
development with rich and advanced features but may have steep
learning curves.
o The article talks about Eclipse in depth, while evaluating features the
IDE has and why it was used.
o It does evaluate Eclipse to other IDEs, where it compares features of
Eclipse to a Ready to Program IDE. The table in the article shows how
much students have to put effort into Eclipse and the learning curve is
huge.
6. Chatley, R, Timbul, T (2005). 'KeyaEclipse: learning to program in eclipse'.
ACM DL Digital Library available at:
http://dl.acm.org/citation.cfm?id=1081746
o The Article basically talks about presenting a plug-in for Eclipse that
enables users to program in Kenya using the Eclipse IDE.
o The article mentions, how tough it is for students to learn a
programming language at a University.
o The article mainly talks about Eclipse and the features it offers. The
article points out a few bad points of using Eclipse IDE.
o A positive point from this article for example is: ‘IDE like Eclipse with
the Java Development Tools installed provides a large amount of
functionality.’
o However, ‘it can be difficult even for an experienced programme to
learn how to use powerful tools effectively, even although they may be
fluent in the programming language’.
7. Carlisle, M (2010). ‘Using You Tube to enhance Student Class Preparation in an
Introductory Java Course’. Publisher Available at:
http://dl.acm.org/citation.cfm?id=1734419
o This article talks about providing 21 short YouTube videos or an
Introduction to Programming in Java course, and used NetBeans as there
IDE for some of the videos.
o The article talks about NetBeans, the article mentions that, ‘The video
on making GUI in NetBeans is the most popular, and averages 500
views a month from users around the world.’ It also states, ‘Thirty
Percent of these viewers are 13-17, and 55% are above 24 years old’.
CHARANJIT MAHEROO 14094229 34
8. Das. P, Chakraborty, S, Dutta, P (2012). ‘Inception of Medi Java: an Open
Source Library for Medical Science’. Publisher Available at:
http://research.ijais.org/volume3/number2/ijais12-450473.pdf
o This article only has vague points, however the points it has, can be very
useful in my report. The article says, ‘NetBeans IDE is open source and
it provides the service common to creating desktop applications’.
9. DeReamer, S (2010). ‘Teaching Computer Science: a Neumont Philosophy’.
Publisher Available at: http://dl.acm.org/citation.cfm?id=1668880
o This article mentions what IDE students should use, ‘At Neumont,
students in the introductory classes are taught to program in Java using
BlueJ’.
o However, this article is useful as it compares NetBeans to an IDE like
BlueJ, that’s aimed towards a novice programmer. The article states
that, ‘NetBeans IDE contrasted with a project using the BlueJ IDE,
Notice the simplicity of the BlueJ screen compared to the NetBeans
screen’. The article also shows an image comparing NetBeans screen to
a BueJ screen, showing how complicated NetBeans looks towards a
Novice programmer.
10. Dillon, E (2009). ‘Which environment is more suitable for novice programmers:
editor/command line/console environment vs. integrated development
environment’? Publisher available at:
http://acumen.lib.ua.edu/content/u0015/0000001/0000103/u0015_0000001_000
0103.pdf
o This article has range of positive points and few bad points of using
professional Java IDEs like NetBeans or Eclipse. The article states that,
‘BlueJ and Dr. Java, pedagogical IDEs for Java are much small than
professional Java IDEs such as Eclipse and NetBeans’.
o However, it states that, ‘Professional IDEs on the other hand are rich in
features, but their complexity may be too much for a novice programmer
to handle’.
o The article also lists down some of the benefits that Eclipse provides to
a programmer. E.g. ‘Syntax highlighting for keywords, code auto-
completion for variables; code assistant that gives method hints;
package importing, wizards to eliminate manual repeated typing for
classes, methods, constructors; Javadoc documents, etc.’
o There’s also a useful table of Factors that lead to Favourite IDE.
CHARANJIT MAHEROO 14094229 35
11. Djasmir, M, Idris, S, Bakar, M, Zin, A (2012). ‘An Integrated Development
Environment for Blocks Creation’. Publisher available at:
http://docsdrive.com/pdfs/medwelljournals/ajit/2012/194-200.pdf
o This article is about a Block Based Software Development which is a
software development approach that supports end-user software
development.
o The article appraises Eclipse on why it’s such a big IDE. E.g. ‘Eclipse
Platform is designed to serve as a common base for diverse IDE-based
products, providing open APIs to facilitate this integration.’ It also has
citations to back up his statements of Eclipse. E.g. ‘It is a universal IDE
for anything and for nothing in particular’. There are many other points
written in this article about Eclipse.
o However, it also talks about NetBeans. E.g. ‘NetBeans is a platform to
create professional desktop, enterprise, web and mobile applications’.
o ‘NetBeans IDE provides an amazing development’.
12. Eriksen, K, (2013). ‘Implementation of Editors for Text-Based Domain-Specific
Languages’. Publisher Available at: https://uhvpn.herts.ac.uk/wp-
content/uploads/,DanaInfo=www.2k3.org+Kyrrehe_Master.pdf
o This article talks about both IDEs NetBeans and Eclipse. The article had
conducted a survey and 1 participant said, ‘I’ve tried NetBeans and I
found it slow. I prefer Eclipse of the two’.
o There was also a questionnaire which asked, what is your text-editor or
IDE of choice. Eclipse was the more favourite IDE than NetBeans. 38%
said Eclipse where else NetBeans got 10%.
o There are many other useful findings that were displayed in graph form.
o It also states few drawbacks from using Eclipse for new developers,
‘Eclipse with its complex interface can be intimidating for new
developers’.
13. Fenwick, J, Norris, C, Barry, F, Rountree, J, Spicer, C, Cheek, S (2009).
‘Another Look at the Behaviours of Novice Programmers’. Publisher Available
at: http://dl.acm.org/citation.cfm?id=1508973
o This paper reports on the progress of an NSF funded research project
investigating the development practices of students in introductory
programming courses.
o This article only talks about Novices, and the mistakes they do when
they code. Furthermore the way they make easy mistakes like spelling
errors and silly coding errors.
o However, they use Eclipse data logger to collect data to monitor various
programming events during the student’s development session such as
compilation.
CHARANJIT MAHEROO 14094229 36
14. Foltin, M, Fodrek, P, Blaho, M, Murgas, J (2011). ‘Open Source Technologies
in Education’. Publisher available at: http://www.wseas.us/e-
library/conferences/2011/Corfu/EDUC/EDUC-22.pdf
o This article looks at open source technologies in education and evaluates
them. This article talks about Eclipse and NetBeans and Novice
programmers.
o In this article, Eclipse is mentioned however in a bad way. E.g. ‘We do
not use this IDE because we use much less complicated and not so much
powerful IDE NetBeans’.
o It also states that, ‘NetBeans is more suitable than Eclipse during
education process but not so used in the commercial practice.’
o For NetBeans, it mentions that NetBeans started as a student project and
is very suitable for novice programmers for its simplicity of usage.’
15. Galvan, C, Hernandez, I (2011). ‘Educational Software for Metrology Using
Java Applets’. Publisher Available at:
http://www.cenam.mx/dimensional/Archivos%20PDF/83502.pdf
o This paper presents some java applets developed to facilitate learning of
some basic dimensional metrology.
o The article selects NetBeans IDE development tool for the project. It
praises NetBeans, E.g. NetBeans is an open-source project dedicated to
providing rock solid software development products and the businesses
that rely on NetBeans as a basis for their products.’
o It also says, ‘This software has a lot of tools integrated in its
environment, to integrate different platform for programming.’
o However, it does state a disadvantage like, ‘a big software
recommended RAM memory is 2GB and 1GB of disk space.
o It then gets praised on the fact that, NetBeans is constantly updates.
16. Geer, D (2005). ‘Eclipse Becomes the Dominant Java IDE’. Publisher available
at: http://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=1463097
o This article talks about how Eclipse becomes the Dominant Java IDE.
o It praises every good feature Eclipse has, for example: ‘Eclipse is a
small, modular IDE with an elegant architecture that starts from a basic
but powerful foundation’. It praises the IDE in many other ways like,
‘there is a huge number of interoperable third-party plug-ins, which has
made Eclipse very popular’.
o However, this article doesn’t just praise Eclipse, it also says how
NetBeans is getting better. E.g. ‘With NetBeans, we now have a number
of features that add value above and beyond what Eclipse might have’.
CHARANJIT MAHEROO 14094229 37
17. German, D, Davies, Julius, D (2011). 'Apples vs. oranges? An explanation of the
challenges of comparing the source code of two software systems'. ACM DL
Digital Library available at: http://dl.acm.org/citation.cfm?id=1985483
o This article attempts to compare the source code of two Java IDE
systems: NetBeans and Eclipse.
o It mainly talks about VC repositories. E.g. ‘NetBeans is composed of
almost 1,000 different top-level directories, while Eclipse contains just
under 500.
o The article also states that, ‘Eclipse Foundation is eager to engage its
community, and entertain experimental code’.
18. Gray, J (2009). ‘Readers’ choice awards 2009’. ACM DL Digital Library
available at:
https://uhvpn.herts.ac.uk/,DanaInfo=dl.acm.org+citation.cfm?id=1554325
o This article is the Linux Journal Readers’ Choice Awards.
o This article had an award for the Favourite Linux IDE, ‘Eclipse win
commandingly and unsurprisingly with 42% of the votes cast’.
NetBeans got 14% of the votes cast. This would be a good point to
include in my report, which would show that the best IDE people chose
was Eclipse.
19. Hou, D, Wang, Y (2009). ‘An Empirical Analysis of the Evolution of User-
Visible Features in an Integrated Development Environment’. Publisher
Available at: http://dl.acm.org/citation.cfm?id=1723044
o This article is an Empirical Analysis of the evolution of User-Visible
features in an IDE. This article talks about Eclipse and NetBeans IDE.
o The article states that, ‘For refactoring, Eclipse offers 23 refactoring’s,
IDEA 33, and NetBeans 15.
o It also mentions features that NetBeans don’t have like, ‘NetBeans does
not support paste in package Explorer and that NetBeans does not
support all the mark occurrences that Eclipse offers.
o NetBeans according to this article does not show line number, however
Eclipse shows the largest variety of information on the overview ruler.
o It however, mentions more Eclipse features in this article like, ‘Eclipse
also contains a family of features where the IDE infers what can be done
to fix a problem or to transform selected code automatically’.
20. Husain, M (2013). ‘Teaching Programming Course Elective: A New Teaching
and Learning Experience’. Publisher Available at:
http://ieeexplore.ieee.org/xpls/abs_all.jsp?arnumber=6756349
o This article talks about how students should be taught as well as what
software they should use and language.
o This article talks about both Eclipse and NetBeans IDE.
o The article states what NetBeans is, ‘the popular IDE for building Java
applications, which provides a platform to edit, compile, link and debug
all types of Java and web applications.
CHARANJIT MAHEROO 14094229 38
o It also mentions, ‘the main advantage of using IDE is, it simplifies the
problem of implementing, testing and maintaining very huge
applications.
o It mentions Eclipse as one other popular IDE ‘used by many of the Java
and Webs developers’. They encourage their students to use both IDEs
while developing their applications.
21. Furmankiewicz, J (2010). ‘Eclipse, NetBeans, and IntelliJ: Assessing the
Survivors of the Java IDE Wars’. Publisher Available at:
http://www.devx.com/Java/Article/34009/1954
o The article is based on a comparison of NetBeans, Eclipse and IntelliJ
o The article suggests developers should use Eclipse
o The article implies that the menu layout is very logical and easy to use
o The NetBeans code completion is slower than other IDEs.
o The article also states the issue of, Novice programmers being able to
use the NetBeans IDE to develop applications.
o The article finally states that, NetBeans doesn’t have the same size
community as Eclipse. ‘NetBeans needs more resources behind it in
order to become number one in the Java IDE space.
22. Jackson, J (2012). ‘Oracle Gears NetBeans for Building Better User Interfaces’.
Publisher Available at:
http://www.cio.com/article/697392/Oracle_Gears_Netbeans_for_Building_Bette
r_User_Interfaces
o The article is based on an analysis of NetBeans 7.1 which was released
early this year
o The article states that NetBeans uses the latest version of Java Swing
GUI. This could seem to be quite a good thing, but because it is fairly
new it is very hard to say what bugs could possibly be in this newly
released version of the NetBeans IDE
o NetBeans 7.1 contains a visual debugger that can be used to pinpoint
problems in the code. This would assist a Novice programmer because
once he/she has seen what an error looks like at least a few times then it
makes error handling a lot easier once the developer has been adjusted
to such an IDE
o This article is just based on facts that may have been released by Oracle
who has owned NetBeans since 2010, so the data is not very reliable
o One advantage highlighted by this article was the fact that NetBeans has
been integrated with an open source environment whereby multiple
programmers can work on a single program together. Therefore this
expands a user’s experience in comparison with well-established
developers who can lend a “helping hand” to Novice Programmers
CHARANJIT MAHEROO 14094229 39
23. Johnson, C (2012). ‘SpecCheck: Automated Generation of Tests for Interface
Conformance’. Publisher Available at:
https://uhvpn.herts.ac.uk/,DanaInfo=dl.acm.org+citation.cfm?id=2325343
o This article presents a tool and an experience report of its effectiveness
in a large first-semester programming course.
o This article main point for me is, ‘for students adding libraries to their
class path are the only new activity, this can be done with just a few
mouse-clicks in the Eclipse IDE’.
o It also shows that, a test suite like SpecCheck can easily be added to a
development environment like Eclipse or NetBeans so that Students can
test their code’.
24. Jurado, F, Molina, A, Redondo, M, Ortega, M (2013). ‘Cole-Programming:
Shaping Collaborative Learning Support in Eclipse’. Publisher Available at:
http://ieeexplore.ieee.org/xpl/articleDetails.jsp?arnumber=6634224
o This article discusses how they have adapted an existing eclipse-based
system for learning programming, so that now it has support for
collaborative tasks.
o The article states that, students should learn to, ‘design, develop, test
and debug program with certain tools that are designed to be used by
professional programmers, using IDEs such as NetBeans or Eclipse’.
o The article also states that, ‘currently there are many IDEs, either freely
available or commercial, among them Eclipse stands as one of the most
widely used’.
o The article goes further by saying, ‘in fact, the possibilities for
customisation and expansion that Eclipse provides have not gone
unnoticed by researchers in the area of learning Programming, and so
we and find several solutions in this regard for Java Development’. The
article then goes on to say that, ‘these solutions consist of plug-ins
added to Eclipse in order to make it an environment suitable for learning
Programming’.
o The article also states that plug-ins like Kenya and ProPAT allows
students to learn how to program Java code easily into Eclipse; It also
allows the ‘teacher to propose a new programming assignment by
specifying the assignment name and a template with the syntactical
structure’.
o It also evaluates how useful the Eclipse IDE is. E.g. ‘the use of Eclipse
allows eLearning developers to focus on implementing purely educative
functionality’.
o It follows with another positive point, ‘the developed educational tools
are integrated into similar environments students will find in their future
careers’.
CHARANJIT MAHEROO 14094229 40
25. Knaub, M (2008). ‘Eclipse as a Tool for Program Understanding’. Publisher
Available at:
http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.102.2579&rep=rep1&
type=pdf
o This article talks about the possibilities of Eclipse to support program
understanding.
o The article points out that, ‘Eclipse is presumed to be the dominant IDE
for Java program development and is the major IDE used in research
projects.’ This is the main reason why the article chose this IDE to
evaluate whether, and to which degree, it supports program
understanding by answering the questions a developer asks.’
o After conducting its research they found that, ‘Eclipse does support
program understanding by providing tools that supply information to
answer questions about the source-code’s static attributes’.
26. Kannangara, P (2013). ‘Teaching Tools and Techniques for Efficient Teaching
and Learning of Computer Programming for Beginners using Java’. Publisher
Available at: https://uhvpn.herts.ac.uk/cgi-
bin/,DanaInfo=espace.library.curtin.edu.au+espace.pdf?file=/2013/08/02/file_1/
192078
o This article talks about Java development environments, tools used in
the industry with their pros and cons for each IDE. The main IDE I am
interested in this article is Eclipse.
o The article states that, ‘Eclipse is considered a professional program
development environment ‘. However the article cites Chen and Marx
which, ‘argue that most Java IDEs have been designed for pedagogical
purposes and fail to expose students to real world environments’.
o ‘One attractive feature of Eclipse is that it has a very simple editor and
students do not need to spend more time with instructors to be familiar
with the editor’.
o ‘The advantage of using Eclipse is that its IDE environment provides
professional industry level experience for the students’.
o The article goes on by giving one good point of one of Eclipse features,
which is the ‘wizards in Eclipse save time for the users as they generate
codes for classes, methods, and constructors’.
o The facility to generate Javadoc standard documents is also an attractive
feature in Eclipse’.
CHARANJIT MAHEROO 14094229 41
27. Lapolla, M, Risi, M, Scanniello G (2009). ‘An Empirical Evaluation of the
Eclipse Framework’. Publisher Available at:
http://eit09.unibg.it/pdfs/eit09.pdf#page=74
o This article presents a preliminary investigation, based on the combined
use of two techniques: a questionnaire-based survey and an empirical
analysis, to assess the effectiveness and efficacy of the Eclipse
framework to support novice developers in the development and
maintenance of Java source code.
o This article also showed how NetBeans ‘was the IDE the subjects used
within the procedural and object-oriented programming course’. It also
states that, ‘industry is intended to replace the used IDE NetBeans in
favour a new one called Eclipse’.
o After conducting their surveys, the results showed: ‘the subjects did not
found the Eclipse user interface pleasant’; ‘However, they stated that the
Eclipse user interface effectively supported them in finding and properly
using unknown functionality, even without using the help’.
o The only problem they found, ‘concerned the import of an external
package, this could be due to the fact that the steps to perform were
different with respects to NetBeans’.
o The conclusion of the article said, ‘Empirical analysis reveals that the
effectiveness and efficacy of the Eclipse framework to support novice
developers in the development and maintenance of Java source code’.
28. Lytinen, S, Railsback, S (2011). ‘Agent-Based Simulation Platforms: An
Updates Review’. Publisher Available at:
https://uhvpn.herts.ac.uk/slytinen/abm/,DanaInfo=condor.depaul.edu+Lytinen-
Railsback-EMCSR_2011-12-15.pdf
o This article contains few good points and bad points of Eclipse.
o One good point is: ‘Eclipse is a sophisticated and very powerful’.
o One bad point is: ‘for a novice there is a steep learning curve for
learning Eclipse’.
o Although the article ‘recommends Eclipse as an environment for
developing framework and library platforms, the complexity of ReLogo
in Eclipse stands in stark contrast to NetLogo.
o ‘Working in Eclipse is far more complex and less efficient in many
ways’.
CHARANJIT MAHEROO 14094229 42
29. Maksimova, N (2013). ‘JAVA IDEs For Easily Learning and Understanding
Object Oriented Programming’. Publisher Available at:
http://eprints.ugd.edu.mk/8235/
o This article talks about some of the IDEs that contains a lot of visual
elements and will be given a brief overview.
o ‘Eclipse and NetBeans are environments that are used for professional
development of complex Java programs’.
o ‘Professional IDEs are not always adequate for learning basics of object-
oriented programming because these environments usually are not
object oriented also they can be very complex and focused in building
graphical user interface’.
30. Murphy, G.C, Kersten, M, Findlater, L (2006).'How are java software
developers using the Eclipse IDE'. IEEE Software available at:
http://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=1657944
o This article contains useful statistics. For example the figures 3 shows
the top 10 42 views shipped with the standard Eclipse distribution, based
on the percentage of the 41 developers who made at least one selection
in each view. Mainly it shows that, the Package Explorer and the
console was viewed the most.
o The table 2 shows the top 10 commands executed by the most
developers, the findings show that, 84% used key bindings.
o One great feature this article highlights about Eclipse is, ‘when viewing
a file or a point of interest in a file, a developer can use a pop-up menu
to remember the book-mark’.
31. Mbogo, C, Blake, E, Suleman, H (2013). ‘A Mobile Scaffolding Application to
Support Novice Learners of Computer Programming’. Publisher Available at:
http://dl.acm.org/citation.cfm?id=2517941
o This article has one point about eclipse which is, ‘Deuter IDE compared
to Eclipse does not offer additional support that a novice learner of
programming may need such as; hints for completing a program or error
prompts that indicate basic errors at the point of constructing the
program’.
CHARANJIT MAHEROO 14094229 43
32. Pendergast, M (2005). ‘Teaching Java to IS Students: Top Ten Most Heinous
Programming Errors’. Publisher Available at:
http://aisel.aisnet.org/cgi/viewcontent.cgi?article=1801&context=amcis2005
o ‘Eclipse and NetBeans and other open source IDE, the main drawback
to these environments is their cryptic compiler error messages and
clumsy editors’.
o ‘IDE’s such as NetBeans that identify syntax errors as the students type
the code can contribute to the program, for example when a student
types in the first line of a for statement, NetBeans will mark it as an
error until the body of the for loop is added’.
o The article also states that, ‘the language should have an easy-to-use
development environment, including a debugger’.
33. Pendergast, M (2006). 'Teaching introductory programming to IS Students: java
problems and pitfalls'. Journal of Information Technology Education: Research,
5(1), 491-515 available at: http://www.editlib.org/p/111559/
o This article states that, ‘Combining the use of a modern interactive
development environment such as NetBeans, with active learning and a
breadth-first approach is found to increase student satisfaction, increase
success rates, and lower dropout frequencies’.
o The article states why the writer has chosen NetBeans as an IDE to use
to teach programming. The reasons are:
 ‘It is free to students, as an open-source program it does not
promote one company over another’
 ‘It has features that ease learning, namely the visual
identification of syntax errors’
 ‘It has an integrated debugger’
 ‘It has an integrated form editor, useful for visual programming.
The use of a visual editor for creating interfaces allows
beginning students to create professional looking interfaces and
reduces the amount of memorisation of library classes’.
 ‘It pops up a hint window showing a list of possible selections
and a definition of each’.
CHARANJIT MAHEROO 14094229 44
34. Plastino, A (2014). ‘What Should I Code Now’? Publisher Available At:
http://www.jucs.org/jucs_20_5/what_should_i_code/jucs_20_05_0797_0821_sil
va.pdf
o ‘Code completion, also known as content assist is widely used on IDEs
such as Eclipse and NetBeans’.
o ‘Eclipse has an active and expressive ecosystem and Java is one of the
key programming languages nowadays’.
35. Piasecki, M (2011). ‘Application Programming- Mobiles Computing’. Publisher
Available at: http://www.dbc.wroc.pl/Content/23914/piasecki_application.pdf
o This article has decided to use NetBeans ‘as a professional and very
comfortable J2ME programming environment’.
o ‘NetBeans IDE supports several methods of deployment’, transferring
the application developed in the IDE to a mobile device.
36. Rigby, P, Thompson, S (2005). ‘Study of Novice Programmers Using Eclipse
and Gild’. Publisher Available at: http://dl.acm.org/citation.cfm?id=1117718
o ‘Subjects had difficulty in Eclipse with locating the terminate button’.
o In their survey, ‘on average subjects experienced a moderate level of
frustration using Eclipse’.
o ‘If a novice is frustrated by the IDE then learning the concepts taught in
class will be more difficult’.
o The survey also showed that, ‘subjects were more intimidated by
Eclipse when using tools’.
o From the qualitative analysis it was noted that Eclipse’s debugger and
run configurations were particular confusing for subjects’.
o Overall, it was recommended that, ‘developers of Eclipse consider the
needs of Novice users and programmers’.
37. Salviulo, F, Scanniello, G (2013). ‘Comprehending and Maintaining Object-
Oriented Source Code: an Ethnographically-Informed Study’. Publisher
available at:
http://www2.unibas.it/gscanniello/SCCMEthno/Comprehending_and_Maintaini
ng_Object-Oriented_Source_Code__an_Ethnographically-
informed_Study/Study_Information_files/ICSM_2013_Ethn.pdf
o ‘In the object oriented programming courses, the students used
NetBeans as the IDE’.
o ‘The professional developers better used the functionalities of the used
IDE to browse source code and debug it’.
o However, article survey showed that, ‘students were less familiar with
these functionalities’.
o The results also show that, ‘professional developers are more familiar
with the features of NetBeans’. ‘In particular, the use of the tools for
searching and looking at source code is more fluid for professional
developers’.
CHARANJIT MAHEROO 14094229 45
38. Schroter, A (2011). 'MSR challenge 2011: Eclipse, Netbeans, Firefox, and
Chrome'. ACM DL Digital Library available at:
http://dl.acm.org/citation.cfm?id=1985478
o The article states that, Eclipse and NetBeans ‘both enjoy popularity
among developers for the vast number of tools it provides and its
extensibility through third party plug-ins’.
o ‘The two studies investigating the issue tracker repositories of Eclipse
and NetBeans found that Eclipse outperformed NetBeans with respect to
comment quality and stability on Windows’.
o They chose NetBeans and Eclipse for several reasons:
 These ‘IDEs have been the subject of many studies in the past’
 ‘Eclipse and NetBeans have long reached a maturity which
provides us with a rich development history’
39. Storey, M, Damian, D, Michaud, J, Myers, D, Mindel, M, German, D,
Sanseverino, M, Hargreaves, E (2003). 'Improving the usability of Eclipse for
novice programmers'. ACM DL Digital Library available at:
http://dl.acm.org/citation.cfm?id=965668
o This article describes how they are designing a set of plug-ins to
improve teaching and learning of Java programming.
o ‘The Eclipse Java Development tool suite is rapidly becoming the IDE
of choice for many programmers’.
o ‘Many instructors are also starting to use Eclipse as a tool to help with
teaching in the classroom and are recommending Eclipse to their
Students’.
o The article also states that, ‘Eclipse’s sophisticated features support key
teachable moments and allow instructors and students to more easily
demonstrate the Java language and object-oriented concepts’.
o ‘Eclipse has many powerful features that can assist both expert and
novice programmers ad Java teachers’.
o The article also states, ‘firstly the Eclipse user interface may be over
complex and that this complexity could pose a barrier to learning’.
40. The server side (2012) ‘what’s the big IDE? Comparing Eclipse and NetBeans’.
Publisher Available at: http://www.theserverside.com/feature/Whats-the-Big-
IDE-Comparing-Eclipse-vs-NetBeans [Accessed: 20 February, 2015].
o This article compares Eclipse and NetBeans. The article shows
statistical data such as; TheServerSide.com Readership Survey 2011
which shows that, ‘Respondents pegged NetBeans at a puny 8% usage,
where else Eclipse captured 61% of the market among Java developers’.
o Ease of use: ‘According to quite a few developers, NetBeans is easier to
navigate right out of the box as long as you don’t try to use all the bells
and whistles at first’. ‘It could be ideal for beginner Java developers
who just need the basics to start with’.
CHARANJIT MAHEROO 14094229 46
o ‘Eclipse has a huge array of Plug-ins delivering capabilities that aren’t
necessarily available with NetBeans.’
41. Vihavainen, A, Helminen, J, Ihantola, P (2014). ‘How Novices tackle their First
Lines of Code in an IDE: analysis of Programming Session Traces’. Publisher
Available at: http://dl.acm.org/citation.cfm?id=2674692
o In this article, the study seeks to understand how novice programmers
tackle their first lines of code when programming is started directly
using an IDE.
o This article mainly talks about NetBeans as its IDE of choice.
o ‘NetBeans suggests completions for classes and objects’.
o ‘NetBeans offers a shorthand sout that, when typed and followed by
pressing tab, is automatically replaced with System.out.println();’
o ‘The NetBeans IDE compiles code continuously and also provides
constant and immediate feedback when such a compilation fails,
learners are therefore more likely to instantly fix an error that was only
just introduced in the code instead of noticing this later when they
invoke a compile themselves’.
42. Unanimous, (2011). ‘NetBeans vs Eclipse vs JDeveloper’. Publisher Available
at: http://www.indicthreads.com/1513/java-ides-netbeans-vs-eclipse-vs-
jdeveloper
o The article is based on a comparison of NetBeans and Eclipse.
o The article is based on personal experience
o The article states that NetBeans provides built-in support for most of its
features. This would address Novice Programmers’ issues with initially
learning how to use a specific IDE
o NetBeans comes with sample applications that a Novice Programmer for
say could use to learn how to do basic Java programming before
commencing on development.
o The article suggests that developers that are using Java to develop
applications for the first time should use NetBeans.
43. Wang, X, Baik, E, Devanbu, P (2011). ‘Operating System Compatibility
analysis of Eclipse and NetBeans based on Bug Data’. Publisher Available at:
http://dl.acm.org/citation.cfm?id=1985479
o ‘Eclipse and NetBeans are two top of the line IDEs for Java
Development’.
o ‘Both of them provide support for a wide variety of development tasks
and have a large user base’.
o This article provides an analysis and comparison for the compatibility
and stability of Eclipse and NetBeans on the three most commonly use
operating systems.
o ‘To developers, on average, bugs on NetBeans are more complex to fix
compared with bugs on Eclipse’.
CHARANJIT MAHEROO 14094229 47
o ‘Eclipse appears to be a better platform, it also suggests that users of
Eclipse on Mac OS have a better experience than users on other
platforms in terms of system stability’. However, ‘Eclipse on Mac
appears to be slower than other platforms, thus offering a worse user
experience’.
44. Yalamanchili, D (2013). ‘AZ-Nuggets: An IDE for Programming by Concept’.
Publisher Available at:
https://uhvpn.herts.ac.uk/bitstream/handle/10222/35438/,DanaInfo=Dalspace.lib
rary.dal.ca+Yalamanchili-Lakshmi%20Deepak-MCSc-CSCI-July-
2013.pdf?sequence=1
o ‘Eclipse is a multi-language IDE and an integration platform that serves
the domain of software tools’.
o ‘NetBeans offer assistive features such as syntax highlighting, auto-
formatting, and project outlining, refactoring and code completion
among many others’.
Next Chapters
Continuing from Chapter three, I will create a Feature Analysis in chapter four for
the two IDEs, explaining in depth of the features they have.
In chapter five, I will conduct an experiment which will consist of a survey and will
appraise the articles from the SLR.
Chapter six will involve me documenting my practical experience which I will be a
novice programmer creating a small Java applications on both IDEs.
Chapter seven is where the SLR, Personal experience and practical experience will
be combined in order to produce a conclusion with a recommendation.
Chapter eight is the conclusion and the overall experience of this project. I will
explain how the work carried out in the project will relate to both industry and
academia fields.
CHARANJIT MAHEROO 14094229 48
Chapter 4: Feature Analysis
In this chapter, I will be comparing the features of the two IDEs. The comparison
will only have features that a Novice Programmer would use to develop a small Java
Application. The features I will be comparing will be features I am drawing out of
my systematic literature review exercise so both of them can be compared against
each other. To develop a small Java application for novice users, I have summarised
the main features to support novice users which would be necessary for them to use
which has been drawn out of my SLR. A Feature Analysis is a great method of
comparing NetBeans and Eclipse directly, which would give me a clear picture on
where both IDE stand for each feature furthermore this will also show me the
strengths and weaknesses of both IDEs.
I will be conducting a little survey for the Feature Analysis. This is designed to be an
effective way to get an opinion based overview of what features are most likely
needed to be supported for novice programmers. The first table will contain 40
features typically found in an IDE, and I will ask 20 class mates to rank the features
on, how relevant the features are. The exercise would allow my target audience to
score the features against a rating of 1 to 5. Furthermore, the second table will
contain the top 15 features that were ranked most relevant out of the 40. This will
allow me to have more accurate data towards which IDE has better and relevant
features to a Novice Programmer developing a small Java Application. This would
then allow me to analyse the score by creating bar graph and give an observation
through this.
The feature analysis survey in table 1 have been derived from the retained articles as
well as personal experience of both tools.
CHARANJIT MAHEROO 14094229 49
Table 1
CHARANJIT MAHEROO 14094229 50
The features in table 2 below are all of the results of conducting the survey which is
in the table above. The highlighted yellow cells are the top 15 results.
Table 2
CHARANJIT MAHEROO 14094229 51
Graph 1
The features in the table 3 are the top 15 features found from conducting the survey
in table 2
Top 15 Features (Table 3)
Table 4.2
Features Average Total
Compiler 5.0 99
GUI Builder 4.6 91
Syntax Highlighting 4.5 89
Source Code Editor 4.5 89
Code Assistance 4.4 88
Code Completion 4.1 81
Split Screen 4.0 79
Form Editor 3.8 76
Local History 3.8 76
Code Formatting 3.7 73
Visual Debugger 3.6 72
Plug-Ins 3.6 71
Overview Ruler Line Number 3.5 70
Menu Layout 3.5 70
Book-Mark Code 3.4 68
0
20
40
60
80
100
120
Which Feature is Relevant
CHARANJIT MAHEROO 14094229 52
Graph 2
After conducting the top 40 Feature Analysis Survey then filtering it down to the top
15 features, I now will find if Eclipse and NetBeans have these features or not. This
will allow me to find out, the IDE best suited for Novice Programmers. As you can
see the compiler, GUI builder, syntax highlighting, source code editor and code
assistance is the top 5 features as you can see in graph above. The table 4 below is
the Feature Analysis of both IDEs Eclipse & NetBeans.
Table 4
Table 4.2
Features NetBeans IDE Eclipse IDE
Compiler Yes Yes
GUI Builder Yes No – Needs a Plug-In
Syntax Highlighting Yes Yes
Source Code Editor Yes Yes
Code Assistance Yes Yes
Code Completion Yes Yes
Split Screen Yes Yes
Form Editor Yes No
Local History Yes Yes
Code Formatting Yes Yes
Visual Debugger Yes Yes
Plug-Ins Yes Yes
Overview Ruler Line Number No Yes
Menu Layout Yes Yes
0
20
40
60
80
100
120
Top 15 Features Novice Programmers see as
Relevant
CHARANJIT MAHEROO 14094229 53
Next Chapters
In chapter five, I will conduct an experiment which will consist of a survey and will
appraise the articles from the SLR.
Chapter six will involve me documenting my practical experience which I will be a
novice programmer creating a small Java applications on both IDEs.
Chapter seven is where the SLR, Personal experience and practical experience will
be combined in order to produce a conclusion with a recommendation.
Chapter eight is the conclusion and the overall experience of this project. I will
explain how the work carried out in the project will relate to both industry and
academia fields.
CHARANJIT MAHEROO 14094229 54
Chapter 5: Survey Study
5.1 Creating Questionnaire
Using the systematic literature review and feature analysis conducted, a
questionnaire has been produced to obtain opinions based facts from novice
programmers who use NetBeans or Eclipse. The type of students which I will aim the
questionnaire at is students who are in the third year, second year and those students
have done a placement. I will also aim the questionnaire at students who have
knowledge within Java development. The questionnaire below will be handed out to
the participants.
CHARANJIT MAHEROO 14094229 55
5.2 Record Results
I received 47 responses, thus I have obtained 47 questionnaires which I have placed
in the appendix 10.4. The questionnaire consists of 20 questions where the
participant would give rating from 1-5 and two multiple choice answers. The
following is table of results which I have accumulated from the survey results I have
received. I will create graphs later and analyse the data accordingly.
CHARANJIT MAHEROO 14094229 56
Q1: At University you use which IDE: Eclipse or NetBeans or Other
This question was a general question to start the survey off to find out what IDE the
participants used at University. 36% of the participants said that Eclipse was the IDE
they use for University. However, 62% of the participants said that they use
NetBeans at University. This isn’t surprising as the University third Year
Programming Module recommends NetBeans to the students, therefore the
University portrays NetBeans as the ideal IDE to use. This question mainly backed
up my point, which was that programming students would be using the IDE that I
university recommended. For example article 42 Unanimous, (2011) states that,
‘developers that are using Java to develop applications for the first time should use
NetBeans’. So as Novice Programmers for the first time try to create an application,
they should use NetBeans, as the graphs above shows that NetBeans is the most used
IDE at University of Hertfordshire Computer Science.
36
62
2
0
10
20
30
40
50
60
70
Eclipse NetBeans Other:
At University you use which IDE
CHARANJIT MAHEROO 14094229 57
Q2: NetBeans is better than Eclipse in building small Java Applications
Due to the last question, I had to ask a question that would compare NetBeans
directly towards Eclipse. The result which was concluded from the survey was that
42% of the participants choose ‘Disagree’ rating. This was strange, as the first survey
question showed that, NetBeans was the IDE Novice Programmers used. Only 23%
actually agreed with the statement and only 9% strongly agreed. This graph showed
me that, 45% participant saw Eclipse better than NetBeans at building small Java
Applications. For example, article 12 [Eriksen, K (2013)] states that, ‘A survey
conducted showed that Eclipse was the more favourite IDE than NetBeans where
38% said Eclipse where else 10% said NetBeans’. The University recommends
NetBeans, students still use the IDE even though Eclipse is better at building small
Java Applications. This may be due to many factors, as one participant in the article
12 [Eriksen, K (2013)] said that, ‘I’ve tried NetBeans and I found it slow, I prefer
Eclipse’. Another article [Furmankiewicz, J (2010)] states that, ‘The NetBeans code
completion is slower than other IDEs’. From the results above, I assume that students
maybe using NetBeans at the moment on current projects or assignments, but they
see that Eclipse may do a better job.
6
45
17
23
9
0
5
10
15
20
25
30
35
40
45
50
1 2 3 4 5
NetBeans is better than Eclipse in building small Java
Applications
CHARANJIT MAHEROO 14094229 58
Q3: NetBeans IDE is the best Suited IDE for Novice Programmers
Following on from the last question, I wanted to find out how many actually agree
with the statement above. The previous graph showed that, NetBeans wasn’t that
popular when it came down to creating small Java Applications. This question was
aimed to show me if NetBeans IDE is suited for Novice Programmers generally. The
results showed me that, 53% of the participants Disagreed with the question above.
However around 15%-13% agreed or strongly agreed that NetBeans is best suited for
Novices. So overall, this graph shows a negative result for NetBeans.
6
53
13
15
13
0
10
20
30
40
50
60
1 2 3 4 5
NetBeans IDE is the best suited IDE for Novice
Programmers
2
13
19
57
9
0
10
20
30
40
50
60
70
1 2 3 4 5
Eclipse IDE is the best suited IDE for Novice Programmers
CHARANJIT MAHEROO 14094229 59
Q4: Eclipse IDE is the best Suited IDE for Novice Programmers
Due to me asking about NetBeans, I had to follow up a question in regards to Eclipse
to find out both opinions. The result which was conducted from the survey was that
57% of the participants choose ‘agree’ rating. This may be due to the fact that many
users that use NetBeans at the moment, may prefer Eclipse. So far, the graph shows
that Eclipse is the IDE of choice for Novice Programmers, but at the moment they
are using NetBeans on their current projects or assignments.
Q5: Eclipse and NetBeans the two top of the line IDEs for Java Development.
I wanted to ask this question, as I wanted to see how many of my participants saw
Eclipse and NetBeans as the top IDE of them, and if they thought other IDEs were
better. Overall, 36% of the participants chose ‘Agree’ and 40% of the participants
chose ‘Strongly Agree’. This therefore backs up my point, in the reason why I chose
to compare Eclipse against NetBeans was due to those two IDEs being the best in the
market at the moment. Many articles like article 24 [Jurado, F(2013)] state that,
‘design, develop, test and debug program with certain tools that are designed to be
used by professional programmers, using IDEs such as NetBeans or Eclipse’. It only
states those two IDEs, therefore this survey backs up the point made by the article.
Article 20 [Husain, M(2013)] also states that, ‘students encouraged to use both IDEs
while developing their applications’.
4
6
13
36
40
0
5
10
15
20
25
30
35
40
45
1 2 3 4 5
Eclipse and NetBeans are the two top of the line IDEs
for Java Development
Maheroo_C_14094229_Report
Maheroo_C_14094229_Report
Maheroo_C_14094229_Report
Maheroo_C_14094229_Report
Maheroo_C_14094229_Report
Maheroo_C_14094229_Report
Maheroo_C_14094229_Report
Maheroo_C_14094229_Report
Maheroo_C_14094229_Report
Maheroo_C_14094229_Report
Maheroo_C_14094229_Report
Maheroo_C_14094229_Report
Maheroo_C_14094229_Report
Maheroo_C_14094229_Report
Maheroo_C_14094229_Report
Maheroo_C_14094229_Report
Maheroo_C_14094229_Report
Maheroo_C_14094229_Report
Maheroo_C_14094229_Report
Maheroo_C_14094229_Report
Maheroo_C_14094229_Report
Maheroo_C_14094229_Report
Maheroo_C_14094229_Report
Maheroo_C_14094229_Report
Maheroo_C_14094229_Report
Maheroo_C_14094229_Report
Maheroo_C_14094229_Report
Maheroo_C_14094229_Report
Maheroo_C_14094229_Report
Maheroo_C_14094229_Report
Maheroo_C_14094229_Report
Maheroo_C_14094229_Report
Maheroo_C_14094229_Report
Maheroo_C_14094229_Report
Maheroo_C_14094229_Report
Maheroo_C_14094229_Report
Maheroo_C_14094229_Report
Maheroo_C_14094229_Report
Maheroo_C_14094229_Report
Maheroo_C_14094229_Report
Maheroo_C_14094229_Report
Maheroo_C_14094229_Report
Maheroo_C_14094229_Report
Maheroo_C_14094229_Report
Maheroo_C_14094229_Report
Maheroo_C_14094229_Report
Maheroo_C_14094229_Report
Maheroo_C_14094229_Report
Maheroo_C_14094229_Report
Maheroo_C_14094229_Report
Maheroo_C_14094229_Report
Maheroo_C_14094229_Report
Maheroo_C_14094229_Report
Maheroo_C_14094229_Report
Maheroo_C_14094229_Report
Maheroo_C_14094229_Report
Maheroo_C_14094229_Report
Maheroo_C_14094229_Report
Maheroo_C_14094229_Report
Maheroo_C_14094229_Report
Maheroo_C_14094229_Report
Maheroo_C_14094229_Report
Maheroo_C_14094229_Report
Maheroo_C_14094229_Report
Maheroo_C_14094229_Report
Maheroo_C_14094229_Report
Maheroo_C_14094229_Report
Maheroo_C_14094229_Report
Maheroo_C_14094229_Report
Maheroo_C_14094229_Report
Maheroo_C_14094229_Report
Maheroo_C_14094229_Report
Maheroo_C_14094229_Report
Maheroo_C_14094229_Report
Maheroo_C_14094229_Report
Maheroo_C_14094229_Report
Maheroo_C_14094229_Report
Maheroo_C_14094229_Report
Maheroo_C_14094229_Report
Maheroo_C_14094229_Report
Maheroo_C_14094229_Report
Maheroo_C_14094229_Report
Maheroo_C_14094229_Report
Maheroo_C_14094229_Report
Maheroo_C_14094229_Report
Maheroo_C_14094229_Report
Maheroo_C_14094229_Report
Maheroo_C_14094229_Report
Maheroo_C_14094229_Report
Maheroo_C_14094229_Report
Maheroo_C_14094229_Report
Maheroo_C_14094229_Report
Maheroo_C_14094229_Report
Maheroo_C_14094229_Report
Maheroo_C_14094229_Report
Maheroo_C_14094229_Report
Maheroo_C_14094229_Report
Maheroo_C_14094229_Report
Maheroo_C_14094229_Report
Maheroo_C_14094229_Report
Maheroo_C_14094229_Report
Maheroo_C_14094229_Report
Maheroo_C_14094229_Report
Maheroo_C_14094229_Report
Maheroo_C_14094229_Report
Maheroo_C_14094229_Report
Maheroo_C_14094229_Report
Maheroo_C_14094229_Report
Maheroo_C_14094229_Report

More Related Content

What's hot

Ethical Consideration of Open Source Software
Ethical Consideration of Open Source SoftwareEthical Consideration of Open Source Software
Ethical Consideration of Open Source SoftwareLarry Jennings
 
Software Engineering CS-504 Handouts
Software Engineering   CS-504 HandoutsSoftware Engineering   CS-504 Handouts
Software Engineering CS-504 HandoutsSohaib Danish
 
Pair Programming Presentation
Pair Programming PresentationPair Programming Presentation
Pair Programming PresentationThoughtWorks
 
Best Great Ideas on Java Research Papers
Best Great Ideas on Java Research PapersBest Great Ideas on Java Research Papers
Best Great Ideas on Java Research Paperssuzanneriverabme
 
Empirical evaluation in 2020: how big, how beautiful?
Empirical evaluation in 2020: how big, how beautiful?Empirical evaluation in 2020: how big, how beautiful?
Empirical evaluation in 2020: how big, how beautiful?Massimiliano Di Penta
 
Marlabs test digest Sep 2014
Marlabs test digest Sep 2014Marlabs test digest Sep 2014
Marlabs test digest Sep 2014Marlabs
 
The Leaders Guide to Getting Started with Automated Testing
The Leaders Guide to Getting Started with Automated TestingThe Leaders Guide to Getting Started with Automated Testing
The Leaders Guide to Getting Started with Automated TestingJames Briers
 
How to think smarter about software development
How to think smarter about software developmentHow to think smarter about software development
How to think smarter about software developmentNilanjan Bhattacharya
 
Get the Balance Right: Acceptance Test Driven Development, GUI Automation and...
Get the Balance Right: Acceptance Test Driven Development, GUI Automation and...Get the Balance Right: Acceptance Test Driven Development, GUI Automation and...
Get the Balance Right: Acceptance Test Driven Development, GUI Automation and...Michael Larsen
 
Evaluation and User Study in HCI
Evaluation and User Study in HCIEvaluation and User Study in HCI
Evaluation and User Study in HCIByungkyu (Jay) Kang
 
Pair programming demystified
Pair programming demystifiedPair programming demystified
Pair programming demystifiedMarek Kirejczyk
 
HCI LAB MANUAL
HCI LAB MANUAL HCI LAB MANUAL
HCI LAB MANUAL Um e Farwa
 
Open source software
Open source softwareOpen source software
Open source softwarematschu5
 
Extreme Programming (XP) as A Popular Agile methodology.
Extreme Programming (XP) as A Popular Agile methodology.Extreme Programming (XP) as A Popular Agile methodology.
Extreme Programming (XP) as A Popular Agile methodology.Ali Shaikh
 

What's hot (14)

Ethical Consideration of Open Source Software
Ethical Consideration of Open Source SoftwareEthical Consideration of Open Source Software
Ethical Consideration of Open Source Software
 
Software Engineering CS-504 Handouts
Software Engineering   CS-504 HandoutsSoftware Engineering   CS-504 Handouts
Software Engineering CS-504 Handouts
 
Pair Programming Presentation
Pair Programming PresentationPair Programming Presentation
Pair Programming Presentation
 
Best Great Ideas on Java Research Papers
Best Great Ideas on Java Research PapersBest Great Ideas on Java Research Papers
Best Great Ideas on Java Research Papers
 
Empirical evaluation in 2020: how big, how beautiful?
Empirical evaluation in 2020: how big, how beautiful?Empirical evaluation in 2020: how big, how beautiful?
Empirical evaluation in 2020: how big, how beautiful?
 
Marlabs test digest Sep 2014
Marlabs test digest Sep 2014Marlabs test digest Sep 2014
Marlabs test digest Sep 2014
 
The Leaders Guide to Getting Started with Automated Testing
The Leaders Guide to Getting Started with Automated TestingThe Leaders Guide to Getting Started with Automated Testing
The Leaders Guide to Getting Started with Automated Testing
 
How to think smarter about software development
How to think smarter about software developmentHow to think smarter about software development
How to think smarter about software development
 
Get the Balance Right: Acceptance Test Driven Development, GUI Automation and...
Get the Balance Right: Acceptance Test Driven Development, GUI Automation and...Get the Balance Right: Acceptance Test Driven Development, GUI Automation and...
Get the Balance Right: Acceptance Test Driven Development, GUI Automation and...
 
Evaluation and User Study in HCI
Evaluation and User Study in HCIEvaluation and User Study in HCI
Evaluation and User Study in HCI
 
Pair programming demystified
Pair programming demystifiedPair programming demystified
Pair programming demystified
 
HCI LAB MANUAL
HCI LAB MANUAL HCI LAB MANUAL
HCI LAB MANUAL
 
Open source software
Open source softwareOpen source software
Open source software
 
Extreme Programming (XP) as A Popular Agile methodology.
Extreme Programming (XP) as A Popular Agile methodology.Extreme Programming (XP) as A Popular Agile methodology.
Extreme Programming (XP) as A Popular Agile methodology.
 

Viewers also liked

2008 eccmid P586 venkat
2008 eccmid P586 venkat2008 eccmid P586 venkat
2008 eccmid P586 venkatVenkat Alluru
 
Sneak Peek Estudio Líderes Innovación Fintech 2016
Sneak Peek Estudio Líderes Innovación Fintech 2016Sneak Peek Estudio Líderes Innovación Fintech 2016
Sneak Peek Estudio Líderes Innovación Fintech 2016Output
 
OACFP 2016 - Marketing Presentation
OACFP 2016 - Marketing PresentationOACFP 2016 - Marketing Presentation
OACFP 2016 - Marketing PresentationJeff Hum
 
DIGITAL RESTORATION OF TORN FILMS USING FILTERING T ECHNIQUES
DIGITAL RESTORATION OF TORN FILMS USING FILTERING T ECHNIQUESDIGITAL RESTORATION OF TORN FILMS USING FILTERING T ECHNIQUES
DIGITAL RESTORATION OF TORN FILMS USING FILTERING T ECHNIQUESAM Publications
 
Slide 9 WestCal Political Science 1 - US Government 2015-2016
Slide 9 WestCal Political Science 1 - US Government 2015-2016Slide 9 WestCal Political Science 1 - US Government 2015-2016
Slide 9 WestCal Political Science 1 - US Government 2015-2016WestCal Academy
 
Rapport ACN Europe
Rapport ACN EuropeRapport ACN Europe
Rapport ACN EuropeMutadis
 
Generation of Context-Specific Electronic Patient Care Reports (ePCR) using D...
Generation of Context-Specific Electronic Patient Care Reports (ePCR) using D...Generation of Context-Specific Electronic Patient Care Reports (ePCR) using D...
Generation of Context-Specific Electronic Patient Care Reports (ePCR) using D...Rohit Shenvi
 
CM [003] Philoponus' Impetus
CM [003] Philoponus' ImpetusCM [003] Philoponus' Impetus
CM [003] Philoponus' ImpetusStephen Kwong
 
Как увеличить продажи и повысить лояльность к компании со стороны клиентов из...
Как увеличить продажи и повысить лояльность к компании со стороны клиентов из...Как увеличить продажи и повысить лояльность к компании со стороны клиентов из...
Как увеличить продажи и повысить лояльность к компании со стороны клиентов из...Облачные сервисы. Бизнес-лайфхак.
 

Viewers also liked (13)

Baguio TALK Academy3月ニュース!フィリピン留学バギオ
Baguio TALK Academy3月ニュース!フィリピン留学バギオBaguio TALK Academy3月ニュース!フィリピン留学バギオ
Baguio TALK Academy3月ニュース!フィリピン留学バギオ
 
2008 eccmid P586 venkat
2008 eccmid P586 venkat2008 eccmid P586 venkat
2008 eccmid P586 venkat
 
LE DEFI BiRMiNG #4
LE DEFI BiRMiNG #4LE DEFI BiRMiNG #4
LE DEFI BiRMiNG #4
 
Ingenierira sw
Ingenierira swIngenierira sw
Ingenierira sw
 
Sneak Peek Estudio Líderes Innovación Fintech 2016
Sneak Peek Estudio Líderes Innovación Fintech 2016Sneak Peek Estudio Líderes Innovación Fintech 2016
Sneak Peek Estudio Líderes Innovación Fintech 2016
 
OACFP 2016 - Marketing Presentation
OACFP 2016 - Marketing PresentationOACFP 2016 - Marketing Presentation
OACFP 2016 - Marketing Presentation
 
florel resume-2
florel resume-2florel resume-2
florel resume-2
 
DIGITAL RESTORATION OF TORN FILMS USING FILTERING T ECHNIQUES
DIGITAL RESTORATION OF TORN FILMS USING FILTERING T ECHNIQUESDIGITAL RESTORATION OF TORN FILMS USING FILTERING T ECHNIQUES
DIGITAL RESTORATION OF TORN FILMS USING FILTERING T ECHNIQUES
 
Slide 9 WestCal Political Science 1 - US Government 2015-2016
Slide 9 WestCal Political Science 1 - US Government 2015-2016Slide 9 WestCal Political Science 1 - US Government 2015-2016
Slide 9 WestCal Political Science 1 - US Government 2015-2016
 
Rapport ACN Europe
Rapport ACN EuropeRapport ACN Europe
Rapport ACN Europe
 
Generation of Context-Specific Electronic Patient Care Reports (ePCR) using D...
Generation of Context-Specific Electronic Patient Care Reports (ePCR) using D...Generation of Context-Specific Electronic Patient Care Reports (ePCR) using D...
Generation of Context-Specific Electronic Patient Care Reports (ePCR) using D...
 
CM [003] Philoponus' Impetus
CM [003] Philoponus' ImpetusCM [003] Philoponus' Impetus
CM [003] Philoponus' Impetus
 
Как увеличить продажи и повысить лояльность к компании со стороны клиентов из...
Как увеличить продажи и повысить лояльность к компании со стороны клиентов из...Как увеличить продажи и повысить лояльность к компании со стороны клиентов из...
Как увеличить продажи и повысить лояльность к компании со стороны клиентов из...
 

Similar to Maheroo_C_14094229_Report

Episode an extreme programming method for innovative software based on system...
Episode an extreme programming method for innovative software based on system...Episode an extreme programming method for innovative software based on system...
Episode an extreme programming method for innovative software based on system...IJCSEA Journal
 
Hudup - A Framework of E-commercial Recommendation Algorithms
Hudup - A Framework of E-commercial Recommendation AlgorithmsHudup - A Framework of E-commercial Recommendation Algorithms
Hudup - A Framework of E-commercial Recommendation AlgorithmsLoc Nguyen
 
Gap Survey, Assessment and Analysis for DevSecOps
Gap Survey, Assessment and Analysis for DevSecOpsGap Survey, Assessment and Analysis for DevSecOps
Gap Survey, Assessment and Analysis for DevSecOpsMarc Hornbeek
 
James Sullivan CV 2015
James Sullivan CV 2015James Sullivan CV 2015
James Sullivan CV 2015James Sullivan
 
Preliminry report
 Preliminry report Preliminry report
Preliminry reportJiten Ahuja
 
Exploring the Efficiency of the Program using OOAD Metrics
Exploring the Efficiency of the Program using OOAD MetricsExploring the Efficiency of the Program using OOAD Metrics
Exploring the Efficiency of the Program using OOAD MetricsIRJET Journal
 
Steam Project.docx
Steam Project.docxSteam Project.docx
Steam Project.docxKod Alketbi
 
Slides from "Taking an Holistic Approach to Product Quality"
Slides from "Taking an Holistic Approach to Product Quality"Slides from "Taking an Holistic Approach to Product Quality"
Slides from "Taking an Holistic Approach to Product Quality"Peter Marshall
 
“Mentors View” Application
“Mentors View” Application“Mentors View” Application
“Mentors View” ApplicationAI Publications
 
software engineering
software engineeringsoftware engineering
software engineeringTayfun Çelik
 
IET~DAVV STUDY MATERIALS SRS.docx
IET~DAVV STUDY MATERIALS SRS.docxIET~DAVV STUDY MATERIALS SRS.docx
IET~DAVV STUDY MATERIALS SRS.docxMr. Moms
 
Gap Assessment for DevOps
Gap Assessment   for DevOpsGap Assessment   for DevOps
Gap Assessment for DevOpsMarc Hornbeek
 
A New Software Engineeering Approach
A New Software Engineeering ApproachA New Software Engineeering Approach
A New Software Engineeering ApproachArunit Gupta
 
What Software Quality Assurance Means to Me
What Software Quality Assurance Means to MeWhat Software Quality Assurance Means to Me
What Software Quality Assurance Means to MeRobert Stackhouse
 
Different Methodologies For Testing Web Application Testing
Different Methodologies For Testing Web Application TestingDifferent Methodologies For Testing Web Application Testing
Different Methodologies For Testing Web Application TestingRachel Davis
 
Selenium and JMeter Testing
Selenium and JMeter TestingSelenium and JMeter Testing
Selenium and JMeter TestingArchanaKalapgar
 

Similar to Maheroo_C_14094229_Report (20)

Episode an extreme programming method for innovative software based on system...
Episode an extreme programming method for innovative software based on system...Episode an extreme programming method for innovative software based on system...
Episode an extreme programming method for innovative software based on system...
 
Hudup - A Framework of E-commercial Recommendation Algorithms
Hudup - A Framework of E-commercial Recommendation AlgorithmsHudup - A Framework of E-commercial Recommendation Algorithms
Hudup - A Framework of E-commercial Recommendation Algorithms
 
Gap Survey, Assessment and Analysis for DevSecOps
Gap Survey, Assessment and Analysis for DevSecOpsGap Survey, Assessment and Analysis for DevSecOps
Gap Survey, Assessment and Analysis for DevSecOps
 
James Sullivan CV 2015
James Sullivan CV 2015James Sullivan CV 2015
James Sullivan CV 2015
 
Syylabus
SyylabusSyylabus
Syylabus
 
Preliminry report
 Preliminry report Preliminry report
Preliminry report
 
Exploring the Efficiency of the Program using OOAD Metrics
Exploring the Efficiency of the Program using OOAD MetricsExploring the Efficiency of the Program using OOAD Metrics
Exploring the Efficiency of the Program using OOAD Metrics
 
Steam Project.docx
Steam Project.docxSteam Project.docx
Steam Project.docx
 
e-Physical
e-Physicale-Physical
e-Physical
 
Slides from "Taking an Holistic Approach to Product Quality"
Slides from "Taking an Holistic Approach to Product Quality"Slides from "Taking an Holistic Approach to Product Quality"
Slides from "Taking an Holistic Approach to Product Quality"
 
“Mentors View” Application
“Mentors View” Application“Mentors View” Application
“Mentors View” Application
 
software engineering
software engineeringsoftware engineering
software engineering
 
IET~DAVV STUDY MATERIALS SRS.docx
IET~DAVV STUDY MATERIALS SRS.docxIET~DAVV STUDY MATERIALS SRS.docx
IET~DAVV STUDY MATERIALS SRS.docx
 
Gap Assessment for DevOps
Gap Assessment   for DevOpsGap Assessment   for DevOps
Gap Assessment for DevOps
 
A New Software Engineeering Approach
A New Software Engineeering ApproachA New Software Engineeering Approach
A New Software Engineeering Approach
 
What Software Quality Assurance Means to Me
What Software Quality Assurance Means to MeWhat Software Quality Assurance Means to Me
What Software Quality Assurance Means to Me
 
Different Methodologies For Testing Web Application Testing
Different Methodologies For Testing Web Application TestingDifferent Methodologies For Testing Web Application Testing
Different Methodologies For Testing Web Application Testing
 
Selenium and JMeter Testing
Selenium and JMeter TestingSelenium and JMeter Testing
Selenium and JMeter Testing
 
Selenium and JMeter
Selenium and JMeterSelenium and JMeter
Selenium and JMeter
 
Naveen Gudapati Resume
Naveen Gudapati ResumeNaveen Gudapati Resume
Naveen Gudapati Resume
 

Maheroo_C_14094229_Report

  • 1. CHARANJIT MAHEROO 14094229 1 UNIVERSITY OF HERTFORDSHIRE School of Computer Science Modular BSc Honours in Computer Science 6COM0283 – Software Engineering Project Final Report April 2015 Novice Programmers Developing Small Java Applications: NetBeans or Eclipse IDE Author's initials and surname CSM MAHEROO Supervised by: Nathan Baddo
  • 2. CHARANJIT MAHEROO 14094229 2 Abstract As the demand for developing program applications to be created increases, so does the demand for IDEs and most importantly developers who have the best possible skills and resources available to develop these Java Applications. This report also aims to find which IDE is the best suited to program Java Applications. Using the Evidence Based Software Engineering (EBSE) Methodology and applying the DESMET assessment, this overall report will systematically and scientifically evaluate two well-known IDEs used for Application development. Once the study is completed, a recommendation will be made based on which IDE is ideal for Novice Programmers.
  • 3. CHARANJIT MAHEROO 14094229 3 1. Introduction Page 4 1.1 What I am doing for my project Page 4 1.2 Why I am doing this project Page 4 1.3 Why I chose these two IDEs Page 5 1.4 How I am going to do this project Page 6 1.5 Subsequent Chapters 2. Background Page 9 2.1 Evidence Based Software Engineering Question Page 9 2.2 Components of the EBSE question Page 9 2.3 EBSE Question Page 10 3. Systematic Literature Review Page 11 3.1 Search Terms Page 11 3.2 Selection/Rejection Criteria Page 12 3.3 Conduct Searches Page 13 3.4 List Articles Page 16 3.5 Retain/Reject Articles Page 23 3.6 Retain or Reject Articles Systematic Literature Review Page 24 3.7 Appraisal of Articles Page 32 4 Feature Analysis Page 48 5 Survey Study Page 54 5.1 Create Questionnaire Page 54 5.2 Record Results Page 55 5.3 Appraisal of Survey Study Page 70 6 Practical Research Page 72 7 Recommendation Page 76 8 Conclusion Page 83 9 Reflection Page 84 10 Appendix 10.1 References Page 86 10.2 SLR article references Page 87 10.3 Feature analysis questionnaire Page 94 10.4 Survey study questionnaire Page 114 10.5 Practical research Page 161 10.6 Ethical approval document Page 168
  • 4. CHARANJIT MAHEROO 14094229 4 Chapter 1: Introduction 1.1 What I am doing for my Project In this project, I am conducting an Empirical Evaluation exercise to find out a suitable Integrated Development Environment (IDE) for Novice programmers to develop small Java Applications. I will be conducting an Evidence Based Software Engineering (EBSE) exercise to find out the solution to this problem. I will be using elements of the DESMET Methodology that will evaluate software engineering methods and tools. Furthermore, my personal and practical experience with these two IDEs will test to see if the core knowledge from the SLR is being upheld by my own experience. 1.2 Why am I doing this Project? An Integrated Development Environment is a software application that provides comprehensive facilities to computer programmers for software development. An IDE consists of a source code editor, build computerisation tools and a debugger. During my time at University, I was asked to program many numerous small Java Applications. I decided to use NetBeans as it was recommended by the University, therefore I used this IDE to construct my code in the source code editor. The only reason I chose this IDE was due to being advised by the University. I am currently a final year student, I have decided to conduct an extensive Empirical Evaluation, so I can find out myself which environment is best suited for programmers who do not have much experience, however enjoys trying to program and learn to develop cool small Java Applications. I also want to demonstrate to practitioners that, conducting an extensive Empirical Evaluation is a better way to find out a new or old Technology. Software practitioners and managers seeking to improve the quality of their software development process, often adopt new technologies without sufficient evidence that they will be effective, while other technologies are ignored despite the evidence that they most probably will be useful. So, I am finding out which IDE is appropriate to use to produce a small Java Application by conducting extensive Empirical Evaluation.
  • 5. CHARANJIT MAHEROO 14094229 5 1.3 Why I chose these two IDEs I chose NetBeans and Eclipse as the two IDEs that I am comparing as these two IDEs are the two main IDEs that are trending at the moment. ‘For many Java developers, Eclipse is the IDE of choice’ [Murphy, G (2006)]. However NetBeans is catching Eclipse in being the favourite IDE on the market.[Jurado, F(2013)] states, ‘Students should learn to design, develop and debug programs with certain tools that are designed to be used by professional programmers, using IDEs such as NetBeans or Eclipse’. NetBeans is the IDE that is taught and provided by the University of Hertfordshire from the start of year 3. Some lecturers also mention the Eclipse IDE to use, as it is also vastly used among developers. These Two IDEs are the only ones that are mentioned by the University which are both free to download and use from their Web Sites. BlueJ is also vastly used across Year 1 and Year 2, however BlueJ isn’t much of a good/professional software tool to develop small Java Applications. The above is not the only reason why I chose these two IDEs, after conducting background research, I found that many Universities only use and recommend Eclipse or NetBeans to third year students. This lecturer states that, ‘Up until 2006, I used commercial versions of IntelliJ IDEA for my lessons. But then I switched to NetBeans IDE and I’ve been quite happy with it.’[Weigend, J (2014)]] The table below contains student project types and which IDE they used. Eclipse and NetBeans was mentioned in every different project as well as being used the highest among any other IDE. This shows that, Eclipse and NetBeans are the two favourite IDEs to use to develop small Java Applications, thus I will be evaluating these two IDEs. [Makiaho, P (2012)]
  • 6. CHARANJIT MAHEROO 14094229 6 1.4 How am I going to do this Project? I will conduct an Extensive EBSE exercise which stands for Evidence Based Software Engineering. The concept tries to bring evidence to decisions made in the software engineering. The main instrument of EBSE is the Systematic Literature Review (SLR). The concept is derived from medicine and was adapted by Kitchenham. The idea behind the SLR is to obtain accurate data by analysing other primary studies, eliminating possible bias that this study may suffer. I will also be using a few DESMET Methodologies such as; Surveys, Feature Analysis and Experiments to help me in producing my own primary evidence. EBSE Step One: Convert a relevant problem or information need into an answerable question. This will involve creating an official EBSE question that will answer the problem I have. The EBSE question will be constructed in a way that was taught to do so in Semester A of Empirical Evaluation in Software Engineering. EBSE Step Two: Search the literature for the best available evidence to answer the question. This is where I will be creating my search terms based around the EBSE question that I have created. This will involve creating couple of suitable search terms that will find various articles, journals and books. I will be using numerous search engines that would provide me with a vast diverse range of articles that I could use for my project. These search engines will be; Google, Google Scholar, Yahoo, IEEE Scholar etc. I would need to find a suitable range of reliable articles (between 40-80) based on answering the EBSE question. Once this is achieved, I will set out a list of select and reject criteria that will assist in producing a list of articles that is directly related in answering the EBSE question. EBSE Step Three: Critically appraise the evidence for its validity, impact and applicability. I will by now have selected reliable literature that I could then appraise. This would involve including a description of how the literature has matched up with my criteria. I would need to critically analyse every article to find out the key points it expresses for and against both IDEs. This will be used to help me evaluate each findings that will assess how good the articles are.
  • 7. CHARANJIT MAHEROO 14094229 7 EBSE Step Four: Integrate the appraised evidence with practical experience and the customer’s values and circumstances to make decisions about practice. At the point, I should have completed my research and be preparing to start my own personal findings. Here in this step, I will conduct a few DESMET methodologies, which would give me another method of research that I could use. This would include conducting Surveys that would involve estimated 20-30 personal opinions. The results produced would be used to develop a greater scope of opinions from professionals, Novice Programmers and CS & IT students. Furthermore, I will be conducting tests that will enable me to create small Java Applications. This then allows me to compare different functionalities based on the findings I have found from my Systematic Literature Reviews and also my Surveys. Finally, after all this, I will gather all my personal practical findings with the surveys and the SLR articles collected and practical experience, to move onto the stage of making a precise recommendation of which IDE is suitable, in an overall context while answering the EBSE question. EBSE Step Five: Evaluate performance and seek ways to improve it. Here I will evaluate my EBSE Methodology and look at ways I could have done things better or used EBSE better. I will consider every factor that has played a vital role in conducting this research, coming to a final conclusion for areas of improvements.
  • 8. CHARANJIT MAHEROO 14094229 8 Following Chapters In Chapter two, I will demonstrate how I constructed my EBSE question, identifying the key components of the question in a way that has been taught to me in my EBSE Lectures. In Chapter three, The EBSE question constructed will be used to create the search criteria for the SLR. After conducting this thoroughly documented SLR, it will allow me to have a better understanding and core knowledge of both IDEs. Continuing from Chapter three, I will create a Feature Analysis in chapter four for the two IDEs, explaining in depth of the features they have. In chapter five, I will conduct an experiment which will consist of a survey and will appraise the articles from the SLR. Chapter six will involve me documenting my practical experience which I will be a novice programmer creating a small Java applications on both IDEs. Chapter seven is where the SLR, Personal experience and practical experience will be combined in order to produce a conclusion with a recommendation. Chapter eight is the conclusion and the overall experience of this project. I will explain how the work carried out in the project will relate to both industry and academia fields.
  • 9. CHARANJIT MAHEROO 14094229 9 Chapter 2: EBSE Question Background In this chapter I will demonstrate how I constructed my question and carefully identifying all the key parameters of that question. 2.1 Evidence Based Software Engineering Question Concept ‘EBSE has been proposed as methodologies to help practitioners improve their technology adoption decisions given their particular circumstances’ (Rainer A, 2008). I will attempt to take a practical problem and re-frame it into a software engineering question, which would help me find reliable and relevant articles. I would basically construct an EBSE question comprising of five components:  A statement of the intervention of interest: For example, the instrument of change, such as the introduction of a new tool.  A statement of a baseline against which the performance of the intervention is compared.  A statement of the users of the technology: For example, the users’ experience and skills.  A statement of the situation within which the users apply the intervention: For example, the type of project or type of application.  A statement of the particular outcome that intervention is expected to change and ideally improve. 2.2 Components of the EBSE Question Intervention From my own experience, NetBeans seems to be one of the easiest and productive IDEs on the market for providing support of Java Applications. The NetBeans IDE allows creation of many range of applications, containing a wide range of great features packed into one well-developed software. Baseline The Eclipse IDE is the technology that will be compared with NetBeans IDE. This is a powerful tool that has been in the market for many years and is recognised amongst vast number of developers.
  • 10. CHARANJIT MAHEROO 14094229 10 Users The users of both IDEs are focused around Novice Programmers. I chose Novice programmers due to myself being a novice programmer. I am a final year student who has only programmed applications that are small for one single module, besides I am a student that has not reached that enterprise level yet. Situation The day and age we live in, Java applications are seem to be trending with more people learning this all-rounder program language, developing applications that can be found on computers or mobiles. Outcome I plan to compare different aspects of both IDEs, resulting in showing which elements are more suitable for Novice programmers in what circumstances. 2.3 EBSE Question Is the NetBeans integrated Development Environment (IDE) [Intervention] more suited [outcome] to develop small Java Applications [situation] when used by Novice programmers [users] rather than the Eclipse IDE [baseline]? Following Chapters In Chapter three, The EBSE question constructed will be used to create the search criteria for the SLR. After conducting this thoroughly documented SLR, it will allow me to have a better understanding and core knowledge of both IDEs. Continuing from Chapter three, I will create a Feature Analysis in chapter four for the two IDEs, explaining in depth of the features they have. In chapter five, I will conduct an experiment which will consist of a survey and will appraise the articles from the SLR. Chapter six will involve me documenting my practical experience which I will be a novice programmer creating a small Java applications on both IDEs. Chapter seven is where the SLR, Personal experience and practical experience will be combined in order to produce a conclusion with a recommendation. Chapter eight is the conclusion and the overall experience of this project. I will explain how the work carried out in the project will relate to both industry and academia fields.
  • 11. CHARANJIT MAHEROO 14094229 11 Chapter 3: Systematic Literature Review The SLR will help in finding appropriate articles from previous conducted evaluations of NetBeans and Eclipse. Furthermore it will appraise the articles and evaluate them, when the SLR is completed; the findings from the SLR will then be used to create a Survey Study and Feature Analysis. All searches will be conducted using Google Scholar, IEEE Xplore, Yahoo, and ACM Digital Library. Some articles will be retained and rejected according to the select & reject criteria below. I will be using Yahoo as one of the search engines as it’s got a very detailed advanced search modifiers, thus allowing me to get a more relevant articles. When I will be selecting the articles, the abstract of articles will be read to determine if the article should be kept or discarded. Then after it is retained, the full text will be viewed for a more thorough read. 3.1 Search Terms Table 1 displays the search terms that I will use for the searches, to gain those articles that are relevant to the EBSE question that was created in the earlier chapter. I needed to narrow down my search terms in order to have resources that related directly with the articles I was looking for. Task 1 Table 1: EBSE question of search terms EBSE question component Phrase from actual question Your search terms for each component / phrase Technology intervention NetBeans IDE  NetBeans IDE Technology  NetBeans IDE  Advantages of NetBeans Outcome Is more suited  NetBeans is suited for who?  Eclipse is suited for who? Situation To developing small java applications  Developing small java applications NetBeans IDE  What situation is NetBeans IDE used for Users of the technology Novice Programmers  Novice programmers using NetBeans  Novice programmers using Eclipse  For inexperienced programmers  Better for learning  Best suited environment for Novice Programmers. Baseline technology Eclipse IDE  Eclipse IDE  Eclipse Best IDE  Eclipse or NetBeans, which one is better
  • 12. CHARANJIT MAHEROO 14094229 12 3.2 Select/Reject Criteria This table is important as it will help in judging if I should retain or reject the articles from reading its abstract. This is important as it will start to narrow my findings better towards the EBSE question, therefore I will not have articles that are too old or irrelevant. Table 2: The selection and rejection criteria Criterion Selection or rejection Explanation of criterion Up-to-date version of NetBeans or Eclipse Select I will select the article because it is published less than 6 years ago, furthermore the article is talking about NetBeans or Eclipse Article Talks about the issues of Novice Programmers Developing Small Java Applications Select I will select this article as the article mentions Novice Programmers Developing small Java App, this would highlight factors that may be seen as an advantage of the IDE when used by inexperienced users or experienced users. Article Relates to the EBSE Question Select I will select all article that relate in some way to the EBSE question that was constructed in Chapter 2. Opinion-based Reject Reject the articles due to being too opinion based and not factual. Out-of-date version of NetBeans/Eclipse Reject Reject the article because the article is too old. For example: The article was published more than 6 years ago, thus the article may not contain or appraise features of the IDE that was adopted within the 6 years. No References Reject The article that contains no references or evidence to back up his points, is not reliable and due to this, it is categorising itself under opinion based criteria. Reliable Author Select If the article is written by someone that has experience from using different kinds of software, or is in a neutral point of view, then his articles are retained. Compares NetBeans to Eclipse Directly Select The article that fits this criterion will be most valuable, as it will provide direct comparisons between the two IDEs. Applying the Selection/Rejection criteria above allowed me to quickly go through all the articles that was collected via my search terms.
  • 13. CHARANJIT MAHEROO 14094229 13 3.3 Conduct Searches Table 3 displays the searches I conducted, the modifiers used, the search engine used and the number of results produced. The search terms were placed in various different search engines to gain a wide scope of findings. Table 3: The searches Search Engine Date and Time of Search EBSE Component Searched Search Terms Modifiers Number of Results Google Scholar 17/02/15 15:29 Technology NetBeans Integrated Development Environment Technology Quotation marks around NetBeans. Year 2009- 2015 9,490 Google Scholar 17/02/15 17:33 Outcome NetBeans IDE is suited for who? Quotation marks around Suited. Year 2009- 2015 884 Google Scholar 17/02/15 17:45 Situation Developing small Java Applications with NetBeans IDE Quotation marks around Small. Year 2009- 2015 3,320 Google Scholar 17/02/15 18:05 Users of the Technology Novice Programmers using NetBeans Quotation marks around Novice. Year 2009- 2015 538 Google Scholar 17/02/15 18:28 Baseline Technology Eclipse IDE is the best Quotation marks around Eclipse. Year 2009- 2015 13,900 IEEE Xplore 17/02/15 18:46 Technology NetBeans Integrated Development Environment Technology “NetBeans” Year 2009- 2015 52 IEEE Xplore 17/02/15 18:58 Outcome NetBeans IDE is suited for which person? “NetBeans” Year 2009- 2015 59 IEEE Xplore 17/02/15 19:10 Situation Developing small Java Applications with NetBeans IDE Year 2009- 2015 70 IEEE Xplore 17/02/15 19:27 Users of the Technology Novice Programmers using NetBeans Year 2009- 2015 1,969
  • 14. CHARANJIT MAHEROO 14094229 14 Table 3: The searches Search Engine Date and Time of Search EBSE Component Searched Search Terms Modifiers Number of Results IEEE Xplore 18/02/15 13:34 Baseline Technology Eclipse IDE is the best 2010-2015 6 ACM Digital Library 18/02/15 13:45 Technology NetBeans Integrated Development Environment Technology 2009-2015 151 ACM Digital Library 18/02/15 13:58 Outcome NetBeans IDE is suited for who? 2009-2015 20 ACM Digital Library 18/02/15 14:16 Situation Developing small Java Applications with NetBeans IDE 2009-2015 66 ACM Digital Library 18/02/15 14:29 Users of the Technology Novice Programmers using NetBeans 2009-2015 44 ACM Digital Library 18/02/15 14:47 Baseline Technology Eclipse IDE is the best 2009-2015 781 Springer Link 18/02/15 17:01 Technology NetBeans Integrated Development Environment Technology 2010-2015 Articles Computer Science 85 Springer Link 18/02/15 17:45 Outcome NetBeans IDE is suited for who? 2009-2015 Articles Computer Science Applicatio ns 5 Springer Link 18/02/15 17:58 Situation Developing small Java Applications with NetBeans IDE 2009-2015 Articles Computer Science Applicatio ns 12 Springer Link 18/02/15 18:16 Users of the Technology Novice Programmers using NetBeans 2009-2015 Articles Computer Science 7
  • 15. CHARANJIT MAHEROO 14094229 15 Springer Link 18/02/15 18:38 Baseline Technology Eclipse IDE is the best 2009-2015 Articles Computer Science 282 Table 3: The searches Search Engine Date and Time of Search EBSE Component Searched Search Terms Modifiers Number of Results Google Scholar 19/02/15 15:29 Technology Benefits of using NetBeans Year 2009- 2015 2,830 Google Scholar 19/02/15 11:33 Outcome NetBeans and Eclipse suited for what type of programmers Year 2009- 2015 1,580 Google Scholar 19/02/15 11:45 Situation What situation is NetBeans IDE used for Year 2009- 2015 2,480 Google Scholar 19/02/15 12:05 Users of the Technology Novice programmers using Eclipse IDE Year 2009- 2015 7,680 Google Scholar 19/02/15 12:28 Baseline Technology Eclipse or NetBeans, which one is better Year 2009- 2015 2,250 Springer Link 19/02/15 12:46 Technology Benefits of using NetBeans Article Computer Science Year 2009- 2015 68 Springer Link 19/02/15 12:58 Outcome NetBeans and Eclipse suited for what type of programmers Article Computer Science Year 2009- 2015 7 Springer Link 19/02/15 13:10 Situation What situation is NetBeans IDE used for Article Computer Science Year 2009- 2015 31 Springer Link 19/02/15 13:27 Users of the Technology Novice programmers using Eclipse IDE Article Computer Science Year 2009- 2015 17 Springer Link 19/02/15 13:58 Baseline Technology Eclipse or NetBeans, which one is better Article Computer Science Year 2009- 2015 1,117
  • 16. CHARANJIT MAHEROO 14094229 16 3.4 List Articles 1. Abi-Antoun, M, Giang, A, Chandrashekar, S, Khalaj, E (2014). ‘The Eclipse Runtime for Object-Oriented Code Exploration and Program Comprehension’. Publisher Available at: http://dl.acm.org/citation.cfm?id=2688133 Accessed on: 14/3/15 2. Ami, A, Islam S (2015). ‘A Content Assist Based Approach for Providing Rationale of Method Change for Object Oriented Programming’. Publisher Available at: http://www.mecs-press.org/ijieeb/ijieeb-v7-n1/IJIEEB-V7-N1-7.pdf Accessed on: 14/3/15 3. Agarwal, H, Saxena, A, Karishna, V, Saritha, D (2011). ‘FlexiSim: A User Friendly Environment for Network Simulations’. Publisher Available at: http://www.lidi.info.unlp.edu.ar/WorldComp2011-Mirror/ICW3947.pdf Accessed on: 14/3/15 4. Burnette, E (2007). 'NetBeans vs. Eclipse, this time with attitude'. ZDNET available at: http://www.zdnet.com/blog/burnette/netbeans-vs-eclipse-this-time-with- attitude/387 Accessed on: 14/3/15 5. Burch, C (2009). ‘Jigsaw, a Programming Environment for Java in CS1’. Publisher Available at: http://dl.acm.org/citation.cfm?id=1516604 Accessed on: 14/3/15 6. Balsiger, M (2010). ‘Representing Software Features in the Eclipse IDE’. Publisher Available at: https://uhvpn.herts.ac.uk/archive/projects/,DanaInfo=scg.unibe.ch+Bals10a- BOA.pdf Accessed on: 14/3/15 7. Boxtel, J (2010). ‘An Evaluation of Interactive Curriculum Using the Java Instructional Gaming Engine’. Publisher Available at: https://uhvpn.herts.ac.uk/projects/thesis/,DanaInfo=jamesvanboxtel.com+thesis-4-6- 10.pdf Accessed on: 14/3/15 8. Chen, Z, Marx, D (2005). 'Experience with Eclipse IDE in programming courses'. ACM DL Digital Library available at: http://dl.acm.org/citation.cfm?id=1089068 Accessed on: 14/3/15 9. Chatley, R, Timbul, T (2005). 'KeyaEclipse: learning to program in eclipse'. ACM DL Digital Library available at: http://dl.acm.org/citation.cfm?id=1081746 Accessed on: 14/3/15 10. Cadenhead, R. (2014). Java in 24 Hours, Sams Teach Yourself (Covering Java 8). 7th edn. [EBook] USA: Pearson Education, Inc. Accessed on: 14/3/15 11. Carlisle, M (2010). ‘Using You Tube to enhance Student Class Preparation in an Introductory Java Course’. Publisher Available at: http://dl.acm.org/citation.cfm?id=1734419 Accessed on: 16/3/15 12. Das. P, Chakraborty, S, Dutta, P (2012). ‘Inception of Medi Java: an Open Source Library for Medical Science’. Publisher Available at: http://research.ijais.org/volume3/number2/ijais12-450473.pdf Accessed on: 16/3/15 13. DeReamer, S (2010). ‘Teaching Computer Science: a Neumont Philosophy’. Publisher Available at: http://dl.acm.org/citation.cfm?id=1668880 Accessed on: 16/3/15
  • 17. CHARANJIT MAHEROO 14094229 17 14. Dillon, E (2009). ‘Which environment is more suitable for novice programmers: editor/command line/console environment vs. integrated development environment’? Publisher available at: http://acumen.lib.ua.edu/content/u0015/0000001/0000103/u0015_0000001_0000103 .pdf Accessed on: 16/3/15 15. Djasmir, M, Idris, S, Bakar, M, Zin, A (2012). ‘An Integrated Development Environment for Blocks Creation’. Publisher available at: http://docsdrive.com/pdfs/medwelljournals/ajit/2012/194-200.pdf Accessed on: 16/3/15 16. Ertl, D (2009). ‘A Case Study of Developing an IDE for Embedded Software Using Open Source’. Publisher available at: Accessed on: 16/3/15http://ieeexplore.ieee.org/xpls/abs_all.jsp?arnumber=5298435&tag=1 17. Eriksen, K, (2013). ‘Implementation of Editors for Text-Based Domain-Specific Languages’. Publisher Available at: https://uhvpn.herts.ac.uk/wp- content/uploads/,DanaInfo=www.2k3.org+Kyrrehe_Master.pdf Accessed on: 16/3/15 18. Fenwick, J, Norris, C, Barry, F, Rountree, J, Spicer, C, Cheek, S (2009). ‘Another Look at the Behaviours of Novice Programmers’. Publisher Available at: http://dl.acm.org/citation.cfm?id=1508973 Accessed on: 16/3/15 19. Foltin, M, Fodrek, P, Blaho, M, Murgas, J (2011). ‘Open Source Technologies in Education’. Publisher available at: http://www.wseas.us/e- library/conferences/2011/Corfu/EDUC/EDUC-22.pdf Accessed on: 16/3/15 20. Fleming, C, Morey, J, Sedig, K (2013). ‘Students’ Perception on the Use of Visual tilings to Support their Learning of Programming Concepts’. Publisher Available at: https://uhvpn.herts.ac.uk/xpls/,DanaInfo=ieeexplore.ieee.org+abs_all.jsp?arnumber= 6654412&tag=1 Accessed on: 16/3/15 21. Furmankiewicz, J (2010). ‘Eclipse, NetBeans, and IntelliJ: Assessing the Survivors of the Java IDE Wars’. Publisher Available at: http://www.devx.com/Java/Article/34009/1954 Accessed on: 16/3/15 22. Galvan C, Hernandez, I (2011). ‘Educational Software for Metrology Using Java Applets’. Publisher Available at: http://limcserver.dee.ufcg.edu.br/metrologia_2011/iicimmec/83502.pdf Accessed on: 16/3/15 23. Geer, D (2005). ‘Eclipse Becomes the Dominant Java IDE’. Publisher available at: http://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=1463097 Accessed on: 16/3/15 24. German, D, Davies, Julius, D (2011). 'Apples vs. oranges? An explanation of the challenges of comparing the source code of two software systems'. ACM DL Digital Library available at: http://dl.acm.org/citation.cfm?id=1985483 Accessed on: 16/3/15 25. Gray, J (2009). ‘Readers’ choice awards 2009’. ACM DL Digital Library available at: http://dl.acm.org/citation.cfm?id=1554324.1554325&coll=DL&dl=ACM&C Accessed on: 16/3/15
  • 18. CHARANJIT MAHEROO 14094229 18 26. Grekova, E, Zuniga, G, Gupta, G, Goldring, J, Nguyen, M (2012). ‘Aspect-Oriented Programming’. Publisher Available at: https://uhvpn.herts.ac.uk/courses/seng403/W2012/papers/,DanaInfo=kremer.cpsc.uc algary.ca+6%20Aspect-Oriented%20Programming.pdf Accessed on: 16/3/15 27. Golman, M (2010). ‘Thesis Proposal: All the Program’s a Stage, and all the Programmers Merely Players’. Publisher Available at: https://uhvpn.herts.ac.uk/maxg/proposal/,DanaInfo=people.csail.mit.edu+maxg- proposal.pdf Accessed on: 16/3/15 28. Hou, D, Wang, Y (2009). ‘An Empirical Analysis of the Evolution of User-Visible Features in an Integrated Development Environment’. Publisher Available at: http://dl.acm.org/citation.cfm?id=1723044 Accessed on: 16/3/15 29. Husain, M (2013). ‘Teaching Programming Course Elective: A New Teaching and Learning Experience’. Publisher Available at: http://ieeexplore.ieee.org/xpls/abs_all.jsp?arnumber=6756349 Accessed on: 16/3/15 30. Jackson, J (2012). ‘Oracle Gears NetBeans for Building Better User Interfaces’. Publisher Available at: http://www.cio.com/article/697392/Oracle_Gears_Netbeans_for_Building_Better_U ser_Interfaces Accessed on: 16/3/15 31. JavaWorld (2008). ‘Eclipse 3.3 or NetBeans 6.0?’ Publisher Available at: http://www.javaworld.com/article/2077841/open-source-tools/eclipse-3-3-or- netbeans-6-0-.html?page=4 [Accessed: 20 February, 2015]. Accessed on: 16/3/15 32. Johnson, C (2012). ‘SpecCheck: Automated Generation of Tests for Interface Conformance’. Publisher Available at: https://uhvpn.herts.ac.uk/,DanaInfo=dl.acm.org+citation.cfm?id=2325343 Accessed on: 16/3/15 33. Jurado, F, Molina, A, Redondo, M, Ortega, M (2013). ‘Cole-Programming: Shaping Collaborative Learning Support in Eclipse’. Publisher Available at: http://ieeexplore.ieee.org/xpl/articleDetails.jsp?arnumber=6634224 Accessed on: 16/3/15 34. Knaub, M (2008). ‘Eclipse as a Tool for Program Understanding’. Publisher Available at: http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.102.2579&rep=rep1&type =pdf Accessed on: 16/3/15 35. Kannangara, P (2013). ‘Teaching Tools and Techniques for Efficient Teaching and Learning of Computer Programming for Beginners using Java’. Publisher Available at: https://uhvpn.herts.ac.uk/cgi- bin/,DanaInfo=espace.library.curtin.edu.au+espace.pdf?file=/2013/08/02/file_1/1920 78 Accessed on: 16/3/15 36. Lapolla, M, Risi, M, Scanniello G (2009). ‘An Empirical Evaluation of the Eclipse Framework’. Publisher Available at: http://eit09.unibg.it/pdfs/eit09.pdf#page=74 Accessed on: 16/3/15
  • 19. CHARANJIT MAHEROO 14094229 19 37. Lytinen, S, Railsback, S (2011). ‘Agent-Based Simulation Platforms: An Updates Review’. Publisher Available at: https://uhvpn.herts.ac.uk/slytinen/abm/,DanaInfo=condor.depaul.edu+Lytinen- Railsback-EMCSR_2011-12-15.pdf Accessed on: 18/3/15 38. Major, L (2012). ‘Systematic Literature Review: Teaching Novice Programming Using Robots’. Publisher Available at: http://ieeexplore.ieee.org/xpl/articleDetails.jsp?tp=&arnumber=6353335&ranges%3 D2009_2015_p_Publication_Year%26queryText%3DNovice+Programmers+using+ NetBeans Accessed on: 18/3/15 39. Maksimova, N (2013). ‘JAVA IDEs For Easily Learning and Understanding Object Oriented Programming’. Publisher Available at: http://eprints.ugd.edu.mk/8235/ Accessed on: 18/3/15 40. Murgia, A, Concas, G, Tonelli, R, Turnu, I (2009). ‘Empirical Study of Software Quality Evolution in Open Source Projects Using Agile Practices’. Page: 11 , Publisher Available at: https://books.google.co.uk/books?hl=en&lr=&id=xgJoAgAAQBAJ&oi=fnd&pg=P A11&dq=Eclipse+or+NetBeans,+which+one+is+better&ots=3LmNmXptV- &sig=ZiwoogRaf5TtK7bcEFfi9ZWY6qw#v=onepage&q=Eclipse%20or%20NetBea ns%2C%20which%20one%20is%20better&f=false Accessed on: 18/3/15 41. Murphy, G.C, Kersten, M, Findlater, L (2006).'How are java software developers using the Eclipse IDE'. IEEE Software available at: http://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=1657944 Accessed on: 18/3/15 42. Mbogo, C, Blake, E, Suleman, H (2013). ‘A Mobile Scaffolding Application to Support Novice Learners of Computer Programming’. Publisher Available at: http://dl.acm.org/citation.cfm?id=25179410 Accessed on: 18/3/15 43. Moritz, R (2012). ‘mJeliot: An Interactive Smartphone-Based Learning Tool for Programming Lectures’. Publisher Available at: https://uhvpn.herts.ac.uk/smash/,DanaInfo=www.diva- portal.org+record.jsf?pid=diva2%3A553245&dswid=-680 Accessed on: 18/3/15 44. Naveed, A (2010). ‘Multi-Attribute Metrics for Evaluating Quality of Student Programming Assignments’. Publisher Available at: http://undergraduate.csse.uwa.edu.au/year4/Current/Students/Files/2010/AsadNavee d/CorrectedDissertation.pdf Accessed on: 18/3/15 45. Neve, P, Hunter, G, Livingstone, D (2014). ‘NoobLab: An E-learning Platform for Teaching Programming’. Publisher Available at: http://ieeexplore.ieee.org/xpl/articleDetails.jsp?arnumber=6949453&sortType%3Da sc_p_Sequence%26filter%3DAND%28p_IS_Number%3A6949433%29 Accessed on: 18/3/15 46. Pendergast, M (2005). ‘Teaching Java to IS Students: Top Ten Most Heinous Programming Errors’. Publisher Available at: http://aisel.aisnet.org/cgi/viewcontent.cgi?article=1801&context=amcis2005 Accessed on: 18/3/15
  • 20. CHARANJIT MAHEROO 14094229 20 47. Pendergast, M (2006). 'Teaching introductory programming to IS Students: java problems and pitfalls'. Journal of Information Technology Education: Research, 5(1), 491-515 available at: http://www.editlib.org/p/111559/ Accessed on: 18/3/15 48. Plastino, A (2014). ‘What Should I Code Now’? Publisher Available At: http://www.jucs.org/jucs_20_5/what_should_i_code/jucs_20_05_0797_0821_silva.p df Accessed on: 18/3/15 49. Pyshkin, E (2011). ‘Teaching Programming: What We Miss in Academia’. Publisher Available at: http://ieeexplore.ieee.org/xpls/abs_all.jsp?arnumber=6188472 Accessed on: 18/3/15 50. Piasecki, M (2011). ‘Application Programming- Mobiles Computing’. Publisher Available at: http://www.dbc.wroc.pl/Content/23914/piasecki_application.pdf Accessed on: 18/3/15 51. Pribela, I, Pracner, D, Budimac, Z (2014). ‘Tool for Testing Student Programs’. Publisher Available at: http://ceur-ws.org/Vol-1266/SQAMIA2014_Paper9.pdf Accessed on: 18/3/15 52. Rigby, P, Thompson, S (2005). ‘Study of Novice Programmers Using Eclipse and Gild’. Publisher Available at: http://dl.acm.org/citation.cfm?id=1117718 Accessed on: 19/3/15 53. Ratchford, T (2011). ‘Creating Application Programming Interface Code Templates From Usage Patterns’. Publisher Available at: http://www.cs.mcgill.ca/~martin/theses/msc-ratchford-2011.pdf Accessed on: 19/3/15 54. Reed, D (2010). ‘Sometimes Style Really Does Matter’. Publisher Available at: http://dl.acm.org/citation.cfm?id=1747172 Accessed on: 19/3/15 55. Roy, A (2012). ‘Active Learning Animations for the Theory of Computing the FSA Simulator’. Publisher Available at: http://web3.cs.montana.edu/techreports/1112/Roy.pdf Accessed on: 19/3/15 56. Salviulo, F, Scanniello, G (20130. ‘Comprehending and Maintaining Object- Oriented Source Code: an Ethnographically-Informed Study’. Publisher available at: http://www2.unibas.it/gscanniello/SCCMEthno/Comprehending_and_Maintaining_ Object-Oriented_Source_Code__an_Ethnographically- informed_Study/Study_Information_files/ICSM_2013_Ethn.pdf Accessed on: 19/3/15 57. Schroter, A (2011). 'MSR challenge 2011: Eclipse, Netbeans, Firefox, and Chrome'. ACM DL Digital Library available at: http://dl.acm.org/citation.cfm?id=1985478 Accessed on: 19/3/15 58. Snellenburg, J, Laptenok, S, Seger, R, Mullen, K, Stokkum, I (2012). ‘Glotaran: A Java-Based Graphical User Interface for the R Package TIMP’. Publisher Available at: https://hal-polytechnique.archives-ouvertes.fr/hal-00817159/document Accessed on: 19/3/15
  • 21. CHARANJIT MAHEROO 14094229 21 59. Storey, M, Damian, D, Michaud, J, Myers, D, Mindel, M, German, D, Sanseverino, M, Hargreaves, E (2003). 'Improving the usability of Eclipse for novice programmers'. ACM DL Digital Library available at: http://dl.acm.org/citation.cfm?id=965668 Accessed on: 19/3/15 60. Soares, G (2011). ‘Identifying Overly Strong Conditions in Refactoring Implementations’. Publisher Available at: http://ieeexplore.ieee.org/xpls/abs_all.jsp?arnumber=6080784 Accessed on: 19/3/15 61. The server side (2012) ‘what’s the big IDE? Comparing Eclipse and NetBeans’. Publisher Available at: http://www.theserverside.com/feature/Whats-the-Big-IDE- Comparing-Eclipse-vs-NetBeans Accessed on: 21/3/15 62. Vihavainen, A, Helminen, J, Ihantola, P (2014). ‘How Novices tackle their First Lines of Code in an IDE: analysis of Programming Session Traces’. Publisher Available at: http://dl.acm.org/citation.cfm?id=2674692 Accessed on: 21/3/15 63. Wang, X, Baik, E, Devanbu, P (2011). ‘Operating System Compatibility analysis of Eclipse and NetBeans based on Bug Data’. Publisher Available at: http://dl.acm.org/citation.cfm?id=1985479 Accessed on: 21/3/15 64. Witte, R, Sateli, B, Khamis, N, Rilling, J (2011). ‘Intelligent Software Development Environments: Integrating Natural Language Processing with the Eclipse Platform’. Publisher available at: http://link.springer.com/chapter/10.1007/978-3-642-21043- 3_49#page-2 Accessed on: 21/3/15 65. Watson, G.R (2006). 'Developing scientific applications using eclipse'. IEEE software available at: http://ieeexplore.ieee.org/xpls/abs_all.jsp?arnumber=1644709 Accessed on: 21/3/15 66. Walters, B (2013). ‘Towards an Eye-Tracking Enabled IDE for Software Traceability Tasks’. Publisher Available at: https://uhvpn.herts.ac.uk/xpls/,DanaInfo=ieeexplore.ieee.org+abs_all.jsp?arnumber= 6620154&tag=1 Accessed on: 21/3/15 67. Wurthinger, T, Binder, W, Ansaloni, D, Moret, P, Mossenbock, H (2010). ‘Applications of enhanced dynamic code evolution for Java in GUI development and dynamic aspect-oriented programming’. Publisher Available at: http://dl.acm.org/citation.cfm?id=1868312 Accessed on: 21/3/15 68. Xinogalos, S (2012). ‘Programming Techniques and Environments in a Technology Management Department’. Publisher Available at: http://dl.acm.org/citation.cfm?id=2371342 Accessed on: 21/3/15 69. Yalamanchili, D (2013). ‘AZ-Nuggets: An IDE for Programming by Concept’. Publisher Available at: https://uhvpn.herts.ac.uk/bitstream/handle/10222/35438/,DanaInfo=Dalspace.library. dal.ca+Yalamanchili-Lakshmi%20Deepak-MCSc-CSCI-July-2013.pdf?sequence=1 Accessed on: 21/3/15
  • 22. CHARANJIT MAHEROO 14094229 22 70. Yefim, K (2010). ‘Learning Management System Technologies and Software Solutions for Online Teaching: Tools and Applications’. Publisher Available at: https://books.google.co.uk/books?hl=en&lr=&id=2OsPGIvgjGwC&oi=fnd&pg=PA 332&dq=NetBeans+for+Novice+programmers&ots=LSnphXpyTK&sig=ImoChlZ MhrSjiv3ACTFjs-qDGqA#v=snippet&q=eclipse&f=false Accessed on: 21/3/15 71. Unanimous, (2011). ‘NetBeans vs Eclipse vs JDeveloper’. Publisher Available at: http://www.indicthreads.com/1513/java-ides-netbeans-vs-eclipse-vs-jdeveloper/ Accessed on: 21/3/15 72. Zhen, Hu (2011). ‘To enlighten Students’ thinking of Programming by Java Language.’ Publisher Available at: https://uhvpn.herts.ac.uk/xpls/,DanaInfo=ieeexplore.ieee.org+abs_all.jsp?arnumber= 6001826 Accessed on: 21/3/15
  • 23. CHARANJIT MAHEROO 14094229 23 3.5 Selection/Rejection Criteria for Articles Table 5 The selection and rejection criteria Criterion Number Criteria Explanation of criteria 1 Is evidence valid and is it based on experience or facts. In order for the article to be valid, the article must contain evidence backing its reasons/points, rather than just being opinion based. It must use citations and include a reference/bibliography section. Furthermore, the article should contain more facts than the authors own experience, as I don’t want an article that’s more experience based than factual. 2 Any vested Interest? Does the researcher have any vested interest in the results, in other words, does the Author have something to gain from writing a positive article. This is important in looking up and selecting the right articles that aren’t bias, so that my recommendation isn’t supported by bias points. 3 Does the Article Tackle the issue of Novice Programmers The article must clearly state issues Novice Programmers have, as well as the article, should be based around Novice Programmers. This is important as it will allow articles to be selected more precisely towards the EBSE Components. 4 Does the article talk about NetBeans or Eclipse The article must imply on either or at least one of the IDEs, as it will only then make it relevant to the EBSE question. This is important, as obtaining articles that do not mention either IDEs are useless and irrelevant. 5 Does the article compare the two IDEs? The article will need to compare the two IDEs, stating clearly why one is better than the other. This is important, as I would need at least few articles that actually compare the IDEs, this will be useful in deciding which IDE I will recommend in the report. 6 Is the article understandable as a Novice Programmer? The article must at least contain the basic information you can understand. Furthermore, if the article is too complicated for a Novice Programmer like me, then it should not be obtained. For example, you would not choose to read an article that is too scientific or based around enterprise level, as it will be hard to refer to due to the fact that, I would not understand it.
  • 24. CHARANJIT MAHEROO 14094229 24 3.6 Retain or Reject Articles from Systematic Literature Review Table 6 The Reject and Retain Articles Appraisal Criteria Number From Table 5 Article Identifier 1 2 3 4 5 6 Article retained or rejected 1 Abi-Antoun, M (2014). Met Met Failed Met Failed Failed This article will be Rejected as it only met 3/6 of the Criteria. It failed criteria 3, 5 and 6. The criteria failed were the most vital ones needed to be met in order for any article to be retained. 2 Ami, A, Islam S (2015) Met Met Failed Met Failed Met The article rejected. This is due to the fact that, the article doesn’t really help in providing any useful information to tackle the EBSE Question, even though it met 4/6 of the criteria. 3 Agarwal, H (2011) Met Met Failed Met Failed Met The Article Retained. This article met 4/6 of the criteria. This is due to the fact that, the article provides useful information about NetBeans IDE and shows some benefits of using the IDE. 4 Burnette, E (2007) Failed Failed Failed Failed Failed Met This article will be Rejected as it only met 1/6 of the Criteria. This article was rejected as it was just full of opinions and it didn’t mention any range of NetBeans or Eclipse features. 5 Burch, C (2009) Met Met Met Failed Failed Met The article retained. This is due to the fact that, the article mentions few key points, that could be useful in my report to back up, why an IDE with too many features is too distracting for any students or Novice programmers. 6 Balsiger, M (2010) Met Met Failed Met Failed Met The Article Retained. This article met 4/6 of the criteria. This is due to the fact that, the article provides depth information about Eclipse features that would be useful in the report as well as in the feature analysis section. 7 Boxtel, J (2010) Met Met Met Met Met Met This article is retained as it met 6/6 of the criteria. This article contained various useful points, which would be very helpful in my recommendation. 8 Chen, z (2005) Met Met Met Met Met Met Article retained as it met 6/6 of the criteria. This article is clearly stating more than one of the EBSE components. 9 Chatley, R (2005) Met Met Met Met Failed Met The Article Retained. This article met 5/6 of the criteria. This is due to the fact that, the article provides depth information about Eclipse features that would be useful for students as well as few bad points to why it’s not that great for Novices.
  • 25. CHARANJIT MAHEROO 14094229 25 Table 6 The Reject and Retain Articles Appraisal Criteria Number From Table 5 Article Identifier 1 2 3 4 5 6 Article retained or rejected 10 Cadenhead, R (2014) Met Met Failed Failed Failed Met The Article Rejected. This article met 3/6 of the criteria. 11 Carlisle, M (2010) Met Met Met Met Failed Met The Article Retained. This article met 5/6 of the criteria. 12 Das, P (2012) Met Met Failed Met Failed Met The Article Retained. This article met 4/6 of the criteria. This is due to the fact that, the article provides some useful information about NetBeans IDE. 13 DeReamer, S (2010) Met Met Met Met Failed Met The Article Retained. This article met 5/6 of the criteria. 14 Dillon, E (2009) Met Met Met Met Met Met The Article Retained. Met 6/6 of my Criteria. 15 Djasmir, M (2012) Met Met Failed Met Met Met The Article Retained. This article met 5/6 of the criteria. 16 Ertl, D (2009) Met Met Failed Met Failed Met The article Rejected. This article Met 4/6, however was rejected as it didn’t provide enough information in answering the EBSE question. 17 Eriksen, K (2013) Met Met Met Met Met Met Article retained as it met 6/6 of the criteria. This article is clearly stating more than one of the EBSE components. 18 Fenwick, J (2009) Met Met Met Met Failed Met The Article Retained. This article met 5/6 of the criteria.
  • 26. CHARANJIT MAHEROO 14094229 26 Table 6 The Reject and Retain Articles Appraisal Criteria Number From Table 5 Article Identifier 1 2 3 4 5 6 Article retained or rejected 19 Foltin, M (2011) Met Met Met Met Met Met The Article Retained. This article met 6/6 of the criteria. 20 Fleming, C (2013) Met Met Met Failed Failed Met The Article Failed. This article met 4/6 of the criteria, however it failed due to failing the most important criteria 4 and 5. 21 Furmankiewicz, J (2010) Met Met Met Met Met Met The Article Retained. 21 Galvan, C (2011) Met Met Met Met Failed Met The Article Retained. This article met 5/6 of the criteria. This is due to the fact that, the article provides some useful information about NetBeans IDE, and its advantages/disadvantages. 22 Geer, D (2005) Met Met Failed Met Met Met The Article Retained. This article met 5/6 of the criteria. 23 German, D (2011) Met Met Failed Met Met Met The Article Retained. Met 5/6 of my Criteria. 24 Gray, J (2009) Met Met Failed Met Met Met The Article Retained. This article met 5/6 of the criteria. 25 Grekova, E (2012) Met Met Failed Met Failed Failed The Article Rejected. This article met 3/6 of the criteria. 26 Golman, M (2010) Met Met Met Failed Failed Met This Article Rejected. 27 Hou, D (2009) Met Met Failed Met Met Met The Article Retained. This article met 5/6 of the criteria.
  • 27. CHARANJIT MAHEROO 14094229 27 Table 6 The Reject and Retain Articles Appraisal Criteria Number From Table 5 Article Identifier 1 2 3 4 5 6 Article retained or rejected 28 Husain, M (2013) Met Met Met Met Met Met The Article Retained. This article met 6/6 of the criteria. 29 JavaWorld (2008) Met Met Met Failed Failed Met The Article Rejected. 30 Jackson, J (2012) Met Met Met Met Failed Met The Article Retained. 31 Johnson, C (2012) Met Met Met Met Failed Met The Article Retained. This article met 5/6 of the criteria. This is due to the fact that, the article provides some useful information about NetBeans IDE, and its advantages/disadvantages. 32 Jurado, F (2013) Met Met Met Met Failed Met The Article Retained. This article met 5/6 of the criteria. 33 Knaub, M (2008) Met Met Met Met Met Met The Article Retained. Met 6/6 of my Criteria. 34 Kannangara, P (2013) Met Met Met Met Failed Met The Article Retained. This article met 5/6 of the criteria. 35 Lapolla, M (2011) Met Met Met Met Met Met The Article Retained. Article Met 6/6 of the criteria. 36 Lytinen, S (2011) Met Met Met Met Failed Met This Article Retained. 37 Major, L (2012) Met Met Met Failed Failed Failed The Article Rejected.
  • 28. CHARANJIT MAHEROO 14094229 28 Table 6 The Reject and Retain Articles Appraisal Criteria Number From Table 5 Article Identifier 1 2 3 4 5 6 Article retained or rejected 38 Maksimova, N (2013) Met Met Met Met Met Met The Article Retained. This article met 6/6 of the criteria. 39 Murgia, A (2009) Met Met Failed Met Failed Failed The Article Rejected. 40 Murphy, G.C (2006) Met Met Met Met Failed Met The Article Retained. This article met 5/6 of the criteria. 41 Mbogo, C (2013) Met Met Met Met Failed Met The Article Retained. This article met 5/6 of the criteria. 42 Moritz, R (2012) Met Met Met Failed Failed Met The Article Rejected. 43 Naveed, A (2012) Met Met Failed Met Failed Met The Article Failed. 44 Neve, P (2014) Met Met Met Failed Failed Met The Article Failed. 45 Pendergast, M (2005) Met Met Met Met Failed Met This Article Retained. 46 Pendergast, M (2006) Met Met Met Met Met Met The Article Retained.
  • 29. CHARANJIT MAHEROO 14094229 29 Table 6 The Reject and Retain Articles Appraisal Criteria Number From Table 5 Article Identifier 1 2 3 4 5 6 Article retained or rejected 47 Plastino, A (2014) Met Met Failed Met Met Met The Article Retained. This article met 5/6 of the criteria. 48 Pyshkin, E (2011) Met Met Failed Failed Failed Met The Article Rejected. Only met 3/6 of the criteria. 49 Piasecki, M (2011) Met Met Met Met Failed Met The Article Retained. This article met 5/6 of the criteria. 50 Pribela, L (2014) Met Met Met Failed Failed Met The Article Rejected. 51 Rigby, P (2005) Met Met Met Met Failed Met The Article Retained. 52 Ratchford, T (2011) Met Met Failed Met Failed Failed The Article Failed. 53 Reed, D (2010) Met Met Failed Failed Failed Met The Article Failed. 54 Roy, A (2012) Met Met Failed Failed Failed Met This Article Rejected. 55 Salviulo, F (2013) Met Met Met Met Met Met The Article Retained.
  • 30. CHARANJIT MAHEROO 14094229 30 Table 6 The Reject and Retain Articles Appraisal Criteria Number From Table 5 Article Identifier 1 2 3 4 5 6 Article retained or rejected 56 Schroter, A (2011) Met Met Failed Met Met Met The Article Retained. This article met 5/6 of the criteria. 57 Snellenburg, J (2012) Met Met Failed Met Failed Met The Article Rejected. 58 Storey, M (2003) Met Met Met Met Failed Met The Article Retained. This article met 5/6 of the criteria. 59 Soares, G (2011) Met Met Failed Met Failed Failed The Article Rejected. 60 The Server Side (2011) Met Met Failed Met Met Met The Article Retained. 61 Vihavainen, A (2014) Met Met Met Met Failed Met The Article Retained. 62 Wang, X (2011) Met Met Failed Met Met Met The Article Retained. 63 Witte, R (2011) Met Met Failed Met Failed Met This Article Rejected. 64 Watson, G.R (2006) Failed Met Failed Met Failed Met The Article Rejected.
  • 31. CHARANJIT MAHEROO 14094229 31 Table 6 The Reject and Retain Articles Appraisal Criteria Number From Table 5 Article Identifier 1 2 3 4 5 6 Article retained or rejected 65 Walters, B (2013) Met Met Failed Met Failed Failed The Article Rejected. 66 Wurthinger, T (2010) Met Met Failed Met Failed Failed The Article Rejected. 67 Xinogalos, S (2012) Met Met Failed Met Failed Met The Article Rejected. 68 Yalamanchili, D (2013) Met Met Failed Met Met Met The Article Retained. 69 Yefim, K (2010) Met Met Failed Met Failed Failed The Article Rejected. 70 Zhu, J (2013) Met Met Met Failed Failed Met The Article Rejected. 71 Unanimous (2009) Met Met Met Met Met Met The Article Retained. 72 Zhen, Hu (2011) Met Met Met Failed Failed Met The Article Rejected.
  • 32. CHARANJIT MAHEROO 14094229 32 3.7 Appraisal of Articles from Systematic Literature Review 1. Agarwal, H, Saxena, A, Karishna, V, Saritha, D (2011). FlexiSim: A User Friendly Environment for Network Simulations’. o The article mentions NetBeans and the positive input it has towards building their software. E.g. ‘NetBeans offered unparallel support for development and debugging in Java’. o Article also states: ‘NetBeans development environment was used for rapid and organised development’. o ‘NetBeans provides a simplified development of the Java Swing Desktop application’. 2. Burch, C (2009). ‘Jigsaw, a Programming Environment for Java in CS1’. Publisher o The article mentions students, and how students feel about professional IDE. E.g. ‘Many feel that the number of features in such professional environments is a distraction for students, and they choose an environment designed specifically for beginning students’. o The article also shows that, they introduce Eclipse in CS2, which introduces very little difficulty for students. 3. Balsiger, M (2010). ‘Representing Software Features in the Eclipse IDE’. Publisher Available at: https://uhvpn.herts.ac.uk/archive/projects/,DanaInfo=scg.unibe.ch+Bals10a- BOA.pdf o This article mainly talks about Eclipse and the usefulness it has as an IDE. It also represents the Eclipse Features and it says say’s that many Java developers work in Eclipse as well as, ‘creating a plug-in for the Eclipse IDE again makes sense to provide a solution for a big audience’. o The article also points out a bad side of Eclipse, ‘Eclipse IDE only provides static views of the source code, thus missing runtime information of a software system’. 4. Boxtel, J (2010). ‘An Evaluation of Interactive Curriculum Using the Java Instructional Gaming Engine’. Publisher Available at: https://uhvpn.herts.ac.uk/projects/thesis/,DanaInfo=jamesvanboxtel.com+thesis- 4-6-10.pdf o The article mentions students throughout the article. The author writes what students gain from an IDE like Eclipse as well as the drawbacks of using Eclipse IDE as a student. o The article also talks about Eclipse in depth, while evaluating features the IDE has and how it is useful to a student. o This article mentions few drawbacks Eclipse has in general. This is useful as it shows some kind of flaw the IDE has. ‘Major drawback is the students do not get to use the features of a popular IDE such as Eclipse’.
  • 33. CHARANJIT MAHEROO 14094229 33 5. Chen, Z, Marx, D (2005). 'Experience with Eclipse IDE in programming courses'. ACM DL Digital Library available at: http://dl.acm.org/citation.cfm?id=1089068 o The article meets the users of the technology component of the EBSE question. E.g. IDEs like Eclipse are for general programming development with rich and advanced features but may have steep learning curves. o The article talks about Eclipse in depth, while evaluating features the IDE has and why it was used. o It does evaluate Eclipse to other IDEs, where it compares features of Eclipse to a Ready to Program IDE. The table in the article shows how much students have to put effort into Eclipse and the learning curve is huge. 6. Chatley, R, Timbul, T (2005). 'KeyaEclipse: learning to program in eclipse'. ACM DL Digital Library available at: http://dl.acm.org/citation.cfm?id=1081746 o The Article basically talks about presenting a plug-in for Eclipse that enables users to program in Kenya using the Eclipse IDE. o The article mentions, how tough it is for students to learn a programming language at a University. o The article mainly talks about Eclipse and the features it offers. The article points out a few bad points of using Eclipse IDE. o A positive point from this article for example is: ‘IDE like Eclipse with the Java Development Tools installed provides a large amount of functionality.’ o However, ‘it can be difficult even for an experienced programme to learn how to use powerful tools effectively, even although they may be fluent in the programming language’. 7. Carlisle, M (2010). ‘Using You Tube to enhance Student Class Preparation in an Introductory Java Course’. Publisher Available at: http://dl.acm.org/citation.cfm?id=1734419 o This article talks about providing 21 short YouTube videos or an Introduction to Programming in Java course, and used NetBeans as there IDE for some of the videos. o The article talks about NetBeans, the article mentions that, ‘The video on making GUI in NetBeans is the most popular, and averages 500 views a month from users around the world.’ It also states, ‘Thirty Percent of these viewers are 13-17, and 55% are above 24 years old’.
  • 34. CHARANJIT MAHEROO 14094229 34 8. Das. P, Chakraborty, S, Dutta, P (2012). ‘Inception of Medi Java: an Open Source Library for Medical Science’. Publisher Available at: http://research.ijais.org/volume3/number2/ijais12-450473.pdf o This article only has vague points, however the points it has, can be very useful in my report. The article says, ‘NetBeans IDE is open source and it provides the service common to creating desktop applications’. 9. DeReamer, S (2010). ‘Teaching Computer Science: a Neumont Philosophy’. Publisher Available at: http://dl.acm.org/citation.cfm?id=1668880 o This article mentions what IDE students should use, ‘At Neumont, students in the introductory classes are taught to program in Java using BlueJ’. o However, this article is useful as it compares NetBeans to an IDE like BlueJ, that’s aimed towards a novice programmer. The article states that, ‘NetBeans IDE contrasted with a project using the BlueJ IDE, Notice the simplicity of the BlueJ screen compared to the NetBeans screen’. The article also shows an image comparing NetBeans screen to a BueJ screen, showing how complicated NetBeans looks towards a Novice programmer. 10. Dillon, E (2009). ‘Which environment is more suitable for novice programmers: editor/command line/console environment vs. integrated development environment’? Publisher available at: http://acumen.lib.ua.edu/content/u0015/0000001/0000103/u0015_0000001_000 0103.pdf o This article has range of positive points and few bad points of using professional Java IDEs like NetBeans or Eclipse. The article states that, ‘BlueJ and Dr. Java, pedagogical IDEs for Java are much small than professional Java IDEs such as Eclipse and NetBeans’. o However, it states that, ‘Professional IDEs on the other hand are rich in features, but their complexity may be too much for a novice programmer to handle’. o The article also lists down some of the benefits that Eclipse provides to a programmer. E.g. ‘Syntax highlighting for keywords, code auto- completion for variables; code assistant that gives method hints; package importing, wizards to eliminate manual repeated typing for classes, methods, constructors; Javadoc documents, etc.’ o There’s also a useful table of Factors that lead to Favourite IDE.
  • 35. CHARANJIT MAHEROO 14094229 35 11. Djasmir, M, Idris, S, Bakar, M, Zin, A (2012). ‘An Integrated Development Environment for Blocks Creation’. Publisher available at: http://docsdrive.com/pdfs/medwelljournals/ajit/2012/194-200.pdf o This article is about a Block Based Software Development which is a software development approach that supports end-user software development. o The article appraises Eclipse on why it’s such a big IDE. E.g. ‘Eclipse Platform is designed to serve as a common base for diverse IDE-based products, providing open APIs to facilitate this integration.’ It also has citations to back up his statements of Eclipse. E.g. ‘It is a universal IDE for anything and for nothing in particular’. There are many other points written in this article about Eclipse. o However, it also talks about NetBeans. E.g. ‘NetBeans is a platform to create professional desktop, enterprise, web and mobile applications’. o ‘NetBeans IDE provides an amazing development’. 12. Eriksen, K, (2013). ‘Implementation of Editors for Text-Based Domain-Specific Languages’. Publisher Available at: https://uhvpn.herts.ac.uk/wp- content/uploads/,DanaInfo=www.2k3.org+Kyrrehe_Master.pdf o This article talks about both IDEs NetBeans and Eclipse. The article had conducted a survey and 1 participant said, ‘I’ve tried NetBeans and I found it slow. I prefer Eclipse of the two’. o There was also a questionnaire which asked, what is your text-editor or IDE of choice. Eclipse was the more favourite IDE than NetBeans. 38% said Eclipse where else NetBeans got 10%. o There are many other useful findings that were displayed in graph form. o It also states few drawbacks from using Eclipse for new developers, ‘Eclipse with its complex interface can be intimidating for new developers’. 13. Fenwick, J, Norris, C, Barry, F, Rountree, J, Spicer, C, Cheek, S (2009). ‘Another Look at the Behaviours of Novice Programmers’. Publisher Available at: http://dl.acm.org/citation.cfm?id=1508973 o This paper reports on the progress of an NSF funded research project investigating the development practices of students in introductory programming courses. o This article only talks about Novices, and the mistakes they do when they code. Furthermore the way they make easy mistakes like spelling errors and silly coding errors. o However, they use Eclipse data logger to collect data to monitor various programming events during the student’s development session such as compilation.
  • 36. CHARANJIT MAHEROO 14094229 36 14. Foltin, M, Fodrek, P, Blaho, M, Murgas, J (2011). ‘Open Source Technologies in Education’. Publisher available at: http://www.wseas.us/e- library/conferences/2011/Corfu/EDUC/EDUC-22.pdf o This article looks at open source technologies in education and evaluates them. This article talks about Eclipse and NetBeans and Novice programmers. o In this article, Eclipse is mentioned however in a bad way. E.g. ‘We do not use this IDE because we use much less complicated and not so much powerful IDE NetBeans’. o It also states that, ‘NetBeans is more suitable than Eclipse during education process but not so used in the commercial practice.’ o For NetBeans, it mentions that NetBeans started as a student project and is very suitable for novice programmers for its simplicity of usage.’ 15. Galvan, C, Hernandez, I (2011). ‘Educational Software for Metrology Using Java Applets’. Publisher Available at: http://www.cenam.mx/dimensional/Archivos%20PDF/83502.pdf o This paper presents some java applets developed to facilitate learning of some basic dimensional metrology. o The article selects NetBeans IDE development tool for the project. It praises NetBeans, E.g. NetBeans is an open-source project dedicated to providing rock solid software development products and the businesses that rely on NetBeans as a basis for their products.’ o It also says, ‘This software has a lot of tools integrated in its environment, to integrate different platform for programming.’ o However, it does state a disadvantage like, ‘a big software recommended RAM memory is 2GB and 1GB of disk space. o It then gets praised on the fact that, NetBeans is constantly updates. 16. Geer, D (2005). ‘Eclipse Becomes the Dominant Java IDE’. Publisher available at: http://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=1463097 o This article talks about how Eclipse becomes the Dominant Java IDE. o It praises every good feature Eclipse has, for example: ‘Eclipse is a small, modular IDE with an elegant architecture that starts from a basic but powerful foundation’. It praises the IDE in many other ways like, ‘there is a huge number of interoperable third-party plug-ins, which has made Eclipse very popular’. o However, this article doesn’t just praise Eclipse, it also says how NetBeans is getting better. E.g. ‘With NetBeans, we now have a number of features that add value above and beyond what Eclipse might have’.
  • 37. CHARANJIT MAHEROO 14094229 37 17. German, D, Davies, Julius, D (2011). 'Apples vs. oranges? An explanation of the challenges of comparing the source code of two software systems'. ACM DL Digital Library available at: http://dl.acm.org/citation.cfm?id=1985483 o This article attempts to compare the source code of two Java IDE systems: NetBeans and Eclipse. o It mainly talks about VC repositories. E.g. ‘NetBeans is composed of almost 1,000 different top-level directories, while Eclipse contains just under 500. o The article also states that, ‘Eclipse Foundation is eager to engage its community, and entertain experimental code’. 18. Gray, J (2009). ‘Readers’ choice awards 2009’. ACM DL Digital Library available at: https://uhvpn.herts.ac.uk/,DanaInfo=dl.acm.org+citation.cfm?id=1554325 o This article is the Linux Journal Readers’ Choice Awards. o This article had an award for the Favourite Linux IDE, ‘Eclipse win commandingly and unsurprisingly with 42% of the votes cast’. NetBeans got 14% of the votes cast. This would be a good point to include in my report, which would show that the best IDE people chose was Eclipse. 19. Hou, D, Wang, Y (2009). ‘An Empirical Analysis of the Evolution of User- Visible Features in an Integrated Development Environment’. Publisher Available at: http://dl.acm.org/citation.cfm?id=1723044 o This article is an Empirical Analysis of the evolution of User-Visible features in an IDE. This article talks about Eclipse and NetBeans IDE. o The article states that, ‘For refactoring, Eclipse offers 23 refactoring’s, IDEA 33, and NetBeans 15. o It also mentions features that NetBeans don’t have like, ‘NetBeans does not support paste in package Explorer and that NetBeans does not support all the mark occurrences that Eclipse offers. o NetBeans according to this article does not show line number, however Eclipse shows the largest variety of information on the overview ruler. o It however, mentions more Eclipse features in this article like, ‘Eclipse also contains a family of features where the IDE infers what can be done to fix a problem or to transform selected code automatically’. 20. Husain, M (2013). ‘Teaching Programming Course Elective: A New Teaching and Learning Experience’. Publisher Available at: http://ieeexplore.ieee.org/xpls/abs_all.jsp?arnumber=6756349 o This article talks about how students should be taught as well as what software they should use and language. o This article talks about both Eclipse and NetBeans IDE. o The article states what NetBeans is, ‘the popular IDE for building Java applications, which provides a platform to edit, compile, link and debug all types of Java and web applications.
  • 38. CHARANJIT MAHEROO 14094229 38 o It also mentions, ‘the main advantage of using IDE is, it simplifies the problem of implementing, testing and maintaining very huge applications. o It mentions Eclipse as one other popular IDE ‘used by many of the Java and Webs developers’. They encourage their students to use both IDEs while developing their applications. 21. Furmankiewicz, J (2010). ‘Eclipse, NetBeans, and IntelliJ: Assessing the Survivors of the Java IDE Wars’. Publisher Available at: http://www.devx.com/Java/Article/34009/1954 o The article is based on a comparison of NetBeans, Eclipse and IntelliJ o The article suggests developers should use Eclipse o The article implies that the menu layout is very logical and easy to use o The NetBeans code completion is slower than other IDEs. o The article also states the issue of, Novice programmers being able to use the NetBeans IDE to develop applications. o The article finally states that, NetBeans doesn’t have the same size community as Eclipse. ‘NetBeans needs more resources behind it in order to become number one in the Java IDE space. 22. Jackson, J (2012). ‘Oracle Gears NetBeans for Building Better User Interfaces’. Publisher Available at: http://www.cio.com/article/697392/Oracle_Gears_Netbeans_for_Building_Bette r_User_Interfaces o The article is based on an analysis of NetBeans 7.1 which was released early this year o The article states that NetBeans uses the latest version of Java Swing GUI. This could seem to be quite a good thing, but because it is fairly new it is very hard to say what bugs could possibly be in this newly released version of the NetBeans IDE o NetBeans 7.1 contains a visual debugger that can be used to pinpoint problems in the code. This would assist a Novice programmer because once he/she has seen what an error looks like at least a few times then it makes error handling a lot easier once the developer has been adjusted to such an IDE o This article is just based on facts that may have been released by Oracle who has owned NetBeans since 2010, so the data is not very reliable o One advantage highlighted by this article was the fact that NetBeans has been integrated with an open source environment whereby multiple programmers can work on a single program together. Therefore this expands a user’s experience in comparison with well-established developers who can lend a “helping hand” to Novice Programmers
  • 39. CHARANJIT MAHEROO 14094229 39 23. Johnson, C (2012). ‘SpecCheck: Automated Generation of Tests for Interface Conformance’. Publisher Available at: https://uhvpn.herts.ac.uk/,DanaInfo=dl.acm.org+citation.cfm?id=2325343 o This article presents a tool and an experience report of its effectiveness in a large first-semester programming course. o This article main point for me is, ‘for students adding libraries to their class path are the only new activity, this can be done with just a few mouse-clicks in the Eclipse IDE’. o It also shows that, a test suite like SpecCheck can easily be added to a development environment like Eclipse or NetBeans so that Students can test their code’. 24. Jurado, F, Molina, A, Redondo, M, Ortega, M (2013). ‘Cole-Programming: Shaping Collaborative Learning Support in Eclipse’. Publisher Available at: http://ieeexplore.ieee.org/xpl/articleDetails.jsp?arnumber=6634224 o This article discusses how they have adapted an existing eclipse-based system for learning programming, so that now it has support for collaborative tasks. o The article states that, students should learn to, ‘design, develop, test and debug program with certain tools that are designed to be used by professional programmers, using IDEs such as NetBeans or Eclipse’. o The article also states that, ‘currently there are many IDEs, either freely available or commercial, among them Eclipse stands as one of the most widely used’. o The article goes further by saying, ‘in fact, the possibilities for customisation and expansion that Eclipse provides have not gone unnoticed by researchers in the area of learning Programming, and so we and find several solutions in this regard for Java Development’. The article then goes on to say that, ‘these solutions consist of plug-ins added to Eclipse in order to make it an environment suitable for learning Programming’. o The article also states that plug-ins like Kenya and ProPAT allows students to learn how to program Java code easily into Eclipse; It also allows the ‘teacher to propose a new programming assignment by specifying the assignment name and a template with the syntactical structure’. o It also evaluates how useful the Eclipse IDE is. E.g. ‘the use of Eclipse allows eLearning developers to focus on implementing purely educative functionality’. o It follows with another positive point, ‘the developed educational tools are integrated into similar environments students will find in their future careers’.
  • 40. CHARANJIT MAHEROO 14094229 40 25. Knaub, M (2008). ‘Eclipse as a Tool for Program Understanding’. Publisher Available at: http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.102.2579&rep=rep1& type=pdf o This article talks about the possibilities of Eclipse to support program understanding. o The article points out that, ‘Eclipse is presumed to be the dominant IDE for Java program development and is the major IDE used in research projects.’ This is the main reason why the article chose this IDE to evaluate whether, and to which degree, it supports program understanding by answering the questions a developer asks.’ o After conducting its research they found that, ‘Eclipse does support program understanding by providing tools that supply information to answer questions about the source-code’s static attributes’. 26. Kannangara, P (2013). ‘Teaching Tools and Techniques for Efficient Teaching and Learning of Computer Programming for Beginners using Java’. Publisher Available at: https://uhvpn.herts.ac.uk/cgi- bin/,DanaInfo=espace.library.curtin.edu.au+espace.pdf?file=/2013/08/02/file_1/ 192078 o This article talks about Java development environments, tools used in the industry with their pros and cons for each IDE. The main IDE I am interested in this article is Eclipse. o The article states that, ‘Eclipse is considered a professional program development environment ‘. However the article cites Chen and Marx which, ‘argue that most Java IDEs have been designed for pedagogical purposes and fail to expose students to real world environments’. o ‘One attractive feature of Eclipse is that it has a very simple editor and students do not need to spend more time with instructors to be familiar with the editor’. o ‘The advantage of using Eclipse is that its IDE environment provides professional industry level experience for the students’. o The article goes on by giving one good point of one of Eclipse features, which is the ‘wizards in Eclipse save time for the users as they generate codes for classes, methods, and constructors’. o The facility to generate Javadoc standard documents is also an attractive feature in Eclipse’.
  • 41. CHARANJIT MAHEROO 14094229 41 27. Lapolla, M, Risi, M, Scanniello G (2009). ‘An Empirical Evaluation of the Eclipse Framework’. Publisher Available at: http://eit09.unibg.it/pdfs/eit09.pdf#page=74 o This article presents a preliminary investigation, based on the combined use of two techniques: a questionnaire-based survey and an empirical analysis, to assess the effectiveness and efficacy of the Eclipse framework to support novice developers in the development and maintenance of Java source code. o This article also showed how NetBeans ‘was the IDE the subjects used within the procedural and object-oriented programming course’. It also states that, ‘industry is intended to replace the used IDE NetBeans in favour a new one called Eclipse’. o After conducting their surveys, the results showed: ‘the subjects did not found the Eclipse user interface pleasant’; ‘However, they stated that the Eclipse user interface effectively supported them in finding and properly using unknown functionality, even without using the help’. o The only problem they found, ‘concerned the import of an external package, this could be due to the fact that the steps to perform were different with respects to NetBeans’. o The conclusion of the article said, ‘Empirical analysis reveals that the effectiveness and efficacy of the Eclipse framework to support novice developers in the development and maintenance of Java source code’. 28. Lytinen, S, Railsback, S (2011). ‘Agent-Based Simulation Platforms: An Updates Review’. Publisher Available at: https://uhvpn.herts.ac.uk/slytinen/abm/,DanaInfo=condor.depaul.edu+Lytinen- Railsback-EMCSR_2011-12-15.pdf o This article contains few good points and bad points of Eclipse. o One good point is: ‘Eclipse is a sophisticated and very powerful’. o One bad point is: ‘for a novice there is a steep learning curve for learning Eclipse’. o Although the article ‘recommends Eclipse as an environment for developing framework and library platforms, the complexity of ReLogo in Eclipse stands in stark contrast to NetLogo. o ‘Working in Eclipse is far more complex and less efficient in many ways’.
  • 42. CHARANJIT MAHEROO 14094229 42 29. Maksimova, N (2013). ‘JAVA IDEs For Easily Learning and Understanding Object Oriented Programming’. Publisher Available at: http://eprints.ugd.edu.mk/8235/ o This article talks about some of the IDEs that contains a lot of visual elements and will be given a brief overview. o ‘Eclipse and NetBeans are environments that are used for professional development of complex Java programs’. o ‘Professional IDEs are not always adequate for learning basics of object- oriented programming because these environments usually are not object oriented also they can be very complex and focused in building graphical user interface’. 30. Murphy, G.C, Kersten, M, Findlater, L (2006).'How are java software developers using the Eclipse IDE'. IEEE Software available at: http://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=1657944 o This article contains useful statistics. For example the figures 3 shows the top 10 42 views shipped with the standard Eclipse distribution, based on the percentage of the 41 developers who made at least one selection in each view. Mainly it shows that, the Package Explorer and the console was viewed the most. o The table 2 shows the top 10 commands executed by the most developers, the findings show that, 84% used key bindings. o One great feature this article highlights about Eclipse is, ‘when viewing a file or a point of interest in a file, a developer can use a pop-up menu to remember the book-mark’. 31. Mbogo, C, Blake, E, Suleman, H (2013). ‘A Mobile Scaffolding Application to Support Novice Learners of Computer Programming’. Publisher Available at: http://dl.acm.org/citation.cfm?id=2517941 o This article has one point about eclipse which is, ‘Deuter IDE compared to Eclipse does not offer additional support that a novice learner of programming may need such as; hints for completing a program or error prompts that indicate basic errors at the point of constructing the program’.
  • 43. CHARANJIT MAHEROO 14094229 43 32. Pendergast, M (2005). ‘Teaching Java to IS Students: Top Ten Most Heinous Programming Errors’. Publisher Available at: http://aisel.aisnet.org/cgi/viewcontent.cgi?article=1801&context=amcis2005 o ‘Eclipse and NetBeans and other open source IDE, the main drawback to these environments is their cryptic compiler error messages and clumsy editors’. o ‘IDE’s such as NetBeans that identify syntax errors as the students type the code can contribute to the program, for example when a student types in the first line of a for statement, NetBeans will mark it as an error until the body of the for loop is added’. o The article also states that, ‘the language should have an easy-to-use development environment, including a debugger’. 33. Pendergast, M (2006). 'Teaching introductory programming to IS Students: java problems and pitfalls'. Journal of Information Technology Education: Research, 5(1), 491-515 available at: http://www.editlib.org/p/111559/ o This article states that, ‘Combining the use of a modern interactive development environment such as NetBeans, with active learning and a breadth-first approach is found to increase student satisfaction, increase success rates, and lower dropout frequencies’. o The article states why the writer has chosen NetBeans as an IDE to use to teach programming. The reasons are:  ‘It is free to students, as an open-source program it does not promote one company over another’  ‘It has features that ease learning, namely the visual identification of syntax errors’  ‘It has an integrated debugger’  ‘It has an integrated form editor, useful for visual programming. The use of a visual editor for creating interfaces allows beginning students to create professional looking interfaces and reduces the amount of memorisation of library classes’.  ‘It pops up a hint window showing a list of possible selections and a definition of each’.
  • 44. CHARANJIT MAHEROO 14094229 44 34. Plastino, A (2014). ‘What Should I Code Now’? Publisher Available At: http://www.jucs.org/jucs_20_5/what_should_i_code/jucs_20_05_0797_0821_sil va.pdf o ‘Code completion, also known as content assist is widely used on IDEs such as Eclipse and NetBeans’. o ‘Eclipse has an active and expressive ecosystem and Java is one of the key programming languages nowadays’. 35. Piasecki, M (2011). ‘Application Programming- Mobiles Computing’. Publisher Available at: http://www.dbc.wroc.pl/Content/23914/piasecki_application.pdf o This article has decided to use NetBeans ‘as a professional and very comfortable J2ME programming environment’. o ‘NetBeans IDE supports several methods of deployment’, transferring the application developed in the IDE to a mobile device. 36. Rigby, P, Thompson, S (2005). ‘Study of Novice Programmers Using Eclipse and Gild’. Publisher Available at: http://dl.acm.org/citation.cfm?id=1117718 o ‘Subjects had difficulty in Eclipse with locating the terminate button’. o In their survey, ‘on average subjects experienced a moderate level of frustration using Eclipse’. o ‘If a novice is frustrated by the IDE then learning the concepts taught in class will be more difficult’. o The survey also showed that, ‘subjects were more intimidated by Eclipse when using tools’. o From the qualitative analysis it was noted that Eclipse’s debugger and run configurations were particular confusing for subjects’. o Overall, it was recommended that, ‘developers of Eclipse consider the needs of Novice users and programmers’. 37. Salviulo, F, Scanniello, G (2013). ‘Comprehending and Maintaining Object- Oriented Source Code: an Ethnographically-Informed Study’. Publisher available at: http://www2.unibas.it/gscanniello/SCCMEthno/Comprehending_and_Maintaini ng_Object-Oriented_Source_Code__an_Ethnographically- informed_Study/Study_Information_files/ICSM_2013_Ethn.pdf o ‘In the object oriented programming courses, the students used NetBeans as the IDE’. o ‘The professional developers better used the functionalities of the used IDE to browse source code and debug it’. o However, article survey showed that, ‘students were less familiar with these functionalities’. o The results also show that, ‘professional developers are more familiar with the features of NetBeans’. ‘In particular, the use of the tools for searching and looking at source code is more fluid for professional developers’.
  • 45. CHARANJIT MAHEROO 14094229 45 38. Schroter, A (2011). 'MSR challenge 2011: Eclipse, Netbeans, Firefox, and Chrome'. ACM DL Digital Library available at: http://dl.acm.org/citation.cfm?id=1985478 o The article states that, Eclipse and NetBeans ‘both enjoy popularity among developers for the vast number of tools it provides and its extensibility through third party plug-ins’. o ‘The two studies investigating the issue tracker repositories of Eclipse and NetBeans found that Eclipse outperformed NetBeans with respect to comment quality and stability on Windows’. o They chose NetBeans and Eclipse for several reasons:  These ‘IDEs have been the subject of many studies in the past’  ‘Eclipse and NetBeans have long reached a maturity which provides us with a rich development history’ 39. Storey, M, Damian, D, Michaud, J, Myers, D, Mindel, M, German, D, Sanseverino, M, Hargreaves, E (2003). 'Improving the usability of Eclipse for novice programmers'. ACM DL Digital Library available at: http://dl.acm.org/citation.cfm?id=965668 o This article describes how they are designing a set of plug-ins to improve teaching and learning of Java programming. o ‘The Eclipse Java Development tool suite is rapidly becoming the IDE of choice for many programmers’. o ‘Many instructors are also starting to use Eclipse as a tool to help with teaching in the classroom and are recommending Eclipse to their Students’. o The article also states that, ‘Eclipse’s sophisticated features support key teachable moments and allow instructors and students to more easily demonstrate the Java language and object-oriented concepts’. o ‘Eclipse has many powerful features that can assist both expert and novice programmers ad Java teachers’. o The article also states, ‘firstly the Eclipse user interface may be over complex and that this complexity could pose a barrier to learning’. 40. The server side (2012) ‘what’s the big IDE? Comparing Eclipse and NetBeans’. Publisher Available at: http://www.theserverside.com/feature/Whats-the-Big- IDE-Comparing-Eclipse-vs-NetBeans [Accessed: 20 February, 2015]. o This article compares Eclipse and NetBeans. The article shows statistical data such as; TheServerSide.com Readership Survey 2011 which shows that, ‘Respondents pegged NetBeans at a puny 8% usage, where else Eclipse captured 61% of the market among Java developers’. o Ease of use: ‘According to quite a few developers, NetBeans is easier to navigate right out of the box as long as you don’t try to use all the bells and whistles at first’. ‘It could be ideal for beginner Java developers who just need the basics to start with’.
  • 46. CHARANJIT MAHEROO 14094229 46 o ‘Eclipse has a huge array of Plug-ins delivering capabilities that aren’t necessarily available with NetBeans.’ 41. Vihavainen, A, Helminen, J, Ihantola, P (2014). ‘How Novices tackle their First Lines of Code in an IDE: analysis of Programming Session Traces’. Publisher Available at: http://dl.acm.org/citation.cfm?id=2674692 o In this article, the study seeks to understand how novice programmers tackle their first lines of code when programming is started directly using an IDE. o This article mainly talks about NetBeans as its IDE of choice. o ‘NetBeans suggests completions for classes and objects’. o ‘NetBeans offers a shorthand sout that, when typed and followed by pressing tab, is automatically replaced with System.out.println();’ o ‘The NetBeans IDE compiles code continuously and also provides constant and immediate feedback when such a compilation fails, learners are therefore more likely to instantly fix an error that was only just introduced in the code instead of noticing this later when they invoke a compile themselves’. 42. Unanimous, (2011). ‘NetBeans vs Eclipse vs JDeveloper’. Publisher Available at: http://www.indicthreads.com/1513/java-ides-netbeans-vs-eclipse-vs- jdeveloper o The article is based on a comparison of NetBeans and Eclipse. o The article is based on personal experience o The article states that NetBeans provides built-in support for most of its features. This would address Novice Programmers’ issues with initially learning how to use a specific IDE o NetBeans comes with sample applications that a Novice Programmer for say could use to learn how to do basic Java programming before commencing on development. o The article suggests that developers that are using Java to develop applications for the first time should use NetBeans. 43. Wang, X, Baik, E, Devanbu, P (2011). ‘Operating System Compatibility analysis of Eclipse and NetBeans based on Bug Data’. Publisher Available at: http://dl.acm.org/citation.cfm?id=1985479 o ‘Eclipse and NetBeans are two top of the line IDEs for Java Development’. o ‘Both of them provide support for a wide variety of development tasks and have a large user base’. o This article provides an analysis and comparison for the compatibility and stability of Eclipse and NetBeans on the three most commonly use operating systems. o ‘To developers, on average, bugs on NetBeans are more complex to fix compared with bugs on Eclipse’.
  • 47. CHARANJIT MAHEROO 14094229 47 o ‘Eclipse appears to be a better platform, it also suggests that users of Eclipse on Mac OS have a better experience than users on other platforms in terms of system stability’. However, ‘Eclipse on Mac appears to be slower than other platforms, thus offering a worse user experience’. 44. Yalamanchili, D (2013). ‘AZ-Nuggets: An IDE for Programming by Concept’. Publisher Available at: https://uhvpn.herts.ac.uk/bitstream/handle/10222/35438/,DanaInfo=Dalspace.lib rary.dal.ca+Yalamanchili-Lakshmi%20Deepak-MCSc-CSCI-July- 2013.pdf?sequence=1 o ‘Eclipse is a multi-language IDE and an integration platform that serves the domain of software tools’. o ‘NetBeans offer assistive features such as syntax highlighting, auto- formatting, and project outlining, refactoring and code completion among many others’. Next Chapters Continuing from Chapter three, I will create a Feature Analysis in chapter four for the two IDEs, explaining in depth of the features they have. In chapter five, I will conduct an experiment which will consist of a survey and will appraise the articles from the SLR. Chapter six will involve me documenting my practical experience which I will be a novice programmer creating a small Java applications on both IDEs. Chapter seven is where the SLR, Personal experience and practical experience will be combined in order to produce a conclusion with a recommendation. Chapter eight is the conclusion and the overall experience of this project. I will explain how the work carried out in the project will relate to both industry and academia fields.
  • 48. CHARANJIT MAHEROO 14094229 48 Chapter 4: Feature Analysis In this chapter, I will be comparing the features of the two IDEs. The comparison will only have features that a Novice Programmer would use to develop a small Java Application. The features I will be comparing will be features I am drawing out of my systematic literature review exercise so both of them can be compared against each other. To develop a small Java application for novice users, I have summarised the main features to support novice users which would be necessary for them to use which has been drawn out of my SLR. A Feature Analysis is a great method of comparing NetBeans and Eclipse directly, which would give me a clear picture on where both IDE stand for each feature furthermore this will also show me the strengths and weaknesses of both IDEs. I will be conducting a little survey for the Feature Analysis. This is designed to be an effective way to get an opinion based overview of what features are most likely needed to be supported for novice programmers. The first table will contain 40 features typically found in an IDE, and I will ask 20 class mates to rank the features on, how relevant the features are. The exercise would allow my target audience to score the features against a rating of 1 to 5. Furthermore, the second table will contain the top 15 features that were ranked most relevant out of the 40. This will allow me to have more accurate data towards which IDE has better and relevant features to a Novice Programmer developing a small Java Application. This would then allow me to analyse the score by creating bar graph and give an observation through this. The feature analysis survey in table 1 have been derived from the retained articles as well as personal experience of both tools.
  • 50. CHARANJIT MAHEROO 14094229 50 The features in table 2 below are all of the results of conducting the survey which is in the table above. The highlighted yellow cells are the top 15 results. Table 2
  • 51. CHARANJIT MAHEROO 14094229 51 Graph 1 The features in the table 3 are the top 15 features found from conducting the survey in table 2 Top 15 Features (Table 3) Table 4.2 Features Average Total Compiler 5.0 99 GUI Builder 4.6 91 Syntax Highlighting 4.5 89 Source Code Editor 4.5 89 Code Assistance 4.4 88 Code Completion 4.1 81 Split Screen 4.0 79 Form Editor 3.8 76 Local History 3.8 76 Code Formatting 3.7 73 Visual Debugger 3.6 72 Plug-Ins 3.6 71 Overview Ruler Line Number 3.5 70 Menu Layout 3.5 70 Book-Mark Code 3.4 68 0 20 40 60 80 100 120 Which Feature is Relevant
  • 52. CHARANJIT MAHEROO 14094229 52 Graph 2 After conducting the top 40 Feature Analysis Survey then filtering it down to the top 15 features, I now will find if Eclipse and NetBeans have these features or not. This will allow me to find out, the IDE best suited for Novice Programmers. As you can see the compiler, GUI builder, syntax highlighting, source code editor and code assistance is the top 5 features as you can see in graph above. The table 4 below is the Feature Analysis of both IDEs Eclipse & NetBeans. Table 4 Table 4.2 Features NetBeans IDE Eclipse IDE Compiler Yes Yes GUI Builder Yes No – Needs a Plug-In Syntax Highlighting Yes Yes Source Code Editor Yes Yes Code Assistance Yes Yes Code Completion Yes Yes Split Screen Yes Yes Form Editor Yes No Local History Yes Yes Code Formatting Yes Yes Visual Debugger Yes Yes Plug-Ins Yes Yes Overview Ruler Line Number No Yes Menu Layout Yes Yes 0 20 40 60 80 100 120 Top 15 Features Novice Programmers see as Relevant
  • 53. CHARANJIT MAHEROO 14094229 53 Next Chapters In chapter five, I will conduct an experiment which will consist of a survey and will appraise the articles from the SLR. Chapter six will involve me documenting my practical experience which I will be a novice programmer creating a small Java applications on both IDEs. Chapter seven is where the SLR, Personal experience and practical experience will be combined in order to produce a conclusion with a recommendation. Chapter eight is the conclusion and the overall experience of this project. I will explain how the work carried out in the project will relate to both industry and academia fields.
  • 54. CHARANJIT MAHEROO 14094229 54 Chapter 5: Survey Study 5.1 Creating Questionnaire Using the systematic literature review and feature analysis conducted, a questionnaire has been produced to obtain opinions based facts from novice programmers who use NetBeans or Eclipse. The type of students which I will aim the questionnaire at is students who are in the third year, second year and those students have done a placement. I will also aim the questionnaire at students who have knowledge within Java development. The questionnaire below will be handed out to the participants.
  • 55. CHARANJIT MAHEROO 14094229 55 5.2 Record Results I received 47 responses, thus I have obtained 47 questionnaires which I have placed in the appendix 10.4. The questionnaire consists of 20 questions where the participant would give rating from 1-5 and two multiple choice answers. The following is table of results which I have accumulated from the survey results I have received. I will create graphs later and analyse the data accordingly.
  • 56. CHARANJIT MAHEROO 14094229 56 Q1: At University you use which IDE: Eclipse or NetBeans or Other This question was a general question to start the survey off to find out what IDE the participants used at University. 36% of the participants said that Eclipse was the IDE they use for University. However, 62% of the participants said that they use NetBeans at University. This isn’t surprising as the University third Year Programming Module recommends NetBeans to the students, therefore the University portrays NetBeans as the ideal IDE to use. This question mainly backed up my point, which was that programming students would be using the IDE that I university recommended. For example article 42 Unanimous, (2011) states that, ‘developers that are using Java to develop applications for the first time should use NetBeans’. So as Novice Programmers for the first time try to create an application, they should use NetBeans, as the graphs above shows that NetBeans is the most used IDE at University of Hertfordshire Computer Science. 36 62 2 0 10 20 30 40 50 60 70 Eclipse NetBeans Other: At University you use which IDE
  • 57. CHARANJIT MAHEROO 14094229 57 Q2: NetBeans is better than Eclipse in building small Java Applications Due to the last question, I had to ask a question that would compare NetBeans directly towards Eclipse. The result which was concluded from the survey was that 42% of the participants choose ‘Disagree’ rating. This was strange, as the first survey question showed that, NetBeans was the IDE Novice Programmers used. Only 23% actually agreed with the statement and only 9% strongly agreed. This graph showed me that, 45% participant saw Eclipse better than NetBeans at building small Java Applications. For example, article 12 [Eriksen, K (2013)] states that, ‘A survey conducted showed that Eclipse was the more favourite IDE than NetBeans where 38% said Eclipse where else 10% said NetBeans’. The University recommends NetBeans, students still use the IDE even though Eclipse is better at building small Java Applications. This may be due to many factors, as one participant in the article 12 [Eriksen, K (2013)] said that, ‘I’ve tried NetBeans and I found it slow, I prefer Eclipse’. Another article [Furmankiewicz, J (2010)] states that, ‘The NetBeans code completion is slower than other IDEs’. From the results above, I assume that students maybe using NetBeans at the moment on current projects or assignments, but they see that Eclipse may do a better job. 6 45 17 23 9 0 5 10 15 20 25 30 35 40 45 50 1 2 3 4 5 NetBeans is better than Eclipse in building small Java Applications
  • 58. CHARANJIT MAHEROO 14094229 58 Q3: NetBeans IDE is the best Suited IDE for Novice Programmers Following on from the last question, I wanted to find out how many actually agree with the statement above. The previous graph showed that, NetBeans wasn’t that popular when it came down to creating small Java Applications. This question was aimed to show me if NetBeans IDE is suited for Novice Programmers generally. The results showed me that, 53% of the participants Disagreed with the question above. However around 15%-13% agreed or strongly agreed that NetBeans is best suited for Novices. So overall, this graph shows a negative result for NetBeans. 6 53 13 15 13 0 10 20 30 40 50 60 1 2 3 4 5 NetBeans IDE is the best suited IDE for Novice Programmers 2 13 19 57 9 0 10 20 30 40 50 60 70 1 2 3 4 5 Eclipse IDE is the best suited IDE for Novice Programmers
  • 59. CHARANJIT MAHEROO 14094229 59 Q4: Eclipse IDE is the best Suited IDE for Novice Programmers Due to me asking about NetBeans, I had to follow up a question in regards to Eclipse to find out both opinions. The result which was conducted from the survey was that 57% of the participants choose ‘agree’ rating. This may be due to the fact that many users that use NetBeans at the moment, may prefer Eclipse. So far, the graph shows that Eclipse is the IDE of choice for Novice Programmers, but at the moment they are using NetBeans on their current projects or assignments. Q5: Eclipse and NetBeans the two top of the line IDEs for Java Development. I wanted to ask this question, as I wanted to see how many of my participants saw Eclipse and NetBeans as the top IDE of them, and if they thought other IDEs were better. Overall, 36% of the participants chose ‘Agree’ and 40% of the participants chose ‘Strongly Agree’. This therefore backs up my point, in the reason why I chose to compare Eclipse against NetBeans was due to those two IDEs being the best in the market at the moment. Many articles like article 24 [Jurado, F(2013)] state that, ‘design, develop, test and debug program with certain tools that are designed to be used by professional programmers, using IDEs such as NetBeans or Eclipse’. It only states those two IDEs, therefore this survey backs up the point made by the article. Article 20 [Husain, M(2013)] also states that, ‘students encouraged to use both IDEs while developing their applications’. 4 6 13 36 40 0 5 10 15 20 25 30 35 40 45 1 2 3 4 5 Eclipse and NetBeans are the two top of the line IDEs for Java Development