A Survey on Software as a Service (Saas) Cloud for Programming Language Computing Prof. Balamurugan E Sujith Jayapraksh Dominic Owusu Assoc. Prof of ICT Sr. Lecturer of ICT Lecturer BlueCrest College BlueCrest College BlueCrest College Accra, Ghana Accra, Ghana Accra, Ghana e.balamurgan@blurcrest.edu.gh sujith.jayaprakash@bluecrest.edu.gh dominic.owusu@bluecrest.edu.gh Abstract Cloud computing is the delivery of computing services over the Internet. Cloud services allow individuals and educational institutions to use software and hardware that are managed by third parties at remote locations. The cloud computing model allows access to information and computer resources from anywhere that a network connection is available. Cloud computing provides a shared pool of resources, including data storage space, networks, computer processing power, and specialized corporate and user applications. In this paper we have compared the features of cloud computing Software as a Service (SaaS) model tools and how it can help at higher technical education institutions for the teaching learning process of programming languages. This paper also emphasis the advantages of using cloud services and recommends the SaaS tools how to use in an Educational Institution. Educational institutions such as Schools, Colleges, Universities are in need of availing the SaaS cloud features with proper security. Keywords : Cloud Computing, Cloud Models, SaaS, Programming Languages I. INTRODUCTION Cloud computing is one of the scalable approach to IT infrastructure, a growing number of schools are using cloud-based computing as a tremendous opportunity to achieve large-scale efficiencies without sacrificing performance with low cost. Cloud computing is defined by the National Institute of Standards and Technology (NIST) as a model for providing a provisioned and on-demand computing resources which includes On-demand self-service, Broad network access, Resource pooling, Rapid elasticity and Measured service[1]. The term cloud computing is confusion to many people as the term can be used to mean almost anything. Cloud is used as a metaphor for Internet and its main objective is customization and user defined experience. In other words cloud computing provides shared resources, software and information through Internet as a PAYGO (Pay-as-you-go) basis. In the recent years [2], where educational institutes, universities, industries are giving their full contribution in transforming the society and entire world economy. Various researches are carried out to
update the present IT infrastructure especially in the area of education. Cloud services are popular because they can reduce the cost and complexity of owning and operating computers and networks. Since cloud users do not have to invest in information technology infrastructure, purchase hardware, or buy software licenses, the benefits are low up-front costs, rapid return on investment, rapid deployment, customization, flexible use, and solutions that can make use of new innovations. In addition, cloud providers that have specialized in a particular area (such as e-mail) can bring advanced services that a single company might not be able to afford or develop and the benefits are: Scalability Reliability Efficiency Load Balancing Data Security and locality Scalability means that cloud computing offers unlimited processing and storage capacity. The cloud is reliable in that it enables access to applications and documents anywhere in the world via the Internet. Cloud computing is often considered efficient because it allows organizations to free up resources to focus on innovation and product development. Another potential benefit is that personal information may be better protected in the cloud. Specifically, cloud computing may improve efforts to build privacy protection into technology from the start and the use of better security mechanisms. Cloud computing will enable more flexible IT acquisition and improvements, which may permit adjustments to procedures based on the sensitivity of the data. Widespread use of the cloud may also encourage open standards for cloud computing that will establish baseline data security features common across different services and providers. Cloud computing may also allow for better audit trails. In addition, information in the cloud is not as easily lost. This paper is described as various section such as (i) introduction (ii) Literature review (iii) Cloud computing Services (iv) Software as a Service (SaaS) (v) Conclusion II. LITERATURE REVIEW There were various researches are going on recent days regarding the various application of cloud computing[3]. Today the biggest challenge for education institutions are infrastructure establishment they need to invest lots of money for infrastructure, Laboratory, Software purchase etc. so its mandatory that invest for resources are a big challenges for the institutions. According to Sultan [4] potential of cloud computing for improving efficiency, cost and convenience for the educational sector is being recognized by a number of US educational establishments. Gartner [5]
defines cloud computing as a style of computing in which scalable and elastic IT- enabled capabilities are delivered as a service using Internet technologies. Katz et al. narrated the important features of cloud computing in higher education with respect to ondemand SaaS, PaaS, and IaaS Increasing access to scarce IT expertise and talent,scaling IT services and resources, Promoting further IT standardization, Accelerating time to market through IT supply bottleneck reductions, Channeling or countering the ad hoc consumerization of enterprise IT services, Facilitating the transparent matching of IT costs, demand and funding. Increasing interoperability between disjoint technologies within and between institutions, Supporting a model of a 24 x 7 x 365 environment. Enabling the sourcing of cycles and storage powered by renewable energy, Driving down capital and total costs of IT in higher education. According to Banerjee Sarbojit et al.[6] the cloud allows for information durability, which means information can be placed in cloud storage for as long as needed. He adds that the advent of online video has made the idea of cloud in education even more exciting, providing universal access to teaching videos and demonstrations on almost any topic. III. CLOUD COMPUTING SERVICES Cloud computing provides the ability to access and manipulate various information resources stored on remote servers. Basic cloud computing services (Fig 1) is to consider the use of email services such as Yahoo, Gmail, and Hotmail. These email services take care of housing all of the hardware and software that the necessary to support personal accounts [7]. When the users want to access their emails with the Internet access, they just need to log in to email client via any web browsers. Cloud computing consist of three types of services where depending on the needs, the clients can choose one or more services. Those three services are: (i) Software as a Service (SaaS) (ii) Infrastructure as a Service (IaaS) (iii) Platform as a Service (PaaS) Software as a Service [SaaS] Clients are able to access software applications over the internet. The applications are hosted in the cloud and can be used for a wide range of tasks for both individuals and organizations. Platform as a Service [PaaS] Cloud computing provides infrastructure to the clients and more. PaaS is a set of software and infrastructure with all the stuff that a developer needs to build applications, such as programming software or database software, having an indirect access to the IaaS services and, consequently, to the infrastructure.
Infrastructure as a Service [IaaS] All the required hardware is provided by cloud service providers and the clients deal with their application software, such as servers, net technology, storage or computation, as well. Fig 1. Cloud service Models Moreover Cloud computing has four different deployment modes (Fig 2). Those modes are: Private Cloud is cloud platform witch minted for specific clients. It can be managed internally by internet IT or externally by a third party. This main feature avoids many security issues but may be expensive for small organizations. Public cloud is the most common model of cloud computing to many clients. IaaS, PaaS and SaaS are provided by a third party provider. Constructed using pooled shared physical resources, and accessible over a public network such as the internet. Fig 2. Cloud Service models with Deployment models Community cloud is when some clients with similar needs share an external private cloud. The platform of the cloud would be provided by a supplier but only the clients in same community would be able to access the cloud.
Hybrid cloud or enterprise cloud consists of both in-house providers and third party providers where part of the cloud is private and only accessible internally and the other part is public and can be accessed externally. networks, servers, storage, applications, and services. IV. SOFTWARE AS A SERVICE (SAAS) MODEL In SaaS model educational institutions can use the software services like online compilers, various application software services provided by Cloud Service. The applications are accessible from various client devices through either a thin client interface, such as a web browser (e.g., web-based email), or a program interface at any device. The education institution does not manage or control the underlying cloud infrastructure including network, servers, operating systems, storage, or even individual application capabilities, with the possible exception of limited user-specific application configuration settings. In general colleges and universities offering ICT Programmer s there is need of different programming software s for programming language teaching like C,C++, Java, PHP, MySQL etc[7,8]. and their research work. The main problem associated with it are first licensing and maintenance cost and second installation overhead based on this here this survey is presenting some examples by which educational institutions can reduce the overhead by using software as service of cloud[9]. The following are some of the tools which SaaS. (i) JAVALAUNCH (vi) TUTORIALPOINT (ii) JDOODLE (vii) COMPILER (iii) BROWXY (viii) ONLINECOMPILER (iv) COMPILEJAVA (ix) CODEPAD (v) COMPILEONLINE (x) IDEONLINE The SaaS tools mentioned above are online compiler and debugging tool which allows you to compile source code and execute it online in more than 60 programming languages like C, C++, SQL, Java, Objective C,.NET etc. All the tools are not having unique features the feature comparison for above tools with respect to (i) Programming language support (ii) Features like only compile & Run or Save (iii) URL
Programming Features S.No. Tool Language URL Compile Save Support (PLS) & Run 1. JAVALAUNCH Core Java Yes No http://www.javalaunch.com/ 2. JDOODLE Core Java Yes Yes http://www.jdoodle.com/ 3. BROWXY Complete Java Yes Yes http://browxy.com/ 4. COMPILEJAVA Complete Java Yes No http://www.compilejava.net/ 5. COMPILEONLINE C,C++,Java, Webbased IDEs Yes No http://compileonline.com/ 6. TUTORIALPOINT C,C++, Java, MySQL, 7. COMPILER C,C++, Java, MySQL, 8. ONLINECOMPILER GCC, MINGW, GFORTRAN, JAVA, GPC, FREEBASIC Yes No http://www.tutorialspoint.com Yes http://lynda.com Yes Yes http://www.onlinecompiler.net 9. CODEPAD Cross browser Testing with Selenium. Yes No http://codepad.org 10. IDEONLINE C, C#, C++, SQL, Java, Objective C Yes No http://ideone.com/ V. CONCLUSION In this paper we present some simple example that how we can utilize the Software as Service (SaaS)of cloud Service. A part form SaaS there are two more services provide by the cloud which can be utilizes for the betterment of higher education.the sample tools provided here are not limited and the features
measured are also scalable. As per observation few tools are supporting more programming Languages and also with storage options which can motivate and help the programmer to for further references. REFERENCES : [1] Tout, Sverdlik, and Lawver, Cloud Computing and its Security in Higher Education, In Proceedings of the Proc ISECON 2009. [2] Bo Wang, HongYu Xing The Application of Cloud Computing in Education Informatization In Proceeding of Computer Science and Service System (CSSS), 2011 IEEE. [3] Mohiuddin Ahmed, Abu Sina Md. Raju Chowdhury, Mustaq Ahmed, Md. Mahmudul Hasan Rafee An Advanced Survey on Cloud Computing and State-of-the-art Research Issues IJCSI International Journal of Computer Science Issues, Vol. 9, Issue 1, No 1, January 2012 [4] Sultan, N., Cloud computing for education: A new dawn?, International Journal of Information Management, no. 30, 2010, 112. str., 001170 (28. 01. 2013) http://www.sciencedirect.com/science/article/pii/s0268401209 [5] Gartner, IT Glossary, http://www.gartner.com/itglossary/cloud-computing (15. 01. 2013) [6] Banerjee Sarbojit and Jain Shivam, A survey on software as a service (SAAS) using quality model in cloud computing, International Journal Of Engineering And Computer Science, Vol. 3, Issue 1, Jan 2014, pp 3598-3602. [7] Rawat Mrinal, Mittal Arpita, Dubey Sanjay, Survey on impact of software metrics on software quality, International Journal Of AdvancedComputer Science and Applications, Vol. 3, Issue 1, 2012. [8] Singh Gurudev et.al, CM management facets for cloud performance, International Journal Of Computer Applications, Vol. 23, No. 3, June 2011. [9] Patidar, S.; Rane, D.; Jain, P. A Survey Paper on Cloud Computing IEEE Xplore Digital Library 2010