(1) A measure of how difficult it is to understand how a system will behave or to predict the consequences of changing it (Sheard and Mostashari 2009)
(2) The degree to which a system's design or code is difficult to understand because of numerous components or relationships among components (ISO/IEC 2009)
(1) Sheard, S.A. and A. Mostashari. 2009. "Principles of Complex Systems for Systems Engineering". Systems Engineering, 12(4): 295-311.
(2) ISO/IEC. 2009. "Systems and Software Engineering Vocabulary (SEVocab)" - ISO/IEC 24765. in International Organization for Standardization (ISO)/International Electrotechnical Commission (IEC) [database online]. Geneva, Switzerland, 2009 [cited December 21 2009]. Available from http://pascal.computer.org/sev_display/index.action.
Complexity is a common property of engineered systems and occurs when there is no simple relationship between what an individual element does and what the system as a whole will do, and when the system includes some element of adaptation or problem solving to achieve its goals in different situations. It can be affected by objective attributes of a system such as by the number, types of and diversity of system elements and relationships, or by the subjective perceptions of system observers due to their experience, knowledge, training, or other socio-political considerations.
For a more complete discussion of complexity see the Complexity article in Part 2.