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  
     
 

PAL. programmable array logic.

 

PC. personal computer.

 

PCB. printed circuit board.

 

PDL. program design language.

 

PLA. programmable logic array.

 

PLD. programmable logic device.

 

PMOS. positive channel MOS.

 

PROM. programmable read only memory.

 

paging. (IEEE) A storage allocation technique in which programs or data are divided into fixed length blocks called pages, main storage/memory is divided into blocks of the same length called page frames, and pages are stored in page frames, not necessarily contiguously or in logical order, and pages are transferred between main and auxiliary storage as needed.

 

parallel. (1) (IEEE) Pertaining to the simultaneity of two or more processes. (2) (IEEE) Pertaining to the simultaneous processing of individual parts of a whole, such as the bits of a character or the characters of a word, using separate facilities for the various parts. (3) Term describing simultaneous transmission of the bits making up a character, usually eight bits [one byte]. Contrast with serial.

 

parallel processing. See: multi-processing, multi- programming.

 

parameter. (IEEE) A constant, variable or expression that is used to pass values between software modules. Syn: argument.

 

parity. An error detection method in data transmissions that consists of selectively adding a 1-bit to bit patterns [word, byte, character, message] to cause the bit patterns to have either an odd number of 1-bits [odd parity] or an even number of 1-bits [even parity].

 

parity bit. (ISO) A binary digit appended to a group of binary digits to make the sum of all the digits, including the appended binary digit, either odd or even, as predetermined.

 

parity check. (ISO) A redundancy check by which a recalculated parity bit is compared to the predetermined parity bit. Contrast with check summation, cyclic redundancy check [CRC].

 

Pascal. A high-level programming language designed to encourage structured programming practices.

 

password. (ISO) A character string that enables a user to have full or limited access to a system or to a set of data.

 

patch. (IEEE) A change made directly to an object program without reassembling or recompiling from the source program.

 

path. (IEEE) A sequence of instructions that may be performed in the execution of a computer program.

 

path analysis. (IEEE) Analysis of a computer program [source code] to identify all possible paths through the program, to detect incomplete paths, or to discover portions of the program that are not on any path.

 

path coverage. See: testing, path.

 

perfective maintenance. (IEEE) Software maintenance performed to improve the performance, maintainability, or other attributes of a computer program. Contrast with adaptive maintenance, corrective maintenance.

 

performance requirement. (IEEE) A requirement that imposes conditions on a functional requirement; e.g., a requirement that specifies the speed, accuracy, or memory usage with which a given function must be performed.

 

peripheral device. Equipment that is directly connected a computer. A peripheral device can be used to input data; e.g., keypad, bar code reader, transducer, laboratory test equipment; or to output data; e.g., printer, disk drive, video system, tape drive, valve controller, motor controller. Syn: peripheral equipment.

 

peripheral equipment. See: peripheral device.

 

personal computer. Synonymous with microcomputer, a computer that is functionally similar to large computers, but serves only one user.

 

physical configuration audit. (IEEE) An audit conducted to verify that a configuration item, as built, conforms to the technical documentation that defines it. See: functional configuration audit.

 

physical requirement. (IEEE) A requirement that specifies a physical characteristic that a system or system component must posses; e.g., material, shape, size, weight.

 

pixel. (IEEE) (1) In image processing and pattern recognition, the smallest element of a digital image that can be assigned a gray level. (2) In computer graphics, the smallest element of a display surface that can be assigned independent characteristics. This term is derived from the term "picture element".

 

platform. The hardware and software which must be present and functioning for an application program to run [perform] as intended. A platform includes, but is not limited to the operating system or executive software, communication software, microprocessor, network, input/output hardware, any generic software libraries, database management, user interface software, and the like.

 

polling. A technique a CPU can use to learn if a peripheral device is ready to receive data or to send data. In this method each device is checked or polled in-turn to determine if that device needs service. The device must wait until it is polled in order to send or receive data. This method is useful if the device's data can wait for a period of time before being processed, since each device must await its turn in the polling scheme before it will be serviced by the processor. Contrast with interrupt.

 

