Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

TrackStudio Permissions


Published on

Describes TrackStudio permission model

Published in: Technology
  • Be the first to comment

  • Be the first to like this

TrackStudio Permissions

  1. 1. The TrackStudio Permissions model
  2. 2. Introducing the permissions model <ul><li>TrackStudio has a powerful and sophisticated permissions model </li></ul><ul><li>This model allows TrackStudio to be configured so that: </li></ul><ul><ul><li>Users only see the Tasks (projects) and Users to which they are granted access </li></ul></ul><ul><ul><li>Users are only able to process workflow state transitions that they are allowed to </li></ul></ul><ul><ul><li>Users can only see or modify the values of fields that they are allowed to </li></ul></ul><ul><ul><li>Users are able to access only functionality that is appropriate to their status </li></ul></ul><ul><ul><li>Users can get a consolidated view of all the Tasks assigned to them across many separate projects </li></ul></ul>
  3. 3. What permissions mean in practice <ul><li>TrackStudio can be made to be as simple or as sophisticated as you want. </li></ul><ul><li>The User’s interface is simplified so that he or she sees only items that are appropriate to his or her Status. </li></ul><ul><li>TrackStudio may be used, if desired, within the same organisation for many different task-tracking purposes and yet each User will see only Tasks to which they have been assigned. </li></ul><ul><li>Authority and administrative capability can be delegated. </li></ul><ul><li>Use of the same system for many purposes reduces the training and maintenance overhead. </li></ul>
  4. 4. Essential concepts <ul><li>A User’s base or own Status </li></ul><ul><li>Granting Users access to Tasks </li></ul><ul><li>Ability to supplement or override own/base status within the context of a task </li></ul><ul><li>Categories define who is able to view, create, modify, delete or be initial handler for a task of that category </li></ul><ul><li>Within workflows it is possible to define who is able to view, process or be assigned as handler for any message type </li></ul><ul><li>Custom Fields have their own permissions </li></ul>
  5. 5. Base or Own Status <ul><li>Each user within the TrackStudio system has a Base or Own Status </li></ul><ul><li>This status is displayed in the user’s profile: </li></ul>
  6. 6. Base Status availability <ul><li>The Base Status that can be granted to a User is any Status that is available to the Superior who is either creating the User or editing his or her profile. </li></ul><ul><li>The availability of a Status is inherited; that is to say a Status is available to the Subordinates of the User who created it. </li></ul><ul><li>Any User with the right to create Statuses may do so. </li></ul><ul><li>The rights associated with a Status are defined by the person who creates the Status and may be edited by that person or a Superior. </li></ul>
  7. 7. Base Status rights <ul><li>Base Status rights relate to: </li></ul><ul><ul><li>Tasks </li></ul></ul><ul><ul><li>Users </li></ul></ul><ul><li>Additionally each of these categories is broken down into: </li></ul><ul><ul><li>Field-related permissions </li></ul></ul><ul><ul><li>Object-related permissions </li></ul></ul><ul><li>Two types of field-related permission are available: </li></ul><ul><ul><li>the right to View </li></ul></ul><ul><ul><li>the right to Modify </li></ul></ul><ul><li>There are a number of Object-related permissions all of which determine thing that the user can “do” </li></ul>
  8. 8. Task field-related permissions <ul><li>These can be seen on the User Overview page: </li></ul><ul><li>And are edited under the Task Field Security tab </li></ul>
  9. 9. User field-related permissions <ul><li>These can be seen on the User Overview page: </li></ul><ul><li>And are edited under the User Field Security tab </li></ul>
  10. 10. Task object-related permissions <ul><li>These can be seen on the User Overview page: </li></ul><ul><li>And are edited under the User Security tab </li></ul>
  11. 11. User object-related permissions <ul><li>These can be seen on the User Overview page: </li></ul><ul><li>And are edited under the Task Security tab </li></ul>
  12. 12. Setting Task or User field-related permissions <ul><li>Some permissions cannot be changed: </li></ul>Greyed-out permissions cannot be changed
  13. 13. Assigned Statuses within context of a Task <ul><li>Within the context of a task a User’s base or own Status may be: </li></ul>Stuart Manske has a base status of 030 software developer but in this task he is acting as a tester Jesse Levon has two statuses in this task <ul><ul><li>Left as it is </li></ul></ul><ul><ul><li>Supplemented by another status/es </li></ul></ul><ul><ul><li>Overridden by another status </li></ul></ul>
  14. 14. Effective Statuses <ul><li>The Status of users in the context of a task is confirmed by looking at the Effective Statuses page: </li></ul>
  15. 15. Behaviour of base Statuses <ul><li>If a User, within the context of a Task, has multiple statuses, the rights conferred by each of the statuses are added together. </li></ul><ul><li>Status permissions take precedence over category, workflow or custom field permissions. For example: </li></ul><ul><ul><li>If, within the context of a Task, a User’s Status or combination of Statuses, does not allow him or her to modify Custom Fields this is something he or she will not be able to do irrespective of the permission settings associated with any particular Custom Field. </li></ul></ul>
  16. 16. Statuses in practice <ul><li>Three types of Status can be thought of: </li></ul><ul><ul><li>Statuses with rights that are to be assigned to users as an own/base status (you must have at least one of these; the Status administrator is available by default, its rights cannot be changed or the status removed). </li></ul></ul><ul><ul><li>Statuses with no rights (optional) - merely to be used as &quot;labels&quot; that can be given permissions in the context of C ategories , Messages, and Custom Fields. </li></ul></ul><ul><ul><li>Statuses with rights that are to be assigned to users depending on their role within the context of a task (optional). These statuses are also used to identify who may do what in the context of Categories, W orkflows and Custom Fields . </li></ul></ul>
  17. 17. Status model option examples Simple Status Model where Statuses reflect role within the organisation Matrix Status Model where Statuses reflect role within any particular project
  18. 18. Connections to Tasks <ul><li>The tasks a User can see are those at or below the point/s at which that User is connected to the Task Tree. </li></ul><ul><li>A User may be connected to the Task Tree at many different points. </li></ul><ul><li>Only the Superiors of a User are able to connect a User to a Task on the Task Tree. </li></ul><ul><li>To connect a User to a Task, log in as a Superior of that user who has access to that Task, select the Task and then go to: </li></ul>
  19. 19. Granting access to a Task <ul><li>Go to the Assigned Statuses tab: </li></ul><ul><li>Click on the Grant access link: </li></ul><ul><li>Select either a Status or an individual User from the dropdown list: </li></ul>Selecting a Status will grant access to the Task to all Subordinates of the logged-in user who have that Status.
  20. 20. Users and Task Tree connections <ul><li>In the as-installed DB different users are connected to the Task Tree at different points: </li></ul>
  21. 21. Users and Task Tree views <ul><li>Each user sees only the Task to which he or she is connected and any of its sub-tasks: </li></ul>Charles Parmenter Chris Tuck John Smith Note that in the as-installed DB, of these, only User jsmith has the Navigation tree option in his profile set to “All tasks and users”: If a User has the right to edit his/her own profile (User Security), he/she may choose to change the view of the navigation tree but this will make the UI appear more complex.
  22. 22. Connections to other Users <ul><li>By design a User that is able to create new Users (subordinates) is able to view and edit the profile of any of those users. </li></ul><ul><li>Additionally, either Users or their Superiors, if they have a Base Status that allows them to “create new access control rules for users”, may to allow others to view their profiles. </li></ul><ul><li>As with Tasks, access may be granted either to Users of a particular status or to individual Users. Again, as with Tasks, the Status or any individual may be supplemented or overridden. </li></ul>
  23. 23. Granting access to a User <ul><li>Make the User to whom you wish to grant access the current user and select the “Access Control Rules” menu item: </li></ul><ul><li>Grant access to either Users of a particular Status or to individuals: </li></ul><ul><li>Supplement or override as desired. </li></ul>
  24. 24. Category creation permissions <ul><li>When a Category is created, not only does that Category get associated with a Workflow, but various permissions relevant to it may be set. </li></ul><ul><li>To begin with you determine whether the Category has to have a handler when a Task of that Category is created and/or whether the Task may be assigned to group of Users: </li></ul>
  25. 25. Category-related permissions <ul><li>Having created a Category that will subsequently become a node in the Task Tree you may wish to set the permissions related to that Task. </li></ul><ul><li>You may control the following aspects of the Task: </li></ul><ul><ul><li>who may create a Task of that Category </li></ul></ul><ul><ul><li>who may view (be able to see) a Task of that Category </li></ul></ul><ul><ul><li>who may modify a Task (edit the Task itself and associated Task Custom Fields after it has been created) of that Category </li></ul></ul><ul><ul><li>who may be the handler of a Task of that Category </li></ul></ul><ul><ul><li>who may delete a Task of that Category </li></ul></ul>
  26. 26. The Category permissions matrix <ul><li>This is less daunting than it at first looks! </li></ul><ul><li>The dropdowns around the edge can be used to set a whole row, column or table to a particular value. </li></ul>
  27. 27. Understanding the permission matrix <ul><li>In the page under the Category Permissions tab there is a matrix of Statuses and Permissions </li></ul><ul><li>The following is an explanation of how this works: </li></ul>Nobody of that Status has the Permission All of that Status have the Permission A User of that Status has the Permission if he/she is the Handler of the Task. A User of that Status has the Permission if he/she is the Submitter of the Task. A User of that Status has the Permission if he/she is the Handler or Submitter of the Task. Note that in the case of the “Can Create” and the “Can be Handler” permissions of a Category the terms Handler and Submitter refer to the Handler and Submitter of the PARENT task (the Task under which the new Task is being created).
  28. 28. Categories – the final step <ul><li>Having created your Category, don’t forget to make it a sub-category of an existing Category. </li></ul><ul><li>See Slide How to create a Relation </li></ul>
  29. 29. The hierarchical Task Tree <ul><li>The TrackStudio Task Tree is hierarchical and can be extended indefinitely. </li></ul><ul><li>However, so as to allow this you need to define what types of Tasks you want be be allowed to be created as sub-tasks of any particular type of Task. </li></ul><ul><li>An example of a real-world task tree is something like this: </li></ul>
  30. 30. Setting what Tasks can be sub-Tasks <ul><li>To enforce that structure you would have to set the following rules: </li></ul><ul><ul><li>only Projects can be sub-tasks of Programmes </li></ul></ul><ul><ul><li>…… </li></ul></ul><ul><ul><li>only Design tasks or Developer tasks may be sub-tasks of Modules </li></ul></ul><ul><ul><li>etc </li></ul></ul><ul><li>This is done by creating Relations that determine which of the available Categories may be children of a Category </li></ul><ul><li>Note that this is the most frequently “missed” step in the configuration of Track Studio </li></ul><ul><ul><li>Administrators create their Workflow, create a Category that uses that Workflow but then wonder why they cannot create a task of that Category </li></ul></ul>
  31. 31. How to create a Relation <ul><li>Ensure that you are at a point in the Task Tree that the Category for which you want to create a relation is available. </li></ul><ul><li>Select the Categories menu item from the Task menu: </li></ul><ul><li>Click on the Add a Subcategory link to display Categories available at that point in the Task Tree: </li></ul><ul><li>Select the Category you want and click on the Add a Subcategory button. </li></ul>
  32. 32. Workflow message-related permissions <ul><li>One of the functions of a Message may be to move a Task from one workflow-state to another. Messages may be created that don’t change a Task’s state. Another function of a Message may be to allow the Task to be assigned to a different Handler. </li></ul><ul><li>Irrespective of whether a Message changes a Task’s workflow-state or is used to change the Handler you may want to control who may: </li></ul><ul><ul><li>View the Message (after it has been created) </li></ul></ul><ul><ul><li>be able to Process the Message (see this Message type in the Create a message view) </li></ul></ul><ul><ul><li>be assigned as the Handler of the Task (be visible in the list of available handlers when the Message is being composed.) </li></ul></ul>
  33. 33. Workflow message permissions matrix <ul><li>This works in exactly the same way as the Category permissions matrix. See slide Understanding the permission matrix </li></ul>
  34. 34. Custom Field related permissions <ul><li>TrackStudio offers Custom Fields associated with: </li></ul><ul><ul><li>Users </li></ul></ul><ul><ul><li>Tasks </li></ul></ul><ul><ul><li>Workflows </li></ul></ul><ul><li>In the case of both User and Task Custom Fields it is possible who may: </li></ul><ul><ul><li>View the field </li></ul></ul><ul><ul><li>Modify the field </li></ul></ul>
  35. 35. Workflow custom fields <ul><li>The Custom fields associated with a Task (a node on the Task Tree) are inherited by every sub-Task of that Task. </li></ul><ul><li>This is useful if all the Tasks in that branch of the tree have some shared attributes. </li></ul><ul><li>Sometimes though it is useful to have attributes that are not inherited. </li></ul><ul><li>If you want Custom fields for attributes that are not shared they should be created as Workflow Custom fields. </li></ul><ul><li>Workflow Custom fields are different in that they have a much more granular permissions model. </li></ul>
  36. 36. <ul><li>In the as-installed DB the Product Lifecycle Workflow has Custom Fields. </li></ul><ul><li>Workflow Custom Fields have: </li></ul><ul><ul><li>Permissions </li></ul></ul><ul><ul><li>Message Type Permissions </li></ul></ul>Workflow custom field permissions For the Task>Edit page, not only is one able to specify what the Status the User has to have but one is also able to specify the State that the task needs to be in for the field to be viewed or its value modified. One is able to specify in what the State/s the task needs to be in for the field to be viewed or its value modified within the Create Message view. Whether the User is able to view and/or modify is controlled by the User’s permission to create that Message type.
  37. 37. Workflow custom field permissions matrix <ul><li>Permissions </li></ul><ul><li>Message Type Permissions </li></ul>
  38. 38. E-mail submission permissions <ul><li>In order to be able to submit either a Message or a Task to TrackStudio via e-mail the submitting user must have: </li></ul><ul><ul><li>in the case of Messages, been granted access to the Task, in the case of a Task, been granted access to the Task’s parent. </li></ul></ul><ul><ul><li>in the case of Messages, permission to create the default Message type of the Task’s category, in the case of a Task, permission to create a Task of that category. </li></ul></ul><ul><li>If self-registration is enabled, it can be configured so that e-mails submitted by a User automatically get created as sub-tasks of a Task to which only that user has access. </li></ul>
  39. 39. Usernames and Passwords <ul><li>TrackStudio may be configured so that usernames/logins are case insensitive. This means that for ease-of-reading you might create usernames with the format: </li></ul><ul><ul><li>FirstnameL </li></ul></ul><ul><li>But that users can type: </li></ul><ul><ul><li>firstnamel </li></ul></ul><ul><li>Passwords are case sensitive. </li></ul><ul><li>Note that a Superior’s password may always be used to login when using a Subordinate’s username. This is very useful when a single user is testing a workflow. </li></ul>
  40. 40. Thank you for listening <ul><li>Any questions? </li></ul>