Although object-oriented paradigm is becoming a more realistic approach to develop large-scale software systems, the existing object-oriented notations and methodologies do not fully support the development of distributed object systems.
In this thesis, we integrate Meta-Object Protocol (MOP) into a de facto standard object-oriented modeling language UML together to build a software architecture for distributed object systems. We propose a high-level extension of conventional MOPs, called diMOP which helps to develop distributed object systems by realizing a reflective architecture. To incorporate diMOP with UML, we introduce two new specification languages: Class Diagram Supporting diMOP (CDSM) and Dynamically Configurable object-oriented Statemachine (DCOS), which are proposed to replace the class diagram and the state diagram of UML. In addition, the two specification languages support to specify dynamic configuration behaviors as well as to incorporate the diMOP. We also demonstrate that our approach is very realistic to develop distributed object systems with an example of distributed object system development: Evolving philosophers. We``ve implemented a high-level MOP diMOP in Open Java and developed a prototype development environment for automated supports to our approach-specification and code generation tools.