positive channel MOS. A type of microelectronic circuit in which the base material is positively charged.

 

precision. The relative degree of repeatability, i.e. how closely the values within a series of replicate measurements agree. It is the result of resolution and stability. See: accuracy, bias, calibration.

 

preliminary design. (IEEE) (1) The process of analyzing design alternatives and defining the architecture, components, interfaces, and timing and sizing estimates for a system or component. See: detailed design. (2) The result of the process in (1).

 

preliminary design review. (IEEE) A review conducted to evaluate the progress, technical adequacy, and risk resolution of the selected design approach for one or more configuration items; to determine each design's compatibility with the requirements for the configuration item; to evaluate the degree of definition and assess the technical risk associated with the selected manufacturing methods and processes; to establish the existence and compatibility of the physical and functional interfaces among the configuration items and other items of equipment, facilities, software and personnel; and, as applicable, to evaluate the preliminary operational and support documents.

 

printed circuit board. A flat board that holds chips and other electronic components. The board is "printed" with electrically conductive pathways between the components.

 

production database. The computer file that contains the establishment's current production data.

 

program. (1) (ISO) A sequence of instructions suitable for processing. Processing may include the use of an assembler, a compiler, an interpreter, or another translator to prepare the program for execution. The instructions may include statements and necessary declarations. (2) (ISO) To design, write, and test programs. (3) (ANSI) In programming languages, a set of one or more interrelated modules capable of being executed. (4) Loosely, a routine. (5) Loosely, to write a routine.

 

program design language. (IEEE) A specification language with special constructs and, sometimes, verification protocols, used to develop, analyze, and document a program design.

 

program mutation. (IEEE) A computer program that has been purposely altered from the intended version to evaluate the ability of program test cases to detect the alteration. See: testing, mutation.

 

programmable array logic. A programmable logic chip. See: programmable logic device.

 

programmable logic array. A programmable logic chip. See: programmable logic device.

 

programmable logic device. A logic chip that is programmed at the user's site. Contrast with PROM.

 

programmable read only memory. A chip which may be programmed by using a PROM programming device. It can be programmed only once. It cannot be erased and reprogrammed. Each of its bit locations is a fusible link. An unprogrammed PROM has all links closed establishing a known state of each bit. Programming the chip consists of sending an electrical current of a specified size through each link which is to be changed to the alternate state. This causes the "fuse to blow", opening that link.

 

programming language. (IEEE) A language used to express computer programs. See: computer language, high-level language, low-level language.

 

programming standards. See: coding standards.

 

programming style analysis. (IEEE) Analysis to ensure that all portions of the program follow approved programming guidelines. See: code audit, code inspection. coding standards.

 

project plan. (NIST) A management document describing the approach taken for a project. The plan typically describes work to be done, resources required, methods to be used, the configuration management and quality assurance procedures to be followed, the schedules to be met, the project organization, etc. Project in this context is a generic term. Some projects may also need integration plans, security plans, test plans, quality assurance plans, etc. See: documentation plan, software development plan, test plan, software engineering.

 

PROM programmer. Electronic equipment which is used to transfer a program [write instructions and data] into PROM and EPROM chips.

 

proof of correctness. (NBS) The use of techniques of mathematical logic to infer that a relation between program variables assumed true at program entry implies that another relation between program variables holds at program exit.

 

protection exception. (IEEE) An exception that occurs when a program attempts to write into a protected area in storage.

 

protocol. (ISO) A set of semantic and syntactic rules that determines the behavior of functional units in achieving communication.

 

prototyping. Using software tools to accelerate the software development process by facilitating the identification of required functionality during analysis and design phases. A limitation of this technique is the identification of system or software problems and hazards. See: rapid prototyping.

 

pseudocode. A combination of programming language and natural language used to express a software design. If used, it is usually the last document produced prior to writing the source code.

 
     
 

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