Difference between revisions of "Faces Album Management"
(182 intermediate revisions by 3 users not shown) | |||
Line 1: | Line 1: | ||
{{ | {{Faces}} | ||
== Introduction == | == Introduction == | ||
Line 7: | Line 7: | ||
Please enter all comments concerning the use cases on the [[Talk:Faces_Album_Management|discussion page]]. | Please enter all comments concerning the use cases on the [[Talk:Faces_Album_Management|discussion page]]. | ||
As '''the current state of the spec focuses on | As '''the current state of the spec focuses on a new release''', earlier states of the spec can be found in the history of this page: | ||
* The [http://colab.mpdl.mpg.de/mediawiki/index.php5?title=Faces_Album_Management&oldid=19288 spec for R2] | * The [http://colab.mpdl.mpg.de/mediawiki/index.php5?title=Faces_Album_Management&oldid=19288 spec for R2] | ||
* The [http://colab.mpdl.mpg.de/mediawiki/index.php5?title=Faces_Album_Management&oldid=24111 spec for R3] | * The [http://colab.mpdl.mpg.de/mediawiki/index.php5?title=Faces_Album_Management&oldid=24111 spec for R3] | ||
Line 14: | Line 14: | ||
'''Status/Schedule''' | '''Status/Schedule''' | ||
* Status: | * Status: implemented | ||
* Schedule: ''' | * Schedule: '''R2''' | ||
'''Motivation''' | '''Motivation''' | ||
Line 22: | Line 22: | ||
'''Triggers''' | '''Triggers''' | ||
* This use case can be included by the use cases | * This use case can be included by the use cases | ||
** | ** [[Faces_Album_Management#UC_FAC_AM_12_Copy_album_content|UC_FAC_AM_12 Copy album content]] | ||
'''Steps''' | '''Steps''' | ||
# The user chooses to create a new album. | # The user chooses to create a new album. | ||
# The system displays the edit album mask ( | # The system displays the edit album mask (see [[Faces_Album_Management#Album_Metadata_Set|Album Metadata Set]]). The owner of the album and his affiliated organisation will automatically be pre-filled as creator for the metadata record assigned to the album. | ||
# The user enters an album name. | # The user enters an album name. | ||
# (Optionally) The user enters additional information about the album: further creators (family name, given name) together with their affiliated organisation and a description of the album. | # (Optionally) The user enters additional information about the album: further creators (family name, given name) together with their affiliated organisation and a description of the album. | ||
# The user confirms the entries. | # The user confirms the entries. | ||
# The system creates | # The system creates an '''album''' (container) with the given metadata in the state '''pending''' and displays a message ([[Faces_System_Messages|MSG_FAC_AM_01]]). When the use case war triggered by [[Faces_Album_Management#UC_FAC_AM_12_Copy_album_content|UC_FAC_AM_12 Copy album content]], also the content of the selected albums will be saved. The use case ends successfully. | ||
# | |||
'''Actors Involved''' | '''Actors Involved''' | ||
Line 46: | Line 39: | ||
== UC_FAC_AM_02 Add picture to album == | == UC_FAC_AM_02 Add picture to album == | ||
=== UC_FAC_AM_02a Select album for adding === | |||
'''Status/Schedule''' | '''Status/Schedule''' | ||
* Status: | * Status: implemented | ||
* Schedule: ''' | * Schedule: '''R2''' | ||
'''Motivation''' | '''Motivation''' | ||
* The user wants to | * The user wants to select one of his own private or shared albums to add pictures to it. | ||
'''Pre-Condition''' | '''Pre-Condition''' | ||
* The user is the owner | * The user is the owner at least one private album or is sharing at least one private album . | ||
'''Steps''' | |||
# The user chooses to select an album for adding pictures. | |||
# The system displays a list of all private albums the user is the owner of or the user is sharing. | |||
# The user selects one album. | |||
# The system sets the selected album as selected album for adding pictures. The use case ends successfully. | |||
'''Actors Involved''' | |||
* Account user | |||
''' | === UC_FAC_AM_02b Add picture to album === | ||
* | |||
** [[ | '''Status/Schedule''' | ||
* Status: implemented | |||
* Schedule: '''R2''' | |||
'''Motivation''' | |||
* The user wants to add one or more picture to one of his private or shared albums. | |||
'''Pre-Condition''' | |||
* One pending album for adding the pictures is selected (see [[Faces_Album_Management#UC_FAC_AM_02a_Select_album_for_adding|UC_FAC_AM_02a Select album for adding]]). | |||
'''Steps''' | '''Steps''' | ||
# The user selects one picture for adding. | # The user selects one picture for adding. | ||
# The system adds the selected picture(s) to the selected album. The use case ends successfully. | |||
# The system adds the selected picture to the selected album. The use case ends successfully. | |||
'''Alternatives''' | |||
: 1.a The user selects more pictures (all pictures on one page, all pictures on all pages) for adding and confirms the choice. Continue with step 2. | |||
'''Actors Involved''' | '''Actors Involved''' | ||
Line 73: | Line 87: | ||
'''Discussion''' | '''Discussion''' | ||
*[[Talk:Faces_Album_Management#UC_FAC_AM_02_Add_picture_to_album]] | * [[Talk:Faces_Album_Management#UC_FAC_AM_02_Add_picture_to_album]] | ||
== UC_FAC_AM_03 Remove picture from album == | == UC_FAC_AM_03 Remove picture from album == | ||
'''Status/Schedule''' | '''Status/Schedule''' | ||
* Status: | * Status: implemented | ||
* Schedule: | * Schedule: '''R3''' | ||
'''Motivation''' | '''Motivation''' | ||
* The user wants to remove one picture from one of his private albums. | * The user wants to remove one ore more picture from one of his private or shared albums. | ||
'''Pre-Condition''' | '''Pre-Condition''' | ||
* A pending album is selected. | * A pending album is selected. | ||
* The user is the owner | * The user is the owner or is sharing the selected album. | ||
'''Triggers''' | '''Triggers''' | ||
Line 93: | Line 107: | ||
'''Steps''' | '''Steps''' | ||
# The user selects one picture within the album for removing | # The user selects one picture within the album for removing. | ||
# The system removes the selected picture from the selected album. The use case ends successfully. | # The system removes the selected picture(s) from the selected album. The use case ends successfully. | ||
'''Alternatives''' | |||
: 1.a The user selects more pictures (all pictures on one page, all pictures on all pages) within the album for removing and confirms the choice. Continue with step 2. | |||
'''Actors Involved''' | '''Actors Involved''' | ||
Line 102: | Line 119: | ||
'''Status/Schedule''' | '''Status/Schedule''' | ||
* Status: | * Status: implemented | ||
* Schedule: ''' | * Schedule: '''R2''' | ||
'''Motivation''' | '''Motivation''' | ||
* The user wants to edit the details of one of his own private albums. | * The user wants to edit the details of one of his own private or shared albums. | ||
'''Pre-Condition''' | '''Pre-Condition''' | ||
* A pending album is selected. | * A pending album is selected. | ||
* The user is the owner | * The user is the owner or '''shared''' the selected album. | ||
'''Triggers''' | '''Triggers''' | ||
Line 119: | Line 136: | ||
# The user chooses to edit the selected album. | # The user chooses to edit the selected album. | ||
# The system displays the edit album mask. | # The system displays the edit album mask. | ||
# (Optionally) The user edits the metadata values, adds new metadata values or modifies existing metadata values | # (Optionally) The user edits the metadata values, adds new metadata values or modifies existing metadata values and confirms the changes. | ||
# The system stores the changes and displays a message ([[Faces_System_Messages|MSG_FAC_AM_02]]). The use case ends successfully. | # The system stores the changes and displays a message ([[Faces_System_Messages|MSG_FAC_AM_02]]). The use case ends successfully. | ||
Line 133: | Line 145: | ||
'''Status/Schedule''' | '''Status/Schedule''' | ||
* Status: | * Status: implemented | ||
* Schedule: ''''' | * Schedule: '''R2''' ''(without the Note Pads)'' | ||
'''Motivation''' | '''Motivation''' | ||
Line 140: | Line 152: | ||
'''Pre-Condition''' | '''Pre-Condition''' | ||
* A pending album is selected. | * A pending or submitted album is selected. | ||
* The user is the owner of the album. | * The user is the owner of the album. | ||
* '''The album is not shared with other users.''' | |||
'''Triggers''' | '''Triggers''' | ||
Line 149: | Line 162: | ||
'''Steps''' | '''Steps''' | ||
# The user chooses to delete the album. | # The user chooses to delete the album. | ||
# The system | # '''Not implemented yet:''' The system checks if one or several note pads of the album exists and asks for a confirmation to delete the selected album together with all existing corresponding note pads. | ||
# The user confirms the deletion. | # The user confirms the deletion of the album and all existing corresponding note pads. | ||
# The system deletes | # The system deletes the selected album and all existing corresponding note pads and displays a message ([[Faces_System_Messages|MSG_FAC_AM_03]]). If the album was in state submitted, the system first sets it back to pending and than deletes it. The use case ends successfully | ||
'''Alternatives''' | |||
: 3.a The user does not confirm the deletion of the album and/or all existing corresponding note pads. The use case ends without success. | |||
'''Actors Involved''' | '''Actors Involved''' | ||
* Account user | * Account user | ||
'''Remarks''' | |||
* When the album can not be deleted because it is shared with other users, the delete button should be disabled. But to explain that to the user, some information should be available as mouse over. | |||
== UC_FAC_AM_06 Release album == | == UC_FAC_AM_06 Release album == | ||
Line 163: | Line 179: | ||
'''Status/Schedule''' | '''Status/Schedule''' | ||
* Status: implemented | * Status: implemented | ||
* Schedule: '''R2''' | * Schedule: '''R2''' ''(without the Note Pads)'' | ||
'''Motivation''' | '''Motivation''' | ||
Line 169: | Line 185: | ||
'''Pre-Condition''' | '''Pre-Condition''' | ||
* A pending album is selected. | * A pending or submitted album is selected. | ||
* The user is the owner of the album. | * The user is the owner of the album. | ||
Line 178: | Line 194: | ||
'''Steps''' | '''Steps''' | ||
# The user chooses to release the album. | # The user chooses to release the album. | ||
# The system prompts for a confirmation of the releasing. | # The system displays a list of all corresponding pending and submitted note pads the user is the owner of so the user can decide whether one or several of these note pads shall be released, too. | ||
# '''Not implemented yet:''' (Optionally) The user selects one or more displayed note pads which should be released, too. | |||
#: 3.1 Extension point: '''release note pad''' | |||
#:: 3.1.1 If the user wants to release immediately one or more corresponding note pads, include use case [[Faces_Note_Pads#UC_FAC_NP_05_Release_note_pad|UC_FAC_NP_05 Release note pad]]. | |||
# The system prompts for a confirmation of the releasing. | |||
# The user confirms the releasing. | # The user confirms the releasing. | ||
# The system changes the state of the album to released (it automatically goes to submitted and then to released) and displays a message ([[Faces_System_Messages|MSG_FAC_AM_04]]). The use case ends successfully. | # The system changes the state of the album to '''released''' (when the album state was pending it automatically goes to submitted and then to released) and displays a message ([[Faces_System_Messages|MSG_FAC_AM_04]]). The use case ends successfully. | ||
'''Actors Involved''' | '''Actors Involved''' | ||
Line 189: | Line 209: | ||
'''Status/Schedule''' | '''Status/Schedule''' | ||
* Status: implemented | * Status: implemented | ||
* Schedule: '''R2''' | * Schedule: '''R2''' ''(without the Note Pads)'' | ||
'''Motivation''' | '''Motivation''' | ||
* The user wants to withdraw one of his published albums because the album should no longer be accessible via the collection. | * The user wants to withdraw one of his published albums because the album should no longer be accessible via the collection. | ||
'''Pre-Condition''' | '''Pre-Condition''' | ||
* A released album is selected. | * A released album is selected. | ||
* The user is the owner of the album. | * The user is the owner of the album. | ||
Line 202: | Line 222: | ||
** [[Faces_Browse_and_Display#UC_FAC_BD_04_View_album_details|UC_FAC_BD_04_View album details]] | ** [[Faces_Browse_and_Display#UC_FAC_BD_04_View_album_details|UC_FAC_BD_04_View album details]] | ||
'''Steps''' | '''Steps''' | ||
# The user chooses to withdraw the album. | # The user chooses to withdraw the album. | ||
# The system prompts for a reason for the withdrawal. | # The system prompts for a reason for the withdrawal. | ||
# The user enters a reason and confirms the withdrawal. | # The user enters a reason and confirms the withdrawal. | ||
# The system changes the state of the | # The system changes the state of the album to '''withdrawn''' and stores the withdrawal comment. The system displays a message ([[Faces_System_Messages|MSG_FAC_AM_05]]). The use case ends successfully. | ||
''' | '''Actors Involved''' | ||
* Account user | |||
''' | '''Further Information''' | ||
* | * As note pads can only be viewed via accessing the corresponding album, the not pad does not have to be withdrawn. It is enough when the album is withdrawn. | ||
== UC_FAC_AM_08 Export album == | == UC_FAC_AM_08 Export album == | ||
Line 220: | Line 240: | ||
* Schedule: '''R2''' | * Schedule: '''R2''' | ||
'''Motivation''' | '''Motivation''' | ||
* The user wants to export the pictures and/or the metadata of the pictures | * The user wants to export the pictures and/or the metadata of the pictures within one album. | ||
'''Pre-Condition''' | '''Pre-Condition''' | ||
* An album is selected. | * An album is selected. | ||
Line 230: | Line 250: | ||
** [[Faces_Browse_and_Display#UC_FAC_BD_04_View_album_details|UC_FAC_BD_04_View album details]] | ** [[Faces_Browse_and_Display#UC_FAC_BD_04_View_album_details|UC_FAC_BD_04_View album details]] | ||
'''Steps''' | '''Steps''' | ||
# The user chooses to export the pictures of an album. | # The user chooses to export the pictures of an album. | ||
# The system displays the export album mask. | # The system displays the export album mask. | ||
Line 236: | Line 256: | ||
# If the user chooses an export format which includes the pictures, the user selects one or more picture resolutions (thumbnail, web resolution 819x1024, original resolution 2835x3543). | # If the user chooses an export format which includes the pictures, the user selects one or more picture resolutions (thumbnail, web resolution 819x1024, original resolution 2835x3543). | ||
# The user confirms his selection(s). | # The user confirms his selection(s). | ||
# The system displays the short version of the [https:// | # The system displays the short version of the [https://subversion.mpdl.mpg.de/repos/smc/trunk/03_Functional_Description/02_Scenarios_Concepts/Concepts/Faces/01_Documentation/Faces_Release_Agreement_Export.rtf faces release agreement]. | ||
# The user accepts the release agreement. | # The user accepts the release agreement. | ||
# The system creates the required data in the required export format and puts all files together with the [https:// | # The system creates the required data in the required export format and puts all files together with the [https://subversion.mpdl.mpg.de/repos/smc/trunk/03_Functional_Description/02_Scenarios_Concepts/Concepts/Faces/01_Documentation/Faces_Release_Agreement_Export.rtf faces release agreement] in a zip-file, which is made available for saving for the user. In addition, the system updates the [[Faces_Statistics|export statistics]]. The use case ends successfully. | ||
'''Actors Involved''' | '''Actors Involved''' | ||
* Account user | * Account user | ||
'''Alternatives''' | '''Alternatives''' | ||
: 8.a The user does not accept the release agreement. The use case ends without success. | : 8.a The user does not accept the release agreement. The use case ends without success. | ||
== UC_FAC_AM_09 Share album == | == UC_FAC_AM_09 Share album == | ||
'''Status/Schedule''' | '''Status/Schedule''' | ||
* Status: | * Status: in design | ||
* Schedule: ''' | * Schedule: '''???''' | ||
'''Motivation''' | '''Motivation''' | ||
* The user wants to share one of his private albums with one or more Faces users. See more details below | * The user wants to share one of his private albums with one or more Faces users. | ||
* See more details below in the scenario [[Faces_Album_Management#Sharing_of_an_album|"Sharing of an album"]]. | |||
'''Triggers''' | |||
* This use case can be included by the use cases | |||
** [[Faces_Browse_and_Display#UC_FAC_BD_04_View_album_details|UC_FAC_BD_04_View album details]] | |||
'''Pre-Condition''' | '''Pre-Condition''' | ||
* One album is selected. | * One pending album is selected. | ||
* The user is the owner of the album. | * The user is the owner of the album. | ||
'''Steps''' | '''Steps''' | ||
# The user chooses to share the selected album. | # The user chooses to share the selected album. | ||
# The system displays the | # The system displays the share album entry mask (similar to an email send form) and a list of user groups the user has the right to see (= user groups the user has created and user groups the user is a member of). | ||
# The user | # (Optionally) The user chooses to view the members of a selected user group. | ||
# The system | #: 3.1 The system displays the members of the selected user group (members can be individual users, other user groups or organizational units). | ||
# (Optionally) The user enters a valid e-mail address for each user he wants to share the album with, adds a message (some free text) to the [[Faces_Album_Management#e-Mail_Invitation_for_Sharing_an_Album| general invitation]] and confirms his input. | |||
# (Optionally) The user selects one or several user groups which whom he wants to share the album, adds a message (some free text) to the [[Faces_Album_Management#Invitation_for_Sharing_an_Album|| general notification]] and confirms his input. | |||
# The system sets the state of the album to '''submitted''' and displays a message ([[Faces_System_Messages|MSG_FAC_AM_06]]). Further on, it sends the [[Faces_Album_Management#e-Mails|e-Mails]] (for single users the invitation mail and for user groups the notification mail) to each e-mail address and/or participant of a user group and creates a '''shared note pad''' (item) in the state pending with the owner of the corresponding album as note pad owner and the shared album as corresponding album. The use case ends successfully. | |||
'''Actors Involved''' | '''Actors Involved''' | ||
* Account user | * Account user | ||
''' | '''Remarks''' | ||
* | * This use case consists of two steps: | ||
*# "submit for sharing album" use case that would submit the album and will automatically create a shared notepad | |||
*# "add shared users to an album" | |||
'''Discussion''' | |||
*[[Talk:Faces_Album_Management#UC_FAC_AM_09_Share_album]]. | |||
== UC_FAC_AM_10 Confirm shared user == | == UC_FAC_AM_10 Confirm shared user == | ||
'''Status/Schedule''' | '''Status/Schedule''' | ||
* Status: | * Status: in design | ||
* Schedule: ''' | * Schedule: '''???''' | ||
'''Motivation''' | '''Motivation''' | ||
* An album owner offers another | * An album owner offers another user the possibility to share one of his albums. Now the user wants to confirm this sharing. | ||
* When sharing the album with an already existing user group, this confirmation is not necessary. | |||
'''Pre-Condition''' | '''Pre-Condition''' | ||
* The user got | * One user is selected. | ||
* The selected user got an e-mail invitation to share an album. | |||
'''Steps''' | '''Steps''' | ||
# The user chooses | # The selected user chooses to confirm the sharing of the album by following the link provided in the e-mail. | ||
# The user already has a Faces account. Extension point: '''log on to the system''' | |||
# The system | #: 2.1 If the user is not logged on to the Faces system, include [[Faces_User_Management#UC_FAC_UM_01_Log_on_to_the_system|UC_FAC_UM_01 Log on to the system]]. | ||
# The system displays a target page that contains a button to confirm the sharing explicitly. | |||
# The user confirms the sharing. | |||
# The system updates the properties of the album: it adds the user name to the provided e-mail address and gives the user the right priviledges for sharing the album (the confirmation can make internal log-in as administrator and make a corresponding grant to the invited person (current user handle, granting of a collaborator role for Album X to User A)). Further on the system logs the joining of the new user in the shared note pad and displays a message ([[Faces_System_Messages|MSG_FAC_AM_07]]). Now the user is a shared user of the album. The use case ends successfully. | |||
'''Actors Involved''' | '''Actors Involved''' | ||
* Account user | * Account user | ||
== UC_FAC_AM_11 Unshare | '''Alternatives''' | ||
: 2.a The user does not have a Faces account. He first has to apply for one. When he gets the account, continue with step 1. | |||
: 5.a The album for sharing has been deleted in the meantime or the invited user was deleted (unshare) from the list of possible shared users. The system displays a message ([[Faces_System_Messages|MSG_FAC_AM_08]]). The use case ends without success. | |||
: 5.b The sharing of the album has already been confirmed by the user (he clicks on the same link a second time). The system displays a message ([[Faces_System_Messages|MSG_FAC_AM_09]]). The use case ends without success. | |||
'''Remarks''' | |||
* When a user does not want to share the album, he just ignored the e-mail invitation. | |||
'''Discussion''' | |||
*[[Talk:Faces_Album_Management#UC_FAC_AM_10_Confirm_shared_user]]. | |||
== UC_FAC_AM_11 Unshare album == | |||
'''Status/Schedule''' | '''Status/Schedule''' | ||
* Status: | * Status: in design | ||
* Schedule: ''' | * Schedule: '''???''' | ||
'''Motivation''' | '''Motivation''' | ||
* The owner of the album wants to remove one or more shared users of one of his albums | * The owner of the album wants to remove one or more shared users, invited users or user groups of one of his albums. | ||
'''Pre-Condition''' | '''Pre-Condition''' | ||
* One | * One submitted album is selected. | ||
* The user is the owner of the album. | * The user is the owner of the album. | ||
* The album is shared at least with one shared user. | |||
'''Triggers''' | '''Triggers''' | ||
* This use case can be included by the use cases | |||
** [[Faces_Browse_and_Display#UC_FAC_BD_04_View_album_details|UC_FAC_BD_04_View album details]] | |||
'''Steps''' | '''Steps''' | ||
# The user chooses to remove one or more shared users of the selected album. | # The user chooses to remove one or more shared users, invited users or user groups of the selected album. | ||
# The system displays | # The system displays a list of all shared and invited users (invited users are only recorded via the entered e-mail address) and user groups. | ||
# The user deletes one or more of the shared users | # The user deletes one or more of the shared or invited users or user groups. | ||
# The system updates the shared user | # The system updates the shared and invited users and user groups of the album, sends all deleted shared users and user groups a [[Faces_Album_Management#Information_for_Unsharing_an_Album|notification]] via e-mail and displays a message ([[Faces_System_Messages|MSG_FAC_AM_10]]). Further on, the system logs the leaving of the shared user/user group in the shared note pad. Additionally the system creates a copy of the current version of the album and stores this copy as pending album for each unshared user. If the user has one or several private note pads linked to the originally shared album, this note pads will be deleted from the shared album and attached to the new created album of the user. The use case ends successfully. | ||
'''Actors Involved''' | '''Actors Involved''' | ||
* Account user | * Account user | ||
'''Discussion''' | |||
*[[Talk:Faces_Album_Management#UC_FAC_AM_11_Unshare_Album]]. | |||
== UC_FAC_AM_12 Copy album content == | == UC_FAC_AM_12 Copy album content == | ||
'''Status/Schedule''' | '''Status/Schedule''' | ||
* Status: in | * Status: in design | ||
* Schedule: ''' | * Schedule: '''???''' | ||
'''Motivation''' | '''Motivation''' | ||
* The user wants to copy the content (pictures) of | * The user wants to copy (merge) the content (pictures) of one or more albums to another new created or already available album. | ||
'''Pre-Condition''' | '''Pre-Condition''' | ||
* One | * One or more albums (from which the user wants to copy the pictures) are selected. | ||
* The album | * The album(s) are in the state released or, when the user is the owner of the album, pending. | ||
'''Triggers''' | '''Triggers''' | ||
* This use case can be included by the use cases | * This use case can be included by the use cases | ||
** [[Faces_Browse_and_Display# | ** [[Faces_Browse_and_Display#UC_FAC_BD_05_View_album_list|UC_FAC_BD_05 View album list]] | ||
'''Steps''' | '''Steps''' | ||
# The user chooses to | # The user chooses to copy the content of the selected album(s) to another album. | ||
# The system asks the user if he wants to copy the content in a new album or in an already available private album the user is the owner of or shares. | |||
# The user choses to copy the content in an already available album. | |||
# The system displays a list of all pending albums the user is the owner of or shares. | |||
# The user selects one target album where the content shall be inserted. | |||
# The system copies the pictures from the original selected albums(s) to the selected target album and displays a message ([[Faces_System_Messages|MSG_FAC_AM_11]]). The use case ends successfully. | |||
'''Alternatives''' | |||
: 3.a The user chooses to copy the content in a new album. Continue with [[Faces_Album_Management#UC_FAC_AM_01_Create_album|UC_FAC_AM_01 Create album]]. | |||
'''Actors Involved''' | '''Actors Involved''' | ||
Line 345: | Line 398: | ||
'''Comments''' | '''Comments''' | ||
* | * It should be possible to copy the content of the album when viewing the pictures of the album and also when viewing just lists of album (see Triggers for this use case). | ||
'''Discussion''' | |||
''' | *[[Talk:Faces_Album_Management#UC_FAC_AM_12_Copy_album_content]]. | ||
* | |||
= Additional Information = | |||
== Album Metadata Set == | |||
''' | An album has the following attributes: | ||
* '''Title''' | |||
: ''The title of the album.'' | |||
: (string, mandatory, once) | |||
''' | * '''Description''' | ||
: ''A short description of an album.'' | |||
: (string, optional, once) | |||
''' | * '''Creator''' | ||
: ''The creator of an album.'' | |||
: (string, mandatory, many) | |||
''' | * '''Creator.Organization''' | ||
: ''The organization associated with the creator of the album.'' | |||
: (string, mandatory, many) | |||
==== Properties ==== | |||
* '''PID''' | |||
: ''The cit-able URL of the album.'' | |||
: (url, mandatory, once) | |||
* '''State''' | |||
: ''The state of an album.'' | |||
: (list, mandatory, once) | |||
: List contains: pending, released, withdrawn | |||
:: '''pending:''' The album is created, can be edited by the user himself and can be shared with other selected users. | |||
:: '''released:''' The album is visible for all Faces users and can not be edited any more. | |||
:: '''withdrawn:''' The album is only visible for users who know the exact URL. | |||
== Sharing of an album == | == Sharing of an album == | ||
'''Share an album''' | '''Share an album''' | ||
* Each user can share an own pending album with other users (for the states released and withdrawn sharing an album does not make sense). | |||
* Sharing an album means that next to the owner of the album also further selected users can add and remove pictures from it and can edit the metadata of the album. But they can not release, delete or withdraw the album. | |||
* Each shared user of the album can create himself one ore several private note pad related to the album. Further on, a shared note pad for all shared users will automatically be created. | |||
* For sharing an album, the owner has to select one or more users. | |||
# | |||
#* | '''Selecting an shared user''' | ||
#* | # The owner of the album has to enter a valid e-mail address of the user he wants to share the album. | ||
# | # The selected user will get a notification via e-mail. | ||
'''Activation of the shared user role''' | |||
# The selected user has to confirm the sharing of the album by following a link within the e-mail. | |||
#* When the user is already logged in he comes to a confirmation page within Faces. | |||
#* When the user is not logged in, he first has to log on to the system and will then come to the confirmation page. | |||
# When the confirmation is finished the user gets the rights as collaborator of the shared album. | |||
'''Delete a shared album''' | |||
* It can happen that the owner wants to delete an shared album. Therefore he first has to unshare the album with all shared users before he can delete the album. | |||
'''Working with a shared album''' | '''Working with a shared album''' | ||
* It could happen that more users are adding and removing pictures from the same album at the same time. In this situation, each step only needs a second. | * It could happen that more users are adding and removing pictures from the same album at the same time. In this situation, each step only needs a second. | ||
*# The system always saves the latest version. If | *# The system always saves the latest version. If a user tries to remove a picture which has been previously removed by another user, the FW will return an exception which can be handled as an error message. | ||
*# | *# If another user wants to add a member to an older version of an album, then we have to provide the information that the album has been changed in a meantime by another user and /or ask the user to reload the latest version of the album. | ||
* | '''Versioning of an album''' | ||
* All shared users (incl. the owner) of an album will have the possibility to view the technical event log of the album. | |||
* To save also the intellectual changes of an album, all users are recommended to comment their changes in the shared note pad. | |||
'''Unshare an album''' | '''Unshare an album''' | ||
* The owner of an album is possible to delete a shared user of his album. That action includes | * The owner of an album is possible to delete a shared user of his album. That action includes that the prior shared user will get a notification by the system. During this process, a copy of the album will be created and saved as private album for the unshared album. So all existing note pads will have a new album they are corresponding to. | ||
* It is not possible that shared users (after they have confirmed their participation) delete themselves from the list of shared users. If they really want this, they have to contact the owner, who can remove them. | |||
* It is not possible that shared users (after they have confirmed their participation) | |||
'' | == e-Mails == | ||
* | |||
: | ==== Invitation for Sharing an Album ==== | ||
* Subject: Invitation for sharing an album within FACES | |||
* "User X invited you for sharing his album Y." | |||
* ''Free text from the user'' | |||
* " How to follow this invitation? | |||
: If you already have an FACES account, please follow ''this link'' (link to confirm-share, evtl. via log-in). | |||
: If you do not have yet an FACES account you first have to apply for an account ''here'' (link to Faces request account form). When your account has been accepted, please confirm the sharing of the album ''here'' (link to confirm-share, evtl. via log-in)." | |||
==== Notification for Sharing an Album with a user group ==== | |||
* Subject: Your user group XY is sharing an album within FACES | |||
* "User X is sharing his album Y with your user group XY." | |||
* ''Free text from the user'' | |||
* " If you don't want to be in this user group, please contact the creator of the user group (<e-mail of the creator>)" | |||
==== Information for Unsharing an Album ==== | |||
* Subject: Unsharing of a FACES album | |||
* "User x has deleted you from the list of shared users for his album Y. For details, please contact the user personal." | |||
== User Groups == | |||
* To create a user group, the user needs the priviledges (via the role User-Group Admin). | |||
* The creator of a user group is not automatically a member of the user group. | |||
* Each user can see following user groups: | |||
** the ones he created | |||
** the ones he is a member of | |||
* User groups can be created in a sort of Admin Interface plug in for Faces. | |||
* For the creation of a user group the creator must know the user names of the required users (there won't be displayed a list with all users). | |||
* As user groups can also be created based on all members of one or several organizational units, it is not always possible to view all users of an user group. | |||
* Some specification about user groups can be found under [[ PubMan_Func_Spec_User_Management#UC_PM_UM_10_create_user_group| PubMan Func Spec User Management]] | |||
= Further Development = | = Further Development = | ||
1. Controlled Vocabulary | 1. Controlled Vocabulary | ||
:* perhaps in a later step, the adding of authors (with their corresponding affiliations) can be based on normed files like in PubMan | :* perhaps in a later step, the adding of authors (with their corresponding affiliations) can be based on normed files like in PubMan --> CONE integration | ||
[[Category: | [[Category:Faces_Functional_Specification|Album Management]] | ||
Latest revision as of 11:29, 25 April 2012
|
Introduction[edit]
NOTE: Albums have been called Study Sets or - technically - Bundles before.
A small glossary for the used terms can be found under Miscellaneous.
Please enter all comments concerning the use cases on the discussion page.
As the current state of the spec focuses on a new release, earlier states of the spec can be found in the history of this page:
- The spec for R2
- The spec for R3
UC_FAC_AM_01 Create album[edit]
Status/Schedule
- Status: implemented
- Schedule: R2
Motivation
- The user wants to create an album to save his own selection out of the Faces collection.
Triggers
- This use case can be included by the use cases
Steps
- The user chooses to create a new album.
- The system displays the edit album mask (see Album Metadata Set). The owner of the album and his affiliated organisation will automatically be pre-filled as creator for the metadata record assigned to the album.
- The user enters an album name.
- (Optionally) The user enters additional information about the album: further creators (family name, given name) together with their affiliated organisation and a description of the album.
- The user confirms the entries.
- The system creates an album (container) with the given metadata in the state pending and displays a message (MSG_FAC_AM_01). When the use case war triggered by UC_FAC_AM_12 Copy album content, also the content of the selected albums will be saved. The use case ends successfully.
Actors Involved
- Account user
Discussion
UC_FAC_AM_02 Add picture to album[edit]
UC_FAC_AM_02a Select album for adding[edit]
Status/Schedule
- Status: implemented
- Schedule: R2
Motivation
- The user wants to select one of his own private or shared albums to add pictures to it.
Pre-Condition
- The user is the owner at least one private album or is sharing at least one private album .
Steps
- The user chooses to select an album for adding pictures.
- The system displays a list of all private albums the user is the owner of or the user is sharing.
- The user selects one album.
- The system sets the selected album as selected album for adding pictures. The use case ends successfully.
Actors Involved
- Account user
UC_FAC_AM_02b Add picture to album[edit]
Status/Schedule
- Status: implemented
- Schedule: R2
Motivation
- The user wants to add one or more picture to one of his private or shared albums.
Pre-Condition
- One pending album for adding the pictures is selected (see UC_FAC_AM_02a Select album for adding).
Steps
- The user selects one picture for adding.
- The system adds the selected picture(s) to the selected album. The use case ends successfully.
Alternatives
- 1.a The user selects more pictures (all pictures on one page, all pictures on all pages) for adding and confirms the choice. Continue with step 2.
Actors Involved
- Account user
Constraints
- Each picture can only be added once to each album. This means that it must be visible for the user, which pictures are already in which album and which are not.
Discussion
UC_FAC_AM_03 Remove picture from album[edit]
Status/Schedule
- Status: implemented
- Schedule: R3
Motivation
- The user wants to remove one ore more picture from one of his private or shared albums.
Pre-Condition
- A pending album is selected.
- The user is the owner or is sharing the selected album.
Triggers
- This use case can be included by the use cases
Steps
- The user selects one picture within the album for removing.
- The system removes the selected picture(s) from the selected album. The use case ends successfully.
Alternatives
- 1.a The user selects more pictures (all pictures on one page, all pictures on all pages) within the album for removing and confirms the choice. Continue with step 2.
Actors Involved
- Account user
UC_FAC_AM_04 Edit album[edit]
Status/Schedule
- Status: implemented
- Schedule: R2
Motivation
- The user wants to edit the details of one of his own private or shared albums.
Pre-Condition
- A pending album is selected.
- The user is the owner or shared the selected album.
Triggers
- This use case can be included by the use cases
Steps
- The user chooses to edit the selected album.
- The system displays the edit album mask.
- (Optionally) The user edits the metadata values, adds new metadata values or modifies existing metadata values and confirms the changes.
- The system stores the changes and displays a message (MSG_FAC_AM_02). The use case ends successfully.
Actors Involved
- Account user
UC_FAC_AM_05 Delete album[edit]
Status/Schedule
- Status: implemented
- Schedule: R2 (without the Note Pads)
Motivation
- The user wants to delete one of his private albums because he doesn't need it any more.
Pre-Condition
- A pending or submitted album is selected.
- The user is the owner of the album.
- The album is not shared with other users.
Triggers
- This use case can be included by the use cases
Steps
- The user chooses to delete the album.
- Not implemented yet: The system checks if one or several note pads of the album exists and asks for a confirmation to delete the selected album together with all existing corresponding note pads.
- The user confirms the deletion of the album and all existing corresponding note pads.
- The system deletes the selected album and all existing corresponding note pads and displays a message (MSG_FAC_AM_03). If the album was in state submitted, the system first sets it back to pending and than deletes it. The use case ends successfully
Alternatives
- 3.a The user does not confirm the deletion of the album and/or all existing corresponding note pads. The use case ends without success.
Actors Involved
- Account user
Remarks
- When the album can not be deleted because it is shared with other users, the delete button should be disabled. But to explain that to the user, some information should be available as mouse over.
UC_FAC_AM_06 Release album[edit]
Status/Schedule
- Status: implemented
- Schedule: R2 (without the Note Pads)
Motivation
- The user wants to publish one of his private albums. Afterwards, the album details will be accessible for the public and every account user can view the pictures in it.
Pre-Condition
- A pending or submitted album is selected.
- The user is the owner of the album.
Triggers
- This use case can be included by the use cases
Steps
- The user chooses to release the album.
- The system displays a list of all corresponding pending and submitted note pads the user is the owner of so the user can decide whether one or several of these note pads shall be released, too.
- Not implemented yet: (Optionally) The user selects one or more displayed note pads which should be released, too.
- 3.1 Extension point: release note pad
- 3.1.1 If the user wants to release immediately one or more corresponding note pads, include use case UC_FAC_NP_05 Release note pad.
- 3.1 Extension point: release note pad
- The system prompts for a confirmation of the releasing.
- The user confirms the releasing.
- The system changes the state of the album to released (when the album state was pending it automatically goes to submitted and then to released) and displays a message (MSG_FAC_AM_04). The use case ends successfully.
Actors Involved
- Account user
UC_FAC_AM_07 Withdraw album[edit]
Status/Schedule
- Status: implemented
- Schedule: R2 (without the Note Pads)
Motivation
- The user wants to withdraw one of his published albums because the album should no longer be accessible via the collection.
Pre-Condition
- A released album is selected.
- The user is the owner of the album.
Triggers
- This use case can be included by the use cases
Steps
- The user chooses to withdraw the album.
- The system prompts for a reason for the withdrawal.
- The user enters a reason and confirms the withdrawal.
- The system changes the state of the album to withdrawn and stores the withdrawal comment. The system displays a message (MSG_FAC_AM_05). The use case ends successfully.
Actors Involved
- Account user
Further Information
- As note pads can only be viewed via accessing the corresponding album, the not pad does not have to be withdrawn. It is enough when the album is withdrawn.
UC_FAC_AM_08 Export album[edit]
Status/Schedule
- Status: implemented
- Schedule: R2
Motivation
- The user wants to export the pictures and/or the metadata of the pictures within one album.
Pre-Condition
- An album is selected.
Triggers
- This use case can be included by the use cases
Steps
- The user chooses to export the pictures of an album.
- The system displays the export album mask.
- The user selected one export format (plain CSV, CSV-file and pictures in ZIP-file, pictures only in ZIP-file, XML-file and pictures in ZIP-file, XML only).
- If the user chooses an export format which includes the pictures, the user selects one or more picture resolutions (thumbnail, web resolution 819x1024, original resolution 2835x3543).
- The user confirms his selection(s).
- The system displays the short version of the faces release agreement.
- The user accepts the release agreement.
- The system creates the required data in the required export format and puts all files together with the faces release agreement in a zip-file, which is made available for saving for the user. In addition, the system updates the export statistics. The use case ends successfully.
Actors Involved
- Account user
Alternatives
- 8.a The user does not accept the release agreement. The use case ends without success.
[edit]
Status/Schedule
- Status: in design
- Schedule: ???
Motivation
- The user wants to share one of his private albums with one or more Faces users.
- See more details below in the scenario "Sharing of an album".
Triggers
- This use case can be included by the use cases
Pre-Condition
- One pending album is selected.
- The user is the owner of the album.
Steps
- The user chooses to share the selected album.
- The system displays the share album entry mask (similar to an email send form) and a list of user groups the user has the right to see (= user groups the user has created and user groups the user is a member of).
- (Optionally) The user chooses to view the members of a selected user group.
- 3.1 The system displays the members of the selected user group (members can be individual users, other user groups or organizational units).
- (Optionally) The user enters a valid e-mail address for each user he wants to share the album with, adds a message (some free text) to the general invitation and confirms his input.
- (Optionally) The user selects one or several user groups which whom he wants to share the album, adds a message (some free text) to the | general notification and confirms his input.
- The system sets the state of the album to submitted and displays a message (MSG_FAC_AM_06). Further on, it sends the e-Mails (for single users the invitation mail and for user groups the notification mail) to each e-mail address and/or participant of a user group and creates a shared note pad (item) in the state pending with the owner of the corresponding album as note pad owner and the shared album as corresponding album. The use case ends successfully.
Actors Involved
- Account user
Remarks
- This use case consists of two steps:
- "submit for sharing album" use case that would submit the album and will automatically create a shared notepad
- "add shared users to an album"
Discussion
[edit]
Status/Schedule
- Status: in design
- Schedule: ???
Motivation
- An album owner offers another user the possibility to share one of his albums. Now the user wants to confirm this sharing.
- When sharing the album with an already existing user group, this confirmation is not necessary.
Pre-Condition
- One user is selected.
- The selected user got an e-mail invitation to share an album.
Steps
- The selected user chooses to confirm the sharing of the album by following the link provided in the e-mail.
- The user already has a Faces account. Extension point: log on to the system
- 2.1 If the user is not logged on to the Faces system, include UC_FAC_UM_01 Log on to the system.
- The system displays a target page that contains a button to confirm the sharing explicitly.
- The user confirms the sharing.
- The system updates the properties of the album: it adds the user name to the provided e-mail address and gives the user the right priviledges for sharing the album (the confirmation can make internal log-in as administrator and make a corresponding grant to the invited person (current user handle, granting of a collaborator role for Album X to User A)). Further on the system logs the joining of the new user in the shared note pad and displays a message (MSG_FAC_AM_07). Now the user is a shared user of the album. The use case ends successfully.
Actors Involved
- Account user
Alternatives
- 2.a The user does not have a Faces account. He first has to apply for one. When he gets the account, continue with step 1.
- 5.a The album for sharing has been deleted in the meantime or the invited user was deleted (unshare) from the list of possible shared users. The system displays a message (MSG_FAC_AM_08). The use case ends without success.
- 5.b The sharing of the album has already been confirmed by the user (he clicks on the same link a second time). The system displays a message (MSG_FAC_AM_09). The use case ends without success.
Remarks
- When a user does not want to share the album, he just ignored the e-mail invitation.
Discussion
[edit]
Status/Schedule
- Status: in design
- Schedule: ???
Motivation
- The owner of the album wants to remove one or more shared users, invited users or user groups of one of his albums.
Pre-Condition
- One submitted album is selected.
- The user is the owner of the album.
- The album is shared at least with one shared user.
Triggers
- This use case can be included by the use cases
Steps
- The user chooses to remove one or more shared users, invited users or user groups of the selected album.
- The system displays a list of all shared and invited users (invited users are only recorded via the entered e-mail address) and user groups.
- The user deletes one or more of the shared or invited users or user groups.
- The system updates the shared and invited users and user groups of the album, sends all deleted shared users and user groups a notification via e-mail and displays a message (MSG_FAC_AM_10). Further on, the system logs the leaving of the shared user/user group in the shared note pad. Additionally the system creates a copy of the current version of the album and stores this copy as pending album for each unshared user. If the user has one or several private note pads linked to the originally shared album, this note pads will be deleted from the shared album and attached to the new created album of the user. The use case ends successfully.
Actors Involved
- Account user
Discussion
UC_FAC_AM_12 Copy album content[edit]
Status/Schedule
- Status: in design
- Schedule: ???
Motivation
- The user wants to copy (merge) the content (pictures) of one or more albums to another new created or already available album.
Pre-Condition
- One or more albums (from which the user wants to copy the pictures) are selected.
- The album(s) are in the state released or, when the user is the owner of the album, pending.
Triggers
- This use case can be included by the use cases
Steps
- The user chooses to copy the content of the selected album(s) to another album.
- The system asks the user if he wants to copy the content in a new album or in an already available private album the user is the owner of or shares.
- The user choses to copy the content in an already available album.
- The system displays a list of all pending albums the user is the owner of or shares.
- The user selects one target album where the content shall be inserted.
- The system copies the pictures from the original selected albums(s) to the selected target album and displays a message (MSG_FAC_AM_11). The use case ends successfully.
Alternatives
- 3.a The user chooses to copy the content in a new album. Continue with UC_FAC_AM_01 Create album.
Actors Involved
- Account user
Comments
- It should be possible to copy the content of the album when viewing the pictures of the album and also when viewing just lists of album (see Triggers for this use case).
Discussion
Additional Information[edit]
Album Metadata Set[edit]
An album has the following attributes:
- Title
- The title of the album.
- (string, mandatory, once)
- Description
- A short description of an album.
- (string, optional, once)
- Creator
- The creator of an album.
- (string, mandatory, many)
- Creator.Organization
- The organization associated with the creator of the album.
- (string, mandatory, many)
Properties[edit]
- PID
- The cit-able URL of the album.
- (url, mandatory, once)
- State
- The state of an album.
- (list, mandatory, once)
- List contains: pending, released, withdrawn
- pending: The album is created, can be edited by the user himself and can be shared with other selected users.
- released: The album is visible for all Faces users and can not be edited any more.
- withdrawn: The album is only visible for users who know the exact URL.
Sharing of an album[edit]
Share an album
- Each user can share an own pending album with other users (for the states released and withdrawn sharing an album does not make sense).
- Sharing an album means that next to the owner of the album also further selected users can add and remove pictures from it and can edit the metadata of the album. But they can not release, delete or withdraw the album.
- Each shared user of the album can create himself one ore several private note pad related to the album. Further on, a shared note pad for all shared users will automatically be created.
- For sharing an album, the owner has to select one or more users.
Selecting an shared user
- The owner of the album has to enter a valid e-mail address of the user he wants to share the album.
- The selected user will get a notification via e-mail.
Activation of the shared user role
- The selected user has to confirm the sharing of the album by following a link within the e-mail.
- When the user is already logged in he comes to a confirmation page within Faces.
- When the user is not logged in, he first has to log on to the system and will then come to the confirmation page.
- When the confirmation is finished the user gets the rights as collaborator of the shared album.
Delete a shared album
- It can happen that the owner wants to delete an shared album. Therefore he first has to unshare the album with all shared users before he can delete the album.
Working with a shared album
- It could happen that more users are adding and removing pictures from the same album at the same time. In this situation, each step only needs a second.
- The system always saves the latest version. If a user tries to remove a picture which has been previously removed by another user, the FW will return an exception which can be handled as an error message.
- If another user wants to add a member to an older version of an album, then we have to provide the information that the album has been changed in a meantime by another user and /or ask the user to reload the latest version of the album.
Versioning of an album
- All shared users (incl. the owner) of an album will have the possibility to view the technical event log of the album.
- To save also the intellectual changes of an album, all users are recommended to comment their changes in the shared note pad.
Unshare an album
- The owner of an album is possible to delete a shared user of his album. That action includes that the prior shared user will get a notification by the system. During this process, a copy of the album will be created and saved as private album for the unshared album. So all existing note pads will have a new album they are corresponding to.
- It is not possible that shared users (after they have confirmed their participation) delete themselves from the list of shared users. If they really want this, they have to contact the owner, who can remove them.
e-Mails[edit]
Invitation for Sharing an Album[edit]
- Subject: Invitation for sharing an album within FACES
- "User X invited you for sharing his album Y."
- Free text from the user
- " How to follow this invitation?
- If you already have an FACES account, please follow this link (link to confirm-share, evtl. via log-in).
- If you do not have yet an FACES account you first have to apply for an account here (link to Faces request account form). When your account has been accepted, please confirm the sharing of the album here (link to confirm-share, evtl. via log-in)."
Notification for Sharing an Album with a user group[edit]
- Subject: Your user group XY is sharing an album within FACES
- "User X is sharing his album Y with your user group XY."
- Free text from the user
- " If you don't want to be in this user group, please contact the creator of the user group (<e-mail of the creator>)"
Information for Unsharing an Album[edit]
- Subject: Unsharing of a FACES album
- "User x has deleted you from the list of shared users for his album Y. For details, please contact the user personal."
User Groups[edit]
- To create a user group, the user needs the priviledges (via the role User-Group Admin).
- The creator of a user group is not automatically a member of the user group.
- Each user can see following user groups:
- the ones he created
- the ones he is a member of
- User groups can be created in a sort of Admin Interface plug in for Faces.
- For the creation of a user group the creator must know the user names of the required users (there won't be displayed a list with all users).
- As user groups can also be created based on all members of one or several organizational units, it is not always possible to view all users of an user group.
- Some specification about user groups can be found under PubMan Func Spec User Management
Further Development[edit]
1. Controlled Vocabulary
- perhaps in a later step, the adding of authors (with their corresponding affiliations) can be based on normed files like in PubMan --> CONE integration