E-Business Software Product Line Methodology Based on SMEs Characteristics

— The growth of Small and Medium Enterprises (SMEs) will certainly have a positive influence on economic development in a country. However, many SMEs struggle to survive, grow, and show limited productivity. It was recorded that there were around 63.9% of SMEs in Indonesia whose turnover had decreased by more than 30% during the COVID-19 pandemic. Among the factors that cause the low survival rate of SMEs, a factor that is considered critical is the lack of success in the use of e-business. The use of e-business by SMEs is not a one-size-fits-all solution, because SMEs have various characteristics. In this study, an E-Business Software Product Line Methodology based on SMEs characteristics was proposed using Software Product Line Engineering (SPLE) approach. In general, the proposed methodology was sufficient to describe the aspects needed in building a software development methodology. Aspects that had not been described were those related to software project management. The proposed methodology is useful for building an e-business application platform that can be customized based on SMEs characteristics.


INTRODUCTION
Despite being a key contributor to the economy in several countries, SMEs experience several challenges caused by several factors, such as social, economic, geographical, cultural, or other factors that are beyond their control. Among the factors that cause the low survival rate of SMEs, a factor that is considered critical is the lack of successful adoption and use of Information Technology [1], or what is known as ebusiness. The usage of e-business can help to make business procedures more efficient, which can help SMEs flourish. Several studies have stated that IT adoption in SMEs dependent on the size of the company [2]. However, this is contrary to [3], which states that the size of the organization does not guarantee the success of IT adoption. According to the survey, firms that have made IT a habit in their operations will find it easier to adopt IT than traditional organizations.. In addition, the field of services also affects the adoption of IT. Based on the very diverse characteristics of SMEs, an e-business solution is not a one-sized-fits-all solution. The proposed solution needs to consider two main stakeholders in the system to be built, namely SME actors and e-business application providers. In addition to these two stakeholders, a platform provider that connects SME actors and e-business application providers is also needed.
For SME actors, an e-business system is needed, which consists of various kinds of e-business applications according to the characteristics of the organization. Organizational characteristics can be viewed from several main factors, namely Environment, Organizational, and Technology [4]. Based on the organizational characteristics, SMEs can obtain recommendations for e-business applications that can support their organization's business processes. Through the main platform proposed in this study, SMEs can easily get customized e-business applications according to their organizational characteristics. For e-business application providers, providing different e-business applications for each SME is a challenge. If building different e-business applications always starts from scratch, then of course it will consume a lot of resources, both time, cost, and effort. Through the main platform proposed in this study, e-business application providers can customize applications that are built without having to start from scratch. This study is a further development of the Conceptual Model of the Use of E-Business by SMEs [5], using a complementary research model between Design Science Research (DSR) and Behavioral Science Research (BSR) [6].

II. SOFTWARE PRODUCT LINE ENGINEERING
SPLE stands for Software Product Line Engineering, and it is a methodology for developing software applications (software intensive systems and software products) that uses platforms and mass customization. The motivation of SPLE is to reduce product line development costs, improve quality, reduce production time, reduce maintenance efforts, overcome product line evolution, overcome complexity, increase cost estimates, and increase benefits for customers [7].

ISSN 2085-4552
There are two development processes in SPLE, namely domain engineering and application engineering [7], which will be explained as follows: 1. Domain engineering process consists of five key subprocesses, namely product management, requirements engineering domain, design domain, realization domain, and testing domain. This process results in a platform that embraces the commonality of application and variability to support mass customization.
2. The application engineering process consists of subprocesses, namely application requirements engineering, application design, application realization, and application testing.

III. DESIGN OF E-BUSINESS SOFTWARE PRODUCT LINE METHODOLOGY
In this study, an e-business software product line methodology based on the SMEs characteristics was proposed using Software Product Line Engineering (SPLE) approach. SPLE has been proven as a methodology for building a wide range of software products and software-intensive systems at lower costs, in less time, and with better quality than other methodologies. The methodology proposed in this study is shown in Figure 1. The proposed methodology adopts the existing process stages in SPLE [8]. In general, there are two processes that exist in this methodology, namely domain engineering and application engineering. The proposed methodology is used to build an e-business application platform that can be customized based on the SMEs characteristics.

A. Domain Engineering
The process in domain engineering is responsible for building a reusable platform, so in this process it is necessary to determine the commonality and variability of the product line being built. In this subprocess, the platform built consists of 2 types, namely the 4. Domain Realization. The architectural design that has been generated in the Domain Design is implemented using the Aspect Oriented Programming. Each SME will be given application recommendations that match the characteristics of its organization. For this reason, we need an application outside of the main e-business that functions to assess organizational characteristics and provide recommendations for e-business that are in accordance with these characteristics.

