Introduction
The reporting tool of OPSAdmin needs to be extended to make certain frequently used types of reporting easier.
Requirements
Project details: Adding estimates to tasks
Projectreports are used to determine the progress and state of a project. At this moment, only spent time per task is recorded. In order to make more useful analysis possible, each task should have the following additional attributes:
- initial quote: the hours quoted to the customer before design started
- estimate: the hours estimated during design
- todo: the hours still needed to finish the task
The domain objects Project and Task have to change, as well as all the code dealing with these objects and the backend. See
EnableTaskEstimates and
DomainChangesAnalysis. The available report styles wil change too, as will the preprocessed report returned from the ops_project webservices. The preprocessed report is described here:
ReportSchema.
Reporting: Projectreport
The process of generating a table showing the total time spend on a task (per time unit) compared to estimated time should be more automated then it is now. Time estimation for a project task consists of the estimation of the total time needed for the task, the estimated time left and the time as estimated in the costumer quote.
The time that was actually spend on the task can then be compared to the original estimations. That is, at any point in the project the time already spent + an estimate of the time still needed can be compared to the time that was initially allocated to the task, to come up with the time loss or gain for that task.
The total time, total estimates, total quote and total spent for the project should also be listed.
The resulting table will look like this:
| Task |
estimate |
quote |
spent |
todo |
loss/gain |
... |
week x |
week x+1 |
... |
week x+n |
| task1 |
e |
... |
s |
t |
e- (s +t) |
... |
... |
... |
... |
... |
| total |
sum(e) |
... |
sum(s) |
sum(t) |
sum(e- (s +t)) |
... |
... |
... |
... |
... |
In the costumer quote the time required for either the entire project or a large chunk of the project is estimated. Comparing this estimate to the total time planned for the constituent tasks would be very useful.
When estimates for tasks are available, reporting them has to be made possible by retrieving the estimates (manager? extend HttpServlet?) and writing rewrite rules (xsl files).
Project details: Servicedesk reports
OpsAdmin is used to manage regular projects, ad hoc servicedesk requests are out of scope. However, timesheets do contain servicedesk entries and could be included in the report. This would further automate the reporting process.
Reporting: Weighted timesheet, per person
It should be possible to adjust the expected efficiency per person in the final report. Meaning: the time spent by an experienced programmer is counted for 100% while the time spent by a novice is multiplied by 0.6 (60%) before it is shown in the "spent" column.
Project details: Project Page Readability
Tasks should be shown as a table (instead of list), see
EnableTaskEstimates story.
Reporting: Authorize project members for reports on personal timesheet
Now only users with the admin role have access to opsadmin, in the future project members should be able to view their own reports (and only their own reports).
Project details: Retrieving Project List too slow
In Project Page, retrieving a list of projects is too slow and should be optimized.
Update Dependencies
The previous version of OpsAdmin dates from 2007 and most of the dependencies really should be updated.
Declarable as percentage
Declarable now is a boolean property of a timesheet entry. Instead of 0-1 declarable should be a percentage: this time spent on project task x is declarable for y percent.
The
TestPlan for Opsadmin contains a functional test and information about the testusers.
Stories
Planning
The
OpsAdminVersionPlanning has its own page.
Discussion
--
IvanaCace - 04 Aug 2008