Use Case Driven Object Modeling with UML: A Practical Approach