Tornado Technical Specification Glossary

Distribution Support Tools Group
May 5, 1994

    A  B  C  D  E  F  G  H  I  J  K  L  M  N  O  P  Q  R  S  T  U  V  W  X  Y  Z 

A

Ada

1. A language standardized by the Department of Defense. Ada has features which make it attractive for the construction of large systems.

address

1. The location of an object, as opposed to its contents or name. An address is a unique identifier for an object. A copy of an object may have the same contents and name, but must occupy a location distinct from the original object; thus the copy has a new address.

agent

1. An intermediary which aids or assists the interaction of two other entities. In Tornado, an agent translates to and from the system representation for the benefit of software entities which predate Tornado.

aggregate

1. A collection of objects sharing some common facets.

2. To gather together objects which share some common facets.

algorithm

1. A well-defined series of steps and tests used to obtain an answer when given initial inputs.

annotation

1. A mark or symbol attached to data. The annotation explains or describes some facet of the data, but is subordinate in importance to the data itself.

API

1. Acronym meaning Application Programmer Interface. The API defines the data types and procedure calls used by a programmer to interact with a program, subsystem, or system. The API is sometimes referred to as the ``public interface'' to emphasize that it hides the private internal details of a program.

ASCII

1. Acronym meaning American Standard Code for Interchange of Information. ASCII specifies the correspondence between character glyphs (the conventional visual interpretation of the character) and small numbers used to store or transmit the characters in computing and communications devices. See also Unicode .

attribute

1. A characteristic of an object. The attribute explains or describes something about the object, and is generally secondary in importance to the object itself. An attribute is normally considered an integral part of the object, as opposed to an annotation added later. See annotation .

authenticate

1. To confirm the identity of a user or a data object. Authentication is often combined with or implemented using passwords and other access controls.


B

binary

1. The number system used internally by computers. Data is stored in computers in a binary format, but is converted to other forms for presentation to users (and sometimes for transfer to other computers).

browser

1. A program which allows a person to interactively explore the content of and relationships among the objects in a complex system.

byte-stream

1. A sequence of coded numbers used to carry information between systems or subsystems. The numbers are normally (but not necessarily) coded using 8 bits. A byte stream has the property that the bytes are received in exactly the order sent.


C

cache

1. A relatively small store of data used to temporarily hold data obtained from a larger store. The cache benefits from being faster (or easier to reach) than the original source of the data.

2. To hold data temporarily in a more efficient store.

canonical

1. A standard or common representation.

channel

1. A physical or logical conveyance for information.

classification

1. The organization of objects or concepts according to a systematic division of important characteristics. See also specialization, data type, subtype, and supertype.

coherence

1. A property of data, such that all users of a data object see the same value despite the object having been cached. See cache.

commit

1. In the context of a transaction, to cause all modified data objects to be simultaneously written to permanent storage. Up to the point of commitment, the modified data is present only in temporary storage. See transaction.

communication

1. The exchange of information between communicating entities. In the Tornado archictecture, communication is explicitly prohibited from involving any change in state except that necessary to establish or maintain the communication.

component

1. A piece of a larger system. This term usually emphasizes that the smaller piece has a simple, well-defined interface to the larger system. See module.

compose

1. To combine. Typically used in the mathematical sense to mean the composition of operations rather than of objects. Compare aggregate.

context-sensitive

1. Having a meaning or interpretation which depends upon the context or circumstances.

control

1. A device which can be manipulated to affect the behavior of a system. Also, information which has an effect upon the behavior of a system. A control affects how a system operates; data is processed according the system behaviors which may be set by controls. See data and signal.

2. A property of information used to affect system behavior.

3. The act of affecting system behavior.

connection

1. A logical or physical link between two components for purposes of transferring data, control, or signal information.

containment

1. The enclosure of one object by another, either logically or physically. Compare inheritance.

create

1. To cause to exist. Compare destroy.

CRISP

1. An acronym meaning Communication, Representation, Interaction, Storage, and Presentation. The CRISP model is the basis for execution in the Tornado software architecture.

currency

1. A property of data, meaning that it is up to date.


D

data

1. The logical encoding of an object. See control and signal.

2. A property of information that is used to represent or encode objects.

database

1. A system which uses a storage device and a computer program to permanently encode and store data in a manner allowing efficient retrieval according to specified keys or indices. Typically used to refer to a commercial implementation, such as that available from Oracle. This can also refer to an ad-hoc storage and retrieval subsystem which is embedded as a module within a larger system.

