This paper presents an object-oriented programming approach for the design of numerical homogenization programs, called JHomogenizer. It currently includes five functional modules to compute effective permeability and simple codes for computing solutions for flow in porous media. Examples with graphical output are shown to illustrate some functionalities of the program. A series of numerical examples demonstrates the effectiveness of the methodology for two-phase flow in heterogeneous reservoirs. The software is freely available, and the open architecture of the program facilitates further development and can adapt to suit specific needs easily and quickly.