UML 2 Class Diagrams: An Agile Introduction