In science, computing, and engineering, a black box is a device, system or object which can be viewed in terms of its input, output and transfer characteristics without any knowledge of its internal workings. Its implementation is "opaque" (black). Almost anything might be referred to as a black box: a transistor, an algorithm, or the human brain.
The opposite of a black box is a system where the inner components or logic are available for inspection, which is most commonly referred to as a white box (sometimes also known as a "clear box" or a "glass box").
The black box is an abstraction representing a class of concrete open systems which can be viewed solely in terms of its "stimuli inputs" and "output reactions". «The constitution and structure of the box are altogether irrelevant to approach under consideration, which is purely external or phenomenological. In other words, only the behavior of the system will be accounted for».
The modern term "black box" seems to have entered the English language around 1945. In electronic circuit theory the process of network synthesis from transfer functions, which led to electronic circuits being regarded as "black boxes" characterized by their response to signals applied to their ports, can be traced to Wilhelm Cauer who published his ideas in their most developed form in 1941. Although Cauer did not himself use the term, others who followed him certainly did describe the method as black-box analysis. Vitold Belevitch puts the concept of black-boxes even earlier, attributing the explicit use of two-port networks as black boxes to Franz Breisig in 1921 and argues that 2-terminal components were implicitly treated as black-boxes before that.
- In computer programming and software engineering, black box testing is used to check that the output of a program is as expected, given certain inputs. The term "black box" is used because the actual program being executed is not examined.
- In computing in general, a black box program is one where the user cannot see its inner workings (perhaps because it is a closed source program) or one which has no side effects and the function of which need not be examined, a routine suitable for re-use.
- Also in computing, a black box refers to a piece of equipment provided by a vendor, for the purpose of using that vendor's product. It is often the case that the vendor maintains and supports this equipment, and the company receiving the black box typically are hands-off.
- In cybernetics, a full treatment was given by Ross Ashby in 1956. A black box was described by Norbert Wiener in 1961 as an unknown system that was to be identified using the techniques of system identification. He saw the first step in self-organization as being to be able to copy the output behaviour of a black box.
- In neural networking or heuristic algorithms (computer terms generally used to describe 'learning' computers or 'AI simulations') a black box is used to describe the constantly changing section of the program environment which cannot easily be tested by the programmers. This is also called a white box in the context that the program code can be seen, but the code is so complex that it is functionally equivalent to a black box.
- In physics, a black box is a system whose internal structure is unknown, or need not be considered for a particular purpose.
- In mathematical modelling, a limiting case.
- In philosophy and psychology, the school of behaviorism sees the human mind as a black box; see black box theory.
- In neorealist international relations theory, the sovereign state is generally considered a black box: states are assumed to be unitary, rational, self-interested actors, and the actual decision-making processes of the state are disregarded as being largely irrelevant. Liberal and constructivist theorists often criticize neorealism for the "black box" model, and refer to much of their work on how states arrive at decisions as "breaking open the black box".
- In cryptography to capture the notion of knowledge obtained by an algorithm through the execution of a cryptographic protocol such as a zero-knowledge proof protocol. If the output of the algorithm when interacting with the protocol can be simulated by a simulator that interacts only the algorithm, this means that the algorithm 'cannot know' anything more than the input of the simulator. If the simulator can only interact with the algorithm in a black box way, we speak of a black box simulator.
Other uses of the term
- In aviation, the flight recorder is sometimes called a "black box", although it is usually bright orange to facilitate their being found after a crash. In an airplane or helicopter, the flight recorder records the conversation of the pilots and also logs information about controls and sensors. If an accident happens, investigators can use the recordings to assist in the investigation.
- In amateur radio the term "black box operator" is a disparaging or self-deprecating description of someone who operates factory made radios without having a good understanding of how they work. Such operators do not build their own equipment (an activity called "homebrewing") or repair their own "black boxes".
- Mario Bunge (1963), "A general black-box theory". Philosophy of Science. Vol. 30. No. 4, pp. 346-358. jstor/186066
- See ex. the British standard BS 7925-2 (Software component testing), or its 2001 work draft,
BCS SIGIST (British Computer Society Specialist Interest Group in Software Testing), "Standard for Software Component Testing", Working Draft 3.4, 27. April 2001. webpage.
- W. Cauer. Theorie der linearen Wechselstromschaltungen, Vol.I. Akad. Verlags-Gesellschaft Becker und Erler, Leipzig, 1941.
- E. Cauer, W. Mathis, and R. Pauli, "Life and Work of Wilhelm Cauer (1900 – 1945)", Proceedings of the Fourteenth International Symposium of Mathematical Theory of Networks and Systems (MTNS2000), p4, Perpignan, June, 2000. Retrieved online 19 September 2008.
- Belevitch, V, "Summary of the history of circuit theory", Proceedings of the IRE, vol 50, Iss 5, pp848-855, May 1962.
- Black-Box Testing: Techniques for Functional Testing of Software and Systems, by Boris Beizer, 1995. ISBN 0-471-12094-4
- Ashby, W. Ross 1956. An introduction to cybernetics. London: Chapman & Hall, chapter 6 The black box, p86–117.
- Wiener, Norbert 1961. Cybernetics: or the Control and Communication in the Animal and the Machine. page xi, MIT Press. ISBN 0-262-73009-X
- "Mind as a Black Box: The Behaviorist Approach", pp 85-88, in Cognitive Science: An Introduction to the Study of Mind, by Jay Friedenberg, Gordon Silverman, Sage Publications, 2006