В целях рационализации процесса создания программы она разбивается на отдельные части, называемые модулями.
К программным модулям предъявляются следующие требования:
- модуль может активизироваться операционной системой или другим модулем,
- обращение к модулю идет по его имени,
- модуль всегда должен возвращать управление тому, кто его вызвал,
- модуль должен иметь один вход и один выход,
- модуль должен иметь оптимальный размер,
- модуль должен выполнять определенную функцию и преобразовывать исходные данные в результат.
Процесс разбиения программы на модули и установление между ними связи называется структурированием.