100% found this document useful (1 vote)
25 views

Learning AWS design build and deploy responsive applications using AWS cloud components Sarkar - Download the complete ebook in PDF format and read freely

The document provides information on various eBooks available for download related to AWS and cloud computing, including titles like 'Learning AWS' and 'Modern Infrastructure with VMware Cloud on AWS'. It offers instant access to digital formats such as PDF, ePub, and MOBI through ebookgate.com. Additionally, it includes details about the authors and reviewers of the featured books, along with a comprehensive table of contents for 'Learning AWS'.

Uploaded by

niyassqty13
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
100% found this document useful (1 vote)
25 views

Learning AWS design build and deploy responsive applications using AWS cloud components Sarkar - Download the complete ebook in PDF format and read freely

The document provides information on various eBooks available for download related to AWS and cloud computing, including titles like 'Learning AWS' and 'Modern Infrastructure with VMware Cloud on AWS'. It offers instant access to digital formats such as PDF, ePub, and MOBI through ebookgate.com. Additionally, it includes details about the authors and reviewers of the featured books, along with a comprehensive table of contents for 'Learning AWS'.

Uploaded by

niyassqty13
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 84

Instant Ebook Access, One Click Away – Begin at ebookgate.

com

Learning AWS design build and deploy responsive


applications using AWS cloud components Sarkar

https://ebookgate.com/product/learning-aws-design-build-and-
deploy-responsive-applications-using-aws-cloud-components-
sarkar/

OR CLICK BUTTON

DOWLOAD EBOOK

Get Instant Ebook Downloads – Browse at https://ebookgate.com


Click here to visit ebookgate.com and download ebook now
Instant digital products (PDF, ePub, MOBI) available
Download now and explore formats that suit you...

Modern Infrastructure with VMware Cloud on AWS Second


Edition Martin Hosken

https://ebookgate.com/product/modern-infrastructure-with-vmware-cloud-
on-aws-second-edition-martin-hosken/

ebookgate.com

Mastering Multi Cloud Paradigm for Enterprises Transform


Enterprise Infrastructure with Multi Cloud Strategies
Using Azure AWS and GCP for and Disaster Recovery English
Edition --
https://ebookgate.com/product/mastering-multi-cloud-paradigm-for-
enterprises-transform-enterprise-infrastructure-with-multi-cloud-
strategies-using-azure-aws-and-gcp-for-and-disaster-recovery-english-
edition/
ebookgate.com

Architecting a Modern Data Warehouse for Large Enterprises


Build Multi cloud Modern Distributed Data Warehouses with
Azure and AWS 1st Edition Anjani Kumar
https://ebookgate.com/product/architecting-a-modern-data-warehouse-
for-large-enterprises-build-multi-cloud-modern-distributed-data-
warehouses-with-azure-and-aws-1st-edition-anjani-kumar/
ebookgate.com

AWS System Administration Best Practices for Sysadmins in


the Amazon Cloud 1st Edition Mike Ryan

https://ebookgate.com/product/aws-system-administration-best-
practices-for-sysadmins-in-the-amazon-cloud-1st-edition-mike-ryan/

ebookgate.com
Building Serverless Web Applications Develop scalable web
apps using the Serverless Framework on AWS 1st Edition
Diego Zanon
https://ebookgate.com/product/building-serverless-web-applications-
develop-scalable-web-apps-using-the-serverless-framework-on-aws-1st-
edition-diego-zanon/
ebookgate.com

Learning Serverless Design Develop and Deploy with


Confidence 1st Edition Jason Katzer

https://ebookgate.com/product/learning-serverless-design-develop-and-
deploy-with-confidence-1st-edition-jason-katzer/

ebookgate.com

Programming C 12 Build Cloud Web and Desktop Applications


1st Edition Ian Griffiths

https://ebookgate.com/product/programming-c-12-build-cloud-web-and-
desktop-applications-1st-edition-ian-griffiths/

ebookgate.com

Standard symbols for welding brazing and nondestructive


examination 7th ed Edition Aws Committee On Definitions
And Symbols.
https://ebookgate.com/product/standard-symbols-for-welding-brazing-
and-nondestructive-examination-7th-ed-edition-aws-committee-on-
definitions-and-symbols/
ebookgate.com

Guide for the nondestructive examination of welds 4th


Edition Aws Committee On Methods Of Inspection.

https://ebookgate.com/product/guide-for-the-nondestructive-
examination-of-welds-4th-edition-aws-committee-on-methods-of-
inspection/
ebookgate.com
Learning AWS

Design, build, and deploy responsive applications


using AWS cloud components

Aurobindo Sarkar
Amit Shah

BIRMINGHAM - MUMBAI
Learning AWS

Copyright © 2015 Packt Publishing

All rights reserved. No part of this book may be reproduced, stored in a retrieval
system, or transmitted in any form or by any means, without the prior written
permission of the publisher, except in the case of brief quotations embedded in
critical articles or reviews.

Every effort has been made in the preparation of this book to ensure the accuracy
of the information presented. However, the information contained in this book is
sold without warranty, either express or implied. Neither the authors, nor Packt
Publishing, and its dealers and distributors will be held liable for any damages
caused or alleged to be caused directly or indirectly by this book.

Packt Publishing has endeavored to provide trademark information about all of the
companies and products mentioned in this book by the appropriate use of capitals.
However, Packt Publishing cannot guarantee the accuracy of this information.

First published: July 2015

Production reference: 1280715

Published by Packt Publishing Ltd.


Livery Place
35 Livery Street
Birmingham B3 2PB, UK.

ISBN 978-1-78439-463-9

www.packtpub.com
Credits

Authors Copy Editor


Aurobindo Sarkar Merilyn Pereira
Amit Shah
Project Coordinator
Reviewers Mary Alex
Jiří Činčura
Brian C. Galura Proofreader
Safis Editing
Mark Takacs
Robert Williamson
Indexer
Tejal Soni
Commissioning Editor
Edward Bowkett
Graphics
Sheetal Aute
Acquisition Editor
Larissa Pinto
Production Coordinator
Manu Joseph
Content Development Editor
Anish Sukumaran
Cover Work
Manu Joseph
Technical Editor
Bharat Patil
About the Authors

Aurobindo Sarkar is a consulting CTO at BYOF Studios. With a career spanning


22 plus years, he has consulted at some of the leading organizations in the U.S.,
the UK, and Canada. He specializes in Software as a Service product development,
cloud computing, cloud economics, big data analytics, Internet of Things (IoT)
platforms, and web-scale architectures. His domain expertise runs across financial
services, media, mobile gaming, public and automotive sectors. Aurobindo has been
actively working with technology start-ups for over 5 years now. As a member of
the top leadership team at various start-ups, he has mentored several founders and
CxOs, provided technology advisory services, developed cloud strategies, drawn
up product roadmaps, and set up large engineering teams. Aurobindo has an MS
(Computer Science) from New York University, M.Tech (Management) from Indian
Institute of Science, and B.Tech (Engineering) from IIT Delhi.

Amit Shah has a bachelor's degree in electronics. He is a senior manager at


Western Outdoor Interactive. He has been programming since the early '80s with the
first wave of personal computing—initially as a hobbyist and then as a professional.
His areas of interest include embedded systems, Internet of Things (IoT), analog and
digital hardware design, systems programming, cloud computing, and enterprise
architecture. He has been working extensively in the field of cloud computing and
enterprise architecture for the past 4 years.
About the Reviewers

Jiří Činčura is an independent developer focused on clean code, language constructs,


and databases, all applied to mostly backend-related stuff. He is a project lead for ADO.
NET, a provider for the Firebird project, and the Entity framework support maintainer
for the NuoDB database. He's currently creating custom applications for a living
for various customers in Europe as well as companies from other countries. Other
than that, he conducts training sessions and consultations about new technologies
to provide customers with the best information possible to deliver applications in a
shorter time and with better maintainability. When he's not programming or teaching,
he spends time participating in ultrarunning races.

Brian C. Galura spent his childhood tinkering with subjects such as Java
programming and Linux. His professional experience started with VoIP testing at
3Com in suburban Chicago. He then spent 2 years studying computer engineering
at Purdue University, before leaving to pursue freelance consulting in Los Angeles.
Following several years of freelancing, he developed his expertise in enterprise
infrastructure and cloud computing by working for a variety of start-ups and large
corporations. Later, he completed a bachelor's in IT while working at Citrix. He is
currently working on Citrix's cloud engineering and systems architecture team in
Santa Barbara, California.
Mark Takacs got his first job in the early '90s as the only applicant with HTML
experience. Since then, his road to DevOps has spanned traditional MVC software
development on LAMP and Java, frontend web development in JavaScript, HTML,
CSS, network administration, build and release engineering, production operations,
and a large helping of system administration throughout. He currently lives and
works in Silicon Valley.

Robert Williamson is a senior software engineer working mainly on the


development of a graphics engine for flight simulators; he enjoys designing and
developing real-time solutions. Before that, he worked in the Computer Graphics
and Image Understanding Lab at the University of Missouri Columbia while earning
his bachelor's and master's in computer science. His other interests include data
visualization, data mining, computer vision, and machine learning. During his spare
time, he enjoys traveling and backpacking through national parks.
www.PacktPub.com

Support files, eBooks, discount offers, and more


For support files and downloads related to your book, please visit www.PacktPub.com.

Did you know that Packt offers eBook versions of every book published, with PDF and ePub
files available? You can upgrade to the eBook version at www.PacktPub.com and as a print
book customer, you are entitled to a discount on the eBook copy. Get in touch with us at
service@packtpub.com for more details.

At www.PacktPub.com, you can also read a collection of free technical articles, sign up for a
range of free newsletters and receive exclusive discounts and offers on Packt books and eBooks.

https://www2.packtpub.com/books/subscription/packtlib
Do you need instant solutions to your IT questions? PacktLib is Packt's online digital book
library. Here, you can search, access, and read Packt's entire library of books.

Why subscribe?
• Fully searchable across every book published by Packt
• Copy and paste, print, and bookmark content
• On demand and accessible via a web browser

Free access for Packt account holders


If you have an account with Packt at www.PacktPub.com, you can use this to access PacktLib
today and view 9 entirely free books. Simply use your login credentials for immediate access.

Instant updates on new Packt books


Get notified! Find out when new books are published by following @PacktEnterprise on
Twitter or the Packt Enterprise Facebook page.
Table of Contents
Preface vii
Chapter 1: Cloud 101 – Understanding the Basics 1
What is cloud computing? 2
Public, private, and hybrid clouds 3
Cloud service models – IaaS, PaaS,
and SaaS 4
Setting up your AWS account 5
The AWS management console 8
Summary 10
Chapter 2: Designing Cloud Applications –
An Architect's Perspective 11
Multi-tier architecture 12
Designing for multi-tenancy 14
Data security 16
Data extensibility 18
Application multi-tenancy 22
Designing for scale 23
Automating infrastructure 26
Designing for failure 27
Designing for parallel processing 29
Designing for performance 29
Designing for eventual consistency 31
Estimating your cloud computing costs 31
A typical e-commerce web application 34
Setting up our development environment 36
Running the application 39
Building a WAR file for deployment 40
Summary 41
[i]
Table of Contents

Chapter 3: AWS Components, Cost Model, and Application


