Platform-as-a-Service is one of the hottest new technologies to hit the market in recent years. Already it has seen significant adoption from startups and web 2.0 companies using it as their development, test, and production environments on platforms such as Heroku, Engine Yard, Microsoft Azure, and AppFog. Gartner predicts that by 2015, most enterprises will have part of their run-the-business software functionally executing in the cloud, using PaaS services or technologies directly or indirectly.
Most surprising is that even with developers and web 2.0 companies creating the majority of PaaS adoption, PaaS will still become the most disruptive technology transforming business in the enterprise for the foreseeable future.
While this transformation is created by technology, it enables multiple other parts of the business to evolve: staffing and hiring development teams, enabling service/deployments/scaling, maintaining ownership of a service, enabling business teams to interact as stakeholders in the development processes and shifting operations teams to know and understand the business and how resources are handled.
What is this PaaS thing?
“Platform as a service (PaaS) is a category of cloud computing services that provide a computing platform and a solution stack as a service. In the classic layered model of cloud computing, the PaaS layer lies between the SaaS and the IaaS layers.”
[Wikipedia: http://en.wikipedia.org/wiki/Platform_as_a_service ]
Platform-as-a-Service is a framework for running applications and consuming services that handles many standard IT operational functions such as deploying, optimizing, and allocating resources, scaling/load balancing, health monitoring, and service discovery – all without manual operational intervention. In essence, it gives control to the business, product, and development teams to perform their job without requiring IT to be involved and causing a bottleneck.
PaaS is still in its early stages, but it is growing into a standard faster than even virtualization. Teams starting new projects are already considering using it or have enabled it in their dev/test environments.
For more information about PaaS check out Removing the Operating System Barrier with Platform as a Service (PaaS) – a guest post from Adron Hall.
1. Services, Deployments, Scaling, and Monitoring
IT organizations are constantly struggling with building and maintaing a standardized way to enable services for their customers, allow seem less deployment and integration with existing systems, scale to meet the demands of the business, and give all of these things with monitoring and a good service level. This is very hard to do – not because there wasn’t a true effort to have and enforce the standard — but because the platform itself didn’t create and dictate the standard
With PaaS services are defined in the system automatically for consumption enabling standards by default without any manual configuration or validation.
When your team deploys to a Platform as a Service, the system is built to deploy the application for you across all instances and services–relieving the operations team from the task of manually doing a deployment.
. This also enables continuous integration to start happening where deployments can be more regular. Scaling of instances are easier via standardization as you can now easily scale up and down the amount of instances needed which the platform will handle the process of adding and removing instances for you. With health monitoring when an instance fails the platform will work to heal itself by moving that instance out of rotation and spinning up another one to replace it.
2. Staffing and Teams
Even with the downshift of the economy, tech jobs are in demand. Many companies struggle to find and hire developers.
We can all agree that there are insufficient numbers of engineers graduating from college to meet demand.
. What we don’t agree on is how business will be able to bring on engineering/development talent without struggling.
With a multi-runtime platform as a service offering inside the company – one that can support multiple development languages on the same platform — hiring is much different.
. Now don’t start an engineering job description off with a list of supported languages, instead list all of the languages supported by your PaaS and then just focus on hiring a rock star who can add real value. PaaS opens the market, enabling you to go from a one or two language shop to a 5+ language shop. Teams can now choose the language they prefer – or the one that is ideal for a projects – and hire from there. For example, you could have two java teams, one .NET team, and three python teams. PaaS gives you so much hiring flexibility and thought leadership that you can enable a developer to branch out and try other things.
3. Adopting Technology is Easier
IT organizations are becoming more critical to business competitiveness and agility everyday. To enable this agility that the business needs from IT new services and IT based projects have continued to grow while staff has not grown to meet that demand. With all of these new services and projects the technical debt of maintaining these solutions grow exponentially making adopting these new services and projects harder.
By enabling a PaaS into the organization the transfer of application ownership can be maintained by the development team and business application owners with a supportive role from the IT operations team as the standardization is built into the system itself instead of maintained by manual IT process.
With built in service discovery and modular based architecture for services in PaaS the IT organization has a pattern and best practice for bringing on new services and features that are easily enabled for the organization. Already platforms such Cloud Foundry support over 7 runtime languages, multiple databases, and messaging systems.
4. Enabling Standardized Consumption of Services
Today enabling/provisioning IT resources is typically very difficult to achieve.
. IT organizations have to keep pace with constant technology changes and all the effort in bringing new technologies into the fold to be supported. This often creates multiple “one-off” offerings that are more difficult to support across the organization.
With PaaS, discovery of services are built directly into the platform for easy integration and discovery . Developers, application owners, and operations can easily manage and architect their application with standardized scaling, monitoring with best practices built directly into the service. With the built in flexibility and standardization of PaaS the operation team can now focus on the platform itself and not creating multiple “one-off” scenarios.
5. IT at the Speed of Business
Within most companies there is the “IT Department” (yes, I am over generalizing). Business teams often consider this department stagnant and a major cost center for operating tasks. Strict policies, limited flexibility, project delays, not using the latest and greatest software, slow development are common complaints causing business users to work very hard to avoid IT. The IT organization is simply not able to move at the “speed of business” because they are working to maintain legacy while also offer value to the business.
By moving to PaaS not only are you enabling the rebirth of what IT is to your business, but you are also creating the agility needed for the business to thrive. Standard processes built into the core of your environment that enable delivery of applications with the scalability for the demands of the enterprise will streamline your development and delivery to your users. Being able to use the platform to recruit from the broadest possible pool for the best talent available without restriction is key.