1. Getting Started
    1. Overview
      1. R4E main interfaces
    2. Starting R4E
    3. R4E Configuration
      1. R4E General Preferences
        1. User Tab
        2. Groups Tab
        3. Rule Sets Tab
        4. Filter Tabs
      2. R4E LDAP Settings
      3. SMTP Hosts Definitions
      4. R4E Capabilities
      5. Version Compatibility
    4. Eclipse Project Configuration
    5. Tutorials
      1. Configuration and Set-up
      2. Tutorial 1: Performing a Basic Review
      3. Tutorial 2: Performing an Informal Review
      4. Tutorial 3: Performing a Formal Review
  2. Concepts
    1. Basic and Informal Reviews workflows
      1. Create new review
      2. Identify what needs to be reviewed
      3. Items ready for review
      4. Review item examination, anomaly/time logging
      5. Progress notification
      6. Examine and fix/reject anomalies
      7. Completion notification
      8. Examine and fix/reject anomalies
      9. Mark review completed
    2. Formal Review workflow
      1. Planning Phase
      2. Preparation Phase
      3. Decision Phase
      4. Rework Phase
    3. Author
    4. Anomaly
    5. Comment
    6. Commit Review Item
    7. Delta
    8. File Context
    9. Global Anomaly
    10. Lead
    11. Organizer
    12. Participant
    13. Participants List
    14. Postponed Anomaly
    15. Resource Review Item
    16. Reviewer
    17. Review Group
    18. Review
    19. Review Item
    20. Rule
    21. Rule Set
    22. Rule Area
    23. Rule Violation
    24. Selection
  3. Tasks
    1. Working with the Navigator View
      1. Disabling and Restoring Elements
      2. Sorting Review Navigator Elements
      3. Filtering Review Navigator Elements
      4. Setting Elements Reviewed State
      5. Other Review Navigator Commands
    2. Handling Review Groups and Reviews
      1. Creating a Review Group
      2. Opening an Existing Review Group
      3. Creating a Review
      4. Opening and Closing of Review Groups and Reviews
      5. Adding Participants to a Review
      6. Creating a Review Item
        1. Creating a Resource Review Item
        2. Creating a Commit Review Item
      7. Assigning Review Elements
      8. Creating an Anomaly
      9. Cloning an existing Anomaly
      10. Creating Comments on an existing Anomaly
      11. Cloning existing Comments to an Anomaly
      12. Importing Postponed Anomalies
    3. Handling Design Rules
      1. Creating a Rule Set
      2. Importing an Existing Rule Set
      3. Creating a Rule Area
      4. Creating a Rule Violation
      5. Creating a Rule
    4. Working with Editors
    5. Working with R4E Properties
      1. Working with Review Groups Properties
      2. Working with Reviews Properties
      3. Working with Review Items Properties
      4. Working with File Contexts Properties
      5. Working with Selections and Deltas Properties
      6. Working with Anomalies Properties
      7. Working with Comments Properties
      8. Working with Participant Properties
      9. Working with Rule Sets Properties
      10. Working with Rule Areas and Rule Violations Properties
      11. Working with Rules Properties
    6. Using Key Bindings and Hotkeys
      1. Keys
      2. Bindings
    7. Using Notifications
      1. Using Email Notifications
      2. Using Meeting Notifications
    8. Using Statistical Reports
      1. Generating Reports
      2. Report Contents
        1. Report Summary
        2. Review Anomaly Statistics
        3. Review Efficiency Statistics
          1. Review Items
          2. Review Anomalies
          3. Average Time Line
          4. Average Effort per Participant
          5. Total Review Effort
          6. List of Anomalies
    9. Performing Reviews
      1. Performing Basic Reviews
      2. Performing Informal Reviews
      3. Performing Formal Reviews
        1. Planning Phase
        2. Preparation Phase
        3. Decision Phase
        4. Rework Phase
        5. Other Considerations
  4. Advanced Topics
    1. Working with multiple patch set of the same commit in a review

Getting Started

Overview

   Review for Eclipse (R4E) is a set of Eclipse plugins that provide eclipse-integrated code and text review functionality. R4E supports reviewing files associated to Eclipse projects and optionally included under a Version Control System. Three review workflows are included (Basic, Informal and IEEE standard 1028-compatible Formal reviews).

The main purpose of R4E is to review Source Code, especially Java and C/C++ Source code. Eventually, support for reviewing Data Models (based on EMF) will be included. R4E also aims to support multiple Version Control Systems (via Eclipse Team Providers). Git (implemented in Eclipse through EGit/JGit), and SVN (implemented in Eclipse through Subclipse) are the ones currently supported.

The R4E User Interface includes three main components: R4E Review Navigator View, R4E Properties View and R4E Context Menus



   The R4E Review Navigator View is the main interface to R4E. It shows all the R4E elements in a hierarchical tree structure, or alternatively in a table-like structure for the elements under the currently active Review only. The R4E Properties view, using the generic Eclipse Properties View, presents the properties and attributes attached to each R4E element represented in the Review Navigator view. Some elements values can be altered after creation, and some other are read-only and settable at creation time. The R4E Context Menu appears in Eclipse Context menus whenever it is possible to use R4E command is this particular context. Please refer to section 3 ("Tasks") below for more information.

   Take note that it is strongly recommended to use the layout shown above for optimal user experience. This means the R4E Review Navigator should be positioned on one side of the screen, the editor in the central position, and the R4E Properties view at the bottom. For instance, it is not recommended to use the Review Navigator and the Properties view as tabbed view together, as selecting an element on the Review Navigation will automatically set the focus on the Properties view.