Development Environments 43
AWS components 43
Amazon Elastic Compute Cloud (EC2) 44
Amazon S3 44
Amazon EBS 44
Amazon CloudFront 45
Amazon Glacier 45
Amazon RDS 45
Amazon DynamoDB 45
Amazon ElastiCache 46
Amazon Simple Queue Service 46
Amazon Simple Notification Service 46
Amazon Virtual Private Cloud 46
Amazon Route 53 46
AWS Identity and Access Management 46
Amazon CloudWatch 47
Other AWS services 47
Optimizing cloud infrastructure costs 47
Choosing the right EC2 instance 49
Turn-off unused instances 50
Use auto scaling 51
Use reserved instances 52
Use spot instances 52
Use Amazon S3 storage classes 53
Reducing database costs 53
Using AWS services 54
Cost monitoring and analysis 54
Application development environments 54
Development environments 55
QA/Test environment 55
Staging environment 55
Production environment 56
Setting up the AWS infrastructure 56
The AWS cloud deployment architecture 56
AWS cloud construction 59
Creating security groups 59
Creating EC2 instance key pairs 61
Creating Roles 62
Creating an EC2 Instance 64
Elastic IPs (EIP) 70

[ ii ]
Table of Contents

Amazon Relational Database Service 72


Software stack installation 78
Summary 81
Chapter 4: Designing for and Implementing Scalability 83
Defining scalability objectives 84
Designing scalable application architectures 84
Using AWS services for out-of-the-box scalability 84
Using a scale-out approach 85
Implement loosely coupled components 85
Implement asynchronous processing 85
Leveraging AWS infrastructure services for scalability 86
Using AWS CloudFront to distribute content 86
Using AWS ELB to scale without service interruptions 86
Implementing auto scaling using AWS CloudWatch 87
Scaling data services 87
Scaling proactively 88
Setting up auto scaling 88
AWS auto scaling construction 88
Creating an AMI 88
Creating Elastic Load Balancer 90
Creating a launch configuration 99
Creating an auto scaling group 102
Testing auto scaling group 111
Scripting auto scaling 112
Creating an AMI 114
Creating an Elastic Load Balancer 115
Creating launch configuration 117
Creating an auto scaling group 118
Summary 121
Chapter 5: Designing for and Implementing High Availability 123
Defining availability objectives 124
The nature of failures 125
Setting up VPC for high availability 125
Using ELB and Route 53 for high availability 126
Instance availability 126
Zonal availability or availability zone redundancy 127
Regional availability or regional redundancy 128
Setting up high availability for application and data layers 129
Implementing high availability in the application 131
Using AWS for disaster recovery 132
Using a backup and restore DR strategy 133
Using a Pilot Light architecture for DR 133

[ iii ]
Table of Contents

Using a warm standby architecture for DR 133


Using a multi-site architecture for DR 134
Testing a disaster recovery strategy 134
Setting up high availability 135
The AWS high availability architecture 135
HA support for auto scaling groups 138
HA support for ELB 139
HA support for RDS 140
Summary 142
Chapter 6: Designing for and Implementing Security 143
Defining security objectives 144
Understanding security responsibilities 144
Best practices in implementing AWS security 145
Implementing identity lifecycle management 146
Tracking the AWS API activity using CloudTrail 147
Logging for security analysis 147
Using third-party security solutions 147
Reviewing and auditing security configuration 148
Setting up security 148
AWS IAM – Securing your Infrastructure 149
IAM roles 149
AWS Key Management Service 152
Using the KMS key 156
Application security 158
Transport security 158
Secure data-at-rest 162
Summary 167
Chapter 7: Deploying to Production and Going Live 169
Managing infrastructure, deployments, and support at scale 170
Creating and managing AWS environments using CloudFormation 171
Creating CloudFormation templates 173
Building a DevOps pipeline with CloudFormation 174
Updating stacks 175
Extending CloudFormation 179
Using CloudWatch for monitoring 180
Using AWS solutions for backup and archiving 181
Planning for production go-live activities 182
Setting up for production 183
The AWS production deployment architecture 184
VPC subnets 185
Bastion host 187
Security groups 188

[ iv ]
Table of Contents

Infrastructure as code 190


Setting up CloudFormation 190
Executing the CloudFormation script 198
Centralized logging 202
Summary 205
Index 207

[v]
Preface
With an increasing interest in leveraging cloud infrastructure around the world, the
AWS cloud from Amazon offers a cutting-edge platform for architecting, building,
and deploying web-scale cloud applications through a user-friendly interface. The
variety of features available within AWS can reduce overall infrastructure costs and
accelerate the development process for both large enterprises and start-ups alike.

Learning AWS covers basic, intermediate, and advanced features and concepts
as they relate to designing, developing, and deploying scalable, highly available,
and secure applications on the AWS platform. By sequentially working through
the steps in each chapter, you will quickly master the features of AWS to create an
enterprise-grade cloud application. We use a three-tiered services-oriented sample
application for extensive hands-on exercises.

This book will not only teach you about the AWS components, but you will gain
valuable information about key concepts such as multi-tenancy, auto scaling,
planning, implementing application development environments, addressing
application security concerns, and so on. You will also learn how these concepts
relate to cost effective architectural decisions while designing scalable, highly
available, and secure AWS cloud applications.

A step-by-step approach to cloud application design and implementation is explained


in a conversational and easy-to-follow style. Each topic is explained sequentially in
the process of creating an AWS cloud application. Detailed explanations of the basic
and advanced features of AWS that address the needs of readers with a wide range
of real-world experiences are also included. Expert programmers and architects will
appreciate the focus on the practice rather than the theory.

[ vii ]
Preface

What this book covers


Chapter 1, Cloud 101 – Understanding the Basics, describes basic cloud concepts
including the public, private, and hybrid cloud models. We explain and compare the
Infrastructure-as-a-Service (IaaS), Platform-as-a-Service (PaaS), and Software-as-a-
Service (SaaS) cloud service delivery models. In addition, we explain multi-tenancy
models and the challenges they present in design, implementation, and operations.

Chapter 2, Designing Cloud Applications – An Architect's Perspective, describes familiar


and not-so familiar architectural best practices in the cloud context. These include
designing a multi-tier architecture and designing for multi-tenancy, scalability, and
availability. We will also guide you through the process of estimating your cloud
computing costs.

Chapter 3, AWS Components, Cost Model, and Application Development Environments,


introduces you to the AWS components—EC2, S3, RDS, DynamoDB, SQS Queues,
SNS, and so on. We will discuss strategies to lower your AWS infrastructure
costs and their implications on architectural decisions. We will explain the typical
characteristics of the Development, QA, Staging, and Production environments on
the AWS cloud.

Chapter 4, Designing for and Implementing Scalability, provides guidance on how to


define your scalability objectives, and then discusses the design and implementation
of specific strategies to achieve scalability.

Chapter 5, Designing for and Implementing High Availability, provides guidance on how
to define your availability objectives, discuss the nature of failures, and then discuss
the design and implementation of specific strategies to achieve high availability.
In addition, we will describe the approaches that leverage the AWS features and
services for your Disaster Recovery planning.

Chapter 6, Designing for and Implementing Security, provides guidance on how to


define security objectives, explains your security responsibilities, and then discusses
the implementations of specific best practices for application security.

Chapter 7, Deploying to Production and Going Live, provides guidance on managing


infrastructure, deployments, support, and operations for your cloud application.
In addition, we provide some tips on planning your production Go-Live activities.

What you need for this book


You will need your standard development machine with Spring Tool Suite (STS),
Maven, the Git command line tools, the MySQL database, and an Amazon account
to complete the hands-on sections in this book.

[ viii ]
Preface

Who this book is for


This book is targeted at expert programmers/architects, who want to learn AWS. This
book assumes that the reader has previously designed and developed multi-tiered
applications, not necessarily on a cloud platform, but in an enterprise or a start-up
setting. Some familiarity with Spring, MySQL, and RESTful web services is expected.

Conventions
In this book, you will find a number of text styles that distinguish between different
kinds of information. Here are some examples of these styles and an explanation of
their meaning.

Code words in text, database table names, folder names, filenames, file extensions,
pathnames, dummy URLs, user input, and Twitter handles are shown as follows:
"This can be done via the command line from the root of the a1ecommerce project
via a maven goal package."

A block of code is set as follows:


jdbc.url=jdbc:mysql:// a1ecommerce.cklrz1a88gdv.us-east-
1.rds.amazonaws.com:3306/
a1ecommerceDba1ecommerceDba1ecommerceDb #Endpoint of
AmazonAmazonAmazon RDS
jdbc.username=a1dbroot # username of Amazon DB instance
jdbc.password=a1dbroot #Password for the Amazon DB instance

Any command-line input or output is written as follows:


sudo apt-get update;
sudo apt-get install tomcat7 mysql-client-5.6;

New terms and important words are shown in bold. Words that you see on
the screen, for example, in menus or dialog boxes, appear in the text like this:
"From the RDS dashboard, click on Instances in the navigation pane, and then
on a1ecommerce to view the details of the DB instance."

Warnings or important notes appear in a box like this.

Tips and tricks appear like this.

[ ix ]
Preface

Reader feedback
Feedback from our readers is always welcome. Let us know what you think about
this book—what you liked or disliked. Reader feedback is important for us as it helps
us develop titles that you will really get the most out of.

To send us general feedback, simply e-mail feedback@packtpub.com, and mention


the book's title in the subject of your message.

If there is a topic that you have expertise in and you are interested in either writing
or contributing to a book, see our author guide at www.packtpub.com/authors.

Customer support
Now that you are the proud owner of a Packt book, we have a number of things to
help you to get the most from your purchase.

Errata
Although we have taken every care to ensure the accuracy of our content, mistakes
do happen. If you find a mistake in one of our books—maybe a mistake in the text or
the code—we would be grateful if you could report this to us. By doing so, you can
save other readers from frustration and help us improve subsequent versions of this
book. If you find any errata, please report them by visiting http://www.packtpub.
com/submit-errata, selecting your book, clicking on the Errata Submission Form
link, and entering the details of your errata. Once your errata are verified, your
submission will be accepted and the errata will be uploaded to our website or added
to any list of existing errata under the Errata section of that title.

To view the previously submitted errata, go to https://www.packtpub.com/books/


content/support and enter the name of the book in the search field. The required
information will appear under the Errata section.

Piracy
Piracy of copyrighted material on the Internet is an ongoing problem across all
media. At Packt, we take the protection of our copyright and licenses very seriously.
If you come across any illegal copies of our works in any form on the Internet, please
provide us with the location address or website name immediately so that we can
pursue a remedy.

[x]
Preface

Please contact us at copyright@packtpub.com with a link to the suspected


pirated material.

We appreciate your help in protecting our authors and our ability to bring you
valuable content.

Questions
If you have a problem with any aspect of this book, you can contact us at
questions@packtpub.com, and we will do our best to address the problem.

[ xi ]
Cloud 101 – Understanding
the Basics
In this chapter, we will introduce you to cloud computing and the key terminologies
used commonly by cloud practitioners.

We will briefly describe what public, private, and hybrid clouds are, followed by
a description of various cloud service models (offered by the service providers),
including the features of Infrastructure as a Service (IaaS), Platform as a Service
(PaaS), and Software as a Service (SaaS).

To help you get started on Amazon Web Services (AWS), we will end the chapter
by walking you through the step-by-step process of creating an AWS account, and
describing some of the salient features of the AWS dashboard.

This chapter will cover the following points:

• Define cloud computing and describe some of its characteristics


• Describe and compare public, private, and hybrid clouds
• Explain and compare IaaS, PaaS, and SaaS cloud service delivery models
• Steps to create an AWS account
• A brief overview of the AWS management console

[1]
Cloud 101 – Understanding the Basics

What is cloud computing?


Wikipedia defines cloud computing as:

"Cloud computing is internet-based computing in which large groups of remote


servers are networked to allow the centralized data storage, and online access to
computer services or resources."

The National Institute of Standards and Technology (NIST) gives the following
definition of cloud computing:

"Cloud computing is a model for enabling convenient, on-demand network access


to a shared pool of configurable computing resources (e.g., networks, servers,
storage, applications, and services) that can be rapidly provisioned and released
with minimal management effort or service provider interaction."

