Abstract. The ALMM Solver is a software tool which aim is generating solutions for discrete optimization problems, in particular for NP-hard problems. The idea of the solver is based on Algebraic Logical MetaModel of Multistage Decision Process (ALMM of MDP). The aim of the paper is to present the architecture of the ALMM Solver and to describe requirements regarding the solver, in particular non-functional ones. SimOpt, the core module of the solver, is described in detail. The practices, design patterns and principles, that was used to ensure the best quality of the solver software, are mentioned in the paper.