UML is a powerful language for Software Engineering. And the useful tools will be Rational Rose and Microsoft Visio.

Here are some basic concepts about UML.