Hi Bill,
my prospective is a bit different. When I look at your Use Case diagram, I see that your system uses web services, I see that the developer can fill in parameters, submit calls etc. I do not see why would rthe developer do that. Would the user ever say "I am going to login to the system so I can choose a method, fill in parameters, submit a call and view call results? Probably not.
Let's say that your system, for example's sake, provides access to online bank statements. Sure, you use web service, you have a method that pulls up the statement information based on the parameters you fill in etc. But the ultimate purpose of this is to display the statement. I would see here one Use Case, Display Statement.
Let's say that your system also allows the user to electronically apply for a loan. Technically, you would still use web services, methods, what have you. But from the users' prospective, it is a different process, a different thing. I would see another Use Case, "Apply for a loan".
To a person with a technical background (as is probably most of us in this forum), this seems like an overlap, a duplication. What we have to realize that the typical audience for the Use Case diagrams is non-technical. And typically, people that give you the information you use in building your use case diagrams are non-technical as well.
In fact, at the stage when you are building use case diagrams, you typically do not even know HOW are you going to develop the system.
A little trip to history - the use cases have developed from something called "user stories". A modeller would spend time with the users/future users of the system and they would describe to him what the system does/should do. The users are certainly not developers, the system to them is pretty much a black box. They would describe the way they use the system, what goes in and what comes out. Whether there are web services, steam engine or gnomes with calculators, makes no difference to the users.
My first impression is that at least some of your use cases are really operations on classes - classes that you will define only after you have finished your use case diagram.
The beauty of this is that you will have a simple, easily understandable Use Case model that you can present to the non-technical personnel, and a detailed diagrams great for the developers.
Perhaps if you told us more about the system you are trying to model (WHAT it does, as opposed ti HOW is it implemented), we could try to come up with a Use Case diagram together.
Hope this helps!
Bruno
Is this the final use case?
If it is, it omits an answer to the question "Why?" for the bottom 4 and does not show they are related to the same purpose. It also omits a lot of ways a person will use the program.
But, is this the correct use case?