data dictionary

1. A tool used to control the layout and interpretation of information in a database. The data dictionary provides application builders with information that is matched to the actual layout of data within the database.

data extract

1. Data which is copied from a reference source without benefit of mechanisms to ensure currency; when the source data changes, the extract becomes obsolete. The risk is that the user of a data extract is unaware of when the data loses currency. See currency.

data type

1. A specification of the values which can be assumed by an object, together with the operations that are valid on the data.

DBMS

1. An acronym standing for Data Base Management System. See database. Normally refers to a commercial database system.

deadlock

1. A system state in which two processes are unable to proceed because each holds a resource needed by the other.

dependent

1. As a characteristic of data, having a value that must change whenever another (independent) value changes.

descriptive data

1. Data which determines the form or interpretation of other data.

destroy

1. To cause to cease to exist. Compare create.

directory

1. A list of the names (or access paths) of objects which share a common location. The directory is the names of the objects, rather than the objects themselves. Compare aggregate.

dispatch

1. To transfer or direct according to the value of data.

document

1. In the context of a system, a file or other permanently recorded artifact created by a user to contain a work product.

domain

1. The set of values which may be used as input to a function or relation.


E

enumerate

1. To list all the members of a set.

equivalence

1. Having the same value. Usually distinct from identity.

exception

1. A condition or event that is not normally expected to occur during execution of a program. Treated as an object, an exception contains all the information necessary to identify the cause of the event or condition, and may additionally save the point at which execution can resume after correcting the underlying problem.

extensible

1. As a property of a system or language, designed to accommodate events or requests beyond the original scope. Extensible systems do not have to be redesigned to handle such changes.


F

field

1. A single part of aggregated data. See aggregate and slot.

file system

1. A system used to store documents under names given by a user. See document and directory.

first-class

1. As pertains to data types, able to be used in all the ways available to the data type having the most flexibility of use. See data type and second-class .

format

1. A particular arrangement of data.


G

gesture

1. The action a user makes using the controls of an HI to obtain a desired result. See HI and GUI.

get

1. To retrieve the value of a data object. Except where the object has the property of identity, the value of the object is only equivalent to the original object. See object, value, equivalence, and identity.

GUI

1. An acronym meaning Graphical User Interface. An HI that relies heavily upon iconic representation of control and data objects. See HI, control, data, and representation.


H

HI

1. An acronym meaning Human Interface. The part of a system that presents data to a user and accepts control gestures from the user. See presentation, control, data, and gesture.

hierarchical

1. Arranged in a hierarchy. Applied to data or concepts, the more specific items appear lower in the hierarchy. See specialization, subtype, supertype, and containment.

host

1. A hardware system upon which a particular software subsystem executes.


I

identifier

1. A name which can be used to refer to a data object. An identifier is not necessarily unique.

identity

1. Some property which uniquely identifies a data object. See address, equivalence, and reference.

implementation

1. A particular realization of a system, as opposed to the system's design or architecture.

index

1. A value used to select one particular object from a collection of related objects. Also, may be used to describe a table that describes some ordering of the collection.

information system

1. A system which stores and processes data, presents stored data in a form comprehensible to users, and accepts new information and instructions via an HI.

infrastructure

1. That portion of an information system comprised of the hardware, network, operating system, and other (relatively) fixed components upon which the system executes.

inheritance

1. The mechanism by which properties of an object or values of its slots or fields are determined in part by the properties or values of a more general type.

instance

1. An object, as opposed to its description.

instantiate

1. To create an instance of an object.

interaction

1. The conceptual mechanism by which a Tornado system retrieves and manipulates data. See CRISP, communication, representation, storage, and presentation.

interface

1. The boundary between two subsystems, or between a user and the system.

interpret

1. To perform an algorithm by reading and executing its source text.

invalidate

1. To cause to become meaningless due to the destruction of an object or the alteration of some value upon which the object in question depends.

IPC

1. An acronym meaning InterProcess Communication. The mechanism by which processes exchange data, control, and signalling information over a communications channel. Generally specific to a particular platform, as opposed to the Tornado Representation.

iterator

1. An algorithm that will produce all the index values for a particular set of data.


J


K

key

1. A field or attribute of an object used in the construction of an index or ordering for a collection of these objects.


L

layered

1. As a property of a system architecture, design, or implementation, the organization into layers of progressively more detailed or specific description or function.

legacy system

1. A system which predates the system currently on the drawing board. A legacy system is generally incompatible with the new system; the challenge is to integrate legacy systems with as little work and disruption as possible.

