Page 84 - Cloud Essentials
P. 84
Development and Architecture
Cloud computing, specifically PaaS, makes new building blocks available
to application developers. This means rapid application development,
testing, and deployment compared to traditional on-premises methods.
Development Process
Any software-development process requires translating functional and
nonfunctional requirements into a working solution providing services to a
user community. This does not change with cloud computing. What does
change is the set of building blocks on which this is done.
Cloud computing provides a large ecosystem of prebuilt components that
can be used. Performance and scalability requirements are more easily met,
some traditional risks disappear, and new risks arise. The traditional
waterfall model (design, build, order hardware, and install) changes.
Instead, the cloudscape must be inventoried for existing services and
components. This includes SaaS, PaaS, and IaaS services. Then, building
the system often consists of configuring existing services.
Application Architecture
Application architecture describes how an application is subdivided into
components, together with the relations that these components have, in
addition to the relations that these applications have with other applications.
Contemporary applications are built in layers: clients, presentation,
business logic, and database. Application development with cloud
computing can change all these layers.
Building blocks The building blocks of the applications can exist in
the cloud, outside the traditional perimeter of the organization. This is
true for SaaS, where most of the application will be in the cloud. It is
also true for PaaS, where application components simply exist as
services in the cloud.
Target platform Even when building blocks are developed, the target
platform can be in the cloud. These IaaS components may deviate in a
number of ways from their traditional data center equivalents, for
example, in the models that are available to scale them.
Service-oriented architecture In general, cloud computing
encourages a service-oriented architecture, where information is
shipped between applications and application components through the
use of web services.
84