Personal tools
You are here: Home Meetings 2005 2005-02-16 Draft Software Collection Taxonomy
Document Actions

Draft Software Collection Taxonomy

by Michael L Powell last modified 2005-06-05 10:34

This is the current working draft of the Computer History Museum Software Collection Taxonomy. The document is currently undergoing further refinements in the CHM Software Collection Committee. The taxonomy is scheduled to be finalized by March 1, 2005.

Software Collection Taxonomy

Sellam Ismail

Computer History Museum

January 19, 2005

Revision 0.1



This is the first draft of a Software Taxonomy that I’ve developed for classifying software in the Computer History Museum’s software collection.  The purpose behind the taxonomy is to provide an organized means to segregate software into similar application classes to assist with cataloging and searching.


The hierarchy is organized into three tiers.  The top-level tier describes a basic function or class of software.  Each main grouping in the top tier represents families of software that are unique to each other in scope and characteristics.  The second tier further refines the top-level tier into major sub-classifications of the basic functionality described in the top tier.  The third tier designates specific software functionality.  The hierarchy has attempted to avoid “catch-all” or “miscellaneous” classifications at every tier, although this can be challenging in some cases.  The intent of the hierarchy is that each software object should fall under a specific category which should describe the primary function of that software.



An Application is software that allows a user to perform a specific function not related to the task of computing itself.  The software in this category is tools designed to perform tasks that directly enhance a person’s productivity.


Applications are further divided into multiple categories.  These categories are useful for classifying certain groupings of software that provide similar functionality and will facilitate cataloging and searching.



Assists a user with developing text, either formatted (i.e. word processor) or non-formatted (text editor).

Data Manager

Used to store and organize sets of information.


Allows a user to perform a fiduciary function, such as balancing a checkbook or track a portfolio.


Enables a user to connect to other computers over computer communication channels.  Such an application might be a terminal emulator.


Allows a user to conduct some manner of research, typically by performing computations or computer-assisted analysis, particularly in the physical sciences.


Generally a knowledge base of some sort that allows the user to find information, such as an encyclopedia or dictionary.


A learning aid which provides some sort of tutoring to the user, for example teaching skills such as reading, writing, math, etc., or teaching a user how to use a particular program.


Used primarily for leisure purposes (i.e. games).

Language Tool

Assists with written language, including correcting and translating.

Time Management

Used to keep schedules and appointments.


Renders physical objects into digital form.


A suite is a single software application that combines multiple distinct functionalities into one package.


Software of miscellaneous functionality (to deprecate)


  1. Application
    1. Editor

1.      Word Processor – provides for input/ouput of written document with text-processing

2.      Text Editor – provides for input/output of written document without text processing

3.      Graphic Design

4.      Image Editor

5.      Video Editor

6.      Audio Editor

7.      Music Editor

8.      Font Editor

    1. Data Manager

1.      Database

2.      Contact Manager

3.      Spreadsheet

    1. Language Tool

1.      Spelling Checker

2.      Grammar Checker

3.      Translator

    1. Time Management

1.      Project Management

2.      Scheduler

3.      Calendar

    1. Digitizer

1.      Audio

2.      Image

3.      Video

4.      Speech Recognition

5.      Image Recognition

6.      OCR

    1. Financial

1.      Accounting

2.      Tax Preparation

3.      Analysis

4.      Stocks

    1. Management

1.      Human Resources


    1. Telecommunications

1.      Terminal Emulator

2.      Online Services Client

3.      File Transfer

4.      Remote System Control

    1. Scientific

1.      Mathematics (Formula Interpreter)

2.      Physics

3.      Biology

4.      Chemistry

5.      Meteorology

6.      Geological

7.      Genealogy

8.      Statistical Analysis

    1. Reference

1.      Thesaurus

2.      Dictionary

3.      Encyclopedia

    1. Educational

1.      Tutorial

2.      Scholastic Learning Aid

    1. Recreational

1.      Sports

2.      Action

3.      Strategy

4.      Interactive Fiction – game flow is directed by an overall story structure that can vary based on player decisions

5.      Educational

    1. Suite – provides the functionality of two or more types of Application software
    2. Miscellaneous

1.      Legal

2.      Presentation Aid

3.      Computer Aided Design

4.      Report Generator

5.      Graphing/Plotting

6.      Mail Merge

7.      Form Generator

8.      Mapping

9.      Font Editor

10.  Diagramming

11.  Demonstration Program




Automation software provides the user with functionality that either enables the execution of other applications that are directly utilized by the user, or that provide a service to the user that functions autonomously and does not normally require the interaction of the user.


Operating System

Provides a human-to-computer or application-to-computer interface to the computer system.


Stores programs or data and dispenses it upon request from a client application.


Performs special purpose functions required for the interconnection of computer systems.


  1. Automation
    1. Operating System

1.      Kernel

2.      Application/Task Manager

3.      Monitor

4.      Simulator

5.      Hardware Driver

6.      Memory Manager

7.      Network Protocol

    1. Server

1.      File Server

2.      Electronic Messaging Server

3.      Voice Messaging Server

    1. Network

1.      Routing Software

2.      Firewall

3.      Security and Authentication



The Utility category covers applications that are utilized specifically to manage a computer system.  They differ from Applications in that the ultimate function of the software does not generally further the aims of the user but rather assists the user in maintaining the computer system so that Applications can be utilized.  [Requires refinement]



Assists with the management of a computer system’s files.


Tools for managing storage volumes.


Tools for managing peripherals attached to a computer system.


Tools used for managing



  1. Utility
    1. Filesystem

1.      Manager – allows editing of the filesystem (move, rename, etc.)

2.      Backup – makes perservational copies of filesystems

3.      Data Compression

    1. Storage

1.      Formatter

2.      Disk Manager

3.      Partition Manager

    1. Peripheral

1.      Diagnostic

    1. System

1.      Diagnostic

2.      Screen Saver

3.      Anti-virus



Programming software enables a user to develop computer software.  Software in this catgeory includes programming language compilers, interpreters, and tools which facilitate the creation of programs such as debuggers.  It is also a somewhat special category in that it also encompasses computer code itself in all its various manifestations (e.g. source, object, executable).



Software used to create and debug software.


The actual software code in its various manifestations.



  1. Programming
    1. Tools

1.      Compiler

2.      Decompiler

3.      Linker

4.      Interpreter

5.      Debugger

6.      Lister

    1. Code

1.      Source

2.      Object

3.      Executable

4.      Library





The Library category is intended to cover data files which are used in general as part of Applications.  This is not necessarily software but data.  But it is not user generated data, but special data that enhances Applications.  [Requires refinement]


  1. Library
    1. Font
    2. Image
    3. Sound
« July 2024 »
Su Mo Tu We Th Fr Sa
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30 31

Powered by Plone CMS, the Open Source Content Management System

This site conforms to the following standards: