PTaaS: Platform for Providing Software Developing Applications and Tools as a Service
TR-2014-176, Authors: Muhammad Aufeef Chauhan & Muhammad Ali Babar.
PTaaS: Platform for Providing Software Developing Applications and Tools as a Service
Muhammad Aufeef Chauhan
Muhammad Ali Babar
March 2014
Abstract
Cloud computing has become an established paradigm for enabling organizations to build scalable software systems and to meet challenges of rapid demand of computing and storage resources. There has been a significant success in building cloud-enabled applications for many disciplines ranging from web based and mobile application to intensive video and data processing systems. This initial success of cloud has opened new horizons for more complex domains. Global Software Development (GSD) is one of such domains. GSD is different than traditional applications domains because of involvement of large number of complex activities that does not only include technological aspects but also social aspects. A large number of applications and tools have been devised for providing solutions to the challenges of the GSD that emerge as a result of distributed development teams. However, the technological solutions that have been proposed so far are limited in their ability to meet specific GSD challenged and emerging trends of GSD in which software development is not only global but it also involve multiple organizations. Involvement of the multiple organizations in GSD increase the complexity of aligning their processes and establishing technology support needed to facilitate working according to new processes. Although the benefits of using cloud computing to solve GSD issues have been discussed in the literature but there has not been a significant attempt to provide fully functional technological support for it that is not limited to one specific tools and a particular phase of software development life cycle. In this thesis, we have explored the possibility of offering software development applications and tools as services that can be acquired on demand according to the software development process in globally distributed environment. We have performed the structured review of the literature on GSD tools to identify attributes of the software development tools that have been introduced for addressing GSD challenges and we have discussed significance of technology alignment with process. Information gained from the review of literature on GSD tools and processes is used to extract functional requirements for the middleware platform for provisioning of software development applications and tools as services. Finding from the review of literature on architecture solutions for cloud-enabled systems has been used to seek inspirations for providing architecture of the platform. In order to demonstrate feasibility of our proposed architecture, we have implemented a prototype of the middleware using Amazon as underlying IaaS Cloud and have demonstrated its functionality with the help of simple client application that act as a bridge between software development tools and middleware platform.
Technical report TR-2014-176 in IT University Technical Report Series, March 2014.
Available as PDF.