Thanks tk! Exactly what I was hoping to see - a different viewpoint from mine.
This, I hope illustrates why we do this and why a level of textual description is almost always necessary.
My "outstanding" question back to the users was "What is supposed to happen on (any) attempt number 4..." The current scenarios are silent on this. Now we also can ask the more general quiestion "What is the system supposed to do when a login on a locked account is attempted".
(I dont agree with your query on scenario 3 - its the way an account becomes locked).
So, although we are using one of the most so called "trivial" use cases it is easy to see how different viewpionts raise different issues - or sometimes the same issue in a more revealing light. The presentation of a single (rugby) football with "User log in" written in it may not adequately explore the desired behaviour of the system.
However,
note that this is an example used to prove a point not an exhortation to describe use cases to the nth degree. You must use your judgement and knowledge of the human dynamics of specific project at hand to decide how detailed the documentation needs to be. This, coupled with the business criticality of the use case will guide the need for "how much of this stuff do we need to write down". The login for an ATM machine is obviously more critical than the login for access to the company online phone book maintenance utility.
Many years ago, last century in fact, when I was a young programmer of note, we used a plastic template and a pencil to "work out" the logic of parts of programs. We did not do this for each and every piece of code - only the one that were difficult to describe, conceive or design. There seems to be a misunderstanding that to be a true UMList you need to use every model/diagram/technique in every instance. I dont hold that this is necessary - all we need to be sure of is that we (stakeholders) are communicating and understanding properly. UML is a convenient standardised notation to assist in this.
Sometimes I also get the impression that people think that "better UML design" will result in "better systems". The truth is simply that "better design" results in better systems and UML is a technique that can assist in that goal.
Bruce
p.s. I am a senior (as in older) project consultant, I do a lot of different work and at the moment am involved in a bit of detective work on an unstable J2EE/Oracle system. This involves running test scripts over and over at various load levels attempting to find consistent failure "footprints" in the logs. The runs are automated, I have got most of the log analysis automated and so have a fair amount of time while waiting for the next "crash". Other times I do (development) process engineering, solution architecture, project risk management, blah blah blah... However, I am shortly going to run out of work at this client and wil be back on the job hunting again so the "detailed" answers (aka raves) may well dissappear.
