Без заголовка
А вы в википедию загляните. Программа - это очень общее понятие, туда входят и исходники, и код, и все, что угодно. А приложение - это конкретно то, с чем пользователь работает.
И пожалуйста, не надо все усложнять. CRM может быть как отдельным автономным приложением, так и компонентом в составе системы ERP (автономным или неавтономным). А уж неавтономный компонент как не назови (я называю модулем), он все равно остается компонентом, и сам по себе работать не может. Как процессор или модуль памяти. Вся разница только в автономности.
К обработке данных данное деление никакого отношения не имеет. Данные обрабатывать могут и модули, и приложения. Это уже проблемы связей и взаимодействия между компонентами.