Black box

Last updated
Black box systems
Black box diagram.svg
System
Black box, Oracle machine
Methods and techniques
Black-box testing, Blackboxing
Related techniques
Feed forward, Obfuscation, Pattern recognition, White box, White-box testing, Gray-box testing, System identification
Fundamentals
A priori information, Control systems, Open systems, Operations research, Thermodynamic systems

In science, computing, and engineering, a black box is a system which can be viewed in terms of its inputs and outputs (or transfer characteristics), without any knowledge of its internal workings. Its implementation is "opaque" (black). The term can be used to refer to many inner workings, such as those of a transistor, an engine, an algorithm, the human brain, or an institution or government.

Contents

To analyze an open system with a typical "black box approach", only the behavior of the stimulus/response will be accounted for, to infer the (unknown) box. The usual representation of this black box system is a data flow diagram centered in the box.

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").

History

A black box model can be used to describe the outputs of systems. Blackbox3D-withGraphs.png
A black box model can be used to describe the outputs of systems.

The modern meaning of the 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. [1] Although Cauer did not himself use the term, others who followed him certainly did describe the method as black-box analysis. [2] Vitold Belevitch [3] 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 cybernetics, a full treatment was given by Ross Ashby in 1956. [4] 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. [5] He saw the first step in self-organization as being to be able to copy the output behavior of a black box. Many other engineers, scientists and epistemologists, such as Mario Bunge, [6] used and perfected the black box theory in the 1960s.

Systems theory

The open systems theory is the foundation of black box theory. Both have focus on input and output flows, representing exchanges with the surroundings. OpenSystemRepresentation.svg
The open systems theory is the foundation of black box theory. Both have focus on input and output flows, representing exchanges with the surroundings.

In systems theory, the black box is an abstraction representing a class of concrete open system 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 the approach under consideration, which is purely external or phenomenological. In other words, only the behavior of the system will be accounted for.

The understanding of a black box is based on the "explanatory principle", the hypothesis of a causal relation between the input and the output. This principle states that input and output are distinct, that the system has observable (and relatable) inputs and outputs and that the system is black to the observer (non-openable). [7]

Recording of observed states

An observer makes observations over time. All observations of inputs and outputs of a black box can be written in a table, in which, at each of a sequence of times, the states of the box's various parts, input and output, are recorded. Thus, using an example from Ashby, examining a box that has fallen from a flying saucer might lead to this protocol: [4]

TimeStates of input and output
11:18I did nothing—the Box emitted a steady hum at 240 Hz.
11:19I pushed over the switch marked K: the note rose to 480 Hz and remained steady.
11:20I accidentally pushed the button marked “!”—the Box increased in temperature by 20 °C.
...Etc.

Thus, every system, fundamentally, is investigated by the collection of a long protocol, drawn out in time, showing the sequence of input and output states. From this there follows the fundamental deduction that all knowledge obtainable from a Black Box (of given input and output) is such as can be obtained by re-coding the protocol (the observation table); all that, and nothing more. [4]

If the observer also controls input, the investigation turns into an experiment (illustration), and hypotheses about cause and effect can be tested directly.

When the experimenter is also motivated to control the box, there is active feedback in the box/observer relation, promoting what in control theory is called a feed forward architecture.

Modeling

The modeling process is the construction of a predictive mathematical model, using existing historic data (observation table).

Testing the black box model

A developed black box model is a validated model when black-box testing methods [8] ensures that it is, based solely on observable elements.

With back testing, out of time data is always used when testing the black box model. Data has to be written down before it is pulled for black box inputs.

Other theories

The observed hydrograph is a graphic of the response of a watershed (a blackbox) with its runoff (red) to an input of rainfall (blue). Hidrograma.png
The observed hydrograph is a graphic of the response of a watershed (a blackbox) with its runoff (red) to an input of rainfall (blue).