There are several other broadly accepted definitions of cloud computing. Some
explicitly emphasize configurability of the resources, while others include the need
for rapid on-demand provisioning of resources, and still others drop the requirement
of access via the internet. We define cloud computing as a model that enables the
features listed here:

• Users should be able to provision and release resources on-demand


• The resources can be scaled up or down automatically, depending on
the load
• The provisioned resources should be accessible over a network
• Cloud service providers should enable a pay-as-you-go model,
where customers are charged based on the type and quantum of
resources they consume

Some of the implications of choosing to use the cloud for your computing needs are
as follows:

• The illusion of infinite processing and storage resources, available on-demand,


reduces the need for detailed advance planning and procurement processes.
• The model promotes the use of resources as per customer needs, for example,
starting small, and then increasing resources based on an increase in need.
• The development and test environments can be provisioned on a smaller
scale than production environment, and enabled only during normal
business hours, to reduce costs.

[2]
Chapter 1

• The staging environment can be provisioned for a short duration to


be a replica of the production environment. This enables testing using
production configuration (and scale) for improved defect resolution.
• There will be ease of scaling, both vertically and horizontally, in order to
better manage spikes in demand and variations due to business cycles or
time-of-day reasons, and so on.
• This encourages experimentation, by trying out new ideas and software
by quickly provisioning resources, rather than requisition for resources
through time-consuming and cumbersome processes.

In addition, there are several key operational and maintenance-related implications,


including no hardware maintenance or data center operations required, zero-downtime
migrations and upgrades, ease of replacement of unhealthy machines, ease of
implementation of high-availability and disaster recovery strategies, and many more.

These and other implications of using cloud services to design scalable, highly
available, and secure applications are discussed in-depth in subsequent chapters.

Public, private, and hybrid clouds


Basically, there are three types of clouds in cloud computing, they are public, private,
and hybrid clouds.

In a public cloud, third-party service providers make resources and services


available to their customers via the internet. The customers' applications and
data are deployed on infrastructure owned and secured by the service provider.

A private cloud provides many of the same benefits of a public cloud but the services
and data are managed by the organization or a third-party, solely for the customer's
organization. Usually, private cloud places increase administrative overheads on the
customer but give greater control over the infrastructure and reduce security-related
concerns. The infrastructure may be located on or off the organization's premises.

A hybrid cloud is a combination of both a private and a public cloud. The decision
on what runs on the private versus the public cloud is usually based on several
factors, including business criticality of the application, sensitivity of the data,
industry certifications and standards required, regulations, and many more. But in
some cases, spikes in demand for resources are also handled in the public cloud.

[3]
Cloud 101 – Understanding the Basics

Cloud service models – IaaS, PaaS,


and SaaS
There are three cloud-based service models, IaaS, PaaS, and SaaS. The main features
of each of these are listed here:

• Infrastructure as a Service (IaaS) provides users the capability to provision


processing, storage, and network resources on demand. The customers
deploy and run their own applications on these resources. Using this service
model is closest to the traditional in-premise models and the virtual server
provisioning models (typically offered by data center outsourcers). The onus
of administering these resources rests largely with the customer.
• In Platform as a Service(PaaS), the service provider makes certain core
components, such as databases, queues, workflow engines, e-mails, and
so on, which are available as services to the customer. The customer then
leverages these components for building their own applications. The service
provider ensures high service levels, and is responsible for scalability, high-
availability, and so on for these components. This allows customers to focus a
lot more on their application's functionality. However, this model also leads
to application-level dependency on the providers' services.
• In the Software as a Service(SaaS) model, typically, third-party providers
using a subscription model provide end-user applications to their customers.
The customers might have some administrative capability at the application
level, for example, to create and manage their users. Such applications also
provide some degree of customizability, for example, the customers can use
their own corporate logos, colors, and many more. Applications that have a
very wide user base most often operate in a self-service mode. In contrast,
the provider provisions the application for the customer for more specialized
applications. The provider also hands over certain application administrative
tasks to the customer's application administrator (in most cases, this is limited
to creating new users, managing passwords, and so on through well-defined
application interfaces).

From an infrastructure perspective, the customer does not manage or control the
underlying cloud infrastructure in all three service models.

The following diagram illustrates who is responsible for managing the various
components of a typical user application across IaaS, PaaS, and SaaS cloud service
models. The column labeled User Application represents the main components of
a user application stack, while the following columns depict the varying levels of
management responsibilities in each of the three service models. The shaded boxes are
managed by the service provider, while the unshaded boxes are managed by the user.

[4]
Chapter 1

The level of control over operating systems, storage, applications, and certain network
components (for example, load balancers) is the highest in the IaaS model, while the
least (or none) in the SaaS model.

We would like to conclude our introduction to cloud computing by getting you


started on AWS, right away. The next two sections will help you set up your AWS
account and familiarize you with the AWS management console.

Setting up your AWS account


You will need to create an account on Amazon before you can use the Amazon Web
Services (AWS). Amazon provides a 12 month limited fully functional free account
that can be used to learn the different components of AWS. With this account, you
get access to services provided by AWS, but there are some limitations based on
resources consumed. The list of AWS services is available at http://aws.amazon.
com/free.

[5]
Cloud 101 – Understanding the Basics

We are assuming that you do not have a pre-existing AWS account with Amazon
(if you do, please feel free to skip this section). Perform the following steps:

1. Point your browser to http://aws.amazon.com/ and click on Create a


Free Account.
The process to create a brand new AWS account has started. You can sign in
using your existing Amazon retail account, but you will have to go through
the process of creating an AWS account; the two accounts are different for
accounting purposes, even though they share the same common login.
Let's take a look at the following screenshot:

2. After creating a new account or using your existing retail Amazon account,
select the I am a returning user and my password is: option and click on
Sign in using our secure server. A set of intuitive screens will guide you
through multiple screens in order to to create an AWS account, these include:

[6]
Chapter 1

°° Contact Information: Amazon also uses this information for


billing and invoicing. The Full Name field is also used by the
AWS management console to identify your account, as shown
in the following screenshot:

°° Payment Information: When you create an AWS account and sign


up for services you are required to enter payment information.
Amazon executes a minimal amount transaction against the card on
file to confirm that it is valid and not reported lost or stolen. This is
not an actual charge it merely places the 'X' amount on hold on the
card which will eventually drop off. The 'X' amount depends on the
country of origin.
°° Identity Verification: Amazon does a call back via an automated
system to verify your telephone number.
°° Support Plan: You can subscribe to one from the following, Basic,
Developer, Business, or Enterprise. We recommend subscribing
to the Basic plan to start with.

The Basic plan costs nothing, but is severely limited and


hence not recommended for production. It is an excellent
way to learn and get familiar with AWS.

[7]
Cloud 101 – Understanding the Basics

°° Confirmation: On clicking on Launch Management Console you


will be requested to login, as shown in the following screenshot:

3. At this stage, you have successfully created an AWS account, and you are
ready to start using the services offered by AWS.

The AWS management console


The AWS management console is the central location from where you can access all
the Amazon services. The management console has links to the following:

• Amazon Web Services: This is a dashboard view that lists all the AWS
services currently available in a specific Amazon region. Clicking on any
one of these launches the dashboard for the selected service, as shown in
the following screenshot:

[8]
Chapter 1

• Shortcuts for Amazon Web Services: On the console management screen,


you can create shortcuts of frequently accessed services via the Edit option,
as shown in the following screenshot:

• Account related information: This allows you to access your account-related


data. This includes security credentials needed to access the AWS resources
by your application. The Billing & Cost Management option gives you real-
time information on your current month's billing; this helps in managing
costs, as shown in the following screenshot:

• Amazon regions: This option allows you to access the AWS in a specific
region. In the following screenshot, all the Amazon Web Services are located
in the US East (N. Virginia) region:

[9]
Cloud 101 – Understanding the Basics

• Support: You can navigate to the Help, Forums, and support pages:

• Service Health: Launches the health dashboard of all the Amazon Web
Services across all regions, and not of your deployed service:

Summary
In this chapter, we introduced you to a few cloud computing concepts and
terminologies. We described the basic features of public, private, and hybrid
clouds. We introduced the main cloud delivery models, namely, IaaS, PaaS,
and SaaS. Finally, we listed the steps for creating your AWS account, and
described the salient features of the AWS management console.

With the basics out of the way, in the next chapter we will deep dive into the
details of how multitenanted cloud applications are different from traditional
multi-tiered applications. We will also walk you through creating a sample
application (using Spring and MySQL) that will be used to illustrate key cloud
application design concepts through the rest of this book.

[ 10 ]
Designing Cloud Applications
– An Architect's Perspective
As an architect, we are sure you have come across terms such as loosely coupled,
multi-tier, services oriented, highly scalable, and many more. These terms are
associated with architectural best practices and you find them listed in the first
couple of pages of any system architecture document. These concepts are generally
applicable to all architectures, and the cloud is no exception.

In this chapter, we want to highlight how these are accomplished on the cloud.
You will notice that the approach you take towards cloud application architecture
remains the same to a large extent. However, you need to be aware of certain
peculiarities of the cloud environment, in order to architect scalable, available,
and secure cloud applications. For example, if you are architecting a web-scale
application, you need to take into consideration the ability to automatically scale
up and down. What are the implications of auto scaling on your design?

One of the major differences in cloud-based SaaS applications and on-premise


enterprise applications is multi-tenancy. What are some of the design considerations
of multi-tenancy? How do you design for UI, services, and data multi-tenancy in a
multi-tier architecture?

[ 11 ]
Designing Cloud Applications – An Architect's Perspective

In this chapter, we describe the familiar and not-so familiar architectural best
practices in the cloud context, by covering the following topics:

• Multi-tier architecture
• Designing for multi-tenancy including data security and extensibility
• Designing for scale
• Automating infrastructure
• Designing for failure
• Parallel processing
• Designing for performance
• Designing for eventual consistency
• Estimating your cloud computing costs
• Sample application is a typical e-commerce web application

Multi-tier architecture
A simple three-tier architecture consists of a UI tier, an application or business tier,
and a data tier.

These tiers are ordinarily implemented using web servers, application servers, and
databases, respectively.

Cloud applications can be deployed at multiple locations. Typically, these locations


are regions (that is, separate geographical areas) or zones (that is, distinct locations
within a region connected by low latency networks).

This tiered architecture on the cloud supports auto scaling and load balancing of
web servers and application servers. Further, it also implements a master-slave
database model across two different zones or data centers (connected with high
speed links). The master database is synchronously replicated to the slave. Overall,
the architecture represents a simple way to achieve a highly scalable and highly
available application in a cloud environment.

[ 12 ]
Chapter 2

Let's take a look at the following diagram:

[ 13 ]
Designing Cloud Applications – An Architect's Perspective

It is also possible to separate the tiers across two different regions, to provide for higher
level of redundancy including data center wide or zone level failures. While designing
high availability architectures across multiple regions, we need to address network
traffic flow and data synchronization issues between the regions. Such issues are
discussed in more detail in Chapter 5, Designing for and Implementing High Availability.
The following diagram illustrates this architecture:

Designing for multi-tenancy


The major benefit of multi-tenancy is cost saving due to infrastructure sharing and
the operational efficiency of managing a single instance of the application across
multiple customers or tenants. However, multi-tenancy introduces complexity. Issues
can arise when a tenant's action or usage affects the performance and availability of
the application for other tenants on the shared infrastructure. In addition, security,
customization, upgrades, recovery, and many more requirements of one tenant can
create issues for other tenants as well.

[ 14 ]
Chapter 2

Multi-tenancy models may lie anywhere from the share-nothing to share-everything


continuum. While technical ease may be a key factor from the IT department's
perspective, the cloud architect should never lose sight of the business implications
and costs of selecting the approach to multi-tenancy.

