Chattanooga Software Center
 

Glossary of Computer Software Development Terminology

 

The terms are defined, as much as possible, using available standards. The source of such definitions appears immediately following the term or phrase in parenthesis, e.g. (NIST).

 

The source documents are listed at the bottom of this page.

 

 
  ABCDEFGHIJKLMNOPQRSTUVWXYZ  
     
 

EBCDIC. extended binary coded decimal interchange code.

 

EEPROM. electrically erasable programmable read only memory.

 

EMI. electromagnetic interference.

 

EPROM. erasable programmable read only memory.

 

ESD. electrostatic discharge.

 

ESDI. enhanced small device interface.

 

editing. (NIST) Modifying the content of the input by inserting, deleting, or moving characters, numbers, or data.

 

electrically erasable programmable read only memory. Chips which may be programmed and erased numerous times like an EPROM. However an EEPROM is erased electrically. This means this IC does not necessarily have to be removed from the circuit in which it is mounted in order to erase and reprogram the memory.

 

electromagnetic interference. Low frequency electromagnetic waves that emanate from electromechanical devices. An electromagnetic disturbance caused by such radiating and transmitting sources as heavy duty motors and power lines can induce unwanted voltages in electronic circuits, damage components and cause malfunctions. See: radiofrequency interference.

 

electronic media. Hardware intended to store binary data; e.g., integrated circuit, magnetic tape, magnetic disk.

 

electrostatic discharge. The movement of static electricity, e.g. sparks, from a non-conductive surface to an approaching conductive object that can damage or destroy semiconductors and other circuit components. Static electricity can build on paper, plastic or other non-conductors and can be discharged by human skin, e.g. finger, contact. It can also be generated by scuffing shoes on a carpet or by brushing a non-conductor. MOSFETs and CMOS logic ICs are especially vulnerable because it causes internal local heating that melts or fractures the dielectric silicon oxide that insulates gates from other internal structures.

 

embedded computer. A device which has its own computing power dedicated to specific functions, usually consisting of a microprocessor and firmware. The computer becomes an integral part of the device as opposed to devices which are controlled by an independent, stand-alone computer. It implies software that integrates operating system and application functions.

 

embedded software. (IEEE) Software that is part of a larger system and performs some of the requirements of that system; e.g., software used in an aircraft or rapid transit system. Such software does not provide an interface with the user. See: firmware.

 

emulation. (IEEE) A model that accepts the same inputs and produces the same outputs as a given system. To imitate one system with another. Contrast with simulation.

 

emulator. (IEEE) A device, computer program, or system that accepts the same inputs and produces the same outputs as a given system. Contrast with simulator.

 

encapsulation. (IEEE) A software development technique that consists of isolating a system function or a set of data and the operations on those data within a module and providing precise specifications for the module. See: abstraction, information hiding, software engineering.

 

end user. (ANSI) (1) A person, device, program, or computer system that uses an information system for the purpose of data processing in information exchange. (2) A person whose occupation requires the use of an information system but does not require any knowledge of computers or computer programming. See: user.

 

enhanced small device interface. A standard interface for hard disks introduced in 1983 which provides for faster data transfer compared to ST-506. Contrast with ST-506, IDE, SCSI.

 

entity relationship diagram. (IEEE) A diagram that depicts a set of real-world entities and the logical relationships among them. See: data structure diagram.

 

environment. (ANSI) (1) Everything that supports a system or the performance of a function. (2) The conditions that affect the performance of a system or function.

 

equivalence class partitioning. (Myers) Partitioning the input domain of a program into a finite number of classes [sets], to identify a minimal set of well selected test cases to represent these classes. There are two types of input equivalence classes, valid and invalid. See: testing, functional.

 

erasable programmable read only memory. Chips which may be programmed by using a PROM programming device. Before programming each bit is set to the same logical state, either 1 or 0. Each bit location may be thought of as a small capacitor capable of storing an electrical charge. The logical state is established by charging, via an electrical current, all bits whose states are to be changed from the default state. EPROMs may be erased and reprogrammed because the electrical charge at the bit locations can be bled off [i.e. reset to the default state] by exposure to ultraviolet light through the small quartz window on top of the IC. After programming, the IC's window must be covered to prevent exposure to UV light until it is desired to reprogram the chip. An EPROM eraser is a device for exposing the IC's circuits to UV light of a specific wavelength for a certain amount of time.

 