Black box theories are those theories defined only in terms of their function. [9] [10] The term can be applied in any field where some inquiry is made into the relations between aspects of the appearance of a system (exterior of the black box), with no attempt made to explain why those relations should exist (interior of the black box). In this context, Newton's theory of gravitation can be described as a black box theory. [11]

Specifically, the inquiry is focused upon a system that has no immediately apparent characteristics and therefore has only factors for consideration held within itself hidden from immediate observation. The observer is assumed ignorant in the first instance as the majority of available data is held in an inner situation away from facile investigations. The black box element of the definition is shown as being characterised by a system where observable elements enter a perhaps imaginary box with a set of different outputs emerging which are also observable. [12]

Adoption in humanities

In humanities disciplines such as philosophy of mind and behaviorism, one of the uses of black box theory is to describe and understand psychological factors in fields such as marketing when applied to an analysis of consumer behaviour. [13] [14] [15]

Black box theory

Black Box theory is even wider in application than professional studies:

The child who tries to open a door has to manipulate the handle (the input) so as to produce the desired movement at the latch (the output); and he has to learn how to control the one by the other without being able to see the internal mechanism that links them. In our daily lives we are confronted at every turn with systems whose internal mechanisms are not fully open to inspection, and which must be treated by the methods appropriate to the Black Box.

Ashby [4]

(...) This simple rule proved very effective and is an illustration of how the Black Box principle in cybernetics can be used to control situations that, if gone into deeply, may seem very complex.
A further example of the Black Box principle is the treatment of mental patients. The human brain is certainly a Black Box, and while a great deal of neurological research is going on to understand the mechanism of the brain, progress in treatment is also being made by observing patients' responses to stimuli.

Duckworth, Gear and Lockett [16]

Applications

When the observer (an agent) can also do some stimulus (input), the relation with the black box is not only an observation, but an experiment. Blackbox3D-obs.png
When the observer (an agent) can also do some stimulus (input), the relation with the black box is not only an observation, but an experiment.

Computing and mathematics

Science and technology

Other applications

See also

Related Research Articles

Control theory is a field of control engineering and applied mathematics that deals with the control of dynamical systems in engineered processes and machines. The objective is to develop a model or algorithm governing the application of system inputs to drive the system to a desired state, while minimizing any delay, overshoot, or steady-state error and ensuring a level of control stability; often with the aim to achieve a degree of optimality.

<span class="mw-page-title-main">Feedback</span> Process where information about current status is used to influence future status

Feedback occurs when outputs of a system are routed back as inputs as part of a chain of cause-and-effect that forms a circuit or loop. The system can then be said to feed back into itself. The notion of cause-and-effect has to be handled carefully when applied to feedback systems:

Simple causal reasoning about a feedback system is difficult because the first system influences the second and second system influences the first, leading to a circular argument. This makes reasoning based upon cause and effect tricky, and it is necessary to analyze the system as a whole. As provided by Webster, feedback in business is the transmission of evaluative or corrective information about an action, event, or process to the original or controlling source.

Software testing is the act of examining the artifacts and the behavior of the software under test by validation and verification. Software testing can also provide an objective, independent view of the software to allow the business to appreciate and understand the risks of software implementation. Test techniques include, but are not limited to:

Computer science is the study of the theoretical foundations of information and computation and their implementation and application in computer systems. One well known subject classification system for computer science is the ACM Computing Classification System devised by the Association for Computing Machinery.

<span class="mw-page-title-main">Control system</span> System that manages the behavior of other systems

A control system manages, commands, directs, or regulates the behavior of other devices or systems using control loops. It can range from a single home heating controller using a thermostat controlling a domestic boiler to large industrial control systems which are used for controlling processes or machines. The control systems are designed via control engineering process.

<span class="mw-page-title-main">W. Ross Ashby</span> English psychiatrist (1903–1972)

William Ross Ashby was an English psychiatrist and a pioneer in cybernetics, the study of the science of communications and automatic control systems in both machines and living things. His first name was not used: he was known as Ross Ashby.

