The innovation of software ecosystems has great influences on the production style of IT industry. It refactors the business ecosystems of IT industry. Academic and industry researchers have paid close attention to software ecosystems since 2003. Some world-wide famous IT companies make efforts towards achieving their own software ecosystems. As has developed to numerous examples of software ecosystems. Currently, emerging information technologies (such as cloud computing, mobile application development, cyber-physical systems, blockchains) are applied deeply and widely in the field of software ecosystems. The application of software ecosystems has become more and more intensive in various industries and domains. The definition of a software ecosystem has changed greatly over time. In order to clarify the context of a software ecosystem, researchers adopt biological ecosystem theories, and propose several different kinds of definitions for software ecosystems. It is not until the year of 2016 that there is consensus on what a software ecosystem is. A software ecosystem refers to a complex system in which the software and its related stakeholders interact intensively within a common technological infrastructure. In the paper, we adopt biological ecosystem theories to the context so as to come out a meta-model of software ecosystems which forms the basis for the discussion of the issues relating to software ecosystems. The meta-model, which is presented in UML class diagram, describes the key building blocks and key characteristics of software ecosystems. Typically, the research results of papers in the field of software ecosystems are compared to traditional classification which was presented in 2003. The traditional classification includes seven categories: (1) procedure or technique; (2) qualitative or descriptive model; (3) analytic model; (4) empirical model; (5) tool or notation; (6) specific solution, prototype, answer, or judgment; (7) report. But, the traditional classification schema has to be revised because that the context and the key characteristics of software ecosystems have changed greatly over time. According to our observations, we find that the combination of quantity and quality analysis is always adopted in the field, and that empirical studies reporting specific solutions for software ecosystems are in fashion. We make minor changes to the traditional classification schema for the papers focusing on software ecosystems, and then propose a five-classification pattern. Our five-classification schema combines "qualitative or descriptive model" and "analytic model" to produce a new category namely "analytic method or framework", and integrate "specific solution, prototype, answer, or judgment" into "empirical study". The meta-model as well as the five-classification schema forms the basis for the discussions of the issues relating to software ecosystems. Then, we provide a literal review of the research in the filed from 2015 until 2017. In total, the literature counts 196 papers. Our literature review is based on the keywords, the abstract, publication source, research content. We category the research results of papers into our five-category schema, and then identify the recent development and progress in the field. However, there exists a set of challenges for future research. Those challenges includes requirements engineering, architecture modeling, model-driven development, power mechanisms, feature analysis, information content analysis, ecologic network analysis, impact analysis of defect and/or bad smell, tool supports, emerging applications for software ecosystems. © 2020, Science Press. All right reserved.