Article Preview
TopIntroduction
Bug reporting, bug tracking, and bug handling are important software management and maintenance activities in a software development process (Linstead & Baldi, 2009; Bettenburg et al., 2008). These activities are related to both quality assurance and project planning. Trackable bug reports not only contain the bug data, but also contain information about how the bug is handled. What’s more, these trackable bug reports might also contain other important information regarding software development process and software project management. Therefore, it is vital for closed-source software projects to document all the reported bugs and make them trackable in order to understand and improve software process. However, because of the closed-source property, software bug information of for-profit companies is only available for internal use. It is hard for an external researcher to access those useful data.
For open-source software products, the information and knowledge about software development and maintenance are usually not explicitly documented. Instead, software process and software project management information could be hidden in product artifacts, such as bug reports, change logs, release notes, and the supporting bug tracking systems (Wang et al., 2012; Schugerl et al., 2008). Accordingly, to retrieve that hidden knowledge, data mining techniques have been used to extract useful information from software repositories, such as bug reports. Statistical analysis is then performed to analyze the data. This area of research is called mining software bug reports. Significant amount of work has been reported in this area (Maalej & Nabil, 2015; Moran et al., 2016a; Moran et al., 2016b; Moran & Poshyvanyk, 2016; Chung et al. 2017; Hindle et al., 2016).
In spite of the intensive research carried out in the past years, bug reports are still considered valuable resource to mine various useful information. In this paper, bug reports are used to understand open-source software project management and development process. Because open-source software project is loosely managed, there are no formal documentations regarding requirement specification, design, implementation, testing, and maintenance. It is hard for researchers to obtain ready-to-use data and documents to study open-source development process. Here, ready-to-use data means well documented data for specific purposes. Therefore, bug reports became a common data source for researchers to study open-source development.
Bug reports and bug reporting systems are considered common tools for open-source projects, such as Linux, Firefox, and Eclipse. Regular users could file bug reports through the project’s bug tracking system. This is part of the common practice of user-involved open-source development. Because everyone can file a bug report to an open-source project, the data could be huge and might contain irrelevant information. Therefore, bug reports must be mined and data must be processed and analyzed in order to retrieve useful information.
In this paper, we use bug reports to study open-source software project management and development process. Through mining bug reports, we would like to answer the following questions, which we believe can help us better understand Android development and management process.