Supporting Global Software Engineering with Cloud Computing

Like many disciplines and industries, Global Software Engineering (GSE) practitioners and researchers are also exploring the potential of Cloud Computing for improving the GSD processes and practices. We have been experimentally assessing the viability of providing Tools as a Service (TaaS) to globally distributed software development teams. I have recently presented a tutorial on this topic at the 10th International Summer School on Software Engineering in Salerno, Italy. The tutorial (Slides are here) was aimed at highlighting the important need of providing Software Engineering (SE) researchers and practitioners with knowledge and understanding about the potential opportunities, challenges, and solutions for leveraging cloud computing for supporting SE in general and GSE in particular. The goal of this tutorial was to introduce the key concepts of GSE and Cloud Computing, describe the challenges of GSE in general and providing tooling support in particular. I pointed out different opportunities, benefits, and challenges involved in leveraging cloud computing to address some of the key GSE challenges. Apart from designing and evaluating cloud-based infrastructure for TaaS, another main focus of the tutorial was the processes and practices for migrating software intensive systems to Cloud Computing.  . The tutorial highlighted a set of architectural requirements for a cloud infrastructure for TaaS and a set of potential architectural solutions to achieve the key architectural requirements. For the interested readers, the Slides are here.