Skip to content

Use Cases for Groups

public edited this page Dec 20, 2011 · 1 revision
    1. Alice is the CEO of AlphaCo. She hires Bob as COO and Charlie as CTO.
    2. Alice, Bob and Charlie all download Signet and exchange keys with one another. They can all now collaborate with one another as individuals.
    1. Alice creates a Group - called GroupAlpha - and adds Bob and Charlie to it.
    2. Alice's Signet client sends system messages to Bob's and Charlie's client which cause messages to pop up in front of each of them: "Alice has added you to GroupAlpha. This group is administrated by Alice. Do you wish to accept this invitation?"
    3. Bob and Charlie both click "Accept" and join GroupAlpha. In doing so, they implicitly accept Alice's authority to add/remove people from GroupAlpha.
    4. Bob's and Charlie's clients send acceptance messages back to Alice's client. Alice's client changes their status in the Group view from "Invited" to "Member".
      1. Alice's client sends a system message to Bob indicating that Charlie has been added to GroupAlpha.
      2. Alice's client sends a system message to Charlie indicating that Bob has been added to GroupAlpha.
      3. All three clients now know that both the others are in GroupAlpha.
    1. Charlie decides that he needs to hire a developer. He advertises the job and short-lists five CVs which he saves to a folder. He shares the folder with GroupAlpha as "Dev Recruitment".
    2. Charlie's client sends messages to Alice's and Bob's clients, which causes messages to pop up that say: "Charlie has shared the folder "Dev Recruitment" (see details) with the members of GroupAlpha. Would you like to synch this folder and its contents to your hard drive? Yes? Select Files Individually? Not Now?"
    3. Bob clicks "Yes". His Signet client asks him where he would like to put the shared folder and sends a message to Charlie's client indicating that Bob has accepted the shared folder.
      1. Bob's client takes note of the fact that the folder's owner (i.e. Charlie) has shared it with GroupAlpha.
      2. Charlie's client takes note of the fact that Bob has accepted the shared folder and it sends the three CV files to Bob's client.
    4. Alice clicks "Not Now". Her Signet client gives her the option of responding to Charlie and she types out a message: "Charlie, I've got a lot on my place, so why don't you and Bob do the first round of interviews and I'll then interview your top-ranked candidate?". She ticks a box to copy in the other members of GroupAlpha (she could also opt to select specific individuals from GroupAlpha to CC on the message but, in this case, GroupAlpha only has one other member).
      1. Alice's client adds the "Dev Recruitment" folder to an internal list of items which have been shared with Alice but which she has not yet opted to accept. If she changes her mind, she can going into that list and download/synch the contents of that folder.
      2. Alice's client sends a system message to Bob's, indicating that she has opted not to download the "Dev Recruitment" folder.
      3. Alice's client sends her message to Bob's and Charlie's clients and it appears in their Timeline for them to read.
    1. Charlie creates a list of technical topics he wants to cover during the interviews. He saves it as "Interview_topics.doc" to the "Dev Recruitment" folder. Signet detects the presence of a new file in the folder and pops a message up in front of him: "There is a new file in the "Dev Recruitment" folder. This folder is shared with GroupAlpha. Do you want to share Interview_topics.doc with GroupAlpha? Yes? No?"
      1. If Charlie clicked "No", he would be prompted/forced to move the file to another location.
    2. Charlie clicks "Yes" and adds a message: "These are some questions I want to cover during the interviews". Client's client then sends a system message to Alice's and Bob's client, indicating that there is a new file in the "Dev Recruitment" folder.
    3. Bob has left his client's preferences at the default settings (e.g. "Automatically download any files in shared folders that are smaller than 50MB, as long as the hard disk is not more than 90% full") so his client automatically copies Interview_topics.doc across and puts a notification, along with Charlie's message, into Bob's Timeline.
    4. Because Alice opted not to download the "Dev Recruitment" folder, her client does not automatically download the new file. Instead, a notification appears in her Timeline that there is a new file in the "Dev Recruitment" folder. However, Alice is in a meeting and the message remains unread for the time being.
    1. Bob opens Interview_topics.doc, reviews Charlie's questions and adds some suggestions of his own. As he saves the file, a pop-up appears "You are trying to change Interview_topics.doc, which has been shared with you by Charlie. Would you like to request that the shared file be updated with your changes or save you changes to a new file? Request Update? Save to New File?"
    2. Bob selects "Request Update" and adds a message "Here's some more topics we should probably cover".
    3. Bob's client sends a system message to Charlie's client, which notifies Charlie that Bob has suggested some changes to Interview_topics.doc
    4. Bob reviews the change and decides to accept them. The new version of Interview_topics.doc replaces the original version in the "Dev Recruitment" folder on Bob's machine.
    5. Bob's client sends a system message to Charlie's client indicating that his changes have been accepted. A notification appears in Charlie's timeline and Charlie's client automatically downloads the new version of the file.
      1. If Bob had rejected Charlie's suggested changes, Charlie's client would have given him the option to save his changes as a new file.
    1. Alice returns from her meeting. She decides that she would like to see the Interview_topics.doc file. Her client allows her to download that file only without having to download the other five CVs in the directory.
    2. Alice's client sends a system message to Bob's client, requesting Interview_topics.doc
    3. Bob's client sends Alice's client the most recent version of Interview_topics.doc
    1. After the interviews, they decide to hire Dave. On his first day at work, Dave installs Signet on his new computer and sends a connection request to Alice.
    2. Alice accepts Dave's connection request and adds him to GroupAlpha.
    3. Alice's client sends Dave's client a message which invites him to join GroupAlpha (identical to 2.2).
    4. Dave clicks "Accept", implicitly accepting Alice's authority to add/remove people from GroupAlpha (identical to 2.3).
    5. Dave's client sends an acceptance messages back to Alice's client, which changes his status in the Group view from "Invited" to "Member" (identical to 2.4).
    6. Alice's client sends a system message to Dave's client indicating that Bob and Charlie are both members of GroupAlpha. Dave's client automatically adds them to his Contacts.
    7. Alice's client sends a system message to Bob's and Charlie's clients, indicating that Dave has been added to GroupAlpha. Bob's and Charlie's clients automatically add Dave to their Contacts.
    1. Alice decides that she wants to delegate the task of adding new employees to GroupAlpha to Bob. In Signet, she adds Bob as an Administrator of GroupAlpha.
    2. Alice's client sends system messages to Bob's, Charlie's and Dave's clients, indicating that Bob is now an Administrator of GroupAlpha.
    3. Bob's client enables the Group Administration functionality for GroupAlpha. He can now add and remove people from GroupAlpha.
    4. Charlie's and Dave's clients take note of the fact that Bob is now an Administrator of GroupAlpha. They will now accept system messages from Bob indicating that a new member has joined or an existing member has been removed from GroupAlpha.
    1. Charlie decides that he needs some database programming expertise, so he brings in Ethan, a freelancer, temporarily, to do some work for AlphaCo.
    2. Charlie creates a new project, called ProjectDB, consisting of GroupAlpha plus Ethan. He doesn't give Admin rights over ProjectDB to anyone else.
    3. Charlie, Dave and Ethan use ProjectDB to coordinate their development work.
      1. All the members of GroupAlpha (i.e. including Alice and Bob) can see what goes on in ProjectDB if they want to but Ethan can ONLY see what goes on in ProjectDB. He can't see what goes on in GroupAlpha unless the person who shared the thing also chooses to share it with GroupDev.
      2. Because they don't have Admin rights over ProjectDB, neither Dave nor Ethan can add anyone else to ProjectDB.
      3. Similarly, neither Alice nor Bob can add someone to ProjectDB, unless Charlie grants them the rights to do so.
      4. However, anyone who Alice or Bob adds to GroupAlpha will have access to ProjectDB.
Clone this wiki locally