Usecases
Core
Initiation of a session
Primary actor
host
Scope
screensharing, sessionmanagement
Level
user goal
Stakeholders and interests
- host
- wants to share his screen with client
- client
- see/interact screen of host
Precondition
- host and client are in one saros-session
- xuggler is installed (may be removed later)
- direct connection between both possible
Minimal guarantee
initiation is logged
Success guarantee
session between both initiated
Main success scenario
- host selects client in the "Shared Project Session" view
- host clicks the screenshare button in "Shared Project Session" view's toolbar
- only used for active screensharing host selects actions the client is allowed to perform in a dialog
- client have to acknowledge the negotiation of the session in a simple yes-no dialog
- client accepts
- host gets notified (balloon) that client accepts and the session will be started (TODO initiate session on programm level)
Extensions
- E1: host gets notified (balloon) that client rejects initiation
Primary actor
host
Scope
screensharing, sessionmanagement
Level
user goal
Stakeholders and interests
- host
- change options used for the session (e.g. encoder settings)
Precondition
saros is running
Minimal guarantee
host informed when something went wrong
Success guarantee
changes will be applied for next session
Main success scenario
- host opens configuration dialog for saros
- opens subconfiguration (in the tree) for screensharing
- changes options to his needs
- settings for the videostream itself
- fps (list)
- resolution (list)
- bitrate (textfield)
- bitrate-tolerance (textfield)
- behavior of screensharing
- default mode when a session started
- host clicks apply or ok
Host terminates session
Primary actor
host
Scope
screensharing, sessionmanagement
Level
user goal
Stakeholders and interests
participants of this session, host wants to stop sharing
Precondition
screenshare session established
Minimal guarantee
action is logged
Success guarantee
session is terminated
Main success scenario
- host clicks button next to the one which initiated the session
- acknowledges short confirmation dialog (are you sure?)
- client's viewer is closed and he receives a notification (balloon) that session has been terminated
Client terminates session
Primary actor
client
Scope
screensharing, sessionmanagement
Level
user goal
Stakeholders and interests
participants of this session
Precondition
screenshare session established, client wants to stop sharing
Minimal guarantee
action is logged
Success guarantee
session is terminated
Main success scenario
- client clicks stop button in the viewer
- acknowledges short confirmation dialog (are you sure?)
- host receives notification that client left and screenshare will stop
Future extensions/usecases
- presets for configuration
- predefined for some connection types
- create, load, edit, delete (crud)
- adapting usecases for muliclient sessions (when implemented)
- using two codecs (builtin or native)
- choose/configure codecs
- host using xuggler, client not
- wizard for installing xuggler
- fallback on host