Whatever the multi-tenancy model, the data architecture needs to ensure robust
security, extensibility, and scalability in the data tier. For example, storing a particular
customer's data in a separate database leads to the simplest design and development
approach. Having data isolation is the easiest and the quickest to both understand
and explain to your customers.

It is very tempting to offer tenant-specific customizations when each


tenant's data is stored in separate databases. However, this is primarily
done to separate data and associated operations, and not to arbitrarily
allow dramatic changes to the database schema per tenant.

In this model, suitable metadata is maintained to link each database with the correct
tenant. In addition, appropriate database security measures are implemented to
prevent tenants from accessing other tenants' data. From an operations perspective,
backups and restores are simpler for separate databases, as they can be executed
without impacting other customers. However, this approach can and will lead to
higher infrastructure costs.

Typically, you would offer this approach to your bigger customers who might be
more willing to pay a premium to isolate their data. Larger enterprise customers
prefer database isolation for higher security, or in some cases, to comply with their
security policies. Such customers might also have a higher need for customizations.

While architecting multi-tenanted applications, pay particular attention


to the expected number of tenants, storage per tenant, expected number
of concurrent users, regulatory and policy requirements, and many
more. If any of these parameters are heavily skewed in favor of a
particular tenant, then it might be advisable to isolate their data.

We can define a separate database schema for each of the tenants (within the same
database server instance) for applications having a limited number of database tables.
This approach is relatively simple to implement, and offers flexibility for custom tables
to be defined per tenant. However, data restore for a particular tenant can impact other
tenants hosted on the same database instance, but this approach can reduce costs while
separating out the data of each tenant.

[ 15 ]
Designing Cloud Applications – An Architect's Perspective

In a shared database, with a shared schema approach, the costs are minimized,
but the complexity of the application is much higher. This model works well for
cost conscious customers. However, restoring a customer's data is complicated,
as you will be restoring specific rows belonging to a specific tenant. This operation
can impact all other tenants using the shared database.

In cloud architectures, the main factors to consider while designing multi tenancies
are the security, extensibility, and scalability. In addition, multi-tenancy brings
additional complexity from a DevOps perspective, and we need to ensure that
we are able to effectively manage upgrades and troubleshoot, bugs and maintain
high service levels and operations' efficiency.

Data security
There are two levels of security to be considered—at the tenant level (typically, an
organization) and the end-user level, who is a member or an employee of a given
tenant. In order to implement a security model, you need to create a database access
account at the tenant level. This account can specify (using ACLs) the database objects
accessible to a specific tenant. Then at the application level, you can prevent users from
accessing any data they are not entitled to. A security token service can be used to
implement the access at the tenant level.

When multi-tenancy is realized by having separate databases or separate schemas


per tenant, you can restrict access at the database or the schema level for a particular
tenant. The following diagram depicts a very common scenario, where both these
models are present in a single database server instance:

[ 16 ]
Chapter 2

If database tables are shared across tenants, then you need to filter data access by each
tenant. This is accomplished by having a column that stores a tenant ID per record
(to clearly identify records that belong to a specific tenant). In such a schema, a typical
SQL statement will contain a where clause based on the tenant ID being equal to the
security ID of the user account, namely an account belonging to the tenant.

[ 17 ]
Designing Cloud Applications – An Architect's Perspective

Aside from database level security, organizational policies or regulatory requirements


can mandate securing your data at rest. There are several options available from
the cloud service provider and third-party vendors for implementing encryption to
protect your data. These range from manual ones implemented on the client-side to
fully automated solutions. This topic will be discussed in detail in Chapter 6, Designing
for and Implementing Security.

Regardless of the approach, it is a good practice to encrypt sensitive data fields in


your cloud database and storage. Encryption ensures that the data remains secure,
even if a nonauthorized user accesses it. This is more critical for shared database/
schema model. In many cases, encrypting a database column that is part of an index
can lead to full table scans. Hence, try not to encrypt everything in your database,
as it can lead to poor performance. It is therefore important to carefully identify
sensitive information fields in your database, and encrypt them more selectively.
This will result in the right balance between security and performance.

It is a good idea to store a tenant ID for all records in the database


and encrypt sensitive data regardless of which approach you take
for implementing data multi-tenancy. A customer willing to pay
a premium for having a separate database might want to shift to
a more economical shared model later. Having a tenant ID and
encryption already in place can simplify such a migration.

Data extensibility
Having a rigid database schema will not work for you across all your customers.
Customers have their specific business rules and supporting data requirements.
They will want to introduce their own customizations to the database schema.
You must ensure that you don't change your schema for a tenant so much that
your product no longer fits into the SaaS model. But you do want to bake in
sufficient flexibility and extensibility to handle custom data requirements of your
customers (without impacting subsequent product upgrades or patch releases).

[ 18 ]
Chapter 2

One approach to achieve extensibility in the database schema is to preallocate a


bunch of extra fields in your tables, which can then be used by your customers
to implement their own business requirements. All these fields can be defined as
string or varchar fields. You also create an additional metadata table to further
define a field label, data type, field length, and so on for each of these fields on
a per tenant basis. You can choose to create a metadata table per field or have a
single metadata table for all the extra fields in the table. Alternatively, you can
introduce an additional column for the table name, to have a common table
describing all custom fields (for each tenant) across all the tables in the schema.

This approach is depicted in the following figure. Fields 1 to 4 are defined as extra
columns in the customer table. Further, the metadata table defined the field labels
and data types:

[ 19 ]
Designing Cloud Applications – An Architect's Perspective

A second approach, takes a name-value pair approach, where you have a main
data table that points to an intermediate table containing the value of the field,
and a pointer to a metadata table that contains the field label, data type, and such
information. This approach cuts out potential waste and does not limit the number
of fields available for customization as in the first approach, but is obviously more
complicated to implement.

[ 20 ]
Chapter 2

A variation on the preceding two approaches is to define an extra field per table, and
store all custom name-value pairs per tenant in an XML or JSON format, as shown in
the following figure:

A third approach is to add columns per tenant as required. This approach is more
suitable in the separate database or separate schema per tenant models. However,
this approach should generally be avoided as it leads to complexity in application
code that is, handling arbitrary number of columns in a table per tenant. Further,
it can lead to operational headaches during upgrades.

You will need to design your database schema carefully for providing
custom extensions to your tenants, as this can have a ripple effect on
the application code and the user interface.

[ 21 ]
Designing Cloud Applications – An Architect's Perspective

In this section, we have primarily covered multi-tenant approaches for relational


databases. Depending on your particular application requirements, for instance,
type and volume of data, and types of database operations, a NoSQL database can
be a good data storage solution. NoSQL databases use nontabular structures, such as
key-value pairs, graphs, documents, and so on to store data. The design techniques
in such cases would depend on your choice of NoSQL database.

Application multi-tenancy
In addition to introducing a tenant ID column in the database, if the application
has web service interfaces, then these services should also include the tenant ID
parameter in its request and/or response schemas. To ensure smooth transition
between shared and isolated application instances, it is important to maintain
tenant IDs in the application tier. In addition, tenant aware business rules can be
encoded in a business rules engine, and tenant specific workflows can be modeled
in multi-tenanted workflow engine software, using Business Process Execution
Language (BPEL) process templates.

In cases where you end up creating a tenant-specific web service, you will need
to design it in a manner that least impacts your other tenants. A mediation proxy
service that contains routing rules can help in this case. This service can route the
requests from a particular tenant's users (specified by the tenant ID in the request)
to the appropriate web service implemented for that tenant.

Similarly, the frontend or the UI is also configured for each tenant to provide a more
customized look and feel (for example, CSS files per tenant), tenant specific logos,
and color schemes. For differences in tenant UIs, portal servers can be used to serve
up portlets, appropriately.

If different service levels need to be supported across tenants, then an instance of the
application can be deployed on separate infrastructure for your high-end customers.
The isolation provided at the application layer (and the underlying infrastructure)
helps avoid tenants impacting each other, by consuming more CPU or memory
resources than originally planned.

Logging also needs to be tenant-aware (that is, use tenant ID in your record format).
You can also use other resources such as queues, file directories, directory servers,
caches, and so on for each of your tenants. These can be done in a dedicated or
separated out application stacks (per tenant). In all cases, make use of the tenant
ID filter for maximum flexibility.

Other application multi-tenancy-related issues include tenant-specific notifications,


new tenant provisioning and decommissioning, and so on.

[ 22 ]
Chapter 2

Designing for scale


Traditionally, designing for scale meant carefully sizing your infrastructure for peak
usage, and then adding a factor to handle variability in load. At some point when you
reach a certain threshold on CPU, memory, disk (capacity and throughput), or network
bandwidth, you will repeat the exercise to handle increased loads and initiate a lengthy
procurement and provisioning process. Depending on the application, this could mean
a scale up (vertical scaling) with bigger machines or scale out (horizontal scaling) with
more number of machines being deployed. Once deployed, the new capacity would be
fixed (and run continuously) whether the additional capacity was being utilized fully
or not.

In cloud applications, it is easy to scale both vertically and horizontally. Additionally,


the increase and the decrease in the number of nodes (in horizontal scalability) can be
done automatically to improve resource utilization, and manage costs better.

Typically, cloud applications are designed to be horizontally scalable. In most cases,


the application services or business tier is specifically designed to be stateless, so
that compute nodes can be added or deleted with no impact to the functioning of
the application. If the application state is important, then it can be stored externally
using the caching or the storage service. Depending on the application, things such
as session state can also be provided by the caller in each call, or be rehydrated from
a data store.

Horizontal scaling in the data tier is usually achieved through sharding.


Sharding splits a database across two or more databases to handle higher query
or data volumes than what can be effectively handled by a single database node.
In traditional application design, you would choose an appropriate sharding strategy
and implement all the logic necessary, to route the read/write requests to the right
shard. This results in increased code complexity. Instead, if you choose to use a PaaS
cloud database service, the responsibility for scalability and availability is largely
taken care off by the cloud provider.

An architecture comprising of loosely coupled components is a well-accepted


approach and the best practice. This is especially true while building highly scalable
systems. Loose coupling allows you to distribute your components and scale them
independently. In addition, loose coupling allows parts of your system to go down
without bringing the whole system down. This can improve the overall availability
of your application.

[ 23 ]
Designing Cloud Applications – An Architect's Perspective

The most commonly used design approaches to implement loose coupling is


to introduce queues between major processing components in your architecture.
Most PaaS cloud providers offer a queuing service that can be used to design for
high concurrency and unusual spikes in load. In a high velocity data pipeline type
application, the buffering capability of queues is leveraged to guard against data
loss when a downstream processing component is unavailable, slow, or has failed.

The following diagram shows a high capacity data processing pipeline. Notice that
queues are placed strategically between various processing components to help match
the impedance between the inflows of data versus processing components' speed:

Typically, the web tier writes messages or work requests to a queue. A component
from the services tier then picks up this request from the queue and processes it.
This ensures faster response times for end users as the queue-based asynchronous
processing model does not block on responses.

In a traditional architecture, you may have used message queues with simple enqueue
and dequeue operations to add processing requests and remove them for processing
from the queues, subsequently. However, implementing queue-based architectures
on the cloud is a little different. This is because your queue is distributed and your
messages automatically replicated across several nodes. In addition, one of these nodes
may be unavailable, or fails, when your request arrives, or during the processing of
your request.

In order to design more effectively, it is important to understand that:

• Message order is not guaranteed to be preserved between the enqueue


and dequeue operations. If there is a requirement to strictly preserve this
sequence then you include sequencing information as a part of the content
of each message.
• It may so happen that one of the replicas of the message may not get deleted
(due to a hardware failure or the unavailability of the node). Hence, there is a
chance that the message or processing request would get processed twice. It is
imperative to design your transactions to be idempotent in such circumstances.

