Programming model which are based on data and logic rather than action. input processing and output are though objects.