In the context of systems science and systems philosophy, systemics is an initiative to study systems. It is an attempt at developing logical, mathematical, engineering and philosophical paradigms and frameworks in which physical, technological, biological, social, cognitive and metaphysical systems can be studied and modeled.

In theoretical computer science, an algorithm is correct with respect to a specification if it behaves as specified. Best explored is functional correctness, which refers to the input-output behavior of the algorithm.

White-box testing is a method of software testing that tests internal structures or workings of an application, as opposed to its functionality. In white-box testing, an internal perspective of the system is used to design test cases. The tester chooses inputs to exercise paths through the code and determine the expected outputs. This is analogous to testing nodes in a circuit, e.g. in-circuit testing (ICT). White-box testing can be applied at the unit, integration and system levels of the software testing process. Although traditional testers tended to think of white-box testing as being done at the unit level, it is used for integration and system testing more frequently today. It can test paths within a unit, paths between units during integration, and between subsystems during a system–level test. Though this method of test design can uncover many errors or problems, it has the potential to miss unimplemented parts of the specification or missing requirements. Where white-box testing is design-driven, that is, driven exclusively by agreed specifications of how each component of software is required to behave, white-box test techniques can accomplish assessment for unimplemented or missing requirements.

Perceptual control theory (PCT) is a model of behavior based on the properties of negative feedback control loops. A control loop maintains a sensed variable at or near a reference value by means of the effects of its outputs upon that variable, as mediated by physical properties of the environment. In engineering control theory, reference values are set by a user outside the system. An example is a thermostat. In a living organism, reference values for controlled perceptual variables are endogenously maintained. Biological homeostasis and reflexes are simple, low-level examples. The discovery of mathematical principles of control introduced a way to model a negative feedback loop closed through the environment, which spawned perceptual control theory. It differs fundamentally from some models in behavioral and cognitive psychology that model stimuli as causes of behavior. PCT research is published in experimental psychology, neuroscience, ethology, anthropology, linguistics, sociology, robotics, developmental psychology, organizational psychology and management, and a number of other fields. PCT has been applied to design and administration of educational systems, and has led to a psychotherapy called the method of levels.

<span class="mw-page-title-main">Equivalence partitioning</span> Software testing technique

Equivalence partitioning or equivalence class partitioning (ECP) is a software testing technique that divides the input data of a software unit into partitions of equivalent data from which test cases can be derived. In principle, test cases are designed to cover each partition at least once. This technique tries to define test cases that uncover classes of errors, thereby reducing the total number of test cases that must be developed. An advantage of this approach is reduction in the time required for testing software due to lesser number of test cases.

In software development, functional testing is a quality assurance (QA) process and a type of black-box testing that bases its test cases on the specifications of the software component under test. Functions are tested by feeding them input and examining the output, and internal program structure is rarely considered. Functional software testing is conducted to evaluate the compliance of a system or component with specified functional requirements. Functional testing usually describes what the system does.

<span class="mw-page-title-main">System</span> Interrelated entities that form a whole

A system is a group of interacting or interrelated elements that act according to a set of rules to form a unified whole. A system, surrounded and influenced by its environment, is described by its boundaries, structure and purpose and is expressed in its functioning. Systems are the subjects of study of systems theory and other systems sciences.

In computer science, fault injection is a testing technique for understanding how computing systems behave when stressed in unusual ways. This can be achieved using physical- or software-based means, or using a hybrid approach. Widely studied physical fault injections include the application of high voltages, extreme temperatures and electromagnetic pulses on electronic components, such as computer memory and central processing units. By exposing components to conditions beyond their intended operating limits, computing systems can be coerced into mis-executing instructions and corrupting critical data.

In cybernetics, the term variety denotes the total number of distinguishable elements of a set, most often the set of states, inputs, or outputs of a finite-state machine or transformation, or the binary logarithm of the same quantity. Variety is used in cybernetics as an information theory that is easily related to deterministic finite automata, and less formally as a conceptual tool for thinking about organization, regulation, and stability. It is an early theory of complexity in automata, complex systems, and operations research.

