3.9. An example Project-based analysis: Daily Project Details

Once you have defined a project, a number of analyses become available to you. This section introduces one of the most basic Project-related analyses, called "Daily Project Details". The goal of this analysis is to provide a simple summary of the sensor data collected during the specified day for the given project. Figure 3.13, “ Daily Project Details for hacky2004-all (Summary) ” illustrates the invocation of this analysis command on the Project "hacky2004-all" for January 26, 2005.

Figure 3.13.  Daily Project Details for hacky2004-all (Summary)


Daily Project Details for hacky2004-all (Summary)

The output from the Daily Project Details command begins with a "Project Summary", which lists a one line summary of each measurement gathered from the sensor data for the day in question. This can be quite useful in discovering what has occurred in the Project on that particular day. For example, we can see that about 1.5 hours of Active Time occurred on hacky2004-all on this day, but 5.5 hours of Review Active Time occurred. Thus, it is clear that most time on this day was devoted to code review.

The Daily Project Details also provides a breakdown of information associated with each line in the summary. Figure 3.14, “ Daily Project Details for hacky2004-all (Breakdown) ” illustrates the breakdowns associated with the first three summary lines: Active Time, Build, and Coverage.

Figure 3.14.  Daily Project Details for hacky2004-all (Breakdown)


Daily Project Details for hacky2004-all (Breakdown)

The breakdown provides significantly more information: for Active Time, it indicates who was working and in what top-level Workspaces of the Project. For builds, it shows which configuration, and for Coverage, it again shows a breakdown by top-level Workspace. By scrolling down further, you can see breakdowns for File Metrics, Unit Test Invocations, Commits, Churn, Performance, Review Active Time Review Files, and Review Issues. Of course, each of these forms of data is only available if the corresponding sensor is installed.

The Daily Project Details provides a snapshot perspective on the state of a Project on a given day. This information can be quite useful by itself. However, it does not help understand trends in the data over time. For that, you must learn about Software Project Telemetry. It also suffers from the requirement that you login to the server and invoke the analysis manually each time you want to see it. To address that problem, Hackystat provides an Alert mechanism, which is presented in the next section.