28.10. EventTypeDevTime

28.10.1. Description

The EventTypeDevTime reduction function computes and returns a collection of telemetry streams representing the DevTime associated with individual event types. This enables you to understand how individual activities contribute to the overall DevTime associated with a Project.

For more information about the DevTime analysis in general, see Section 28.9, “DevTime”. For DevTime analyses associated with individual workspaces, see Section 28.36, “WorkspaceDevTime”. For DevTime analyses associated with individual members, see Section 28.17, “MemberDevTime”.

28.10.2. Parameters

Table 28.9. 

ParameterDescriptionDefault
eventTypeIf '*' is supplied, then all event types will get a telemetry stream. If an event type is supplied, then only that event type's DevTime will get a telemetry stream.*
memberEmailIf '*' is supplied, then all members' DevTime are used in the computation. If a member email is supplied, then only that member's DevTime is used in the computation. *
filePatternAnt-like file pattern specifying the files to be included in computation.**
isCumulativeIf true, the telemetry stream point values are cumulative.false

28.10.3. Example 1: All Event types, all members

Example 28.12. EventTypeDevTime

streams EventTypeDevTimeStreams(eventType, filePattern, cumulative, memberEmail) = {
   "DevTime", EventTypeDevTime(eventType, filePattern, cumulative, memberEmail)
};

y-axis yAxis(label) = {label};

chart EventTypeDevTimeChart(eventType) = {
  "EventType DevTime", 
  (EventTypeDevTimeStreams(eventType, "*", "**", "true"), yAxis("DevTime Hours"))
};

draw EventTypeDevTimeChart("*");

This is a telemetry chart showing the DevTime for all event types and all members. Note that "*" is passed as the 'eventType' parameter value.

28.10.4. Example 2: All event types, one member

Example 28.13. MemberEventTypeDevTime

streams EventTypeDevTimeStreams(eventType, memberEmail, filePattern, cumulative) = {
   "DevTime", EventTypeDevTime(eventType, memberEmail, filePattern, cumulative)
};

y-axis yAxis(label) = {label};

chart MemberEventTypesDevTimeChart(memberEmail) = {
  "Member Event Type DevTime", 
  (EventTypeDevTimeStreams("*", memberEmail, "**", "true"), yAxis("DevTime Hours"))
};

draw MemberEventTypesDevTimeChart("johnson@hawaii.edu");

This is a telemetry chart showing streams associated with all of the individual event type DevTimes for a single Project member. Note that "johnson@hawaii.edu" is passed as the parameter value for 'memberEmail'.

28.10.5. DevTime vs. Active Time

While Active Time is computed based upon a single event (file editing) from a single kind of sensor (those for interactive development environments), DevEvents are computed from a broader range of events and a broader range of sensors (IDEs, build invocations, command line invocations). As a result, we recommend the use of DevEvents and the DevTime analyses over Active Time.