Courseiva

SOA-C02 Deployment, Provisioning, and Automation Practice Question

A SysOps administrator uses AWS CloudFormation to deploy infrastructure. The administrator has a template that creates an Amazon EC2 instance and an Amazon RDS DB instance. The administrator needs to reuse the same template for development, test, and production environments, where the only differences are the EC2 instance type and the RDS DB instance class. Which CloudFormation feature should be used to define these environment-specific values?

⚠ Common exam trap

Many exam-takers confuse Parameters with Mappings, thinking Mappings can handle environment-specific values, but Mappings are static and cannot accept runtime input, whereas Parameters are designed exactly for this purpose.

Answer choices

Why each option matters

Answer the question above first, then reveal the full breakdown to understand why each option is right or wrong.

Correct answer & explanation

✓

Parameters

Parameters are the correct CloudFormation feature to define environment-specific values because they allow you to input custom values (e.g., EC2 instance type and RDS DB instance class) at stack creation or update time without modifying the template. This enables reuse of the same template across development, test, and production environments by simply passing different parameter values for each environment.

Answer analysis

Option-by-option breakdown

For each option: why learners choose it and why it is or isn't the right answer here.

  • ✗

    Mappings

    Why it's wrong here

    Mappings are static lookup tables embedded directly in the CloudFormation template. They let you define key-value pairs (often by region or environment) and select a value using the Fn::FindInMap intrinsic function, but these values are fixed at template authoring time. When the SysOps administrator needs to specify a different instance type or DB class for each deployment, mappings would require editing the template for every new combination rather than accepting user input at stack creation, making them less flexible than Parameters for reusing the template across environments.

  • ✗

    Conditions

    Why it's wrong here

    Conditions are logical expressions that evaluate to true or false, allowing you to conditionally create resources or assign property values based on parameters, mappings, or other conditions. They can control whether an EC2 instance or RDS DB instance is created at all, but they do not provide a mechanism for the user to directly input values such as the instance type or DB class. In this scenario, you still need a Parameters section to capture the actual values; Conditions alone cannot substitute for those user-supplied inputs.

  • ✓

    Parameters

    Why this is correct

    Parameters are the CloudFormation feature designed to accept input values from the user at stack creation or update time. The template can reference parameters using the Ref intrinsic function, and you can define constraints such as AllowedValues, Default, and MinLength/MaxLength to control the input. By declaring parameters for the instance type and DB class, the SysOps administrator can deploy the same template to multiple environments simply by providing different parameter values, which is the most flexible and maintainable approach for this requirement.

  • ✗

    Outputs

    Why it's wrong here

    Outputs are used to export information about a stack after it has been successfully created or updated, such as endpoint URLs, resource IDs, or any other attribute that can be referenced by other stacks or displayed in the AWS Management Console. They are populated only after CloudFormation has finished provisioning resources, so they cannot influence or pass values into the stack during creation. Therefore Outputs are completely unsuitable for supplying instance type or DB class choices at deploy time.

About these practice questions

One of 1,169 original SOA-C02 practice questions on Courseiva, each with a full explanation and wrong-answer analysis — not exam dumps or protected exam content. Learn why practice questions differ from exam dumps →

How Courseiva writes practice questions · Editorial policy

JA

Written by Johnson Ajibi, MSc IT Security

Senior Network & Security Engineer · founder of Courseiva

This SOA-C02 practice question is part of Courseiva's free Amazon Web Services certification practice question bank. Courseiva provides original exam-style practice questions with explanations, topic-based practice, mock exams, readiness tracking, and study analytics to help learners prepare for the SOA-C02 exam.