[ 24 ]
Exploring the Variety of Random
Documents with Different Content
APPENDICES
APPENDIX A
Intelligence Ratings in the Army

Reprinted from The Personnel Manual

(Vol. II of The Personnel System of the United States Army)

Purpose of the Intelligence Tests.—Under the direction of the Division of


Psychology, Medical Department, and in accordance with provisions of
General Order No. 74, mental tests are given all recruits during the two-
weeks detention period. These tests provide an immediate and reasonably
dependable classification of the men according to general intelligence. Their
specific purposes are to aid:—
(1) In the discovery of men whose superior intelligence suggests their
consideration for advancement;
(2) In the prompt selection and assignment to Development Battalions of
men who are so inferior mentally that they are suited only for selected
assignments;
(3) In forming organizations of uniform mental strength where such
uniformity is desired;
(4) In forming organizations of superior mental strength where such
superiority is demanded by the nature of the work to be performed;
(5) In selecting suitable men for various army duties or for special training
in colleges or technical schools;
(6) In the early formation of training groups within a company in order
that each man may receive instruction and drill according to his ability to
profit thereby;
(7) In the early recognition of slow-thinking minds which might otherwise
be mistaken for stubborn or disobedient characters;
(8) In eliminating from the army those men whose low-grade intelligence
renders them either a burden or a menace to the service.
Nature of the Tests.—The tests were prepared by a special committee of
the American Psychological Association. Before being ordered into general
use they were thoroughly tried out in four National Army Cantonments, and
from time to time have undergone revision to increase their practical
usefulness. Between May 1 and October 1, 1918, approximately one million
three hundred thousand men were tested.
Three systems of test are now in use:—
(1) Alpha. This is a group test for men who read and write English. It
requires only fifty minutes, and can be given to groups as large as 500. The
test material is so arranged that each of its 212 questions may be answered
without writing, merely by underlining, crossing out, or checking. The
papers are later scored by means of stencils, so that nothing is left to the
personal judgment of those who do the scoring. The mental rating which
results is therefore wholly objective.
(2) Beta. This is a group test for foreigners and illiterates. It may be given
to groups of from 75 to 300 and requires approximately fifty minutes.
Success in Beta does not depend upon knowledge of English, as the
instructions are given entirely by pantomime and demonstration. Like
Alpha, it measures general intelligence, but does so through the use of
concrete or picture material instead of by the use of printed language. It is
also scored by stencils and yields an objective rating.
(3) Individual Tests. Three forms of individual tests are used: The Yerkes-
Bridges Point Scale, the Stanford-Binet Scale, and the Performance Scale. An
individual test requires from fifteen to thirty minutes. The instructions for
the Performance Scale are given by means of gestures and demonstration,
and a high score may be earned in it by an intelligent recruit who does not
know a word of English.
All enlisted men are given either Alpha or Beta according to their degree of
literacy. Those who fail in Alpha are given Beta, and those who fail to pass
Test Beta are given an individual test.
As a result of the tests, each man is rated as A, B, C+, C, C−, D, D− or E.
The letter ratings are reported to the Interviewing Section of the Personnel
Office, and are there copied on the Qualification Cards (in the square
marked Intelligence). The Psychological Report, after the grades have been
copied on the Qualification Cards, is forwarded from the Interviewing
Section to the Mustering Section of the Personnel Office, where each
soldier’s letter rating is copied on the second page of his Service Record. A
copy of the Psychological Report is also sent by the Psychological Examiner
to the Company Commander, who uses it in the organization of his company.
In some camps the entering of Intelligence Grades on Service Records has
been left to company commanders, but accuracy and uniformity is secured
by having these grades entered in the Mustering Section of the Personnel
Office when the Service Records are being started.
The psychological staff in a camp is ordinarily able to test 2,000 men per
day and to report the ratings to the Personnel Office within 24 hours.
Personnel Adjutants will coöperate in arranging the schedule of
psychological examinations so as to secure from them maximum value (See
Chapter IV for the proper coördination of the work of the Psychological
Examiner with the work of other officers in a camp.)
Explanation of letter ratings.—The rating a man earns furnishes a fairly
reliable index of his ability to learn, to think quickly and accurately, to
analyze a situation, to maintain a state of mental alertness, and to
comprehend and follow instructions. The score is little influenced by
schooling. Some of the highest records have been made by men who had
never completed the eighth grade. The meaning of the letter ratings is as
follows:
A. Very Superior Intelligence. This grade is earned by only four or five
soldiers out of a hundred. The “A” group is composed of men of marked
intellectuality. “A” men are of high officer type when they are also endowed
with leadership and other necessary qualities.
B. Superior Intelligence. “B” intelligence is superior, but less exceptional
than that represented by “A.” The rating “B” is obtained by eight to ten
soldiers out of a hundred. The group contains a good many men of the
commissioned officer type and a large amount of non-commissioned officer
material.
C+. High Average Intelligence. This group includes about fifteen to
eighteen per cent. of all soldiers and contains a large amount of non-
commissioned officer material with occasionally a man whose leadership
and power to command fit him for commissioned rank.
C. Average Intelligence. Includes about twenty-five per cent. of soldiers.
Excellent private type with a certain amount of fair non-commissioned
officer material.
C−. Low Average Intelligence. Includes about twenty per cent. While
below average in intelligence, “C−” men are usually good privates and
satisfactory in work of routine nature.
D. Inferior Intelligence. Includes about fifteen per cent. of soldiers. “D”
men are likely to be fair soldiers, but are usually slow in learning and rarely
go above the rank of private. They are short on initiative and so require more
than the usual amount of supervision. Many of them are illiterate or foreign.
D− and E. Very Inferior Intelligence. This group is divided into two
classes (1) “D−” men, who are very inferior in intelligence but are considered
fit for regular service; and (2) “E” men, those whose mental inferiority
justifies their recommendation for Development Battalion, Special Service
Organization, rejection, or discharge. The majority of “D−” and “E” men are
below ten years in “mental age.”
The immense contrast between “A” and “D−” intelligence is shown by the
fact that men of “A” intelligence have the ability to make a superior record in
college or university, while “D−” men are of such inferior mentality that they
are rarely able to go beyond the third or fourth grade of the elementary
school, however long they attend. In fact, most “D−” and “E” men are below
the “mental age” of ten years and at best are on the border-line of mental
deficiency. Most of them are of the “moron” grade of feeble-mindedness. “B”
intelligence is capable of making an average record in college, “C+”
intelligence cannot do so well, while mentality of the “C” grade is rarely
equal to high school graduation.
Evidence that the Tests Measure Military Value.—It has been thoroughly
demonstrated that the intelligence ratings are very useful in indicating
practical military value. The following investigations are typical:
1. Commanding officers of ten different organizations representing various
arms in a camp were asked to designate:
(a) The most efficient men in the organization;
(b) Men of average value;
(c) Men so inferior that they were “barely able” to perform their duties.
The officers of these organizations had been with their men from six to
twelve months and knew them exceptionally well. The total number of men
rated was 965, about equally divided among “best,” “average,” and “poorest.”
After the officers’ ratings had been made, the men were given the usual
psychological test. Comparison of test results with officers’ ratings showed:

(a) That the average score of the “best” group was approximately twice as
high as the average score of the “poorest” group.
(b) That of men testing below “C−” 70 per cent. were classed as “poorest”
and only 4.4 per cent. as “best.”
(c) That of men testing above “C+,” 15 per cent. were classed as “poorest”
and 55.5 per cent. as “best.”
(d) That the man who tests above “C+” is about fourteen times as likely
to be classed “best” as the man who tests below “C−.”
(e) That the per cent. classed as “best” in the various letter groups
increased steadily from 0 per cent. in “D−” to 57.7 per cent. in “A,”
while the per cent. classed as “poorest” decreased steadily from 80
per cent. in “D−” to 11.5 per cent. in “A.” The following table shows
the per cents. for each letter group:
D− D C− C C+ B A
Total number 29 60 121 231 229 191 104
Classed with “best” 0.0% 6.7% 19.0% 26.0% 39.3% 53.4% 57.7%
Classed with
“poorest” 79.3% 66.0% 57.9% 31.2% 24.9% 16.7% 11.5%
Considering that low military value may be caused by many things besides
inferior intelligence, the above findings are very significant.
2. In an infantry regiment of another camp were 765 men (Regulars) who
had been with their officers for several months. The company commanders
were asked to rate these men as 1, 2, 3, 4, or 5 according to “practical soldier
value,” “1” being highest, and “5” lowest. The men were then tested, with the
following results:

(a) Of 76 men who earned the grade A or B, none was rated “5” and only
9 were rated “3” or “4.”
(b) Of 238 “D” and “D−” men, only one received the rating “1” and only 7
received a rating of “2.”
(c) Psychological ratings and ratings by company commanders were
identical in 49.5 per cent. of all cases. There was agreement within
one step in 88.4 per cent. of cases, and disagreement of more than
7
two steps in only 10 of 1 per cent. of cases.

3. In another camp the company officers of a regiment were asked to


designate the ten “best” and ten “poorest” privates in each company. The
officers had been with their men long enough to know them thoroughly.
Comparison of the officers’ estimates with the results of intelligence tests
brought out the following facts:

