This paper describes jMarkov, an object-oriented framework designed to facilitate the construction and analysis of large-scale Markov Chains. The object-oriented design allows a natural translation from a conceptual mathematical model to a computer representation. Additionally, the framework provides the user with the solvers to analyze both the steady-state and the transient behaviors, but its design is flexible enough so new solvers can be implemented. Finally, jMarkov provides the tools to model Quasi-Birth and Death Processes with the same philosophy used to construct general Markov Chains.