A system consists of a set of elements, distinct from its environment.
Every system is contained in a higher level system.
Every system has sub-systems, which are often modular.
The system components are bound together strongly.
There is a boundary that is part of every system. The inside of the boundary connects to system components, and the outside of the boundary connects weakly to the system environment.
Systems are often perceived by their response to the environment — they “push back”. This behavior is a function of the internal system connections, and the connections to the environment via the system boundary.
Donella Meadows in Thinking In Systems defines several system archetypes.