Distributed-Java Lab#3 design document, use cases Dispatcher-person connects to server without supplying any login-session token. Server sends back a login form. D.p. fills out form with userID and password, then clicks submit button. Server verifies userID/password combintion, checks whether there's already an active login-session, if so re-uses it, else starts a new login-session. Server returns login-session token and a menu of commands available to this user. Dispatcher-person, already logged in and viewing main command-menu, clicks send-message button. Server sends back a form containing a menu of vehicle IDs and a blank space in which to type a message. D.p. selects one ore more vehicle IDs, and types a message, then clicks submit button. Server pretends to send message to selected vehicles, then updates permanent log as to which message text was sent to which vehicles. Server then sends back a report of the last x messages that have been sent by all dispatch-persons. D.p. clicks OK button. Server sends back menu of commands. Dispatcher-person, already logged in and viewing main command-menu, clicks per-cab-report button. Server sends back a report listing the vehicle IDs and corresponding total number of messages to that vehicle. D.p. clicks OK button. Server sends back menu of commands. Dispatcher-person, already logged in and viewing report of messages per each vehicle (from middle of previous use case), clicks on column header. Server sends same report as before but with records sorted according to the column whose header was clicked. (State is back to middle of previous use case.) Dispatcher-person, already logged in, clicks logout button. Server terminates that user's login session, returns logout confirmation and login form.