Abstract
Service Oriented Architectures (SOA) are widely being adopted by organizations and businesses because of: the flexibility in the technical implementation of solutions by leveraging the plethora of available Web services, minimal lock-in into specific platforms and application environments, cost-savings associated with off-loading implementation costs to service providers. Web services are one of the prominent building blocks of SOA. They allow developers to expose the application business logic over the Internet, across different platforms and programming languages. At the same time organizations and businesses have legacy applications that have been developed using traditional architectures and patterns. One such architecture that is prominent on Web based applications is the Model View Controller (MVC) architecture. Modernizing these legacy applications holds the promise of allowing businesses to augment their existing applications with Web services interoperability, platform neutrality and code reusability that is associated with SOA. Research has been widespread regarding the modernization of legacy applications but most of it does not address the issue of dynamically creating Web services from the existing functionality that is contained inside the controllers of the MVC applications. This research therefore investigates how MVC application functionality can be dynamically exposed through SOA interfaces. We introduce a novel approach and an algorithm for exposing MVC functionality through SOAP Web services. The proposed approach and algorithm are evaluated through the implementing of an application on a PHP MVC framework. We found out that our algorithm allows for a sufficient description of the functionality contained within the MVC application through WSDL, and also that our approach can be used to invoke the exposed services. We further discuss the challenges and limitation of our approach and highlight areas of further improvement and investigation.
Published Version
Talk to us
Join us for a 30 min session where you can share your feedback and ask us any queries you have