Concurrency in Object-Orientation
|
- Explicit concurrency model
- Explicit concurrency model describes concurrency separately from the objects by defining processes at an early stage of analysis, and then treating processes and objects as separate modeling entities. The system is decomposed into a number of processes, and each process is internally modeled as an object-oriented system to design the internal structure.
- Implicit concurrency model
- Implicit concurrency model delay the design of concurrency. The system is modeled as objects, where in an early analysis, all objects are considered to have their own execution threads; that is, be active objects. Gradually, through architecture and detailed design, the ideal analysis models are mapped onto an implementation with the support of services from the underlying real-time operating system.
- UML can support both
- It has better support for the implicit concurrency model. Active classes, asynchronous communication, and synchronization can be modeled in early phases and gradually be translated into the services and capabilities of the implementation environment.