The thesis is a collection of six stand-alone chapters aimed at setting the foundations for the philosophy of computational social science. Agent-based modelling has been used for social research since the nineties. While at the beginning it was simply conceived as a methodological alternative, recently, the notion of ‘computational social science’ has started to be used to denote a separate disciplinary field. There are important differences with mainstream social science and traditional social research. Yet, the literature in the field has not accounted for these differences. Computational social science is a strongly practice-oriented field, where theoretical and philosophical concerns have been pushed into the background. This thesis presents an initial analysis of the methodology, epistemology and ontology of computational social science, by examining the following topics: 1) verification and validation 2) modelling and theorising 3) mechanisms 4) explanation 5) agency, action and interaction 6) entities and process philosophy. Five general conclusions are drawn from the thesis. It is first argued that the wider ontological base in agent-based modelling allows for a new approach to traditional social dualisms, moving away from the methodological individualism that dominates computational social science. Second, the need to place a distinction between explanation and understanding and to make explanatory goals explicit is highlighted. Third, it is claimed that computational social science needs to pay attention to the social epistemology of the field, for this could provide important insights regarding values, ideologies and interests that underlie the practice of agent-based modelling. Fourth, it is suggested that a more robust theorisation regarding the experimental and model-based character of agent-based modelling should be developed. Finally, it is argued that the method can greatly contribute to the development of a processual account of social life.