error. (ISO) A discrepancy between a computed, observed, or measured value or condition and the true, specified, or theoretically correct value or condition. See: anomaly, bug, defect, exception, fault.

 

error analysis. See: debugging, failure analysis.

 

error detection. Techniques used to identify errors in data transfers. See: check summation, cyclic redundancy check [CRC], parity check, longitudinal redundancy.

 

error guessing. (NBS) Test data selection technique. The selection criterion is to pick values that seem likely to cause errors. See: special test data; testing, special case.

 

error seeding. (IEEE) The process of intentionally adding known faults to those already in a computer program for the purpose of monitoring the rate of detection and removal, and estimating the number of faults remaining in the program. Contrast with mutation analysis.

 

event table. A table which lists events and the corresponding specified effect[s] of or reaction[s] to each event.

 

evolutionary development. See: spiral model.

 

exception. (IEEE) An event that causes suspension of normal program execution. Types include addressing exception, data exception, operation exception, overflow exception, protection exception, underflow exception.

 

exception conditions/responses table. A special type of event table.

 

execution trace. (IEEE) A record of the sequence of instructions executed during the execution of a computer program. Often takes the form of a list of code labels encountered as the program executes. Syn: code trace, control flow trace. See: retrospective trace, subroutine trace, symbolic trace, variable trace.

 

exception. (IEEE) An event that causes suspension of normal program operation. Types include addressing exception, data exception, operation exception, overflow exception, protection exception, underflow exception. See: anomaly, bug, defect, error, fault.

 

extended ASCII. The second half of the ACSII character set, 128 thru 255. The symbols are defined by IBM for the PC and by other vendors for proprietary use. It is non-standard ASCII. See: ASCII.

 

extended binary coded decimal interchange code. An eight bit code used to represent specific data characters in some computers; e.g., IBM mainframe computers.

 

extremal test data. (NBS) Test data that is at the extreme or boundary of the domain of an input variable or which produces results at the boundary of an output domain. See: testing, boundary value.

 
     
 

Source Documents

 

  1. The New IEEE Standard Dictionary of Electrical and Electronics Terms, IEEE Std. 100-1992.
  2. IEEE Standards Collection, Software Engineering, 1994 Edition, published by the Institute of Electrical and Electronic Engineers Inc.
  3. National Bureau of Standards [NBS] Special Publication 500-75 Validation, Verification, and Testing of Computer Software, 1981.
  4. Federal Information Processing Standards [FIPS] Publication 101, Guideline For Lifecycle Validation, Verification, and Testing of Computer Software, 1983.
  5. Federal Information Processing Standards [FIPS] Publication 105, Guideline for Software Documentation Management, 1984.
  6. American National Standard for Information Systems, Dictionary for Information Systems, American National Standards Institute, 1991.
  7. FDA Technical Report, Software Development Activities, July 1987.
  8. FDA Guide to Inspection of Computerized Systems in Drug Processing, 1983.
  9. FDA Guideline on General Principles of Process Validation, May 1987.
  10. Reviewer Guidance for Computer Controlled Medical Devices Undergoing 510(k) Review, Office of Device Evaluation, CDRH, FDA, August 1991.
  11. HHS Publication FDA 90-4236, Preproduction Quality Assurance Planning.
  12. MIL-STD-882C, Military Standard System Safety Program Requirements, 19JAN1993.
  13. International Electrotechnical Commission, International Standard 1025, Fault Tree Analysis.
  14. International Electrotechnical Commission, International Standard 812, Analysis Techniques for System Reliability - Procedure for Failure Mode and Effects Analysis [FMEA].
  15. FDA recommendations, Application of the Medical Device GMP to Computerized Devices and Manufacturing Processes, May 1992.
  16. Pressman, R., Software Engineering, A Practitioner's Approach, Third Edition, McGraw-Hill, Inc., 1992.
  17. Myers, G., The Art of Software Testing, Wiley Interscience, 1979.
  18. Beizer, B., Software Testing Techniques, Second Edition, Van Nostrand Reinhold, 1990.
  19. Additional general references used in developing some definitions are:
  20. Bohl, M., Information Processing, Fourth Edition, Science Research Associates, Inc., 1984.
  21. Freedman, A., The Computer Glossary, Sixth Edition, American Management Association, 1993.
  22. McGraw-Hill Electronics Dictionary, Fifth Edition, 1994, McGraw-Hill Inc.
  23. McGraw-Hill Dictionary of Scientific & Technical Terms, Fifth Edition, 1994, McGraw-Hill Inc..
  24. Webster's New Universal Unabridged Dictionary, Deluxe Second Edition, 1979.


