Hi Peter
First I will quote what Mike said, just be cause it can't be said enough times:
UML is just the language to express whatever you plan to build. What you are looking for is methodology.
This is where most people go wrong when they start using UML. They think that the UML will tell them what to do. It will not! It is only a notation.
What is the right way to use the UML then? There are many, many answers to this. Even after everyone in the community has agreed that UML is a good notation, lots of battles are going on over which methodology is the best. Nobody has found a conclusion to this yet. The term for a methodology in this context is a "Process". I will list a few that I know:
UP: Unified Process. A process defined by some of the famous people in OO development, Ivar Jacobson, Grady Booch, and James Rumbaugh. They have written a reference book: "The Unified Software Development Process", Addison-Wesley, 1999. IMO this is a reference book which would not be much use to someone unfamiliar with OO processes.
RUP: Rational Unified Process. The UP detailed by Rational (now IBM). This is a commercial product that comes with document templates, web site framework, etc.
Note: Rational produces the CASE tool Rational Rose (many times the price of EA), and the people above are employed by Rational, so their books are not entirely impartial when it comes to the choice of tool.
ROPES: Rapid Object-oriented Process for Embedded Systems. The main character behind this is Bruce Douglass, who is employed by I-Logix, the company behind the CASE tool Rhapsody. You can download a whitepaper (by Douglass) about ROPES somewhere on the internet. Just search for "ROPES process" and ignore all the results about climbing gear manufacturers.
For starters, I would recommend the book "Applying UML and Patterns" by Craig Larman (whom, I think, has ties to TogetherSoft). It gives a UP-oriented introduction to object-oriented development. It is a very good eye-opener to the fact that the UML itself will not tell you what to do.
If you are working with real-time or embedded systems, you should get "Real Time UML, third edition" by Bruce Douglass. It gives many answers to the practical application of UML to specific situations and design questions that other books tend to overlook.
All this said, I agree that the fastest way forward is to employ a professional consultant.
Mikkel