R4E main interfaces

R4E interacts with the following features/plugins:


Starting R4E

To start up R4E, show the Review Navigator View e.g. using the Eclipse Window->Show View menu:
To associate existing review groups see Opening an Existing Review Group


R4E Configuration

The R4E Configuration can be entered by accessing the R4E Preferences Pages, which are part of the Eclipse Global Preferences. There are three R4E Preference Pages: R4E General Preferences, R4E LDAP Settings, and SMTP Hosts Definitions.

R4E General Preferences

R4E General Preferences page is split up into four tab sections. Take note that the Restore Defaults and Apply buttons apply to the values displayed in all the tabs

User Tab


   This is used to enter the current user details.

The following elements are configurable


Groups Tab


   This is used to specify the location of the data files that contain Review Group information. See below for more information on Review Groups. The Name and Description fields show additional information attached to the selected Review Group file. Typically, all R4E data files will be located on a shared network drive. Users can add one or multiple references to Group files to their workspace as needed using the ''Add ''button. Files can be removed from the workspace by pressing the ''Remove ''button. Files can be moved up or down in the list by clicking the corresponding button. This will affect the order in which the Groups are displayed in the Review Navigator.

   If there is a version compatibility problem between the version of the Group file and the current R4E plugin version, where the R4E version is older than the Group file version, then this group cannot be used and the description field will show a version mismatch error. Such errors can typically be fixed by upgrading the R4E plugins to their later version.

Note: Make sure the defined directory location is accessible and configured with read/write permissions for the team members involved in the review.


Rule Sets Tab


   This is used to specify the location of the data files that contain Rule Set information. See below for more information on Rule Sets. The Name and Version fields show additional information attached to the selected Rule Set file. Typically, all R4E data files will be located on a shared network drive. Users can add one or multiple references to Rule Set files to their workspace as needed using the Add ''button. Files can be removed from the workspace by pressing the ''Remove button. Files can be moved up or down in the list by clicking the corresponding button. This will affect the order in which the Rule Sets are displayed in the Review Navigator.

   If there is a version compatibility problem between the version of the Rule Set file and the current R4E plugin version, where the R4E version is older than the Rule Set file version, then this ruleset cannot be used and the description field will show a version mismatch error. Such errors can typically be fixed by upgrading the R4E plugins to their later version.


Filter Tabs


   This is used to set-up default filters that will be applied to the Review Navigator view. See the Filters section below for the various filters descriptions.


R4E LDAP Settings


   This is used the specify configuration for an available LDAP database server that contains information about the users. The Server Information part contains LDAP server information (Host, Port, DN (Distinguished Name), and Login User Name and Password) to use. The Mandatory Parameters part contains mapping values for LDAP attributes that maps the User Id, Name and E-Mail parameters The Optional Parameters part contains mapping values for LDAP attributes that maps optional parameters that could exists in the database.

This is optional. If no information is entered, LDAP functionality will be unavailable, but will not affect R4E otherwise


SMTP Hosts Definitions


   This is used to specify the mail server(s) that will be used to send manual and automatic email notifications to the users. More than one server can be specified. Users can add one or multiple servers to their workspace as needed using the ''Add ''button. Servers can be removed from the workspace by pressing the ''Remove ''button. Servers can be moved up or down in the list by clicking the corresponding button. The primary server should always be the first on the list.


R4E Capabilities

R4E uses Eclipse Capabilities to manage its functionalities. In order to use R4E, its capabilities must be enabled. This can be done by enabling R4E in the Eclipse Preferences->General->Capabilities preference page.

Version Compatibility

In order to prevent compatibility problems between versions, R4E now implements a compatibility check. This will prevent older versions of R4E opening new versions of the R4E metadata files. Compatibility is checked independently for the Review Group, Rule Set and Review element when opening the element. There are basically three cases that can occur:


Eclipse Project Configuration


Tutorials

To familiarize yourself with how R4E operates, three tutorials are provided, which focus on the different review types and their respective workflows. As we progress in doing the tutorials, more common functionalities are introduced (such as Notifications, Meeting Requests, Setting reviewed state, Disabling elements, Assigning participants etc.).

Configuration and Set-up

Before doing any of the tutorials, we will set-up R4E and configure it to do reviews.


























We are now ready to proceed to the tutorials.



Tutorial 1: Performing a Basic Review

This tutorial shows how to use R4E by going through a very simple Basic Review. It also introduces how to add Review Items from a Commit to the Version Control System.
















Tutorial 2: Performing an Informal Review

This tutorial shows how to use R4E by going through a very simple Informal Review. It also introduces how to add Review Items manually, how to remove obsolete items from the Review Navigator view, and how to use Email notifications.





The Review Navigator view should now show a new Resource Review Item, its children file and the selection, which in this case will span the whole file from the first to the last lines.



























Tutorial 3: Performing a Formal Review

This tutorial shows how to use R4E by going through a very simple Formal Review. It also introduces how to work with Linked Anomalies, Design Rules, Optional Review Parameters, Review time tracking, and how to use Meetings Notifications.