The bulk of this information was obtained from FDA.gov.

 

BIOS. basic input/output system.

 

bps. bits per second.

 

band. Range of frequencies used for transmitting a signal. A band can be identified by the difference between its lower and upper limits, i.e. bandwidth, as well as by its actual lower and upper limits; e.g., a 10 MHz band in the 100 to 110 MHz range.

 

bandwidth. The transmission capacity of a computer channel, communications line or bus. It is expressed in cycles per second [Hz], and also is often stated in bits or bytes per second. See: band.

 

bar code. (ISO) A code representing characters by sets of parallel bars of varying thickness and separation that are read optically by transverse scanning.

 

baseline. (NIST) A specification or product that has been formally reviewed and agreed upon, that serves as the basis for further development, and that can be changed only through formal change control procedures.

 

BASIC. An acronym for Beginners All-purpose Symbolic Instruction Code, a high-level programming language intended to facilitate learning to program in an interactive environment.

 

basic input/output system. Firmware that activates peripheral devices in a PC. Includes routines for the keyboard, screen, disk, parallel port and serial port, and for internal services such as time and date. It accepts requests from the device drivers in the operating system as well from application programs. It also contains autostart functions that test the system on startup and prepare the computer for operation. It loads the operating system and passes control to it.

 

batch. (IEEE) Pertaining to a system or mode of operation in which inputs are collected and processed all at one time, rather than being processed as they arrive, and a job, once started, proceeds to completion without additional input or user interaction. Contrast with conversational, interactive, on-line, real time.

 

batch processing. Execution of programs serially with no interactive processing. Contrast with real time processing.

 

baud. The signalling rate of a line. It's the switching speed, or number of transitions [voltage or frequency change] made per second. At low speeds bauds are equal to bits per seconds; e.g., 300 baud is equal to 300 bps. However, one baud can be made to represent more than one bit per second.

 

benchmark. A standard against which measurements or comparisons can be made.

 

bias. A measure of how closely the mean value in a series of replicate measurements approaches the true value. See: accuracy, precision, calibration.

 

binary. The base two number system. Permissible digits are "0" and "1".

 

bit. A contraction of the term binary digit. The bit is the basic unit of digital data. It may be in one of two states, logic 1 or logic 0. It may be thought of as a switch which is either on or off. Bits are usually combined into computer words of various sizes, such as the byte.

 

bits per second. A measure of the speed of data transfer in a communications system.

 

black-box testing. See: testing, functional.

 

block. (ISO) (1) A string of records, words, or characters that for technical or logical purposes are treated as a unity. (2) A collection of contiguous records that are recorded as a unit, and the units are separated by interblock gaps. (3) A group of bits or digits that are transmitted as a unit and that may be encoded for error-control purposes. (4) In programming languages, a subdivision of a program that serves to group related statements, delimit routines, specify storage allocation, delineate the applicability of labels, or segment parts of the program for other purposes. In FORTRAN, a block may be a sequence of statements; in COBOL, it may be a physical record.

 

test
Pineapple Code
Chattanooga Software Center • 1-423-821-3463 • 3821 Saint Elmo Avenue, Chattanooga, TN 37409 USA

Copyright © 2024 All Rights Reserved. Privacy, Terms, Glossary and Staff