3.8. Topic Information

From the "View Topic" page (see Section 3.5.1), the "Topic Information" tab can be clicked to view and edit topic information. An example screenshot of this page can be seen in Figure 3-12.

Figure 3-12. Topic Properties Screenshot

This page is divided into four sections. The "Comment Metrics" section provides an aggregate count for the number of comment threads with specific comment metric values. The "Total" subsection displays the number of comment threads in the topic, followed by the total number of comments submitted. This is followed by the "Topic Metrics" and "User Metrics" sections for this topic. If there are additional metrics defined here via the Codestriker configuration file, the user will be able to update their values here. The last part of the page is the "Activity Log", which provides an audit trail of all the important events that occurred in the topic's lifetime, such as creation and state changes.

The Codestriker time metric is calculated by keeping timestamps of every refresh from the http server for the given topic. Now, just because you are not refreshing the topic does not mean that you are not looking at the topic. Codestriker will assume that you are looking at the topic for 4 minutes after the last refresh. If you click on a topic, and close the browser, it is logged as 4 minutes. The situation is unavoidable unless you put a camera on the computer and keep track of how long people are sitting at their computer, awake, and looking at the browser window. If this is not acceptable, users of Codestriker have the option to ask the reviewers to directly log the time spent in the review. The direct logging can be enabled via $metrics_config variable in the codestriker.conf file. The Codestriker time metric is "free" metric, being that it does not require any extra interactions with the user to operate. The trade off is that the accuracy of the data may not be as good as the direct logging done by a disciplined team. However, if your team is not very disciplined and can't be trusted to put in 100% accurate data, the Codestriker time metric will be better because it will not be biased by the reviewer's logging discipline.

The code that deals with all of the this is in lib/Codestriker/Model/Metrics.pm, in the calculate_topic_view_time method.