Bloom's Revised Taxonomy

The foundational Taxonomy of Educational Objectives: A Classification of Educational Goals was established in 1956 by Dr. Benjamin Bloom, an educational psychologist, and is often referred to as Bloom's Taxonomy. This classification divided educational objectives into three learning domains: Cognitive (knowledge), Affective (attitude) and Psychomotor (skills). In 2000, Lorin Anderson and David Krathwohl updated Bloom’s seminal framework to create Bloom’s Revised Taxonomy, focusing on the Cognitive and Affective Domains. As described below, the ACM Committee for Computing Education in Community Colleges has adopted Bloom’s Revised Taxonomy for the assessment of student learning outcomes in its computing curricula.

In 2023 the ACM CCECC created Bloom’s for Computing: Enhancing Bloom's Revised Taxonomy with Verbs for Computing Disciplines to help create learning outcomes and competency statements, along with related assessment tools.

It is important to note that, in the framework of Bloom’s Revised Taxonomy and therefore also in Bloom's for Computing, learners need not start at the lowest taxonomic level and work up; rather, the learning process can be initiated at any point, and the lower taxonomic levels will be subsumed within the learning scaffold. To wit:

  • Before we can understand a concept we have to remember it;
  • Before we can apply the concept we must understand it;
  • Before we analyze it we must be able to apply it;
  • Before we can evaluate its impact we must have analyzed it; and
  • Before we can create, we must have remembered, understood, applied, analyzed and evaluated.

Cognitive Domain

In its computing curricula, the ACM Committee for Computing Education in Community Colleges uses the Cognitive domain to assess student mastery of learning outcomes. There are six levels in the taxonomy for the Cognitive domain, progressing from the lowest order processes to the highest:

  1. Remembering - Retrieving, recalling, or recognizing information from memory. Students can recall or remember information. Note: This process is the most basic thinking skill.
  2. Understanding - Constructing meaning or explaining material from written, spoken or graphic sources. Students can explain ideas or concepts.
  3. Applying - Using learned materials or implementing materials in new situations. Students can use/apply information in a new way.
  4. Analyzing - Breaking material or concepts into parts, determining how the parts relate or interrelate to one another or to an overall structure or purpose. Students can distinguish between different parts.
  5. Evaluating - Assessing, making judgments and drawing conclusions from ideas, information, or data. Students can justify a stand or decision.
  6. Creating - Putting elements together or reorganizing them into a new way, form or product. Students can create a new product. Note: This process is the most difficult mental function

Screen-Shot-2015-07-15-at-4.18.14-PM

Bloom's for Computing

Remembering

Understanding

Applying

Analyzing

Evaluating

Creating

Define

Annotate

Apply

Analyze

Adapt

Assemble

Duplicate

Classify

Backup

Articulate

Administer

Collaborate

Enumerate

Comment

Build

Attribute

Appraise

Compose

Find

Convert

Calculate

Automate

Argue

Construct

Identify

Demonstrate

Carry out

Categorize

Assess

Create

Label

Describe

Code

Compare

Choose

Design

List

Differentiate

Compile

Contextualize

Critique

Develop

Locate

Discuss

Compute

Contrast

Debate

Devise

Memorize

Exemplify

Configure

Correlate

Debug

Formulate

Name

Explain

Connect

Decompose

Decide

Generate

Recall

Infer

Decrypt

Deconstruct

Defend

Hypothesize

Recognize

Interpret

Deploy

Deduce

Estimate

Invent

Reference

Paraphrase

Diagram

Detect

Evaluate

Make

Retrieve

Report

Document

Discriminate

Judge

Plan

Select

Summarize

Edit

Distinguish

Justify

Program

State

Translate

Encrypt

Examine

Optimize

Script

Execute

Generalize

Prioritize

Secure

Graph

Integrate

Prove

Visualize

Illustrate

Model

Support

Implement

Monitor

Test

Install

Organize

Validate

Investigate

Outline

Value

Iterate

Predict

Verify

Manipulate

Simulate

Map

Structure

Measure

Trace

Modify

Translate

Operate

Update

Perform

Produce

Provision

Randomize

Recover

Restore

Schedule

Solve

Store

Train

Use

Virtualize

Write