- Improvement of the element base,
- Downsizing,
- Technological progress (increased performance, speed, and memory)
- Reduced cost,
- Development of software,
- Changes in architecture, expansion of the range of tasks solved by computers,
- Simplification and standardization of hardware.
- Changing the way of interaction between the user and the computer.