(a) Of 156 men classed with the ten “best” in their respective companies,
only 9 tested below C−.
(b) Of 133 men classed with the “poorest” ten in their respective
companies, only 4 tested above C+.
(c) Men above C+ are 7.3 times as likely as men below C− to be classed
with the ten “best.”
(d) Men below C− are 10.8 times as likely as men above C+ to be classed
with the ten “poorest.”
(e) An “A” man is 11.7 times as likely as a man below C− to be rated
“best”; but a man below C− is 13.5 times as likely as an “A” to be
rated “poorest.”
4. The same experiment was made in still another camp. Officers of 36
different companies picked the ten “best” and the ten “poorest” men in each
company. Of the “poorest,” 62.22 per cent. tested below C− and only 3.06
per cent. above C+. Of the “best,” 38 per cent. tested above C+ and only 9.72
per cent. below C−. According to this investigation, a man below C− is 6.4
times as likely to be “poorest” as to be “best.” A man above C+ is 12.5 times
as likely to be “best” as to be “poorest.” A man rating A is 62 times as likely
to be “best” as to be “poorest.” A man rating D− is 29.3 times as likely to be
“poorest” as to be “best.”
5. Where commissioned officers are selected on the basis of trying out and
“survival of the fittest” it is ordinarily found that about 80 per cent. are of the
A or B grade, and only about 5 per cent. below the C+ grade. Of non-
commissioned officers chosen by this method, about 75 per cent. are found
to grade A, B, or C+, and only 5 per cent. below C. Moreover, there is a
gradual rise in average score as we go from privates up through the ranks of
privates first class, corporals, sergeants first class, O. T. S. candidates, and
commissioned officers. This is seen in the following table:
PER CENT. EARNING EACH LETTER RATING
Various
Groups D− A and
(Whites) or E D C− C C+ B A B
8,819
Commissioned
Officers 0.0 0.01 .25 2.92 13.8 34.6 48.4 83.
9,240 O.T.S.
Candidates 0.0 0.14 .98 6.16 19.5 36.4 36.8 73.2
3,393
Sergeants 0.0 1.05 4.05 14.2 27.3 32.5 20.9 53.4
4,023
Corporals 0.0 1.33 7.33 20.33 31.3 26. 13.7 39.7
81,114
Literate
Privates 0.22 10.24 21.48 28.79 20.48 12.38 6.37 18.75
10,803
Illiterate
Privates 7.8 41.16 29.11 14.67 4.43 1.95 .52 2.47
6. Experience shows that “D” candidates admitted to Officers’ Training
Schools almost never make good, and that the per cent. of elimination
among the “C−” and “C” students is several times as high as among “A”
students. For example, in one of the Fourth Officers’ Training Schools 100
per cent. of the “D” men were eliminated as unsatisfactory, 55 per cent. of
the “C−” men, 14.8 per cent. of the “B” men, but only 2.7 per cent. of the “A”
men. In another Fourth Officers’ Training School 76.2 per cent. of the men
rating below C were eliminated in the first six weeks, 51.5 per cent. of the “C”
men, and none at all of the “A” or “B” men. These findings are typical.
The psychological ratings are valuable not so much because they make a
better classification than would come about in the course of time through
natural selection, but chiefly because they greatly abbreviate this process by
indicating immediately the groups in which suitable officer material will be
found, and at the same time those men whose mental inferiority warrants
their elimination from regular units in order to prevent the retardation of
training. Speed counts in a war that costs fifty million dollars per day and
requires the minimum period of training.
Directions for the Use of Intelligence Ratings.—In using the intelligence
ratings the following points should be borne in mind:
1. The mental tests are not intended to replace other methods of judging a
man’s value to the service. It would be a mistake to assume that they tell us
infallibly what kind of soldier a man will make. They merely help to do this
by measuring one important element in a soldier’s equipment, namely,
intelligence. They do not measure loyalty, bravery, power to command, or
the emotional traits that make a man “carry on.” However, in the long run
these qualities are far more likely to be found in men of superior intelligence
than in men who are intellectually inferior. Intelligence is perhaps the most
important single factor in soldier efficiency apart from physical fitness.
2. Commissioned officer material is found chiefly in the A and B groups,
although of course not all high-score men have the other qualifications
necessary for officers. Men below C+ should not be accepted as students in
Officers’ Training Schools unless the score on the Officers’ Rating Scale
indicates exceptional power of leadership and ability to command.
3. Since more than one fourth of enlisted men rate as high as C+, there is
rarely justification for going below this grade in choosing non-commissioned
officers. This is especially the case in view of the likelihood of promotion
from non-commissioned rank. Even apart from considerations of promotion,
it is desirable to avoid the appointment of mentally inferior men (below C) as
non-commissioned officers. Several careful studies have shown that “C−”
and “D” sergeants and corporals are extremely likely to be found
unsatisfactory. The fact that a few make good does not justify the risk taken
in their appointment.
4. Men below C+ are rarely equal to complicated paper work.
5. In selecting men for tasks of special responsibility the preference should
be given to those of highest intelligence rating who also have the other
necessary qualifications. If they make good they should be kept on the work
or promoted; if they fail they should be replaced by men next on the list.
To aid in selecting men for occupational assignment, extensive data have
been gathered on the range of intelligence scores found in various
occupations. This material has been placed in the hands of the Personnel
Officers for use in making assignments. It is suggested that those men who
have an intelligence rating above the average in an occupation should be the
first to be assigned to meet requirements in that occupation, and after that
men with lower ratings should be considered.
6. In making assignments from the Depot Brigade to permanent
organizations it is important to give each unit its proportion of superior,
average, and inferior men. If this matter is left to chance there will inevitably
be “weak links” in the army chain.
Exceptions to this rule should be made in favour of certain arms of the
service which require more than the ordinary number of mentally superior
men; e. g., Signal Corps, Machine Gun, Field Artillery and Engineers. These
organizations ordinarily have about twice the usual proportion of “A” and
“B” men and very much less than the usual proportion of “D” and “D−” men.
The first two columns in the following table illustrate the distribution of
intelligence grades typical of infantry regiments and also the extreme
differences in the mental strength of organizations which are built up
without regard to intelligence ratings. The last column to the right shows a
balanced distribution of intellectual strength which might have been made to
each of these two regiments.
Intelligence Interpretation Actual Distribution Balanced
Rating 1st 2nd Distribution
Regiment Regiment
A Very 1.0% 6.0% 3.5%
Superior
B Superior 3.0 12.0 7.5
C+ High Average 7.0 20.0 13.5
C Average 15.0 28.0 21.5
C− Low Average 25.0 19.0 22.0
D Inferior 31.0 13.0 22.0
D− Very 18.0 2.0 10.0
Inferior
Unless intelligence is wisely distributed certain regiments and companies
will take training much more slowly than others and thus delay the
programme of the whole organization.
7. “D” and “D−” men are rarely suited for tasks which require special skill,
resourcefulness, or sustained alertness. It is also unsafe to expect “D,” “D−”
or “E” men to read or understand written directions.
8. Only high-score men should be selected for tasks that require quick
learning or rapid adjustments.
9. It should not be supposed that men who receive the same mental rating
are necessarily of equal military worth. A man’s value to the service should
not be judged by his intelligence alone.
10. The intelligence rating is one of the most important aids to the
Personnel Office in the rapid sorting of the masses of men in the Depot
Brigade. In no previous war has so much depended on the prompt and
complete utilization of the mental ability of the individual soldier. It is
expected, therefore, that the psychological ratings will be regularly used as
an aid in the selection, assignment, and classification of men.
APPENDIX B
The Army “Alpha” and “Beta” Tests

With Instructions and Method of Scoring


Instructions for giving Alpha Test 1. (To be read aloud by Examiner.)
Test 1, Form 8.
1. “Attention! ‘Attention’ always means ‘Pencils up.’ Look at the circles at 1. When I say ‘go,’ but not
before, make a figure 2 in the second circle and also a cross in the third circle.—Go!” (Allow not over 5
seconds.)
2. “Attention! Look at 2, where the circles have numbers in them. When I say ‘go’ draw a line from
Circle 1 to Circle 4 that will pass below Circle 2 and above Circle 3.—Go!” (Allow not over 5 seconds.)
3. “Attention! Look at the square and triangle at 3. When I say ‘go’ make a figure 1 in the space which
is in the square but not in the triangle, and also make a cross in the space which is in the triangle and in
the square.—Go!” (Allow not over 10 seconds.)
4. “Attention! Look at 4. When I say ‘go’ make a figure 2 in the space which is in the circle but not in
the triangle or square, and also make a figure 3 in the space which is in the triangle and circle, but not in
the square.—Go!” (Allow not over 10 seconds.)
N. B. Examiner.—In reading 5, don’t pause at the word “circle” as if ending a sentence.
5. “Attention! Look at 5. If ‘taps’ sounds in the evening, then (when I say ‘go’) put a cross in the first
circle; if not, draw a line under the word No.—Go!” (Allow not over ten seconds.)
6. “Attention! Look at 6. When I say ‘go’ put in the first circle the right answer to the question: ‘How
many months has a year?’ In the second circle do nothing, but in the fifth circle put any number that is
wrong answer to the question that you just answered correctly—Go!” (Allow not over 10 seconds.)
7. “Attention! Look at 7. When I say ‘go’ cross out the letter just after F and also draw a line under the
second letter after I.—Go!” (Allow not over 10 seconds.)
8. “Attention! Look at 8. Notice the three circles and the three words. When I say ‘go’ make in the first
circle the last letter of first word; in the second circle the middle letter of the second word, and in the
third circle the first letter of the third word.—Go!” (Allow not over 10 seconds.)
9. “Attention! Look at 9. When I say ‘go’ cross out each number that is more than 50 but less than 60.
—Go!” (Allow not over 15 seconds.)
10. “Attention! Look at 10. Notice that the drawing is divided into five parts. When I say ‘go’ put a 4 or
a 5 in each of the two largest parts and any number between 6 and 9 in the part next in size to the
smallest part.—Go!” (Allow not over 15 seconds.)
11. “Attention! Look at 11. When I say ‘go’ draw a line through every odd number that is not in a
square, and also through every odd number that is in a square with a letter.—Go!” (Allow not over 25
seconds.)
12. “Attention! Look at 12. If 4 is more than 2, then (when I say ‘go’) cross out the number 3 unless 3 is
more than 5, in which case draw a line under the number 4.—Go!” (Allow not over 10 seconds.)
“During the rest of this examination don’t turn any page forward or backward unless you are told to.
Now turn over the page to Test 2.”

FORM 8 GROUP EXAMINATION ALPHA GROUP NO. ____

Name _______________________________________ Rank ________ Age ____

Company ____________ Regiment ___________ Arm ________ Division ____

In what country or state born? ______ Years in U. S.? ____ Race ____

Occupation _______________________________________ Weekly Wages ____

Schooling: Grades, 1. 2. 3. 4. 5. 6. 7. 8: High or Prep. School, Year 1. 2. 3. 4: College, Year 1. 2. 3. 4.


========================================================================

TEST 1
Division of Psychology, Medical
Department U. S. A.
Authorized by the Surgeon General,
Feb. 8, 1918. Edition, May 20, 1918.
100,000
Instructions for Giving Alpha Test 2.
Test 2.—Arithmetical Problems
“Attention! Look at the directions at the top of the page while I read them. Get the answers to these
examples as quickly as you can. Use the side of this page to figure on if you need to. I will say stop at the
end of five minutes. You may not be able to finish all of them, but do as many as you can in the time
allowed. The two samples are already answered correctly.—Ready—Go!”
After 5 minutes, say “Stop! Turn over the page to Test 3.”

TEST 2
Get the answers to these examples as quickly as you can. Use the side of this page to figure on if you
need to.
1 How many are 5 men and 10 men? Answer ( 15)
SAMPLES 2 If you walk 4 miles an hour for 3 hours, how far do you
walk? Answer ( 12)
1 How many are 60 guns and 5 guns? Answer ( )

2 If you save $9 a month for 3 months, how much will you save? Answer ( )

3 If 48 men are divided into squads of 8, how many squads will there be? Answer ( )

4 Mike had 11 cigars. He bought 2 more and then smoked 7. How many
cigars did he have left? Answer ( )

5 A company advanced 8 miles and retreated 2 miles. How far was it then
from its first position? Answer ( )

6 How many hours will it take a truck to go 42 miles at the rate of 3


miles an hour? Answer ( )

7 How many pencils can you buy for 60 cents at the rate of 2 for 5
cents? Answer ( )

8 A regiment marched 40 miles in five days. The first day they marched 9
miles, the second day 6 miles, the third 10 miles, the fourth 6
miles. How many miles did they march the last day? Answer ( )

9 If you buy 2 packages of tobacco at 8 cents each and a pipe for 65


cents, how much change should you get from a two-dollar bill? Answer ( )

10 If it takes 4 men 3 days to dig a 120–foot drain, how many men are
needed to dig it in half a day? Answer ( )

11 A dealer bought some mules for $2,000. He sold them for $2,400, making
$50 on each mule. How many mules were there? Answer ( )

12 A rectangular bin holds 200 cubic feet of lime. If the bin is 10 feet
long and 5 feet wide, how deep is it? Answer ( )

13 A recruit spent one-eighth of his spare change for post cards and
twice as much for a box of letter paper, and then had $1.00 left.
How much money did he have at first? Answer ( )
14 If 3½ tons of clover cost $14, what will 6½ tons cost? Answer ( )

15 A ship has provisions to last her crew of 700 men 2 months. How long
would it last 400 men? Answer ( )

16 If an aeroplane goes 250 yards in 10 seconds, how many feet does it go


in a fifth of a second? Answer ( )

17 A U-boat makes 8 miles an hour under water and 20 miles on the


surface. How long will it take to cross a 100–mile channel, if it
has to go two-fifths of the way under water? Answer ( )

18 If 134 squads of men are to dig 3,618 yards of trench, how many yards
must be dug by each squad? Answer ( )

19 A certain division contains 5,000 artillery, 15,000 infantry, and


1,000 cavalry. If each branch is expanded proportionately until
there are in all 23,100 men, how many will be added to the
artillery? Answer ( )

20 A commission house which had already supplied 1,897 barrels of apples


