developers we knew. The invitation asks
respondents to forward the survey to other
colleagues eligible to participate in the survey. We
keep the survey open for two weeks. The survey
allows only one answer per computer.
2.6 Threats to Validity
One possible threat to external validity of the results
of the survey is that responders are self-selecting
volunteers. However, we feel this is necessary in
order to assess the opinions of a diverse set of
developers given minimal resources. Another threat
to the validity of the results is the large proportion of
respondents from the United States (Figure 3); this
may have introduced a bias towards the opinions of
software developers in the United States. However,
statistical result show no significant impact of the
geographic location of the respondents to the level
of usage or level of importance of a feature.
3 TEN CORE ITS FEATURES
A group of four individuals (the first two authors
plus two developers) analyzed several popular ITSs,
looking for common and important features. Using
the product websites and documentation, we extract
ten core features that are self-contained, useful, and
independent to specific ITS. More precisely, all
features are distinct and atomic (i.e., it is not
possible to have only part of the feature
implemented in a tool), commonly found in ITS
tools (and hence somehow useful), and not described
according to a specific ITS implementation (i.e.,
there may be minor variations in implementation of
the feature across ITS). We describe each extracted
feature in the following subsections.
3.1 Advanced Search
The ITS search functionality provides filters for each
of the following criteria: all issues, type of issue,
value of a specific issue (e.g., “priority > 1, date <
1/1/1999, author = Megan”), any combination of the
above.
3.2 Graphical Reporting
The ITS provides graphical reports of project data
such as for instance the trend of open vs. closed
tickets.
3.3 Flexible Issue Deadlines
The ITS, when creating an issue, allows its deadline
to be set to a date (e.g., 4/10/15), or to a release
deadline (e.g., "Milestone 3", "v3.0.1", ...).
3.4 Flexible Notifications
The ITS allows the user to configure alerts (e.g.,
email) by choosing among the following triggers:
issue creation, modification of a specific issue
attribute (e.g., closing an issue, changing priority,
etc.).
3.5 Version Control Integration
The ITS allows the user to obtain knowledge by
merging information coming from both the ITS and
the version control system.
3.6 Grouping Issues
The ITS allows panels showing issues filtered by: all
issue, type of issue, value of a specific issue attribute
(e.g., priority > 1, date before 1/1/1999, author =
Markus), any combination of the above.
3.7 External Issue Creation
The ITS allows the user to create an issue via an
external source such as by emailing a specific
address with a specific subject.
3.8 Workflow Automation
The ITS allows the automation of a custom
workflow. For instance, the values of issue attributes
are updated automatically when values of other issue
attributes change.
3.9 Workflow Enforcement
The ITS allows the enforcement of a custom
workflow. For instance, values of issue attributes
can only be modified or assigned if certain
preconditions based on values of other issue
attributes are satisfied.
3.10 SQL-like Search
The ITS allows the user to query issues by using
SQL-like syntax.