B. Application Engineering
Process on application engineering is responsible for obtaining product line applications from platforms built on the domain engineering. This is done by taking advantage of the variability of the product line and ensuring that the variability aggregation process is correct according to the specific requirements of the application. At this stage, SMEs can get recommendations for e-business applications according to their characteristics. The multi-label classification approach had been carried out in the previous study [10], used to link an SME profile with several appropriate e-business applications.
There are several sub-processes in Application Engineering which will be explained as follows: 1. Application Requirements Engineering. In this subprocess, a list of e-businesses apps for SMEs is generated using the Advanced UCF algorithm. In addition, SMEs can also choose features in each e-business using the Kano Model. By using the Kano Model, SMEs are recommended to choose features that are in the Attractive, Must-Be, and One-Dimensional because they will help the organization's business processes and increase user satisfaction.
2. Application Design. To get recommendations for e-business that are in accordance with organizational characteristics, SMEs use the EBISMA application ( Figure 2) as a tool. The recommendation results obtained from the EBISMA application are in the form of a list of e-business that are able to help SMEs to carry out their business processes. In addition to the list of e-business, EBISMA will also generate file containing the configurations required to produce e-business based on the specified features.

Application Realization.
To get an application that can run based on customized requirements, it is necessary to configure the main class and aspect with weaving technique [11]. Additional features on the website implemented in the aspect. If these features are not needed, they can be removed by changing file the XML configuration. For users who want to use the Online Store Application can determine the combination of features that suit their requirements. By using this approach, different e-business apps can be built from the same platform. These applications are called the Software Product Family.

IV. IMPLEMENTATION AND ANALYSIS
In this study, the proposed methodology was implemented to build an application called EBISMA, which stands for E-Business for Indonesian SMEs. This application serves to assess the characteristics of the organization and provide recommendations for ebusiness applications in accordance with these characteristics. In addition, EBISMA also functions as a configurator that will produce e-business applications that are ready to be used by SME actors. The main view of the EBISMA Application is shown in Figure 2. In using EBISMA, SMEs are asked to answer several questions to assess the characteristics of their organization. The questions are divided into two stages, namely questions related to the identity of SMEs and questions related to the readiness of SMEs to implement e-business. After answering these questions, the system will provide recommendations for appropriate e-business applications. ESBIMA is an application that will generate a configuration file, which contains main classes and aspect classes that will be used to build specific e-business applications. The EBISMA configuration design is carried out using an Aspect Oriented Programming approach, as shown in Figure 3. A more detailed description of the AOP approach for implementing the EBISMA configuration has been presented in previous research [11]. V. CONCLUSIONS At this stage, the proposed e-business software product line methodology was evaluated using a general framework for evaluating the software development methodology proposed by [12]. Implementing methodology evaluation framework can provide several advantages. Evaluation can help in understanding certain aspects of a methodology. Evaluation can also be used to compare methodologies, and thereby help users choose between several methodologies according to their desired goals. In addition, improvements can be accelerated using the evaluation results. In this section, the evaluation was carried out by assessing the criteria with a measurement matrix with a value of 0 to 6 based on [13].
In this section, an assessment of the existing process in the methodology is carried out. The proposed methodology does not focus on the management aspects of software development projects, which consist of risk management, people management, quality management, configuration management, and project scheduling. Another thing that is not focused on the methodology is the aspect of efficiency, both in terms of time and resources.

A. Modeling Language Features
A modeling technique is a set of models that describe a system at various levels of abstraction and explain its various aspects. In this section, an assessment is made regarding the modeling language used in the proposed methodology. Based on the results of the assessment, which are shown in Error! Reference source not found., in general the proposed methodology covers most aspects of the assessment in terms of the modeling language. Things that have not been covered in the methodology are aspects of formalization. The proposed methodology uses UML and ArchiMate as its modeling language and the two modeling languages do not provide formalization aspects to symbolize semantics. Another aspect is related to handling inconsistencies that have not been provided by the methodology. The last aspect is related to the User Interface, which is not provided by the methodology.

B. Process Features
The process in the methodology has two roles, namely regulating and directing development from analysis to implementation, and enabling traceability of development by determining results and milestones. In this section, an assessment of the existing process in the methodology is carried out. Based on the results of the assessment, which are shown in Error! Reference source not found., the proposed methodology does not focus on the management aspects of software development projects, which consist of risk management, people management, quality management, configuration management, and project scheduling. Another thing that is not focused on the methodology is the aspect of efficiency, both in terms of time and resources.

C. Applicability Features
Another important aspect that needs to be evaluated is related to the application of the methodology in software development projects. In this section, an assessment is carried out on aspects of the application of the methodology, which includes aspects of pragmatic, marketability, and application limitations. Based on the results of the assessment, which are shown in Table 3, most aspects of the application of the methodology have been discussed in detail. Things that are not discussed in this methodology are aspects of team skills and the level of satisfaction of the development team. This is not the focus of the proposed methodology.

