I'll take these one at a time, despite the fact that they are all overlapping comment.
Chip.
My audience for UML is a lot wider than that:
[ul][li]Business folk should underatand the high level stuff[/li]
[li]Business/Systems Analysts/Architects should be given a more complete view[/li]
[li]Designers will need to copy/rework the analysis[/li]
[li]Screen designers have a strong interest.[/li]
[li]Developers use it directly, or the designer variant[/li]
[li]The Data Adminstrator will have a very direct interest in the models, either to generate their logical model or at least keep it in synch.[/li]
[li]Testers should be able to use the use cases almost directly as skeletal UATs, and need the othe diagrams to see how to construct system and integration tests.[/li]
[/ul]
Use case paths are what developers need, in order to write the code.
Almost everyone should be interested in these. Testers are probably the first. Then developers, screen designers (who are specialists developers) etc.
Screen navigation paths are what general business folk need in order to visualize what's going on
The screen designers are the most interested. Business folk get too carried away by trying to define camels, so I keep them away as much as possible; they are asked to validate the design. Testers have a major interest in which windows can open which windows and when; they not only test this, but then use it for their other testing. For some developers, these are of remote interest, but for the guys using Strutts, ASP, JSP, VB, C# etc they are their basic documents.
Bob,
1. Yes that is exactly what I mean.
2. No it is NOT the same as a use case diagram.
It is a mistake to mix business classes and screen. Sort of like, linking classes with UI objects without an intervening controller (Robustness Analysis and all that). Let us say we move a screen from the WEB to WAP. It wont fit, so we need to cut the display into bits. We are NOT changing the use cases, but we are changing the screens.
It is a mistake to mix business classes and screen.
Edward.
You are right, in a way. If I'm not writing strict UML, then I should NOT use UML nomenclature. But, I always stereotype the classes as <<Screen>> so I hope that that is enough. Sometimes, I use all the sections in the class icon: stereotype, name, attributes, for displayed data, and buttons and controls in the 'methods' section.
Note: I'm NOT doing this to identify use cases and classes. Normally, I decide on the screen navigation AFTER I have mapped these. It is only then that I begin to know what screens I want, what data they display and how they work together.
Thanks for the feedback. Its sort of makes me sit back and think deeply, which is good for my soul ;-)
Gil