sample upload
TRANSCRIPT
Project Management Solution
Problem Definition
0Web Portal for Team Management0Target Audience: Sr. Managers0Supported Tasks:
0 Manage Team Members0Add / Remove / Change / View Members
0 Manage Project Allocations0Assign / Remove / Change Resources
User Profile
0Sr. Managers are responsible for managing their teams
0Sr. Managers are responsible for multiple projects at any point in time
0They need to regularly review how their team members are utilized and optimize their allocations to required areas/projects
0They have extensive hands-on experience using MS Excel to create project plans, team status etc.
Assumptions - I0 A team member can be added to multiple projects0 A team member can have multiple supervisors (one per project)0 There can be team members who are not assigned to any projects (i.e. on Bench/available status)0 Each project has a supervisor who reports to Sr. Manager0 Each project has a project owner who doesn’t have to report to Sr. Managers0 A team member has 100% time which can be divided into multiple projects and/or bench0 A team member can have multiple status (one per project)0 A team member can be assigned to projects and stay on bench at the same time (i.e. partial allocation to projects and partially to
bench)0 In order to achieve this, Bench needs to be a special project alongwith other projects defaulting to all available time of every team member0 A team member on bench can have one of the two status:
0 Available0 On Leave
0 A team member on other projects can one of the below status:0 Billable0 Considered0 On Leave
0 A team member will always have atleast one project assigned to them. When there are no assignments, it would mean 100% allocation to Bench project
0 A team member can be on leave for one project while working on other projects
0 Based on all of the above assumptions, there are following tasks emerging from given tasks0 Add Team Member and Assign Projects (default project for every new member is Bench)0 View Team Members0 Change/Remove Assignments
Task 1: Add Team Member and Assign Projects
0 Name (Full Name)0 Level (out of given levels; assume I, II, III, Lead, Principal, Manager, Director, VP for
the assignment)0 Experience (months)0 Skills (assume it will be available from employee records against the team member)0 Project (assume there is a list of active projects in the system and option to add new
projects)0 Project Owner (assume this info will be available for active projects in the system)0 Percentage of allocation on each projects0 Project Engagement (start date and end date of project for the team member; assume
no mandate for end date for cases where project goes on for very long durations, e.g. ongoing support)
0 Status of Team Member (assume the status depending on the two types of projects assumed in Assumptions – I)
0 Comments (free-form field)
Task 2: View Team Members
0 On the basis of:0 Name (Full Name)0 Level (out of given levels; assume I, II, III, Lead, Principal, Manager, Director, VP
for the assignment)0 Experience (months)0 Assigned Projects (assume there is a list of active projects in the system and
option to add new projects)0 Percentage of allocation on each projects0 Project Engagement Dates (start date and end date of project for the team
member; assume no mandate for end date for cases where project goes on for very long durations, e.g. ongoing support)
0 Supervisor Name0 Status of Team Member (assume the status depending on the two types of
projects assumed in Assumptions – I)0 Comments (date-wise and project-wise)
Task 3: Change/Remove Assignments
0This task will inherently be supported once a team member data is available for viewing
Overall Approach0 Since the users are familiar and experienced with MS Excel, the system needs to
represent MS Excel style of data management and entry0 Data represented in tabular format like Excel worksheets0 Data color-coded to represent different meanings0 Data items can be edited by direct manipulation just like Excel0 Different color codes to represent different meanings to make certain data stand
out0 Filters applicable on certain sections to enable Excel like quick filtering to view
particular data0 Adding new entry would be like adding new row in the table
0 One problem with Excel is redundancy of data in multiple cells (especially when there are team members assigned to multiple projects, excel would need multiple cells to have same team member data for each project)
0 The system should utilize auto-fill functionality and provide suggestions when characters are entered in data fields
Assumptions - II
0 It is assumed that while the designed system should have similarity to excel, it should take care of this redundancy on UI as well as backend
0 Since this exercise is concentrating only to support Task 1 and Task 2 as also mentioned above, it is assumed that remaining aspects of the portal are already in place, i.e. Employee data (name, skills, experience etc.) and Active Projects data (dates, owners, supervisors etc.)
0 When viewing team members, users can apply a combination of conditions (nested conditions to view data)
Design Directions0 Following are the different ways in which the UI can be designed:
0 Tabular UI supporting add/edit/remove, freezing columns, filtering on columns etc. which is most simplistic approach corresponding to Excel UI
0 Form based approach where data is presented in tabular data but adding/editing data would require different pages/dialogs like advanced level Excel sheets with forms functionality into it
0 A mail-merge type of approach where data is spread into different sheets or documents and merged with autofill etc. for advanced users of Excel
0 For the purpose of this exercise, we will choose tabular UI approach of traditional Excel paradigm alongwith the mail-merge approach where data is getting auto-filled and/or suggested from different tables0 Table being a straight-forward adaptation from Excel will be easier for users to get going0 Table will give a complete view at all times0 For the sake of reducing errors, editing will be allowed per row which becomes a conscious decision0 Filters can be easily incorporated on respective columns of table to support viewing data based on
specific values0 Nesting of filters can be highlighted somewhere with option to revert/cancel upto specific filter
levels0 Just like Excel, search will be incorporated with filters so as to always present valid results
Wireframes of the different usecases of the system
Default View (Overview)
Place showing all set filter criteria and their nesting.
Easy to identify all set filters and remove specific
filters.
Options to save or revert all unsaved changes to the
table. This is over and above relevant options on individual edited rows to
save or revert all at one go.
Sortable Column Headers. Only Name, Level,
Experience, Skills, Project, Owner, Supervisor, Start
Date, End Date, Status columns are sortable
Option to set individual filters on every
permissible column to enable user to view specific data values
Different color codes on project and member
combination depending on member’s status on the
particular project
MS Excel style infinite worksheet with given number of fixed columns spanning horizontally and infinite amount of data
spanning vertically. The data will lazy-load as continuous scroll as against pagination
Team member details are not repeated in the UI to keep the grouping more understandable. When user
selects filters or sorts data according to certain column that leads in a different order, the data
pertaining to a particular member will get distributed to each row of table for that member.
Direct manipulation of data is not allowed to avoid mistakes. However
user can edit as many number of rows as needed by selecting Edit for that
row.
Add/Edit Actions (Overview)
When user is editing any member and project info, relevant actions change
from edit to save and revert.
Inline editable forms for each cell of the row that can be
changed. As assumed, since Level, Experience, Skills,
Project Owner, Supervisor are stored in another system, they
cannot be changed.
Options to add more members or projects or remove existing (by pressing shift while hovering) comes up on relevant cells on hover. Clicking will add another row under
current row/group under current row/group depending on scope of addition. When a new row is added, it will not simply get added under current row without auto reorder, but when user refreshes, reopens or does any sort, it moves to its proper placement in
the UI
For time allocation, if the % total becomes more than 100,
the field being entered will become red and will not allow
to be saved unless fixed.
When there is only one project allocation and it is removed, the row will be replaced with default
Bench project with 100% allocation to it unless the member is completely removed from the team.
Filters (Overview)
Filtered columns will have filter icon highlighted to
set contextDifferent filters in order of
nesting with option to remove any filter quickly
Excel like options to filter columns alongwith an option
to freeze columns from scrolling (another Excel feature useful in infinite
tables)