D. Type-specific Methodology Features
In this section, an assessment of the specific aspects provided by the proposed methodology is carried out. Based on the results of the assessment, as shown in Table 4, the proposed methodology meets the aspect of a type-specific, where the methodology uses the AOP concept to design and implement the model. Based on the results of all methodological assessments, in Table 5 summary of the results of the methodology assessment is presented. In general, the proposed methodology is sufficient to describe the aspects needed in building a software development methodology. Aspects that have not been described are those related to software project management. This aspect is a limitation in this research.

VI. CONCLUSIONS
In this research, an e-business software product line methodology was produced. The research contribution refers to several issues for further development of the software product line engineering [7], which consists of domain specialization, software product line evolution, multiple product lines, and tool support. The applicative research contribution from this research is that SMEs can get recommendations for e-business applications that are in accordance with the characteristics of their organizations. In addition, the results of the analysis of commonality and variability can be a reference for ebusiness application developers to make the transition from single application development to product family development. E-business application developers can determine the priority of application development based on the commonality and variability analysis. Ebusiness application developers also can take advantage of the e-business platform architecture to develop services that match their expertise. The following will explain in more detail the research contributions which refer to several issues that are issues of further development of the Software Product Line Engineering [7].

A. Domain Specialization
The biggest challenge for research in Software Product Line Engineering (SPLE) is to specialize framework for an application domain. By specifying the SPLE framework for an application domain, a series of types can be generated to model domain-specific variation points, variants, variability dependencies, and constraint dependencies. To take full advantage of domain specialization, it is necessary to define a domain-specific modeling language to define software development artifacts [7].
In this study, the proposed SPLE methodology is devoted to building a Software Product Line for ebusiness domain for SMEs. To be able to support the use of e-business by SMEs, several e-business apps is needed that function to assist SME business processes for certain functional areas. Sales & marketing functional areas need e-business in the form of Online Store, E-marketplace, etc. Meanwhile, in the human resources functional areas, e-business applications are needed in the form of payroll, management personnel, etc. The use of the e-business will certainly help SME business processes. Therefore, in this study, a recommendation model for e-business applications was produced based on the characteristics of SMEs. Based on the results of these recommendations, SMEs can use e-business applications that are in accordance with their business characteristics.

B. Evolution of the Software Product Line
In the development of the Software Product Line, software developers are not only faced with the evolution of the Software Product Line over time, but also with the existence of different variants at the same time (variability in space). Managing the evolution of Software Product Line artifacts over time and ensuring the consistent integration of changes in all affected Software Product Lines is a key research challenge. Developing and validating comprehensive techniques that support the management of Software Product Line artifact evolution over time and the management of variability in artifacts is also a research issue open to further study [7].
In the Product Management subprocess of the proposed E-Business Software Product Line Development Methodology, a product roadmap has been generated, which is represented in the form of an application portfolio. In the application portfolio, it can be determined which e-business applications are useful for the present and which e-business applications will be useful in the future. The resulting application portfolio combines the McFarland matrix with the Kano Model. By combining these two theories, it was hoped that it will provide appropriate results from grouping ebusiness applications, both in terms of user preferences and in terms of their contribution to business processes. In addition, the results of the combined analysis of McFarlan and Kano will support the evolutionary management of the E-Business Software Product Line.

C. Multiple Product Lines
In some domains, there is a need to manage variability across product lines. However, solutions for defining and managing variability across product lines and across all software development artifacts remain unclear. Managing variability across product lines is even more challenging if the product lines are owned by different companies [7].
In the Product Management stage of the proposed E-Business Software Product Line Development Method, an e-business application portfolio has been obtained which functions as a product roadmap, which is used for application planning and management based on current and future contributions to the business. In addition to the e-business application portfolio, at the Product Management stage, priority features will be developed for e-business applications. The priority of feature building starts with basic features, then performance features, entertainment features, and ends with potential features.

D. Tool Support
High-quality software engineering in the industry requires adequate tool support. However, for most aspects of Software Product Line Engineering, adequate tool support does not exist. For example, support for tools used to manage variability across all development artifacts, or to manage linkages between product line applications and domain artifacts is very weak. Building seamless tool support to manage variability and development artifacts in process domains and application engineering is a challenge for future research [7].
In this study, a prototype was built named EBISMA, which stands for E-Business for Indonesian SMEs. This application serves to assess the characteristics of the organization and provide recommendations for ebusiness applications in accordance with these characteristics. In addition, EBISMA also functions as a configurator that will produce e-business applications that are ready to be used by SME actors. In EBISMA application, SMEs are asked to answer a number of questions to assess the characteristics of their organization. The questions are divided into two stages, namely questions related to the identity of SMEs and questions related to the readiness of SMEs to implement e-business. After answering these questions, the system will provide recommendations for appropriate e-business applications using the Advanced UCF algorithm.