to a cantonment delivered the remainder of its stock to 37 mess
halls. Of this remainder each mess hall received 54 barrels. What
was the total number of barrels supplied? Answer ( )
Instructions for Giving Alpha Test 3.
Test 3.—Practical Judgment
“Attention! Look at the directions at the top of the page while I read them. ‘This is a test of common
sense. Below are sixteen questions. Three answers are given to each question. You are to look at the
answers carefully; then make a cross in the square before the best answer to each question, as in the
sample:
“‘Why do we use stoves? Because

☐ they look well


☒ they keep us warm
☐ they are black

“‘Here the second answer is the best one and is marked with a cross.
“‘Begin with No. 1 and keep on until time is called.’—Ready—Go!” After 1½ minutes, say “Stop! Turn
over the page to Test 4.”

TEST 3
This is a test of common sense. Below are sixteen questions. Three answers are given to each question.
You are to look at the answers carefully; then make a cross in the square before the best answer to each
question, as in the sample:

SAMPL Why do we use stoves? Because


E
☐ they look well
☒ they keep us warm
☐ they are black
Here the second answer is the best one and is marked with a cross. Begin with No. 1 and keep on until
time is called.

1 It is wiser to put some money aside and not spend it all, so that you may
☐ prepare for old age or sickness
☐ collect all the different kinds of money
☐ gamble when you wish
2 Shoes are made of leather, because
☐ it is tanned
☐ it is tough, pliable and warm
☐ it can be blackened
3 Why do soldiers wear wrist watches rather than pocket watches? Because
☐ they keep better time
☐ they are harder to break
☐ they are handier
4 The main reason why stone is used for building purposes is because
☐ it makes a good appearance
☐ it is strong and lasting
☐ it is heavy
5 Why is beef better food than cabbage? Because
☐ it tastes better
☐ it is more nourishing
☐ it is harder to obtain
6 If some one does you a favor, what should you do?
☐ try to forget it
☐ steal for him if he asks you to
☐ return the favor
7 If you do not get a letter from home which you know was written, it may be because
☐ it was lost in the mails
☐ you forgot to tell your people to write
☐ the postal service has been discontinued
8 The main thing the farmers do is to
☐ supply luxuries
☐ make work for the unemployed
☐ feed the nation
9 If a man who can’t swim should fall into a river, he should
☐ yell for help and try to scramble out
☐ dive to the bottom and crawl out
☐ lie on his back and float
10 Glass insulators are used to fasten telegraph wires because
☐ the glass keeps the pole from being burned
☐ the glass keeps the current from escaping
☐ the glass is cheap and attractive
11 If your load of coal gets stuck in the mud, what should you do?
☐ leave it there
☐ get more horses or men to pull it out
☐ throw off the load
12 Why are criminals locked up?
☐ to protect society
☐ to get even with them
☐ to make them work
13 Why should a married man have his life insured? Because
☐ death may come at any time
☐ insurance companies are usually honest
☐ his family will not then suffer if he dies
14 In Leap Year February has 29 days because
☐ February is a short month
☐ some people are born on February 29th
☐ otherwise the calendar would not come out right
15 If you are held up and robbed in a strange city, you should
☐ apply to the police for help
☐ ask the first man you meet for money to get home
☐ borrow some money at a bank
16 Why should we have Congressmen? Because
☐ the people must be ruled
☐ it insures truly representative government
☐ the people are too many to meet and make their laws
Instructions for Giving Alpha Test 4.
Test 4.—Synonym—Antonym
“Attention! Look at the directions at the top of the page while I read them.” (Examiner.—Read slowly.)
“‘If the two words of a pair mean the same or nearly the same draw a line under “same.” If they mean
the opposite or nearly the opposite, draw a line under “opposite.” If you cannot be sure, guess. The two
samples are already marked as they should be.’—Ready—Go!”
After 1½ minutes, say “Stop! Turn over the page to Test 5.” (Pause.) “Now you have to turn your
books around this way.” (Examiner illustrates the necessary rotation.)

TEST 4
If the two words of a pair mean the same or nearly the same, draw a line under same. If they mean the
opposite or nearly the opposite, draw a line under opposite. If you cannot be sure, guess. The two
samples are already marked as they should be
SAMPLES good—bad same—opposite
little—small same—opposite

1 no—yes same—opposite 1
2 day—night same—opposite 2
3 go—leave same—opposite 3
4 begin—commence same—opposite 4
5 bitter—sweet same—opposite 5

6 assume—suppose same—opposite 6
7 command—obey same—opposite 7
8 tease—plague same—opposite 8
9 diligent—industrious same—opposite 9
10 corrupt—honest same—opposite 10

11 toward—from same—opposite 11
12 masculine—feminine same—opposite 12
13 complex—simple same—opposite 13
14 sacred—hallowed same—opposite 14
15 often—seldom same—opposite 15

16 ancient—modern same—opposite 16
17 enormous—gigantic same—opposite 17
18 confer—grant same—opposite 18
19 acquire—lose same—opposite 19
20 compute—calculate same—opposite 20

21 defile—purify same—opposite 21
22 apprehensive—fearful same—opposite 22
23 sterile—fertile same—opposite 23
24 chasm—abyss same—opposite 24
25 somber—gloomy same—opposite 25

26 vestige—trace same—opposite 26
27 vilify—praise same—opposite 27
28 finite—limited same—opposite 28
29 contradict—corroborate same—opposite 29
30 immune—susceptible same—opposite 30

31 credit—debit same—opposite 31
32 assiduous—diligent same—opposite 32
33 transient—permanent same—opposite 33
34 palliate—mitigate same—opposite 34
35 execrate—revile same—opposite 35

36 extinct—extant same—opposite 36
37 pertinent—relevant same—opposite 37
38 synchronous—simultaneous same—opposite 38
39 supercilious—disdainful same—opposite 39
40 abstruse—recondite same—opposite 40
Instructions for Giving Alpha Test 5.
Test 5.—Disarranged Sentences
“Attention! Look at the directions at the top of the page while I read them.” (Examiner.—Read slowly.)
“The words a eats cow grass in that order are mixed up and don’t make a sentence; but they would
make a sentence if put in the right order: a cow eats grass, and this statement is true.
“Again, the words horses feathers have all would make a sentence if put in the order all horses have
feathers, but this statement is false.
“Below are 24 mixed-up sentences. Some of them are true and some are false. When I say ‘go,’ take
these sentences one at a time. Think what each would say if the words were straightened out, but don’t
write them yourself. Then, if what it would say is true draw a line under the word ‘true’; if what it would
say is false, draw a line under the word ‘false.’ If you cannot be sure, guess. The two samples are already
marked as they should be. Begin with No. 1 and work right down the page until time is called. ‘Ready—
Go!’”
After 2 minutes, say “Stop! Turn over the page to Test 6.”

TEST 5
The words A EATS COW GRASS in that order are mixed up and don’t make a sentence; but they
would make a sentence if put in the right order: A COW EATS GRASS, and this statement is true.
Again, the words HORSES FEATHERS HAVE ALL would make a sentence if put in the order: ALL
HORSES HAVE FEATHERS, but this statement is false.
Below are twenty-four mixed-up sentences. Some of them are true and some are false. When I say
“go,” take these sentences one at a time. Think what each would say if the words were straightened out,
but don’t write them yourself. Then, if what it would say is true, draw a line under the word “true”; if
what it would say is false, draw a line under the word “false.” If you can not be sure, guess. The two
samples are already marked as they should be. Begin with No. 1 and work right down the page until time
is called.
SAMPLES a eats cow grass true false
horses feathers have all true false

1 oranges yellow are true false 1


2 hear are with to ears true false 2
3 noise cannon never make a true false 3
4 trees in nests build birds true false 4
5 oil water not and will mix true false 5
6 bad are shots soldiers all true false 6
7 fuel wood are coal and for used true false 7
8 moon earth the only from feet twenty the is true false 8
9 to life water is necessary true false 9
10 are clothes all made cotton of true false 10
11 horses automobile an are than slower true false 11
12 tropics is in the produced rubber true false 12
13 leaves the trees in lose their fall true false 13
14 place pole is north comfortable a the true false 14
15 sand of made bread powder and is true false 15
16 sails is steamboat usually by propelled a true false 16
17 is the salty in water all lakes true false 17
18 usually judge can we actions man his by a true false 18
19 men misfortune have good never true false 19
20 tools valuable is for sharp making steel true false 20
21 due sometimes calamities are accident to true false 21
22 forget trifling friends grievances never true false 22
23 feeling is of painful exaltation the true false 23
24 begin a and apple acorn ant words with the true false 24
Instructions for Giving Alpha Test 6.
Test 6.—Number Series Completion
(N. B. Examiner.—Give these instructions very slowly).
“Attention! Look at the first sample row of figures at the top of the page—2, 4, 6, 8, 10, 12, the two
numbers that should come next are, of course, 14, 16.
“Look at the second sample—9, 8, 7, 6, 5, 4; the two numbers that should come next are 3, 2.
“Look at the third sample—2, 2, 3, 3, 4, 4; the two numbers that should come next are 5, 5.
“Now look at the fourth sample—1, 7, 2, 7, 3, 7; the next two numbers would, of course, be 4, 7.
“Look at each row of numbers below and on the two dotted lines write the two numbers that should
come next.—Ready—Go!”
After 3 minutes, say “Stop! Turn over the page to Test 7.”

TEST 6
2 4 6 8 10 12 14 16
9 8 7 6 5 4 3 2
SAMPLES
2 2 3 3 4 4 5 5
1 7 2 7 3 7 4 7
Look at each row of numbers below, and on the two dotted lines write the two numbers that should
come next.
3 4 5 6 7 8 ..... .....
8 7 6 5 4 3 ..... .....
10 15 20 25 30 35 ..... .....
9 9 7 7 5 5 ..... .....
3 6 9 12 15 18 ..... .....
8 1 6 1 4 1 ..... .....
5 9 13 17 21 25 ..... .....
8 9 12 13 16 17 ..... .....
27 27 23 23 19 19 ..... .....
1 2 4 8 16 32 ..... .....
19 16 14 11 9 6 ..... .....
11 13 12 14 13 15 ..... .....
2 3 5 8 12 17 ..... .....
18 14 17 13 16 12 ..... .....
29 28 26 23 19 14 ..... .....
20 17 15 14 11 9 ..... .....
81 27 9 3 1 ⅓ ..... .....
1 4 9 16 25 36 ..... .....
16 17 15 18 14 19 ..... .....
3 6 8 16 18 36 ..... .....
Instructions for Giving Alpha Test 7.
Test 7.—Analogies
“Attention! Look at the first sample at the top of the page: Sky—blue ∷ grass—table, green, warm, big.
“Notice the four words in heavy type. One of them—green—is underlined. Grass is green just as the
sky is blue.
“Look at the second sample: Fish—swims ∷ man—paper, time, walks, girl.
“Here the word walks is underlined. A man walks and a fish swims.
“Look at the third sample: Day—night ∷ white—red, black, clear, pure.
“Here the word black is underlined because black is the opposite of white just as night is the opposite
of day.
“In each of the lines below the first two words are related to each other in some way. What you are to
do in each line is to see what the relation is between the first two words and underline the word in heavy
type that is related in the same way to the third word. Begin with No. 1 and mark as many sets as you
can before time is called.—Ready—Go!”
After 3 minutes, say “Stop! Turn over the page to Test 8.”

TEST 7
SAMPLES sky—blue ∷ grass— table green warm big
fish—swims ∷ man— paper time walks girl
day—night ∷ white— red black clear pure
In each of the lines below, the first two words are related to each other in some way. What you are to
do in each line is to see what the relation is between the first two words, and underline the word in
heavy type that is related in the same way to the third word. Begin with No. 1 and mark as many sets as
you can before time is called.
1 shoe—foot ∷ hat— kitten head knife penny 1
2 pup—dog ∷ lamb— red door sheep book 2
3 spring—summer ∷ autumn— winter warm harvest rise 3
4 devil—angel ∷ bad— mean disobedient defamed good 4
5 finger—hand ∷ toe— body foot skin nail 5

