This chapter presents basic concepts and results of the theory of semi-Markov decision processes. The algorithm of optimization of a SM decision process with a finite number of state changes is discussed here. The algorithm is based on a dynamic programming method. To clarify it, the SM decision model for the maintenance operation is shown. The optimization problem for the infinite duration SM process and the Howard algorithm, which enables us to find the optimal stationary strategy, is also discussed here. To explain this algorithm, a decision problem for a renewable series system is presented.