One of the challenging issues in TV recommendation applications based on implicit rating data is how to make robust recommendation for the users who irregularly watch TV programs and for the users who have their time-varying preferences on watching TV programs. To achieve the robust recommendation for such users, it is important to capture dynamic behaviors of user preference on watched TV programs over time. In this dissertation, we propose a topic-tracking based dynamic user model (TDUM) which extends the previous multi-scale dynamic topic model (MDTM) by incorporating topic-tracking into dynamic user modeling. In the proposed TDUM, the prior of the current user preference is estimated online as a weighted combination of the previously learned user preferences in multi-time spans where the optimal weight set is found in the sense of the evidence maximization of the Bayesian probability model. So, the proposed TDUM supports the dynamics of public user preferences on TV programs for collaborative filtering based TV program recommendation. We also propose a rank model for TV program recommendation. In order to verify the effectiveness of the proposed TDUM, we use a real data set of watched TV programs by 1,999 TV users for 7 months. The experiment results demonstrate that the proposed TDUM outperforms the Latent Dirichlet Allocation (LDA) model and the MDTM in terms of log-likelihood for the topic modeling performance, and also shows its superiority in comparison with LDA, MDTM, user-KNN and BPR-MF for TV program recommendation performance in terms of top-N precision-recall. Furthermore, the proposed TDUM is extended with TV user clustering, called CTDUM (Clustering based TDUM) which allows for not only the dynamic topic tracking of TV programs but also the dynamic clustering of TV users with time-varying preferences on TV program topics. So, the CTDUM is capable of recommending both the TV programs based on personal and public preferences of TV program topics, and also recommending the similar taste TV user groups for social TV. CTDUM can cluster users dynamically according to the change of preferences or the change of TV program schedules epoch by epoch.