6 legs—frog ∷ wings— eat swim bird nest 6


7 chew—teeth ∷ smell— sweet stink odor nose 7
8 lion—roar ∷ dog— drive pony bark harness 8
9 cat—tiger ∷ dog— wolf bark bite snap 9
10 good—bad ∷ long— tall big snake short 10

11 giant—large ∷ dwarf— jungle small beard ugly 11


12 winter—season ∷ January— February day month Christmas 12
13 skating—winter ∷ swimming— diving floating hole summer 13
14 blonde—light ∷ brunette— dark hair brilliant blonde 14
15 love—friend ∷ hate— malice saint enemy dislike 15

10 egg—bird ∷ seed— grow plant crack germinate 16


17 dig—trench ∷ build— run house spade bullet 17
18 agree—quarrel ∷ friend— comrade need mother enemy 18
19 palace—king ∷ hut— peasant cottage farm city 19
20 cloud-burst—shower ∷ cyclone— bath breeze destroy West 20

21 Washington—Adams ∷ first— president second last Bryan 21


22 parents—command ∷ children— men shall women obey 22
23 diamond—rare ∷ iron— common silver ore steel 23
24 yes—affirmative ∷ no— think knowledge yes negative 24
25 hour—day ∷ day— night week hour noon 25

26 eye—head ∷ window— key floor room door 26


27 clothes—man ∷ hair— horse comb beard hat 27
28 draw—picture ∷ make— destroy table break hard 28
29 automobile—wagon ∷ motorcycle— ride speed bicycle car 29
30 granary—wheat ∷ library— read books paper chairs 30

31 Caucasian—English ∷ Mongolian— Chinese Indian negro yellow 31


32 Indiana—United States ∷ part— hair China Ohio whole 32
33 esteem—despise ∷ friends— Quakers enemies lovers men 33
34 abide—stay ∷ depart— come hence leave late 34
35 abundant—scarce ∷ cheap— buy costly bargain nasty 35

36 whale—large ∷ thunder— loud rain lightning kill 36


37 reward—hero ∷ punish— God everlasting pain traitor 37
38 music—soothing ∷ noise— hear distracting sound report 38
39 book—writer ∷ statue— sculptor liberty picture state 39
40 wound—pain ∷ health— sickness disease exhilaration doctor 40
Instructions for Giving Alpha Test 8.
Test 8.—Information
“Attention! Look at the directions at the top of the page while I read them.” (Examiner.—Read slowly.)
“Notice the sample sentences: People hear with the—eyes—ears—nose—mouth. The correct word is
ears, because it makes the truest sentence. In each sentences below you have four choices for the last
word. Only one of them is correct. In each sentence draw a line under the one of these four words which
makes the truest sentence. If you cannot be sure, guess. The two samples are already marked as they
should be—Ready—Go!”
After 4 minutes, say “Stop! Turn over the page to Test 1 again. In the upper right-hand corner, where
it says ‘Group No. —,’ put the number 101” (or 102, 103, etc., according to the number of this group in
the examiner’s series of groups).

TEST 8
Notice the sample sentence:
People hear with the eyes ears nose mouth
The correct word is ears, because it makes the truest sentence.
In each of the sentences below you have four choices for the last word. Only one of them is correct. In
each sentence draw a line under the one of these four words which makes the truest sentence. If you can
not be sure, guess. The two samples are already marked as they should be.
People hear with the eyes ears nose mouth
SAMPLES France is in Europe Asia
Africa Australia

1 The apple grows on a shrub vine bush tree 1


Five hundred is played with rackets pins cards
2
dice 2
3 The Percheron is a kind of goat horse cow sheep 3
The most prominent industry of Gloucester is
4
fishing packing brewing automobiles 4
5 Sapphires are usually blue red green yellow 5

The Rhode Island Red is a kind of horse granite


6
cattle fowl 6
Christie Mathewson is famous as a writer artist
7
baseball player comedian 7
Revolvers are made by Swift & Co. Smith & Wesson
8
W. L. Douglas B. T. Babbitt 8
Carrie Nation is known as a singer temperance
9
agitator suffragist nurse 9
“There’s a reason” is an “ad” for a drink
10
revolver flour cleanser 10

11 Artichoke is a kind of hay corn vegetable fodder 11


12 Chard is a fish lizard vegetable snake. 12
Cornell University is at Ithaca Cambridge
13
Annapolis New Haven 13
Buenos Ayres is a city of Spain Brazil Portugal
14
Argentina 14
Ivory is obtained from elephants mines oysters
15
reefs 15

Alfred Noyes is famous as a painter poet


16
musician sculptor 16
The armadillo is a kind of ornamental shrub
17
animal musical instrument dagger 17
The tendon of Achilles is in the heel head
18
shoulder abdomen 18
Crisco is a patent medicine disinfectant tooth-
19
paste food product 19
20 An aspen is a machine fabric tree drink 20

The sabre is a kind of musket sword cannon


21
pistol 21
The mimeograph is a kind of typewriter copying
22
machine phonograph pencil 22
23 Maroon is a food fabric drink colour 23
The clarionet is used in music stenography book-
24
binding lithography 24
25 Denim is a dance food fabric drink 25

The author of “Huckleberry Finn” is Poe Mark


26
Twain Stevenson Hawthorne 26
Faraday was most famous in literature war
27
religion science 27
Air and gasolene are mixed in the accelerator
28
carburetor gear case differential 28
The Brooklyn Nationals are called the Giants
29
Orioles Superbas Indians 29
Pasteur is most famous in politics literature
30
war science 30

Becky Sharp appears in Vanity Fair Romola The


31
Christmas Carol Henry IV 31
The number of a Kaffir’s legs is two four six
32
eight 32
Habeas corpus is a term used in medicine law
33
theology pedagogy 33
Ensilage is a term used in fishing athletics
34
farming hunting 34
The forward pass is used in tennis hockey
35
football golf 35

General Lee surrendered at Appomattox in 1812


36
1865 1886 1832 36
The watt is used in measuring wind power
37
rainfall water power electricity 37
The Pierce Arrow car is made in Buffalo Detroit
38
Toledo Flint 38
Napoleon defeated the Austrians at Friedland
39
Wagram Waterloo Leipzig 39
An irregular four-sided figure is called a
40
scholium triangle trapezium pentagon 40
Directions for Scoring in Alpha Test.

General Rules

1. Each item is scored either right or wrong. No part credits are given.
2. In general, items evidently corrected stand as corrected.
3. In tests where the score is “Number Right,” only wrong items need be checked in scoring. In Tests 4
and 5, where the score is “Right minus Wrong,” wrong and omitted items must be separately checked.
4. Indicate the last item attempted by drawing a long line under that item and out into the margin.
5. Enter the score for each test in lower right-hand corner of the test page and encircle it. When the
test has been rescored, a check mark may be made beside the circle.
6. Red or blue pencil increases accuracy of scoring.

Test 1.
(Score is number right.)
1. No credit is given for any item in which more is done than the instructions require.
2. In an item where something is to be written “in” a given space, give credit if a mark crosses a line
from haste or awkwardness: give no credit if the position is really ambiguous.
3. Where something is to be underlined or crossed out, give credit if two or three underlinings are
made in the required place, and give credit for any method of crossing out.
4. Item 2.—The pencil line must begin and end either on the circumference or within the circles
indicated. It may touch the intermediate circles, but must not cut through them.
5. Item 6.—In the circle marked “not 12” there must be some number which is not 12, such as 5, 0, 27.
6. Item 9.—The proper numbers must be crossed out to receive credit.
7. Item 10.—In Form 5, “2” alone and “3” alone, but not “2 or 3,” in each of the two largest parts; “5”
alone and “6” alone, but not “5 or 6,” in the next to the smallest part, are correct. Similarly for other
forms.
8. Item 11.—The lines must cross, or at least touch, the proper numbers; they may or may not cut the
accompanying letters. Mere indication of the square, triangle, etc., is not sufficient.
9. Item 12.—Underlining in place of crossing out is wrong.

Test 2.
(Score is number right.)
1. Answer may be written on dotted line or elsewhere near its problem.
2. If two answers are given to any problem count as wrong.
3. If it seems clear that, by a slip, one answer has been put in the wrong bracket, and the next answers
are all thus misplaced, give credit for the answers that are right even if misplaced.
4. Omission of dollar sign is permissible.
5. Omission of decimal point is permissible in items, 2, 9, 13, and 14. Fraction may be expressed as
decimal in item 15.

Test 3.
(Score is number right.)
1. Any clear method of indicating answer is given full credit—underlining, checking, etc.
2. If two answers are marked, count as wrong unless one is clearly indicated as final.
Test 4.
(Score is number right minus number wrong.)
1. Any clear method of indicating answer is given credit.
2. When both “Same” and “Opposite” are underlined, counts as omitted, not as wrong.
3. If only “Same” is underlined right down the column, score for the test is zero. Similarly if
“Opposite” is underlined right down the column.

Test 5.
(Score is number right minus number wrong.)
Same rules as for Test 4.

Test 6.
(Score is number right.)
1. If only one number is written, give no credit.
2. If only one of the numbers is right, give no credit.
3. If four numbers are written, as frequently happens with certain items (i. e., 33, 11 instead of 3, 3),
give full credit.

Test 7
(Score is number right.)
1. Any clear indication other than underlining receives full credit.
2. Underlining of any of the first three words of an item does not remove credit.
3. If two or more of the last four words are marked, give no credit.

Test 8.
(Score is number right.)
Same rules as for Test 7.

Total Score and Rating

The result of examination Alpha is expressed in a total score which is the sum of the raw scores of the
several tests. The raw scores are obtained as follows:
TEST METHOD OF SCORING MAXIMUM RAW SCORE
1 R 12
2 R 20
3 R 16
4 R − W 40
5 R − W 24
6 R 20
7 R 40
8 R 40

Total 212
Letter ratings are assigned on examination Alpha as follows:
RATING SCORE
A 135–212
B 105–134
C+ 75–104
C 45–74
C− 25–44
D 15–24
D−[5] 0–14

5. Recalled for further examination.


All ratings above “D−” are entered and reported at once. Men whose scores are below “D” are recalled
for examination Beta. Ratings of “D−” may not be given in Alpha, unless recall of the men for Beta is
impossible.
Method of Giving the Army Beta Tests.
In practice the Beta tests, reproduced in facsimile on pages 313 to 322 following, are given with the
assistance of a blackboard chart on which the different tests are painted in white, so that the examiner
can show them to the entire group before they see them on their examination papers. There are also
required for giving the Beta tests a set of cardboard cubes for the examiner’s use in explaining Test 2,
and a set of cardboard pieces cut to the shapes of the figures in Test 7, though of much larger size. The
assistance of a demonstrator is also required.
Welcome to Our Bookstore - The Ultimate Destination for Book Lovers
Are you passionate about books and eager to explore new worlds of
knowledge? At our website, we offer a vast collection of books that
cater to every interest and age group. From classic literature to
specialized publications, self-help books, and children’s stories, we
have it all! Each book is a gateway to new adventures, helping you
expand your knowledge and nourish your soul
Experience Convenient and Enjoyable Book Shopping Our website is more
than just an online bookstore—it’s a bridge connecting readers to the
timeless values of culture and wisdom. With a sleek and user-friendly
interface and a smart search system, you can find your favorite books
quickly and easily. Enjoy special promotions, fast home delivery, and
a seamless shopping experience that saves you time and enhances your
love for reading.
Let us accompany you on the journey of exploring knowledge and
personal growth!

ebookgate.com

You might also like