Started in January,1974(Monthly)
Supervised and Sponsored by Chongqing Southwest Information Co., Ltd.
ISSN 1002-137X
CN 50-1075/TP
CODEN JKIEBK
Editors
    Content of Software Engineering in our journal
        Published in last 1 year |  In last 2 years |  In last 3 years |  All
    Please wait a minute...
    For Selected: Toggle Thumbnails
    Multi-source Cross-project Defect Prediction with Data Selection
    DENG Jian-hua, WANG Wei
    Computer Science    2022, 49 (11A): 210800160-7.   DOI: 10.11896/jsjkx.210800160
    Abstract312)      PDF(pc) (2632KB)(282)       Save
    Multi-sources cross project defect prediction(MCPDP) aims to use multiple historical data from other projects(source projects) to predict the likelihood of defects in software modules in the target project.The research solves the cold start problem of defect prediction modeling and provides a solution for establishing defect prediction model for new software or software system lacking historical data.Source data selection is considered to be an effective way to further improve the accuracy of cross-project defect prediction.Therefore,a multi-source cross-project defect prediction method for data selection is studied in this paper.The method includes two steps:1) feature alignment of source data;2) improve the maximum mean measure to realize source data screening.In order to verify the effectiveness of the proposed method,experiments are carried out on four public data sets,namely AEEEM,Relink,NASA and SOFTLAB.The results show that the proposed method improves the F-measure index by 4% and 5% respectively compared with the baseline method,which proves that the proposed method has good performance.
    Reference | Related Articles | Metrics
    Review on Technologies of Requirement Engineering of Software
    WANG Hao-yu
    Computer Science    2022, 49 (11A): 210900132-14.   DOI: 10.11896/jsjkx.210900132
    Abstract227)      PDF(pc) (2197KB)(615)       Save
    As the first process of software project,requirements engineering’s implementation quality can determine whether a software project can success or not.Requirements engineering was put forward in the 1980s the first time,and the model used also transited from the earliest process oriented model to the object-oriented model widely used in industry,and then to the service-oriented model proposed and gradually promoted after 2004.In addition,with the rapid improvement of hardware performance and the resurgence of artificial intelligence,the efficiency and scale of natural language processing are increasing,which makes it easier for requirements engineering to use natural language processing to analyze large amounts of text data.The emergence of IoT,edge computing and big data makes it easier for investors and developers to obtain a large amount of user data and business information.As a new concept,data-driven requirements engineering is gradually known by the industry.This paper reviews the development history of requirements engineering at first,including requirements engineering methodology,object-oriented modeling,requirements engineering based on ontology and facial features,and automatic requirements extraction technology related to machine learning.Then it focuses on three research directions of requirements engineering,including the natural language processing methods and some supported language types,the development history,tools and methods proposed in recent years of agile requirements engineering,as well as the concept,necessity and process,the main methods and practices of data-driven requirements engineering in recent years.Finally,based on the reports on the development situations of requirements engineering in some countries,this paper analyzes the difficulties and challenges of requirements engineering in recent years,and prospects the future development of requirements engineering.
    Reference | Related Articles | Metrics
    Overview of Android GUI Automated Testing
    YANG Yi, WANG Xi, ZHAO Chun-lei, BU Zhi-liang
    Computer Science    2022, 49 (11A): 210900231-10.   DOI: 10.11896/jsjkx.210900231
    Abstract515)      PDF(pc) (2078KB)(584)       Save
    With the increasing number of new types and versions of mobile apps,the traditional manual testing methods can’t cater for the demand.Therefore,more effective automated testing methods need to be proposed.In the process of automated testing,the GUI (Graphical User Interface) of Android apps plays an extremely important role.GUI automated testing has become the focus of researchers because of its excellent test coverage and ability of crash detection.In this paper,the current research on GUI automated testing is sorted out and summarized,and the representative automated testing framework is chosen for detailed analysis.The selected automated testing tools are classified,analyzed and compared from the aspects of testing strategy,exploration strategy,crash report,whether to support replay,testing environment,supported event type,whether to use source code,whether open source,and system event identification method.At the same time,some representative automated testing frameworks are selected for contrast experiments to explore the testing efficiency and their advantages and disadvantages.Finally,the challenges faced by the current research and the future development prospects are proposed.
    Reference | Related Articles | Metrics
    Code Similarity Measurement Based on Graph Embedding
    LIANG Yao, XIE Chun-li, WANG Wen-jie
    Computer Science    2022, 49 (11A): 211000186-6.   DOI: 10.11896/jsjkx.211000186
    Abstract239)      PDF(pc) (2503KB)(334)       Save
    In recent years,code similarity detection has been a hot topic in the field of software engineering,which can help code clone detection,code defect prediction,and reduce the cost of software maintenance.At present,most popular code similarity detection methods build language processing model to extract the text,syntax,structure and other feature information of source code from tokens,AST and other code representations,and map them to real value vectors in continuous space.Then,obtain the similar value of the code comparison by calculating the Euclidean distance and cosine value of the extracted features or by the shallow neural network model.These methods have achieved better results than the traditional static analysis program.However,most of these methods are based on the grammar level of source code,which can not make full use of the semantic information of source code.Although Doc2Vec and Word2Vec can extract the lexical semantic information of code,they are powerless to handle the execution semantic information of code.To solve this problem,control flow graph(CFG) is proposed to represent the execution semantics of code,and the graph embedding method based on random walk is used to learn and reason the semantic information of the code,and then judge the functional similarity of the source code.Compared with Doc2Vec and Word2Vec methods,experimental results show that the model can accurately detect the functional similarity of source code,and its F1 value improves by 16.01% and 18.72% compared with Doc2Vec and Word2Vec methods,respectively.
    Reference | Related Articles | Metrics
    Web Service Modeling Based on Model-driven and Three-stage Model Transformation Method
    WANG Chang-jing, DING Xi-long, CHEN Xi, LUO Hai-mei, ZUO Zheng-kang
    Computer Science    2022, 49 (11A): 211100055-14.   DOI: 10.11896/jsjkx.211100055
    Abstract218)      PDF(pc) (2072KB)(399)       Save
    Describing the semantics of web services accurately plays a crucial role in service discovery,execution,dynamic composition and interaction.In order to support web service modeling,this paper proposes four models from abstract to concrete:Radl-WS service requirement model,Apla service design model,Java executable code,and WSDL/RESTful API.To suppor model transformation,a three-phase method that generates an executable code by transformation is further proposed.The first stage transforms the Radl-WS service requirement modeling language into the Apla service design language,the second stage uses the Apla service design language to generate executable codes through related conversion tools,the third stage encapsulates the executable codes into services.Then the semantic correctness of the three-stage model transformation is studied.Through examples,the actual effect of the proposed method is demonstrated.
    Reference | Related Articles | Metrics
    Analysis of Impact of Open Source Components in Mixed Source Software Projects
    ZHAO Liang
    Computer Science    2020, 47 (11A): 541-543.   DOI: 10.11896/jsjkx.200400077
    Abstract324)      PDF(pc) (1699KB)(873)       Save
    This paper studies the code structure characteristics of mixed source software,according to four standards,which include function knowledge,code usefulness,code security and intellectual property rights.This shows the unique code space of mixed source code.This paper analyzes the positive and negative effects of open source components on the progress,quality,cost and intellectual property rights of mixed source projects.The licenses are divided into three types according to their infectivity.Through the case study of open source component in the safety critical field software project,the basic situation of open source application is shown,and the problems existing in the practice are analyzed.Based on the above research,this paper brings forward that the whole life cycle management mechanism of open source components,and the innovation based on open source should be strengthened,and encourage integration and feedback to the open source community,from the technical view,we should make careful component selection,strengthen product development process management in the early stage of the project,and closely follow the open source community to product evolution.These can help to make better use of open source component and promote software mixed source project management.
    Reference | Related Articles | Metrics
    API Recommendation Model with Fusion Domain Knowledge
    LI Hao, ZHONG Sheng, KANG Yan, LI Tao, ZHANG Ya-chuan, BU Rong-jing
    Computer Science    2020, 47 (11A): 544-548.   DOI: 10.11896/jsjkx.191200010
    Abstract239)      PDF(pc) (1755KB)(955)       Save
    Application Programming Interfaces (API) play an important role in modern software development,and developers often need to search for the appropriate API for their programming tasks.However,with the development of the information industry,API reference documents have become larger and larger,and traditional search methods have also caused inconvenience to engineers' queries because of redundant and erroneous information on the Internet.At the same time,due to the vocabulary and knowledge gap between the natural language description of programming tasks and the description in the API documentation,it is difficult to find a suitable API.Based on these issues,this paper proposes an algorithm called ARDSQ (Recommendation base on Documentation and Solved Question) which is an API recommendation algorithm that integrates domain knowledge.ARDSQ can retrieve the closest API in the knowledge base based on the natural language description given by the engineer.Experiments show that,compared with two advanced API recommendation algorithms(BIKER,DeepAPILearning),ARDSQ has greater advantages in the key evaluation index (Hit-n,MRR,MAP ) of the recommendation system.
    Reference | Related Articles | Metrics
    Study on Reverse Engineering Generation Method of Software Evolution History
    ZHONG Lin-hui, FU Li-juan, YE Hai-tao, QI Jie, XU Jing
    Computer Science    2020, 47 (11A): 549-556.   DOI: 10.11896/jsjkx.200200067
    Abstract383)      PDF(pc) (3479KB)(626)       Save
    For the better management of software evolution,more and more software evolution management models have been proposed.However,most of the software are stored in the models in the unit of files or projects,and the models lack of the evolution history information of those software components,which make the evolution process hard to be intuitively and effectively understood and managed.In this paper,software evolution binary tree is defined to express the evolution history of software and its components.And a method to recover the evolution binary tree of software and its components by software architecture reverse technology is proposed as well.First of all,the (atomic) components of software system and software architecture (taken as a special composite component here) are recovered by software source codes and architecture reverse technology,and the multi-dimensional attributes of the corresponding atomic components and that of the composite components are measured,based on which the software evolution histories are constructed by the evolution binary tree construction algorithm.Finally,after analyzing the main factors that affect the construction of evolution binary trees according to two groups of experiment,some evolution binary trees are generated according to similarity thresholds with different attributes and some are generated in the basis of the combinations of different attributes by Bunch and ACDC (architecture reverse tools) respectively.Through the experiments of four open source software (Cassandra,Hbase,Hive,Openjpa,Zookeeper,RxJava,Groovy,Sqoop),the best similarity thresholds affecting the construction of evolution binary trees and the best attribute combinations suitable for the software are realized.And it's also can be seen that the evolution binary trees of composite components recovered are extremely similar to their corresponding real trees in framework.And using the architecture reverse tool ACDC to restore the evolutionary binary tree has higher accuracy.Consequently,the proposed method is effective to recover the evolution histories of these open source software and that of their components.
    Reference | Related Articles | Metrics
    Hierarchical Classification Model for Metamorphic Relations of Scientific Computing Programs
    YANG Xiao-hua, YAN Shi-yu, LIU Jie, LI Meng
    Computer Science    2020, 47 (11A): 557-561.   DOI: 10.11896/jsjkx.200200015
    Abstract329)      PDF(pc) (2621KB)(504)       Save
    Metamorphic testing is an effective way to solve the Oracle test problem,the key of which is the discovery of metamorphic relations.By analyzing the research and development process of scientific computing programs,this paper puts forward the concepts of physical model metamorphic relations,computing model metamorphic relations and code model metamorphic relations,defines the hierarchical structure of three kinds of metamorphic relations,establishes the hierarchical classification model of metamorphic relations,and discusses its application prospect in the research of discovery method on metamorphic relations.
    Reference | Related Articles | Metrics
    SQL Grammar Structure Construction Based on Relationship Classification and Correction
    WAN Wen-jun, DOU Quan-sheng, CUI Pan-pan, ZHANG Bin, TANG Huan-ling
    Computer Science    2020, 47 (11A): 562-569.   DOI: 10.11896/jsjkx.200200086
    Abstract347)      PDF(pc) (2293KB)(564)       Save
    Aiming at the problem that the SQL grammar structure in nested query is difficult to construct,the GSC-RCC method combining relation classification and modification is proposed,and the SQL grammar is represented by three types of entity relationships.Firstly,the relational classification depth model is designed,and the column name common words are introduced to improve the performance of the model,so as to determine the probability of different relations of each entity pair in the statement,and then generate unmodified undirected graph.Then the relationship correction algorithm based on SQL grammar is designed to modify the undirected graph and finally construct the SQL grammar structure.In the real estate data query task,for multi-conditional query statements with nested conditions,the grammar structure generation accuracy of GSC-RCC method is 92.25%,and the method can reduce the dependence of the model on the number of statement sample.
    Reference | Related Articles | Metrics
    Study on Mapping Transformation from Geometric Aviation Data to Relational Database
    LAI Xin, ZENG Ji-wei
    Computer Science    2020, 47 (11A): 570-572.   DOI: 10.11896/jsjkx.200400040
    Abstract255)      PDF(pc) (2063KB)(559)       Save
    The aeronautical data exchange model based on GML is the foundation of future aeronautical information management.Aeronautical information service system currently used is mainly based on the relational model database.On the transitional stage,the expression of aeronautical information data with GML standard geometric characteristics in the relational database must be considered.The structural characteristics of geometric aeronautical data in the aeronautical information exchange model and the differences among geometric data representations in a relational database are analyzed.The feasibility of mapping between the two types of data is indicated.And then a mapping scheme of geometric aviation data to a relational database is proposed,and available technologies such as Linq to XML are used to verify the feasibility of the mapping scheme.
    Reference | Related Articles | Metrics
      First page | Prev page | Next page | Last page Page 1 of 1, 11 records