A new stochastic framework is proposed for distribution system restoration (DSR) problem. In this framework, dynamic programming (DP) is used to solve DSR problem for a distribution system that accommodates various technologies of distributed generation units and storage systems. Time and sequence of distribution feeders which should be energised after a blackout are chosen as stages of DP algorithm. In addition, uncertainties associated with the power received from transmission network in the period of system restoration are modelled as some probabilistic scenarios. The complexity of attained optimisation problem is reduced using some state reduction techniques. These techniques enable DP algorithm to reach near-optimal solution as well as computationally efficient calculation procedure. The proposed restoration framework is applied on a real-world test system and the results prove its effectiveness and practicality.