IJERT-Provider Independent Model For Developing Cloud Applications (original) (raw)
Related papers
A Reference Model for Developing Cloud Applications
Cloud Computing is a paradigm shift that involves dynamic provisioning of shared computing resources on demand. It is a pay-as-you-go model that offers computing resources as a service in an attempt to reduce IT capital and operating expenditures. The problem is that current software architectures lack elements such as those related to address elasticity, virtualization and billing. These elements are needed in the design of cloud applications. Moreover, there is no generic cloud software architecture for designing and building cloud applications. To further complicate the problem, each platform provider has different standards that influence the way applications are written. This ties cloud users to a particular provider. This paper will focus on defining a reference model for cloud computing; more particularly, it presents a meta-model that shows the main cloud vocabulary and design elements, the set of configuration rules, and the semantic interpretation. It is always important to understand the abstract architecture of a system, and then tackle platform-specific issues. This separation of concerns allows for better maintainability, and facilitate applications portability.
Describing Cloud Applications Architectures
Lecture Notes in Computer Science, 2013
The architecture of cloud applications differs from traditional software architectures mainly regarding their basic architectural elements, the services, the metadata about the services for expressing information related to quality parameters and pricing models, and the constraints over the applications and the used services. This paper presents Cloud-ADL, a seamless extension of the ACME ADL to support the architectural representation of cloud applications by relying on the existing ACME abstractions. In addition, it defines contracts to modularly encapsulate typical contract information of cloud applications, such as quality parameters, pricing model of the services, and constraints. Finally, Cloud-ADL also supports the dynamic reconfiguration of cloud applications through programmed changes, which can be foreseen at design time and specified at the ADL level.
Critical study of software models used cloud application development
SCI, 2018
These days, each merchant and IT specialist coop needs to switch into a cloud domain for better Quality of Service (QoS), Implacability, Performance and sensible Cost. Numerous product engineers attempting to get the advantages of distributed computing and need to get to the cloud conditions with ease and simple access. For this method of reasoning and constant cloud benefits, a solid virtual stage is required. Numerous issues are experiencing being developed and organization of these stages in regards to programming models, application design, APIs and administrations it gave. Then again, there are excessively numerous issues on the customer side, including the constraint of instruments, the cooperation amongst customer and specialist organization and client prerequisites in a particular cloud. As the cloud is intrinsically circulated condition, so it creates holes in correspondence and coordination between stack holders. To adapt to these obstructions and conquer challenges amid programming development in Cloud Computing, it is important to have a structure which settle the issues and build up the product procedure demonstrate which meet the client necessity and give nature of administrations inside a period and spending plan. In this paper, the writing survey fundamentally centers around the product procedure show with their quality and shortcoming. The writing audit likewise dissects a few traits for programming life cycle including cost, time, versatility and QoS.
PaaS-independent Provisioning and Management of Applications in the Cloud
Study of existing cloud platforms shows that their operating requires the use of specific and proprietary APIs. This PaaS providers' policy is hampering the interactions between different clouds. If appropriate solutions are not considered, this issue would for instance slow down the democratization of clouds federation and cooperation. In this paper, we propose (i) a unified description model that allows to represent a PaaS application independently of the targeted PaaS and (ii) a generic PaaS application provisioning and management API (*-PaaS API). Our proposed solution applies the separation of concerns principle by separating the provisioning and the management API from the defined description model. We motivate our solution with real use case scenarios and an implementation to show its feasibility.
Version: 1.0.1 Cloud Usage Patterns: A Formalism for Description of Cloud Usage Scenarios
2016
Cloud computing is becoming an increasingly lucrative branch of the existing information and communication technologies (ICT). Enabling a debate about cloud usage scenarios can help with attracting new customers, sharing best-practices, and designing new cloud services. In contrast to previous approaches, which have attempted mainly to formalize the common service delivery models (i.e., Infrastructure-as-a-Service, Platform-as-a-Service, and Software-as-a-Service), in this work, we propose a formalism for describing common cloud usage scenarios referred to as cloud usage patterns. Our formalism takes a structuralist approach allowing decomposition of a cloud usage scenario into elements corresponding to the common cloud service delivery models. Furthermore, our formalism considers several cloud usage patterns that have recently emerged, such as hybrid services and value chains in which mediators are involved, also referred to as value chains with mediators. We propose a simple yet expressive textual and visual language for our formalism, and we show how it can be used in practice for describing a variety of realworld cloud usage scenarios. The scenarios for which we demonstrate our formalism include resource provisioning of global providers of infrastructure and/or platform resources, online social networking services, user-data processing services, online customer and ticketing services, online asset management and banking applications, CRM (Customer Relationship Management) applications, and online social gaming applications. Keywords 1 : cloud computing; usage patterns; domain-specific language; visual language; structuralism; CCS-Software and its engineering-Software notations and tools-Context specific languages-Domain specific languages CCS-Theory of computation-Formal languages and automata theory-Grammars and contextfree languages CCS-Software and its engineering-Software notations and tools-Context specific languages-Visual languages CCS-Computer systems organization-Architectures-Distributed architectures-Cloud computing CCS-Applied computing-Enterprise computing-Service-oriented architectures CCS-Applied computing-Enterprise computing-Business process management-Crossorganizational business processes CCS-Software and its engineering-Software creation and management-Software development process management-Software development methods-Design patterns
A service-oriented framework for developing cross cloud migratable software
Journal of Systems and Software, 2013
Whilst cloud computing has burst into the current scene as a technology that allows companies to access high computing rates at limited costs, cloud vendors have rushed to provide tools that allow developers to build software for their cloud platforms. The software developed with these tools is often tightly coupled to their services and restrictions. Consequently vendor lock in becomes a common problem which multiple cloud users have to tackle in order to exploit the full potential of cloud computing. A scenario where component-based applications are developed for being deployed across several clouds, and each component can independently be deployed in one cloud or another, remains fictitious due to the complexity and the cost of their development. This paper presents a cloud development framework for developing cloud agnostic applications that may be deployed indifferently across multiple cloud platforms. Information about cloud deployment and cloud integration is separated from the source code and managed by the framework. Interoperability between interdependent components deployed in different clouds is achieved by automatically generating services and service clients. This allows software developers to segment their applications into different modules that can easily be deployed and redistributed across heterogeneous cloud platforms.
POPULAR CLOUD APPLICATIONS: A CASE STUDY
Cloud Computing: Cloud computing is a model for enabling ubiquitous, convenient, on-demand network access to a shared pool of configurable computing resources (e.g., networks, servers, storage, applications, and services) that can be rapidly provisioned and released with minimal management effort or service provider interaction . Three delivery models of Cloud Software as a Service (SaaS): The consumer uses an application, but does not control the operating system, hardware or network infrastructure on which it's running. Platform as a Service (PaaS): The consumer uses a hosting environment for their applications. The consumer controls the applications that run in the environment (and possibly has some degree of control over the hosting environment), but does not control the operating system, hardware or network infrastructure on which they are running. The platform is typically an application framework. Infrastructure as a Service (IaaS): The consumer uses "fundamental computing resources" such as processing power, storage, networking components or middleware. The consumer can control the operating system, storage, deployed applications and possibly networking components such as firewalls and load balancers, but not the cloud infrastructure beneath them.
Critical Analysis of Cloud Computing Software Development Process Models
Nowadays, every vendor and IT service provider wants to switch into a cloud environment for better Quality of Service (QoS), Scalability, Performance and reasonable Cost. Many software developers trying to get the benefits of cloud computing and want to access the cloud environments at low cost and easy access. For this rationale and real-time cloud services, a reliable virtual platform is required. Many issues are encountering in development and deployment of these platforms regarding programming models, application architecture, APIs and services it provided. On the other hand, there are too many issues on the client side, including the limitation of tools, the interaction between client and service provider and user requirements in a specific cloud. As the cloud is inherently distributed environment, so it fabricates gaps in communication and coordination between stack holders. To cope with these obstacles and overcome challenges during software development in Cloud Computing, it is necessary to have a framework which resolves the issues and develop the software process model which meet the user requirement and provide quality of services within a time and budget. In this paper, the literature review mainly focuses on the software process model with their strength and weakness. The literature review also analyzes some attributes for software life cycle including cost, time, scalability and QoS.
Modeling Cloud Software-As-A-Service: A Perspective
International Journal of Information and Electronics Engineering, 2012
Cloud computing, an emerging computing paradigm, is still in its stage of infancy. It can be considered as an amalgam of a variety of legacy and evolving technologies and concepts such as distributed computing, grid computing, virtualization, service-oriented architecture, software-as-aservice etc. to mention a few. It aims at optimally utilizing the distributed, dynamically-scalable and often virtualized resources such as processors, storage and software, which are made available to the users as services over a network, on a pay-per-use basis. These services can be easily accessed by the user through an interface, as simple as a browser. But as the technologies are in a state of flux, developing the software services in the cloud directly using existing technologies will make them obsolete as and when new technologies evolve.