I. Introduction
Traditional specialized software systems are architected to solve specific business problems. For example, a banking systems’s core application is designed to facilitate banking transactions, while another system focuses on managing customer information. In many cases, these applications are not integrated. What happens if a business needs to integrate them? A common solution is to buy an expensive integration platform that connects the specialized software systems, thereby allow-ing them to share information. This solution can work well if the platform is compatible with the underlying software applications and is configured correctly. However, it is an expensive solution that requires specialized skills to implement and maintain [1–5]. Therefore, what we see nowadays, is businesses are choosing platform-based SISs. A software platform has the following benefits: