4. software modules