ISSN 1000-1239 CN 11-1777/TP

    2020 Development of Service-Oriented Collective Intelligent and Ecological Software

    Default Latest Most Read
    Please wait a minute...
    For Selected: Toggle Thumbnails
    Journal of Computer Research and Development    2020, 57 (3): 459-460.   DOI: 10.7544/issn1000-1239.2020.qy0301
    Abstract1208)   HTML380)    PDF (206KB)(544)       Save
    Related Articles | Metrics
    An Automatic Method Using Hybrid Neural Networks and Attention Mechanism for Software Bug Triaging
    Liu Ye, Huang Jinxiao, Ma Yutao
    Journal of Computer Research and Development    2020, 57 (3): 461-473.   DOI: 10.7544/issn1000-1239.2020.20190606
    Abstract1117)   HTML30)    PDF (831KB)(580)       Save
    Software defect repair (also known as software bug fixing) is a necessary part of software quality assurance. In the collective-intelligence-based software development environment on the Internet, improving the efficiency and effectiveness of software bug triaging can help raise bug fixing rates and reduce maintenance costs. Nowadays, automatic bug triaging approaches based on machine learning have become mainstream, but they also have some specific problems, such as hand-crafted features and an insufficient ability to represent texts. Considering successful applications of deep learning in the field of natural language processing, researchers have recently tried to introduce deep learning into the field of automatic bug triaging, to improve the performance of predicting the right bug fixer significantly. However, different types of neural networks have their limitations. To address the problems mentioned above, in this study, we regard bug triaging as a text classification problem and propose an automatic bug triaging approach based on hybrid neural networks and an attention mechanism, called Atten-CRNN. Because Atten-CRNN combines the advantages of a convolutional neural network, a recurrent neural network, and an attention mechanism, it can capture essential text features and sequence features of bug reports more effectively and then provide more accurate fixer recommendation services for software development and maintenance. An empirical study was conducted on two popular large-scale open-source software projects, namely Eclipse and Mozilla. The experimental results obtained from over 200 000 bug reports indicate that Atten-CRNN achieves higher prediction accuracy than convolutional neural networks and recurrent neural networks, regardless of the attention mechanism.
    Related Articles | Metrics
    Status Prediction for Questions Post on Technical Forums
    Shen Mingzhu, Liu Hui
    Journal of Computer Research and Development    2020, 57 (3): 474-486.   DOI: 10.7544/issn1000-1239.2020.20190625
    Abstract850)   HTML12)    PDF (1858KB)(230)       Save
    When encountered by technical problems, developers often post questions on technical forums such as Stack Overflow, and wait for satisfying answers. QA forums are also an important manifestation of Internet-based group intelligence software development. However, the questions posted in the forums may not get satisfying answers. Therefore, asking problems and passively waiting for solution is not always the best strategy. To this end, we propose a deep neural network based approach to automatically predict whether the questions can obtain satisfying answers. Knowing whether the questions can be effectively answered in advance, developers figure out the best strategy for their technical problems in advance. This approach not only takes full usage of the text information of the problems itself, but also exploits the relevant content of the inquirer of the questions. With the latest deep learning technologies, it fully exploits the intrinsic relationship between the input features and the questions’ solving status. Experimental results on the dataset provided by Stack Overflow suggest that the proposed approach can accurately predict the solving status of the questions. The precision of predicting well-answered problems is 58.87%, and the recall is 46.68% (in contrast, random guess results in a precision of 38.77%, and recall of 35.26%), better than KNN and FastText.
    Related Articles | Metrics
    Collective Intelligence Based Software Engineering
    Xu Lixin, Wu Huayao
    Journal of Computer Research and Development    2020, 57 (3): 487-512.   DOI: 10.7544/issn1000-1239.2020.20190626
    Abstract1579)   HTML58)    PDF (1354KB)(1481)       Save
    Collective intelligence based software engineering (CISE) aims to solve software engineering problems by techniques that exploit collective intelligence, which includes machine collective intelligence, human collective intelligence, and their combinations. CISE provides a new perspective for solving complex software engineering problems, and has become an important part of modern software development. This paper presents a survey of CISE, which systematically reviews the applications of different collective intelligence inspired techniques on solving problems of software requirements analysis, design, coding, testing and maintenance. Future research directions and challenges in the CISE area are also discussed. The goal of this study is to establish a uniform framework of CISE and provide references for the interactions and transformations between collective intelligence techniques of different levels.
    Related Articles | Metrics
    The Evolution of Software Ecosystem in GitHub
    Qi Qing, Cao Jian, Liu Yancen
    Journal of Computer Research and Development    2020, 57 (3): 513-524.   DOI: 10.7544/issn1000-1239.2020.20190615
    Abstract1478)   HTML49)    PDF (3585KB)(507)       Save
    Most software projects evolve interdependently, hence the analysis of software ecosystem has attracted the interest of many researchers. In addition to analyzing some well-known software ecosystems, the software ecosystem in GitHub, together with their features, have also been investigated by researchers in recent years. Unfortunately, the fundamental process of the evolution of software ecosystem in GitHub has not received wide attention nor have the reasons why evolution occurs. In this paper, we conduct an in-depth study on software ecosystem evolution in GitHub. Firstly, we detect the evolving ecosystem in GitHub based on a dynamic community detection method. Then, different evolution events in GitHub are identified and compared. Specifically, we draw a graph to visually show the evolutionary processes of software ecosystem that survived from 2015 to 2018. To understand why an ecosystem survives or dissolves, we perform multiple linear regression analysis and find the important correlating factors of ecosystem survival. Furthermore, we present three case studies to show the typical evolution behaviors of software ecosystem in GitHub.
    Related Articles | Metrics
    Research Progress on the Development of Microservices
    Wu Huayao, Deng Wenjun
    Journal of Computer Research and Development    2020, 57 (3): 525-541.   DOI: 10.7544/issn1000-1239.2020.20190624
    Abstract1404)   HTML87)    PDF (889KB)(1253)       Save
    Microservices are the latest, and probably the most popular, technology to realize the well-known service-oriented architecture (SOA). They have been widely applied in many important industrial applications, and have also attracted increasing attentions in academia. In order to aid the effective development of high quality microservices, in this study, we present a systematic review of the microservices literature, focusing on the various software engineering activities in the development of microservices. Specifically, we collect and analyze the currently available methods, tools and practices for the requirements analysis, design and implementation, testing, and refactoring for Microservices. We also discuss the issues and opportunities in future researches of this field.
    Related Articles | Metrics