Cloud computing solutions and cloud services enable enterprises increase revenue by saving time and costs or adding value to end customers. Calsoft offers cloud services such as PaaS (Platform as a service) and SaaS (Software as a Service), including consulting, system design and development, implementation, maintenance and support. The services are available on demand and the flexible business model helps enterprises to respond dynamical operation challenges.
The cloud is IT as a service, delivered by IT resources that are independent of location. It is a style of computing in which dynamically scalable and often virtualized resources are provided as a service over the Internet where end‐users have no knowledge of, expertise in, or control over the technology infrastructure (the cloud) that supports them.
Before some of the attributes will be defined, the term cloud should be explained. A cloud has been long used in IT, in network diagrams respectively, to represent a sort of black box where the interfaces are well known but the internal routing and processing is not visible to the network users. Key attributes in cloud computing:
Service‐Based: Consumer concerns are abstracted from provider concerns through service interfaces that are well‐defined. The interfaces hide the implementation details and enable a completely automated response by the service provider. The service could be considered "ready to use" or "off the shelf" because it is designed to serve the specific needs of a set of consumers, and the technologies are tailored to that need rather than the service being tailored to how the technology works. The articulation of the service feature is based on service levels and IT outcomes such as availability, response time, performance versus price, and clear and predefined operational processes, rather than technology and its capabilities. In other words, what the service needs to do is more important than how the technologies are used to implement the solution.
Scalable and Elastic: The service can scale capacity up or down as the consumer demands at the speed of full automation (from seconds for some services to hours for others). Elasticity is a trait of shared pools of resources. Scalability is a feature of the underlying infrastructure and software platforms. Elasticity is associated with not only scale but also an economic model that enables scaling in both directions in an automated fashion. This means that services scale on demand to add or remove resources as needed.
Shared: Services share a pool of resources to build economies of scale and IT resources are used with maximum efficiency. The underlying infrastructure, software or platforms are shared among the consumers of the service (usually unknown to the consumers). This enables unused resources to serve multiple needs for multiple consumers, all working at the same time.
Metered by Use: Services are tracked with usage metrics to enable multiple payment models. The service provider has a usage accounting model for measuring the use of the services, which could then be used to create different pricing plans and models. These may include pay‐as‐you go plans, subscriptions, fixed plans and even free plans. The implied payment plans will be based on usage, not on the cost of the equipment. These plans are based on the amount of the service used by the consumers, which may be in terms of hours, data transfers or other use‐based attributes delivered.
Uses Internet Technologies: The service is delivered using Internet identifiers, formats and protocols, such as URLs, HTTP, IP and representational state transfer Web‐oriented architecture. Many examples of Web technology exist as the foundation for Internet‐based services. Google's Gmail, Amazon.com's book buying, eBay's auctions sharing all exhibit the use of Internet and Web technologies and protocols. More details about examples are in the chapter four – Intergration 
A basis infromation about the architecture is provided in this chapter, together with the explanations of relevant terms such as virtualization, Frond/Back end or Middleware.
Virtualization is best described as essentially designating one computer to do the job of multiple computers by sharing the resources of that single computer across multiple environments. Virtual servers and virtual desktops allow you to host multiple operating systems and multiple applications locally and in remote locations, freeing your business from physical and geographical limitations.=
The Cloud Computing architecture can be divided into two sections, the front end and the back end, connected together through a network, usually Internet. The Front End includes the client's computer and the application required to access the cloud computing system. Not all cloud computing systems have the same user interface. Services like Web‐based e‐mail programs leverage existing Web browsers like Internet Explorer or Firefox. Other systems have unique applications that provide network access to clients.
The Back End of the system is represented by various computers, servers and data storage systems that create the "cloud" of computing services. Practically, Cloud Computing system could include any program, from data processing to video games and each application will have its own server.
A central server administers the system, monitoring traffic and client demands to ensure everything runs smoothly. It follows a set of rules called protocols and uses a special kind of software called Middleware. Middleware allows networked computers to communicate with each other.
Public Cloud (external cloud) is a model where services are available from a provider over the Internet, such as applications and storage. There are free Public Cloud Services available, as well as pay‐per‐usage or other monetized models. Private Cloud (Internal Cloud/Corporate Cloud) is computing architecture providing hosted services to a limited number of people behind a company’s protective firewall and it sometimes attracts criticism as firms still have to buy, build, and manage some resources and thus do not benefit from lower up‐front capital costs and less hands‐on management, the core concept of Cloud Computing.
Cloud computing categories
There are three main categories in CC, Infrastructure as a Service (IaaS), Software as a Service (SaaS) and Platform as a Service (PaaS). All of them are described below in more details.
Infrastructure as a Service is a provision model in which an organization outsources the equipment used to support operations, including storage, hardware, servers and networking components. The service provider owns the equipment and is responsible for housing, running and maintaining it.
Software as a Service is a software distribution model in which applications are hosted by a vendor or service provider and made available to customers over a network, typically the Internet. It is becoming an increasingly prevalent delivery model as underlying technologies that support Web services and service‐oriented architecture become increasingly available.
Platform as a Service is an outgrowth of Software as a Service (SaaS). It is a way to rent hardware, operating systems, storage and network capacity over the Internet. The service delivery model allows the customer to rent virtualized servers and associated services for running existing applications or developing and testing new ones.