We help businesses grow by creating innovative digital strategies, technology, and experiences.
Cloud Computing is a hot term these days, but in truth it's now lost most of its meaning. As with many technical terms, people use it to refer to a disparate range of concepts and practices. In the most general sense, it simply means the delivery of applications from remotely hosted computers, which in business circles has traditionally been delivered through on-demand or Service Oriented Architecture (SOA). More recently, cloud services have been served by a growing number of cloud vendors - the largest provider being Amazon Web Services.
Cloud computing is an established and popular way to deliver software and service-focused applications. For example, software such as Microsoft Office 365, Salesforce, and GoToMeeting, are great examples of how software can be accessed and operated through a browser - without the need to own or have the product installed on your hard drive first. Additionally, a service-focused web application could include a travel company using a single service for their flight booking process, with another for accommodation, and so on. To the user, these services will appear integrated as they are accessed through a single interface, but the processes implementing them are actually developed independently from one another. This is what developers mean when they say a system is "loosely coupled".
In general, cloud hosted services are:
Cloud computing has shifted the approach of many enterprises considering development projects. This has been a strategic shift in focus to cloud software development, driven by long term business objectives and sustainable project performance. Traditionally, when a team of developers approach a project, they have a range of options in terms of the technologies (programming languages, frameworks etc.) that they use to deliver the required system. In the past, there was a tendency to view any development project in isolation, as a task aimed at solving one or more particular problems. The danger in this approach was that organisations sometimes found themselves bound to particular processes on account of their IT systems. In other words the IT in part limited, or even determined, what you could do, rather than simply serving what you wanted to do. What has emerged is a trend for developers to make more of an effort to see projects within the context of enterprise. Cloud computing liberates I.T departments from the restrictions of expensive and limiting in-house private cloud hardware, and enabling organisations to utilise core business processes directly from the public cloud via application–programming interfaces (API's) - unburdened by technical limitations. So cloud software development can rightly be seen as a tool to deliver projects, and developers can create applications to serve business systems.
Cloud computing provides an extensive, flexible and affordable way to implement cloud service models, using technical resources that have never been as readily available on such a scale as they are now. What exactly is cloud computing then? It depends on your perspective. To the end user, it means moving applications and data away from the PC, and onto the web – which doesn't tell you much about the platform. But for companies who are inventing and designing the systems of the future, cloud computing can drastically change how they operate, presenting new ways to approach traditional methods of I.T and software development.