Abstract
Offshore and outsourced distributed software development models and processes are facing challenges, previously unknown, with respect to computing capacity, bandwidth, storage, security, complexity, reliability, and business uncertainty. Clouds promise to address these challenges by adopting recent advances in virtualization, parallel and distributed systems, utility computing, and software services. In this paper, we envision a cloud-based platform that addresses some of these core problems. We outline a generic cloud architecture, its design and our first implementation results for three cloud forms - a compute cloud, a storage cloud and a cloud-based software service- in the context of global distributed software development (GSD). Our ”compute cloud” provides computational services such as continuous code integration and a compile server farm, ”storage cloud” offers storage (block or file-based) services with an on-line virtual storage service, whereas the on-line virtual labs represent a useful cloud service. We note some of the use cases for clouds in GSD, the lessons learned with our prototypes and identify challenges that must be conquered before realizing the full business benefits. We believe that in the future, software practitioners will focus more on these cloud computing platforms and see clouds as a means to supporting a ecosystem of clients, developers and other key stakeholders.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
Amazon: Amazon web services for simple db, s3, ec2, http://aws.amazon.com
Armbrust, M., Fox, A., Griffith, R., Joseph, A.D., Katz, R., Konwinski, A., Lee, G., Patterson, D., Rabkin, A., Stoica, I., et al.: Above the Clouds: A Berkeley View of Cloud Computing. University of California, Berkeley, Tech. Rep. (2009)
Aspray, W., Mayadas, F., Vardi, M.Y.: Globalization and offshoring of software. A Report of the ACM Job Migration Task Force, Executive Summary and Findings. ACM, New York (2006)
Atkinson, R.D.: Understanding the offshoring challenge. Progressive Policy Institute, Washington, DC (2004)
Baker, S.: Google and the wisdom of clouds. Business Week (2007)
Barham, P., Dragovic, B., Fraser, K., Hand, S., Harris, T., Ho, A., Neugebauer, R., Pratt, I., Warfield, A.: Xen and the art of virtualization. ACM SIGOPS Operating Systems Review 37, 164–177 (2003)
Battin, R.D., Crocker, R., Kreidler, J., Subramanian, K.: Leveraging resources in global software development. IEEE Softw. 18(2), 70–77 (2001)
Bechtolsheim, A.: Cloud Computing and Cloud Networking. talk at UC Berkeley (2008)
Bialecki, A., Cafarella, M., Cutting, D., Malley, O.: Hadoop: a framework for running applications on large clusters built of commodity hardware, http://lucene.apache.org/hadoop
Buschmann, F.: Pattern-oriented software architecture: a system of patterns. Wiley, Chichester (2002)
Buyya, R., Yeo, C.S., Venugopal, S., Ltd, M.P., Melbourne, A.: Market-oriented cloud computing: Vision, hype, and reality for delivering it services as computing utilities. In: Proceedings of the 10th IEEE International Conference on High Performance Computing and Communications (HPCC 2008). IEEE CS Press, Los Alamitos (2008)
Chang, F., Dean, J., Ghemawat, S., Hsieh, W.C., Wallach, D.A., Burrows, M., Chandra, T., Fikes, A., Gruber, R.E.: Bigtable: A distributed storage system for structured data. In: Proceedings of the 7th USENIX Symposium on Operating Systems Design and Implementation (OSDI 2006) (2006)
Cheng, L.T., de Souza, C.R., Hupfer, S., Patterson, J., Ross, S.: Building collaboration into ides. Queue 1(9), 40–50 (2004)
Church, K., Hamilton, J., Greenberg, A.: On delivering embarassingly distributed cloud services. Hotnets VII (2008)
Dean, J., Ghemawat, S.: Mapreduce: simplified data processing on large clusters. In: OSDI 2004: Proceedings of the 6th conference on Symposium on Opearting Systems Design & Implementation, Berkeley, CA, USA, p. 10. USENIX Association (2004)
Desouza, K., Awazu, Y., Baloh, P.: Managing knowledge in global software development efforts: Issues and practices. IEEE software 23(5), 30–37 (2006)
Foster, I., Kesselman, C.: The grid: blueprint for a new computing infrastructure. Morgan Kaufmann, San Francisco (2004)
Fryer, K., Gothe, M.: Global software development and delivery: Trends and challenges. IBM Developer Works 1 (January 2008)
Ghemawat, S., Gobioff, H., Leung, S.T.: The google file system. In: SOSP 2003: Proceedings of the nineteenth ACM symposium on Operating systems principles, pp. 29–43. ACM, New York (2003)
Gillett, E.F., Brown, G.E., Staten, J., Lee, C.: The new tech ecosystems of cloud, cloud services, and cloud computing. Forrester Research Report (August 2008)
Google: Google docs and spreadsheets, http://docs.google.com
Google: Google’s cloud implementation as app engine, http://code.google.com/appengine/
Griesemer, R.: Parallelism by design: data analysis with sawzall. In: CGO 2008: Proceedings of the sixth annual IEEE/ACM international symposium on Code generation and optimization, p. 3. ACM, New York (2008)
Hamilton, J.: Perspectives blog, http://perspectives.mvdirona.com
Herbsleb, J.D., Mockus, A.: An empirical study of speed and communication in globally distributed software development. IEEE Transactions on Software Engineering 29(6), 481–494 (2003)
Herbsleb, J., Moitra, D.: Global software development. IEEE software 18(2), 16–20 (2001)
Huhns, M.N., Singh, M.P.: Service-oriented computing: Key concepts and principles. IEEE Internet Computing 9(1), 75–81 (2005)
Krishna, S., Sahay, S., Walsham, G.: Managing cross-cultural issues in global software outsourcing. Communications of the ACM 47(4), 62–66 (2004)
Lin, G., Fu, D., Zhu, J., Dasmalchi, G.: Cloud computing: It as a service. IT Professional 11(2), 10–13 (2009)
Meijer, E., Beckman, B., Bierman, G.: LINQ: reconciling object, relations and XML in the.NET framework. In: Proceedings of the 2006 ACM SIGMOD international conference on Management of data, p. 706. ACM, New York (2006)
Meyer, B., Hochschule, E.T., Zurich, S.: The unspoken revolution in software engineering. IEEE Computer 39(1), 124 (2006)
Microsoft-Live: Microsoft live mesh api, http://www.mesh.com
Montoya-Weiss, M., Massey, A., Song, M.: Getting it together: Temporal coordination and conflict management in global virtual teams. Academy of Management Journal, 1251–1262 (2001)
Olson, J.S., Olson, G.M.: Culture surprises in remote software development teams. Queue 1(9), 52–59 (2004)
Olston, C., Reed, B., Srivastava, U., Kumar, R., Tomkins, A.: Pig Latin: A not-so-foreign language for data processing. In: Proceedings of the 2008 ACM SIGMOD international conference on Management of data, pp. 1099–1110. ACM, New York (2008)
Rangan, K.: The Cloud Wars: $100+ billion at stake. Technical report, Tech. rep., Merrill Lynch (2008)
ReductiveLabs: Puppet configuration management, http://reductivelabs.com/trac/puppet
Rosenblum, M., Garfinkel, T.: Virtual machine monitors: Current technology and future trends. IEEE Computer 38(5), 39–47 (2005)
Salesforce: Salesforce customer relationships management (crm) system, http://www.salesforce.com/
Siegele, L.: Let It Rise: A Special Report on Corporate IT. The Economist (October 2008)
Szeredi, M.: Filesystem in userspace, http://fuse.sourceforge.net
Thain, D., Tannenbaum, T., Livny, M.: Distributed computing in practice: The Condor experience. Concurrency and Computation: Practice and Experience 17(2-4), 323–356 (2005)
Uhlig, R., Neiger, G., Rodgers, D., Santoni, A.L., Martins, F.C.M., Anderson, A.V., Bennett, S.M., Kagi, A., Leung, F.H., Smith, L.: Intel virtualization technology. IEEE Computer 38, 48–56 (2005)
Vogels, W.: A Head in the Clouds - The Power of Infrastructure as a Service. In: First workshop on Cloud Computing and in Applications (CCA 2008) (October 2008)
Weiss, A.: Computing in the clouds. ACM net Worker 11(4), 16–25 (2007)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2009 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Yara, P., Ramachandran, R., Balasubramanian, G., Muthuswamy, K., Chandrasekar, D. (2009). Global Software Development with Cloud Platforms. In: Gotel, O., Joseph, M., Meyer, B. (eds) Software Engineering Approaches for Offshore and Outsourced Development. SEAFOOD 2009. Lecture Notes in Business Information Processing, vol 35. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-02987-5_10
Download citation
DOI: https://doi.org/10.1007/978-3-642-02987-5_10
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-02986-8
Online ISBN: 978-3-642-02987-5
eBook Packages: Computer ScienceComputer Science (R0)