Editing Methodology section
Edited the top part of the Methodology section. Change-Id: Id575a606ad7b641e5f88f9b16d7db5a4ffe56210 Implements: blueprint arch-guide
This commit is contained in:
parent
79d32c6607
commit
6f6defd062
@ -9,110 +9,29 @@
|
|||||||
version="5.0"
|
version="5.0"
|
||||||
xml:id="methodology">
|
xml:id="methodology">
|
||||||
<title>Methodology</title>
|
<title>Methodology</title>
|
||||||
<para>The magic of the cloud is that it can do anything. It is both robust
|
<para>
|
||||||
and flexible, the best of both worlds. Yes, the cloud is highly flexible
|
Creating and testing use cases is the best way to design a cloud
|
||||||
and it can do almost anything, but to get the most out of a cloud
|
architecture that best suits your needs.</para>
|
||||||
investment, it is important to define how the cloud will be used by
|
<para>
|
||||||
creating and testing use cases. This is the chapter that describes the
|
For example, if your goal is to develop a cloud for your company's e-commerce
|
||||||
thought process behind how to design a cloud architecture that best
|
website, you need to plan for applications that will support thousands of
|
||||||
suits the intended use.</para>
|
sessions per second, variable workloads, and lots of complex and changing data.
|
||||||
<mediaobject>
|
By identifying the key meters, such as number of concurrent transactions
|
||||||
<imageobject>
|
|
||||||
<imagedata contentwidth="4in" fileref="../figures/Methodology.png"/>
|
|
||||||
</imageobject>
|
|
||||||
</mediaobject>
|
|
||||||
<para>The diagram shows at a very abstract level the process for capturing
|
|
||||||
requirements and building use cases. Once a set of use cases has been
|
|
||||||
defined, it can then be used to design the cloud architecture.</para>
|
|
||||||
<para>Use case planning can seem counter-intuitive. After all, it takes
|
|
||||||
about five minutes to sign up for a server with Amazon. Amazon does not
|
|
||||||
know in advance what any given user is planning on doing with it, right?
|
|
||||||
Wrong. Amazon's product management department spends plenty of time
|
|
||||||
figuring out exactly what would be attractive to their typical customer
|
|
||||||
and honing the service to deliver it. For the enterprise, the planning
|
|
||||||
process is no different, but instead of planning for an external paying
|
|
||||||
customer, for example, the use could be for internal application
|
|
||||||
developers or a web portal. The following is a list of the high level
|
|
||||||
objectives that need to be incorporated into the thinking about creating
|
|
||||||
a use case.</para>
|
|
||||||
<para>Overall business objectives</para>
|
|
||||||
<itemizedlist>
|
|
||||||
<listitem>
|
|
||||||
<para>Develop clear definition of business goals and requirements
|
|
||||||
</para>
|
|
||||||
</listitem>
|
|
||||||
<listitem>
|
|
||||||
<para>Increase project support and engagement with business,
|
|
||||||
customers and end users.</para>
|
|
||||||
</listitem>
|
|
||||||
</itemizedlist>
|
|
||||||
<para>Technology</para>
|
|
||||||
<itemizedlist>
|
|
||||||
<listitem>
|
|
||||||
<para>Coordinate the OpenStack architecture across the project and
|
|
||||||
leverage OpenStack community efforts more effectively.</para>
|
|
||||||
</listitem>
|
|
||||||
<listitem>
|
|
||||||
<para>Architect for automation as much as possible to speed
|
|
||||||
development and deployment.</para>
|
|
||||||
</listitem>
|
|
||||||
<listitem>
|
|
||||||
<para>Use the appropriate tools for the development effort.</para>
|
|
||||||
</listitem>
|
|
||||||
<listitem>
|
|
||||||
<para>Create better and more test meters and test harnesses to
|
|
||||||
support continuous and integrated development, test processes
|
|
||||||
and automation.</para>
|
|
||||||
</listitem>
|
|
||||||
</itemizedlist>
|
|
||||||
<para>Organization</para>
|
|
||||||
<itemizedlist>
|
|
||||||
<listitem>
|
|
||||||
<para>Better messaging of management support of team efforts</para>
|
|
||||||
</listitem>
|
|
||||||
<listitem>
|
|
||||||
<para>Develop better cultural understanding of Open Source, cloud
|
|
||||||
architectures, Agile methodologies, continuous development, test
|
|
||||||
and integration, overall development concepts in general</para>
|
|
||||||
</listitem>
|
|
||||||
</itemizedlist>
|
|
||||||
<para>As an example of how this works, consider a business goal of using the
|
|
||||||
cloud for the company's E-commerce website. This goal means planning for
|
|
||||||
applications that will support thousands of sessions per second,
|
|
||||||
variable workloads, and lots of complex and changing data. By
|
|
||||||
identifying the key meters, such as number of concurrent transactions
|
|
||||||
per second, size of database, and so on, it is possible to then build a
|
per second, size of database, and so on, it is possible to then build a
|
||||||
method for testing the assumptions.</para>
|
method for testing the assumptions.</para>
|
||||||
<formalpara>
|
<para>
|
||||||
<title>Develop functional user scenarios</title>
|
Functional user scenarios are used to develop test cases to measure overall
|
||||||
|
project trajectory. If you do not want to use an application to develop user
|
||||||
|
requirements automatically, you will need to create requirements to build
|
||||||
|
test harnesses and develop usable meters. Once the meters are established you
|
||||||
|
can respond to changes quickly without having to set the exact requirements
|
||||||
|
in advance. This creates ways to configure the system, rather than redesigning
|
||||||
|
it every time there is a requirements change.</para>
|
||||||
<para>
|
<para>
|
||||||
Develop functional user scenarios that can be used to develop
|
It is important to limit scope creep. Ensure you address tool limitations
|
||||||
test cases that can be used to measure overall project
|
for the requirements, but do not recreate the entire suite of tools. Work
|
||||||
trajectory. If the organization is not ready to commit to an
|
with technical product owners to establish critical features that are needed
|
||||||
application or applications that can be used to develop user
|
for a successful cloud deployment.</para>
|
||||||
requirements, it needs to create requirements to build valid
|
|
||||||
test harnesses and develop usable meters. Once the meters
|
|
||||||
are established, as requirements change, it is easier to
|
|
||||||
respond to the changes quickly without having to worry overly
|
|
||||||
much about setting the exact requirements in advance. Think of
|
|
||||||
this as creating ways to configure the system, rather than
|
|
||||||
redesigning it every time there is a requirements
|
|
||||||
change.
|
|
||||||
</para>
|
|
||||||
</formalpara>
|
|
||||||
<formalpara>
|
|
||||||
<title>Limit cloud feature set</title>
|
|
||||||
<para>
|
|
||||||
Create requirements that address the pain points but keep the
|
|
||||||
core design of OpenStack. The requirement to build OpenStack,
|
|
||||||
only better, is self-defeating. It is important to limit scope
|
|
||||||
creep by concentrating on developing a platform that will
|
|
||||||
address tool limitations for the requirements, but not
|
|
||||||
recreating the entire suite of tools. Work with technical
|
|
||||||
product owners to establish critical features that are needed
|
|
||||||
for a successful cloud deployment.
|
|
||||||
</para>
|
|
||||||
</formalpara>
|
|
||||||
<section xml:id="application-cloud-readiness-methods">
|
<section xml:id="application-cloud-readiness-methods">
|
||||||
<title>Application cloud readiness</title>
|
<title>Application cloud readiness</title>
|
||||||
<para>Although the cloud is designed to make things easier, it is
|
<para>Although the cloud is designed to make things easier, it is
|
||||||
|
Loading…
Reference in New Issue
Block a user