This paper presents an object-oriented approach to the development of a generative process planning system-Object-Oriented Process Planning System (OOPPS). The system consists of three functional modules: object-oriented product model (OOPM) module, object-oriented manufacturing facility model (OOMFM) module, and object-oriented process planner (OOPP). The OOPM has a hierarchical structure with six classes of objects, class Product, class SubAssembly, class Part, class CSGTree, class Solid and class Feature. It can represent a product with all detailed information. The OOMFM is used to represent a cellular manufacturing system including machine cells, machine tools, fixtures, and cutting tools. The OOPP generates process plans for parts using a multi-level hierarchical planning approach with four levels: cell-level planning machine-level planning, fixture-level planning and tool-level planning. At the cell-level, all required operations are determined based on the features specifications. Machine cells are then selected, based on the selected operations, for the minimal inter-cell movement. The machine-level planning selects the machines within the chosen cells. The fixtures are also selected on the selected machines. At the fixture-level planning, part setups and their sequences are selected. Finally, the tool-level planning determines all details for the process plans. An automated programming system was also developed to link the OOPP to Smart CAM to generate CNC programs. An example has been used to illustrate the approach.