Software Engineering Research Gaps in the Cloud

Software Engineering Research Gaps in the Cloud

Sitalakshmi Venkatraman (Department of Higher Education-Business, Northern Melbourne Institute of TAFE, VIC, Australia)
Copyright: © 2013 |Pages: 19
DOI: 10.4018/jitr.2013010101
OnDemand PDF Download:
No Current Special Offers


This paper takes a systematic review methodology to unearth the reason for a slow adoption of cloud computing by businesses, despite the user interests and cloud advancements gained recently. The key finding is that the IT industry has taken different modelling approaches to engineer and deliver the cloud services based on the goals of different key cloud players, thereby raising various adoption challenges and concerns. In this context, there is a need for rethinking Software Engineering concepts. This motivates us to question whether the existing Software Engineering theories and modelling principles are sufficient for the new cloud computing paradigm. Due to the paucity of a comprehensive review in literature, the main aim of this review article is to identify such research gaps and insufficiencies in Software Engineering, and to provide recommendations for bridging these gaps. In this work, the systemic review of the state of the art of cloud computing has resulted in identifying four major cloud modelling gaps that require prime attention. The paper discusses these gaps and identifies the key Software Engineering challenges prevalent in addressing each of these gaps. Finally, the author proposes five topmost research recommendations specifically designed for overcoming these gaps/challenges in order to facilitate a sustainable cloud adoption. Overall, the author’s findings have established the need to rethink Software Engineering theories for arriving at a multilateral or distributed cloud modelling approach. With such rethinking, the proposed cloud design automatically incorporates cloud user-roles, interoperability, intelligent automation and trusted cloud infrastructure strategies for achieving a sustainable cloud framework of the future.
Article Preview

1. Introduction

Cloud computing is defined as applications, services and resource pools that are dynamically provisioned over Internet in a co-ordinated fashion. It is a recently emerging computing paradigm that enables convenient on-demand access to a pool of shared computing resources that can be rapidly configured and provisioned (NIST, 2011). However, there are many concerns and issues to be settled before venturing into the cloud (Benson et al., 2010; Bisong & Rahman, 2011). Fundamental challenges in adapting current software engineering concepts into the cloud are not explored and given due importance (Guha & Al-Dabass, 2010; Mohagheghi & Sæther, 2011). This paper identifies such challenges and issues involved in bringing existing software systems into the cloud, since such systems are predominantly developed based on traditional service-oriented architecture (SOA) concepts. These have to be adapted and extended suitably for the cloud. Our premise is that these challenges should be given prominence as they provide opportunities for software engineering experts and researchers to re-engineer their thinking. This paper takes a modest step to facilitate this process by providing a research roadmap.

Cloud computing has the capability of combining the recent developments in Web technologies, both in hardware as well as software contexts, such as networking, APIs, semantic Web 2.0 languages, SOA protocols and standards (Guha & Al-Dabass, 2010; Mohagheghi & Sæther, 2011). Apart from the maturity achieved in high-end anywhere and anytime distributed computing paradigms such as Internet and Grid networks, recent trends in utilising these resources for intelligent data analysis and provisioning of user-centric services indicate the capacity of cloud to provide quality of services in a cost-effective manner. Small and large organisations could now host their data and business application centres virtually in the cloud. However, for the existing data, workflow and business applications to be migrated into the cloud, there are software engineering challenges that need to be addressed first (Guha & Al-Dabass, 2010).

Due to the unprecedented scale and heterogeneity of the required infrastructure, cloud computing poses a variety of challenges to conventional software engineering principles adopted in the existing systems (Enck et al., 2010; Venkatraman & Wadhwa, 2012). Some challenges that are typical of any new information system paradigm would cover the technological issues, while others are non-technological in nature (Jennings, 2010; Shenai et al., 2013). In this context, there requires a rethinking to exploit the Grid, SOA and Web technologies for the realisation of services on the cloud systems (Ramanathan & Venkatraman, 2010). This demands setting up a research roadmap to address both technological and non-technological gaps that relate to topics for research such as, elastic scalability, programming models, data management, systems life cycle management, privacy and security, economic models, governance and legislation.

In general, problems in deep understanding of the challenges encompassing the cloud arise due to lack of proper knowledge of the cloud architecture, types, models and user-roles that impact the cloud adoption (Elson & Howell, 2009; Ramanathan & Venkatraman, 2012). Hence, the aim of this paper is to identify the technological and non-technological gaps present between current cloud models and software engineering design principles and practices that need to be adapted and extended for the new cloud paradigm. We adopt a systemic methodology, and identify the software engineering research challenges for these gaps. Finally, we provide a set of recommendations for addressing the identified software engineering challenges suitably in order to facilitate a smooth migration to the cloud service paradigm.

Complete Article List

Search this Journal:
Volume 15: 6 Issues (2022): 1 Released, 5 Forthcoming
Volume 14: 4 Issues (2021)
Volume 13: 4 Issues (2020)
Volume 12: 4 Issues (2019)
Volume 11: 4 Issues (2018)
Volume 10: 4 Issues (2017)
Volume 9: 4 Issues (2016)
Volume 8: 4 Issues (2015)
Volume 7: 4 Issues (2014)
Volume 6: 4 Issues (2013)
Volume 5: 4 Issues (2012)
Volume 4: 4 Issues (2011)
Volume 3: 4 Issues (2010)
Volume 2: 4 Issues (2009)
Volume 1: 4 Issues (2008)
View Complete Journal Contents Listing