Using Microsoft Project
Microsoft Project allows you to build directed graphs of tasks
- express task interdependencies
- express estimated length of time a task will take
- assign that task to a person (or I imagine a group of people would be possible as well)
- Automatic Scheduling
- If you just specify the length of time for a task, the person it is assigned to, and the tasks which it depends on, Microsoft Project will automatically schedule that task at a certain time where it fits and satisfies all of the criteria
- Alternatively, you can manually schedule tasks by setting starting and ending dates and times
- Seems to have some pretty neat auto finish features so that typing in times and dates is more intuitive (i.e. you could just type in 5 days, 3 hours, etc rather than having to use some kind of drop down menu)
- Utilization estimates
- Seems to provide some tools for estimating how well you are using the team based on the tasks that you have entered to provide feeback about how poorly/well the PM is assigning work(?) (under View->Team Planner->Resource Usage)
- Can create neat timelines that show percentage completion of the project tasks that have been entered
- Standard formatting tools so you can make things look the way you like: ( Click the drop down menu under Gantt Chart all the way to the left of the top menu on the Task tab)
- Calendar correlates tasks with calendar days in a standard calendar view
- Network diagram seems to just show the directed task graph, though I'm not sure what all of the notation/colors in this view mean
- Timeline is the view of the lifetime of your project
The Microsoft Project eco-system includes many interacting pieces:
Project Professional - the individual team member's client application
Project Server, integrated with SharePoint - provides web-based services to unify team members
Team Foundation Server - sources task and other project information from the team's source control
Additional information about tasking in relation to Team Foundation Server and Visual Studio can be found on the Using TFS wiki.
-- quick help on common or problematic tasks
Publish Tasks To/From TFS
-- enable tasks synchronize between TFS and MS Project
Master and Sub-Projects
Always Be Sure to Publish the Project!
This helps insure that tasking info is properly published to the Project Server and TFS.
Project Web Application (PWA) site
PWA sites are a web-based project management site that is created for a collection of Enterprise Project Plans. Most project operations, such as task management, can be performed on the PWA, just as one would do in a MS Project desktop client.
However, there are a few operations that can ONLY be done on the PWA, for example (non-exhuastive list):
- Task approvals
- User, group and category permissions
- Project Server managment
Most everyday work is done in MS Project and TFS except for task approvals (if not set for automatic approval).
Here's a video about PWA's: http://content1.catalog.video.msn.com/e2/ds/ff94b04a-8b3e-44a2-b1aa-d8656cadc735.wmv
How to create a PWA site (normally done only by Comp410/415 staff, not students): http://technet.microsoft.com/en-us/library/ee662105.aspx
Users have all global permissions as well as all category permissions via the My Organization category. This allows them complete access to everything on Project Server.
Users have permissions to view project and Project Server data. This group is intended for high-level users who need visibility into projects but are not themselves assigned project tasks.
Users have assorted project-creation and team-building permissions. This group is intended for high-level managers of groups of projects.
Users have most global and category-level project permissions and limited resource permissions. This group is intended for users who maintain project schedules on a daily basis.
Users have most global and category-level resource permissions. This group is intended for users who manage and assign resources and edit resource data.
Users have limited permissions around task creation and status reports. This group is intended for people in a lead capacity who do not have regular assignments on a project.
Users have general permissions for using PWA, but limited project-level permissions. This group is intended to give everyone basic access to PWA. All new users are added to the Team Members group automatically
Administrators usually assign permissions by adding a user account to one of the built-in groups or by creating a new group and assigning specific permissions to that group.
To enable use of MS Project by Team Members, enable the following permissions:
- Log on to Project Server from Project Professional
- Manage Lists in Project Web App
- Open Project Template
- For each Project in the Project Server:
- Highlight the project in the Project Center and click on "Project Permisions".
- Give Team Members all permissions.
A category is a collection of projects, resources and views.
- Category permissions are specific to projects, resources and views while global permissions are general to Project Web Access.
- Categories allow you to set different permission levels for different users for any given project or resource.
- There is a cross association between categories and groups. categories can involve multiple groups and groups can involve multiple categories.
- Use dynamic permissions to assign permissions to users based on their role within the project.
- Recommendation: Only define categories in terms of groups, not users.
My Direct Reports
Allows users permission to approve timesheets for their direct descendants in RBS. This category is intended for managers who need the ability to approve timesheets.
Contains all projects and resources and allows various levels of category permissions depending on associated group management. It also provides full access to all views. This category is intended to allow users to have visibility into everything on the Project Web App instance.
Filtered to allow category permissions to users who own projects or are status managers on a project, are assigned as a resource to a project, or whose descendants in RBS are assigned to a project. This category is intended to allow users to have visibility into all project with which they or their descendants in RBS are associated.
Allows most resource-level category permissions, filtered on resources who are descendants of the user in RBS. This category is intended to allow users to manage their resources as delineated in the RBS structure.
Allows users to see projects to which they are assigned. This category is associated with the Team Members group and is intended for everyone to have visibility into the projects to which they are assigned.
Resource Breakdown Structure (RBS)