This paper presents OpenMES, which is an object-oriented framework for the development of manufacturing execution systems dedicated to discrete manufacturing. The design goals of OpenMES are to make it extensible by means of the modular and composable organization, and to realize open connectivity not only with other software systems, but also with manufacturing devices. The OpenMES framework is realized as a distributed object system based on a Common Object Request Broker Architecture (CORBA), and implemented in Java. As the results of preliminary performance evaluation, OpenMES demonstrated its scalability throughout the increase in the numbers of production lots and manufacturing devices.