<span class="mw-page-title-main">Alexey Ivakhnenko</span> Soviet–Ukrainian mathematician and computer scientist

Alexey Grigoryevich Ivakhnenko was a Soviet and Ukrainian mathematician most famous for developing the group method of data handling (GMDH), a method of inductive statistical learning, for which he is sometimes referred to as the "Father of deep learning".

In computing, software engineering, and software testing, a test oracle is a mechanism for determining whether a test has passed or failed. The use of oracles involves comparing the output(s) of the system under test, for a given test-case input, to the output(s) that the oracle determines that product should have. The term "test oracle" was first introduced in a paper by William E. Howden. Additional work on different kinds of oracles was explored by Elaine Weyuker.

Process architecture is the structural design of general process systems. It applies to fields such as computers, business processes, and any other process system of varying degrees of complexity.

<span class="mw-page-title-main">Vitold Belevitch</span> Belgian mathematician (1921–1999)

Vitold Belevitch was a Belgian mathematician and electrical engineer of Russian origin who produced some important work in the field of electrical network theory. Born to parents fleeing the Bolsheviks, he settled in Belgium where he worked on early computer construction projects. Belevitch is responsible for a number of circuit theorems and introduced the now well-known scattering parameters.

This glossary of computer science is a list of definitions of terms and concepts used in computer science, its sub-disciplines, and related fields, including terms relevant to software, data science, and computer programming.

References

  1. Cauer, Wilhelm; Theorie der linearen Wechselstromschaltungen, Vol.I, Akademische Verlags-Gesellschaft Becker und Erler, Leipzig, 1941.
  2. Cauer, Emil; Mathis, Wolfgang; and Pauli, Rainer; "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.
  3. Belevitch, Vitold; "Summary of the history of circuit theory", Proceedings of the IRE, vol 50, Iss 5, pp. 848-855, May 1962.
  4. 1 2 3 4 Ashby, W. Ross; An introduction to cybernetics, London: Chapman & Hall, 1956, chapter 6: The black box, pp. 86117.
  5. Wiener, Norbert; Cybernetics: or the Control and Communication in the Animal and the Machine, MIT Press, 1961, ISBN   0-262-73009-X, page xi
  6. 1 2 Bunge, Mario; "A general black-box theory", Philosophy of Science, Vol. 30, No. 4, 1963, pp. 346-358. jstor/186066
  7. Glanville, Ranulph; "Black Boxes", Cybernetics and Human Knowing, 2009, pp. 153-167.
  8. See for 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.
  9. Definition from Answers.com
  10. Clara, Parker (1963). "A General Black Box Theory". Philosophy of Science. Mario Bunge. 30 (4): 346–358. doi:10.1086/287954. S2CID   123014360 . Retrieved 23 December 2020.
  11. Vincent Wilmot, "Sir Isaac Newton - mathematical laws Black Box theory", new-science-theory.com, retrieved 13 October 2022.
  12. Bunge, M. (1963). "A General Black Box Theory". Philosophy of Science . 30 (4): 346–358. Retrieved 8 January 2024.
  13. Institute for working futures Archived 26 June 2012 at the Wayback Machine part of Advanced Diploma in Logistics and Management. Retrieved 11/09/2011
  14. Black-box theory used to understand Consumer behaviour Marketing By Richard L. Sandhusen. Retrieved 11/09/2011
  15. designing of websites Retrieved 11/09/2011
  16. WE Duckworth, AE Gear and AG Lockett (1977), "A Guide to Operational Research". doi:10.1007/978-94-011-6910-3
  17. Beizer, Boris; Black-Box Testing: Techniques for Functional Testing of Software and Systems, 1995, ISBN   0-471-12094-4
  18. "Mind as a Black Box: The Behaviorist Approach", pp. 85-88, in Friedenberg, Jay; and Silverman, Gordon; Cognitive Science: An Introduction to the Study of Mind, Sage Publications, 2006.