White box (software engineering)
| Black box systems | |
|---|---|
| File: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 | |
A white box (or glass box, clear box, or open box) is a subsystem whose internals can be viewed but usually not altered.[1] The term is used in systems engineering, software engineering, and in intelligent user interface design,[2][3] where it is closely related to recent[when?] interest in explainable artificial intelligence.[4][5]
Having access to the subsystem internals in general makes the subsystem easier to understand, but also easier to hack; for example, if a programmer can examine source code, weaknesses in an algorithm are much easier to discover.[citation needed] That makes white-box testing much more effective than black-box testing but considerably more difficult from the sophistication needed on the part of the tester to understand the subsystem.
The notion of a "Black Box in a Glass Box" was originally used as a metaphor for teaching complex topics to computing novices.[6]
See also
[edit | edit source]References
[edit | edit source]- ^ Patrick J. Driscoll, "Systems Thinking," in Gregory S. Parnell, Patrick J. Driscoll, and Dale L. Henderson (eds.), Decision Making in Systems Engineering and Management, 2nd. ed., Hoboken, NJ: Wiley, 2011, 40.
- ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
- ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
- ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
- ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
- ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).