lexicographic

1. As applied to sorting, according to dictionary order.

library

1. A collection of programs in stored in some form which is usable by a number of clients.

Lisp

1. A programming language which combines a simple, uniform syntax with a means for the programmer to extend the language. Compared to languages which provide extension via libraries or token substitution, Lisp extensions are indistinguishable from the core language. Lisp incorporates a number of modern features in its core, including object programming and exceptions.


M

map

1. Establish a correspondence between objects in one set and objects in another set.

mechanism

1. A program, algorithm, procedure, or process by which a specified task, action, or activity is accomplished.

memoryless

1. As applied to a computational process, having the property that current outputs depend only upon current inputs. This can only happen if the computation does not have any memory of past inputs.

message

1. Control, data, or signalling information passed from one process to another. Normally implies the use of a communication mechanism rather than a procedure call.

metadata

1. Data which describes other data.

method

1. A procedure which is either part of an object or applicable to an object of a particular data type. See object and data type.

mirror

1. To make an exact copy of an object. The copy must be actively updated to reflect changes in the original. See cache, coherence, and currency.

model

1. An artifact or mechanism designed to mimic the properties and behavior of a real-world object or system.

2. To reflect the properties and behavior of a real-world object or system using an artifact or mechanism.

module

1. A portion of a larger system. This is usually applied to a related collection of software procedures. Contrasted with a component, the module is usually not designed to be interchangeable or readily replaceable -- usually because it exposes too much of its internal details. See component.


N

name

1. A means of referring to an object, as opposed to the object itself. See identifier, address, and reference .

native

1. Most natural representation.

network

1. A group of devices connected by communications channels. Interactions between devices are conducted by way of compatible protocols.


O

object

1. An aggregate of values and procedures that describe the state and behavior of some entity in the system. An object has type (see data type), slots (or fields), and methods.

object code

1. A coded representation of a program. The code is directly executable by a computer. Compare source text.

operating system

1. A group of procedures which arbitrate demands against shared resources and provide common services for programs running on a computer.

operational data

1. Data which is manipulated by a system in support of the users' needs. Compare metadata.

order

1. An arrangement of objects into a sequence, such that every object has a predecessor (except for the first object) and a successor (except for the last object). The order is usually specified by a predicate that compares two objects to determine which is the successor of the other. See lexicographic and predicate.

OS

1. See operating system.


P

parameter

1. In a procedure definition, a name that represents the value of one of the inputs to the procedure. This is technically called a formal parameter.

2. In a procedure invocation, a value to be substituted in place of the name of a particular formal parameter. This value is technically called an actual parameter.

parse

1. To break down a constructed entity into parts by reversing the rules under which the entity was constructed.

path

1. A sequence of steps through a network.

2. A sequence of references to reach a particular place in a complex data structure.

platform

1. A combination of computer hardware, operating system, and (sometimes) common subsystems upon which a system is executed.

plug-in

1. Applied to software, a component that can be added to or removed from a system without changing the object code of the system.

predecessor

1. The object before, according to an ordering predicate.

predicate

1. A test or comparison that yields a true or false answer.

presentation

1. The appearance of data as seen by the user.

primitive

1. A simplest usable object or procedure; incapable of being expressed in terms of smaller concepts without introducing unwanted complexity.

privilege

1. The right to access data, a procedure, or a service according to some predetermined classification of rights. Privilege is usually granted according to the authenticated identity of a user.

procedure

1. An algorithm.

2. The source text or object code which implements an algorithm.

process

1. An instance of a procedure or program running on a computer system.

2. A means by which a result is obtained using an algorithm.

program

1. A procedure or group of procedures which implements one or more processes.

propagate

1. Update a (relatively) dependent value according to a change in a (relatively) independent value.

property

1. A characteristic of an object, usually secondary in importance to the object itself. See attribute.

protocol

1. A set of rules according to which information is communicated between systems, processes, or procedures. Commonly applied to communications which use messages, but can also apply to the interfaces between modules in a program.


Q

query

1. A message that invokes a process to retrieve information from a database according to certain criteria.


R

range

1. The set of values which may be returned by a function. See domain.

recursive

1. Having the property of self-reference. This may apply to both procedures and data.

reference

1. A name, address, or identifier used to signify an object.

reference data

1. The original source of data. Never a copy.

referent

1. The target of a reference.

registry

1. A reference source for critical system data.

relation

1. A map between sets of sets of objects. See map.

representation

