Category | Characteristic | Conclusion |
---|---|---|
limitations | Development is Driven and Limited by Hardware | No-evidence |
of | Use of Old Programming Languages and Technologies | Doubt |
computer | Intermingling of Domain Logic and Implementation Details | Endorse |
hardware | Conflicting Software Quality Requirements | No-evidence |
nature of | Requirements are Not Known up Front | No-evidence |
scientific | Verification and Validation are Difficult and Strictly Scientific | No-evidence/Endorse |
challenge | Overly Formal Software Processes Restrict Research | No-evidence |
Different Terminology | Endorse | |
limitations | Creating a Shared Understanding of a Code is Difficult | Doubt |
of | Little Code Reuse | Doubt |
cultural | Scientific Software in Itself has No Value But Still It is Long-Lived | Doubt |
differences | Few Scientists are Trained in Software Engineering | Doubt |
Disregard of Most Modern Software Engineering Methods | Doubt |
a) Labelled Commits:
- Retrieve the commits data by running
python commits/commits_data.py
, file can be adjusted to subset a sample for manual labelling. - The guideline for the labelling is included here.
b) Github Attributes of the projects:
- Update the
access_token
column indata/project_list_[cs/se]
with your Github token. - Retrieve the cs or se projects attributes by running
python attributes/mine_attributes.py [cs/se]
. - Plot the box plots comparison graph of SE and CS by
python attributes/plot_attributes.py
Approaches to reproduce results for each beliefs in section III:
A.1) Manual checking for the language usage and the Travis CI of all projects
A.2) Figure 3 can be seen in this spreadsheet and Figure 2 is the result of manual Labels of these commits. Table IV results are drawn from running this folder
B.1) Table 6 can be seen in this spreadsheet and Manual Labels of the commits from (A.2)
C.2) Based on the heroes paper code and social graphs interactions can be reproduced from RQ1 and RQ2 in this repo
C.3) Code reuse metrics are generated from this folder
C.4) Taken from Github attributes
C.5) Combination of A.1 and C.2-4