PaaS is a new category of cloud computing services that provides a platform allowing customers to develop, run, and manage applications without the complexity of building and maintaining the infrastructure. PaaS can be delivered in two ways:
• as a public cloud service from a provider, where the consumer controls software deployment and configuration settings, and the provider provides the networks, servers, storage and other services to host the consumer's application; or
• as software installed in private data centers or public infrastructure as a service and managed by internal IT departments
1. THE SILVESTRI GROUP
PaaS OVERVIEW FOR ERP
Essentials for Project Management and Developer Capabilities
Thomas Silvestri
3/3/2016
2. THE SILVESTRI GROUP | Thomas Silvestri, Managing Partner | 3600 N Lake Shore Drive #2608, Chicago, IL. 60613 | thomas@thomassilvestri.com | www.thomassilvestri.com
Platform as a Service (PaaS)
Essentials for Project Management and Developer Capabilities
Summary
PaaS is a new category of cloud computing services that provides a platform allowing
customers to develop, run, and manage applications without the complexity of building
and maintaining the infrastructure. PaaS can be delivered in two ways:
as a public cloud service from a provider, where the consumer controls software
deployment and configuration settings, and the provider provides the networks,
servers, storage and other services to host the consumer's application; or
as software installed in private data centers or public infrastructure as a service
and managed by internal IT departments
PaaS has been built by developers, for developers. Focusing on developer experience
and a flat learning curve is critical for wide adoption in the enterprise ERP systems for
higher rates of return on investment while reducing non-core applications and systems.
There are several essential capabilities that will gain project managers and developer’s
interest and adoption.
Here is a short list of value benefits PAAS ERP implementation benefits are:
Consolidated technology stack to support multiple languages and
frameworks
Developers can benefit from self-service provisioning of runtime resources covering a
wide choice of standard and familiar languages and frameworks supported in a single
platform. An extensible architecture that provides consistency and a common platform
for deployment across applications and also environments (e.g. dev, test, prod, etc.)
reduces the complexity, provisioning delays and costs caused by environmental and
configuration differences.
Built-in and natively managed marketplace of services
Developers get instant access to a marketplace of popular new application, data and
mobile services including connectivity to existing enterprise data installations for their
applications, testing and hands-on experience. Apps can bind to these services
automatically reducing cycle time by eliminating the typical complexities around
deployment, security, networking and resource management. Development teams of
3. THE SILVESTRI GROUP | Thomas Silvestri, Managing Partner | 3600 N Lake Shore Drive #2608, Chicago, IL. 60613 | thomas@thomassilvestri.com | www.thomassilvestri.com
any size should be able to start right away with the technology stack that is best suited
for their apps and rapidly evolve new ideas into complex applications, increasing
business agility.
Enhanced dashboards for app owners
Developers can manage and administer their applications and associated services from
a consolidated dashboard to view real time application status, event activity streams,
resource usage and logs. This empowers application owners and encourages a self-
service model freeing up IT operations teams to focus on more value added activities.
Operational Agility Essential for Enterprise PaaS
A good private PaaS model must also have downstream benefits to the operational
team with additional features that support not just the quick development of a new
generation of data-aware applications, but also the deployment operations of the apps
and platform. Built-in capabilities that contain the high costs of downtime, enforce
enterprise policy and prevent disruptions to the application lifecycle will go a long way
to improve operational speed and consistency. A true Enterprise PaaS provides an
integrated suite of operational capabilities:
Enact enterprise policy controls and governance
The platform provides a clean separation of Developer and Operator functions that
segregate access of shared resources and apply organization wide governance models,
making it easier for operations teams to enact tight access and policy controls, including
mapping to user authentication and identity systems in the enterprise.
Scale to meet peak user demands while reducing hardware costs
Adding more application and platform resources has traditionally been accomplished by
vertical scaling, i.e. adding larger machines and more compute. This is slow,
necessitates downtime and adds expensive hardware investments. Today, cloud
application architectures can employ horizontal scaling, which can be accomplished with
an enterprise PaaS using faster and lightweight methods like adding more containers.
A platform that is purpose built for enterprise applications should be able to rapidly
scale to hundreds of application instances in under a minute. Built in mechanisms will
dynamically route and automatically load balance application requests across the newly
scaled instances to ensure optimal end user service.
Designed for high application availability (HA)
Most platforms delegate complete responsibility of ensuring application availability to
the underlying IaaS. Given the high costs of downtime and the wide variability in the
4. THE SILVESTRI GROUP | Thomas Silvestri, Managing Partner | 3600 N Lake Shore Drive #2608, Chicago, IL. 60613 | thomas@thomassilvestri.com | www.thomassilvestri.com
support for these services in the IaaS, an enterprise PaaS needs to supplement with
capabilities that improve uptime and recovery such as, failure detection, app owner
alerts and auto recovery or healing of application instances and platform processes.
Application monitoring and metrics
Many organizations deploy Application Performance Management (APM) tools only after
they encounter problems. A PaaS that facilitates the collection of application and
infrastructure information and integrates with existing monitoring and alerting
infrastructure can help Operators proactively improve app performance, customer
experience and mitigate the expensive costs of downtime.
Flexibility to run your app on any infrastructure cloud
Developers put great effort into creating an application architecture that remains
flexible across operating systems and minimizes hard dependencies. For operations
teams, there is a similar challenge to make platform choices that remain flexible across
infrastructure clouds while minimizing dependency on a specific cloud. For example,
business expansion into new geos, merger and acquisition activity, changes in pricing or
compliance needs may surface the need for existing applications to move and run on
new clouds. Therefore, investing in a platform that offers cross-cloud portability of not
just the applications, but also the entire platform and related services will prove to be a
strategic investment.
Built for modern design and development practices
Given the strategic advantages and urgency for building apps, the benefits of practices
such as Agile and Continuous Delivery have propelled their adoption beyond the walls
of Internet giants like Facebook, Google and Amazon to mainstream IT. With
Continuous Delivery, application owners tighten quality and customer feedback cycles
by frequently releasing incremental changes to their production apps, sometimes
several times a day and eschew long build, test and deployment stages. Business agility
comes from being able to release committed code to customers at any point.
To be successful, this significant cultural and programmatic shift needs to be reinforced
with a platform that supports Continuous Delivery to ease the transition for
development and operations teams. The following built in capabilities help ensure a
smooth experience for end users as well as operators.
Minimize variability by deploying the same application “bundle” from dev through
production with clean abstractions allowing for stage-specific configurations
Blue-green deployment patterns with zero downtime