1. Rules which govern the construction of messages in a Tornado system. See CRISP.

RPC

1. Acronym meaning Remote Procedure Call. A mechanism by which procedures can be invoked across a communications network. Without RPC, a procedure can only invoke another procedure to run on the same computer system. Compare IPC.

rule

1. The combination of a predicate to test conformance of some object to a given standard, together with a procedure for bringing the object into conformance with the standard.


S

search

1. Find an object which matches a given criterion. Unlike a query, this is not necessarily specific to a database.

second-class

1. As pertains to data types, lacking some of the native operations available to the least restrictive types. See data type and first-class.

semantics

1. A definition (or means to discover) of the meaning of a data object or a procedure. See syntax.

server

1. A process running on a computer system to provide a service to clients. Clients request services according to a predetermined protocol.

set

1. A (possibly empty) collection of objects or values. Each such element of a set is distinct from all others. 2. To alter the value of a data object. The identity of the object is unaffected, but its equivalence to other objects may change. See object, value, equivalence, and identity.

signal

1. A mechanism by which an exception breaks the normal flow of a procedure. Compare control.

slot

1. A single part of aggregated data. Slot is used more often to refer to a part of an object, whereas field commonly refers to a part of a database record. See aggregate, field, and object.

socket

1. The address used to identify a particular kind of service provided by a server.

source text

1. The text of a program, procedure, or algorithm in a form readable by a human. The source text is meant to be interpreted or converted to object code.

specifier

1. A name or value used to designate or create an object. Also, a name or source text used to designate a procedure.

specialization

1. The creation or designation of an object or procedure based upon a more general object or procedure. See inheritance.

SQL

1. An acronym meaning Structured Query Language. SQL is a restricted subset of English used to express queries against a database. See query and database.

standard

1. A set of rules which specify a particular kind of system, subsystem, protocol, etc. Generally, a standard is subject to review and revision by an industry or government organization before acceptance. A standard is sometimes published by a vendor or commercial entity without public review to describe how to be compliant with or conform to a product designed for extension by others. Regardless of the issuing body, a standard is usually more a codification of existing practice than a specification of proposed practice.

state

1. A set of values (implicit or explicit) which describe the current condition of a system or computation. Restoring a saved state returns the system or computation to the condition that existed at the time the state was saved. The state is often used as the domain of predicates which determine the next state of the system or computation.

storage

1. A physical device used to hold objects. Typically, an operating system or DBMS is used to organize the stored objects.

stream

1. See byte-stream.

substrate

1. The lowest level of a layered abstraction. See layered and primitive. Compare infrastructure.

subsystem

1. A component of a system. A logical entity constructed from software, physical components, and (possibly) other subsystems all working together to perform a particular function or functions.

subtype

1. A more specific type in a classification hierarchy. See classification, supertype, data type, and inheritance.

successor

1. The object after, according to an ordering predicate.

supertype

1. A more general type in a classification hierarchy. See classification, subtype, data type, and inheritance.

syntax

1. A definition or set of rules to specify valid formats for messages or program source text.

system

1. One or more subsystems constructed to meet the needs of a group of users.


T

table

1. A collection of objects which has an index and zero or more keys. See index and key.

tag

1. A mark or symbol attached to data to facilitate its later identification. Compare attribute and annotation.

template

1. A specification used to construct a data or procedural object. Once the object is constructed, the template is no longer used. Compare specifier.

traceability

1. The ability to determine the determining source text, rule, or value which contributes to the current state of an object.

transaction

1. An indivisible operation upon several objects. See commit.

translate

1. To convert from one representation or protocol to another.


U

Unicode

1. An international standard specifying a correspondence between character glyphs and numbers used to encode the characters for storage in or transmission by a computer system. The Unicode standard covers glyphs used by many non-English languages. See ASCII.

unique

1. Singular or unlike any other. An object which is an exact copy of another is still unique in its location within a system, since two distinct objects can never occupy the same storage. An object may have multiple names (aliases), so a name may not be unique. See name, address, and identity.


V

validate

1. To test an object or value according to rules which govern its validity. The rules may consider context outside of the immediate target.

value

1. The contents of an object, slot, field, reference, or attribute. Usually not the object associated with a name or specifier; object is more precise in this case.


W


X


Y


Z


Document History

Created   1994 04 05 by DBL
Draft     1994 04 06 by DBL - first draft, 155 terms
Corrected 1994 05 05 by DBL - editorial per RWS
Converted 1997 03 03 by DBL - converted to HTML