Font Size: a A A

Analyzing Multiple-sources Texts For The Development And Evolution Of Mobile Applications

Posted on:2020-11-28Degree:DoctorType:Dissertation
Country:ChinaCandidate:Y Z LiuFull Text:PDF
GTID:1368330575481196Subject:Computer software and theory
Abstract/Summary:PDF Full Text Request
With the popularity of smart mobile devices,the Applications(App)used on them have become one of the most common software products in recent years.To satisfy the great demands of Apps,software engineers pay much attention on researching the development process of Apps.Compare with traditional software,there are both challenges and opportunities in the development and evolution of Apps: on one hand,the developers need to develop an App within shorter time but release its new versions more frequently,so that it can cope with the intense market competition and meet the ever-changing requirements of users;on the other hand,App marketplaces accumulate thousands of downloadable products,which become a large-scale and fast-growing data resource,this provide an unique condition for using data-driven methods to solve the problems in developing or updating Apps.As a common and understandable way for recoding information,natural language based text is an important form of data in software engineering.There are mainly three sources for developers to gain texts related to Apps: 1)requirements of documents,they are from the App be developed or updated and gives the specifications of the products;2)App descriptions,they are extensively collected from Apps and contains the features of these products;3)reviews,which are given by users and reflect their comments or demands on the products.By analyzing the texts from multiple sources synthetically,developers can mine information of existing products in the market,including features of products,changing trends of the market,user preferences,and so on.This gives information support for making development or evolution decisions of Apps.Combining natural language processing and data mining with the characters of App software engineering,this paper researches on the methods for analyzing App descriptions,reviews as well as requirements documents,aiming at using multiplesources texts efficiently to support the quick development and iterative evolution process of Apps.The main work of this paper is shown below:1.Extracting features from App descriptions.The feature is a basic notation used to describe a user-perceived characteristic of a system and feature extraction is one of core activities to gain such information from texts related to the Apps.In this paper,we identify the relationships between structures of sentences and information of features by analyzing the semantic of App descriptions,and summary feature extraction rules based on sentence syntax;then,features and relationships among them are gained from descriptions according to the pre-defined rules;meanwhile,the values of features are quantified from the rating and downloads provided by App stores.We define Description Model for an App(DMA)to describe the information gained from one description formally,which gives the basis for the subsequent integration of knowledge from products in one domain.2.Analyzing reviews guided by the information of features.Reviews are typical feedback data given by users to express their opinions,and they are important resources for developers to identify the user concerns for updating the Apps.In order to mine reviews efficiently,we propose an approach that uses features of products to guide the analysis process of reviews.Firstly,topic modeling is used to summarize features gained from App descriptions into high-level domain topics,which define the categories of reviews.Secondly,we train classifiers of reviews by using the methods of machine learning and use them to establish relationships between reviews and topics.Finally,user opinions in reviews are mined,and reviews in the same categories are summarized to gain the user preference on features.We give a method to visualize the results,so that developers can use it to understand the basic features of products in one domain and further compare products to identify their(dis)advantage.3.Integrating and modeling the domain knowledgeThe rapid evolution of Apps leads to fast changing of knowledge in one domain.In order to capture such information and respond to the demands of markets quickly,developers need to not only understand the features of similar products in the domain,but also analyze their evolution trends for optimizing the development process of Apps and deciding the content of next release.Thus,we integrate the information gained from the App descriptions and reviews,and model the results by a Feature-based Domain State Model(FDSM)in the form of a state machine to describe the domain knowledge and their evolution process.Meanwhile,we quantify the value of information in FDSM,and show the FDSM by defining a static state report as well as a dynamic evolution figure of features.In this way,developers can understand the knowledge intuitively and use it for supporting the tasks in the development of Apps,such as domain analysis,evolution analysis of features.4.Analyzing the goal model based on FDSMAs an effective way to describe requirements and capture the interactions between them,Goal model is broadly adopted for supporting different kinds of software including Apps.We take the requirements described by the goal model as the research object and propose a method to analyze the model based on FDSM.Firstly,information is retrieved from FDSM according to the goals,and we use the results to enrich and extend the goal model.In addition,reviews are introduced into the goal model based on the method to construct FDSM for two purposes: use the user sentiments in reviews to evaluate user concerns and preferences on goals,and adjust the priorities of goals in the release of next version.In summary,this paper defines App descriptions,reviews and requirements documents as multiple-sources texts,and researches on them from several aspects involving feature extraction,sentiment analysis,knowledge integration,and information recommendation.This proposes an approach for developers to use the data of texts synthetically and efficiently in the development and evolution of Apps,also provide references for using techniques of natural language processing,texts mining and opinion mining in the software engineering.
Keywords/Search Tags:Feature extraction, review classification, sentiments analysis, knowledge modeling, information recommendation, goal model
PDF Full Text Request
Related items