Object-oriented design of real-time software