wiki:PLATFORM_STANDARDS_CODE_R1
Last modified 14 years ago Last modified on 01/27/09 13:11:11

Error: Macro BackLinksMenu(None) failed
compressed data is corrupt

Error: Macro TicketQuery(summary=PLATFORM_STANDARDS_CODE_R1, format=table, col=summary|owner|status|type|component|priority|effort|importance, rows=description|analysis_owners|analysis_reviewers|analysis_score|design_owners|design_reviewers|design_score|implementation_owners|implementation_reviewers|implementation_score|test_owners|test_reviewers|test_score|) failed
current transaction is aborted, commands ignored until end of transaction block

Analysis

Overview

Better structured code standards, requirements for reviews.

Task requirements

  • Create PLATFORM_STANDARDS_CODE
  • Review PLATFORM_STANDARDS_CODE_R0 implementation section create a better structure and link the pages there in PLATFORM_STANDARDS_CODE. The resulting pages should be renamed to satisfy the wiki naming convention.
  • Define rules for reviewing coding tasks' implementation (See implementation idea)
    • Required section - things that are obligatory for the implementation in order to pass the review
    • Recommended section - things that are recommended for the implementation, needed for higher score
    • Optional section - things that can be included in the implementation and may be rated with higher score.

These rules should be structured like a checklist. See implementation idea for more detailed information. These requirements will be updated each week when suggestions are made.

  • Explain when requesting a super review is allowed.
  • Add a requirement that the reviewer should either stick to these rules or comment them in the comment section.

Task result

PLATFORM_STANDARDS_CODE

Implementation idea

Expand these suggestions and add links where needed (linked rules for every requirement).

Code tasks requrements:
 * Implementation section should contain 
   * description of what is done
   * link to svn changeset or revision 
 * The code should satisfy all of the code requirements
 * Unit test with good quality and enough to cover the code
 * reasonable javadoc everywhere
 * no smells
 * are modules done properly (if any)
 * does logging satisfy requirements 
  * no system.println
  * at right level

PLATFORM_STANDARDS_ANALYSIS
PLATFORM_STANDARDS_DESIGN
PLATFORM_STANDARDS_GENERAL

How to demo

Present PLATFORM_STANDARDS_CODE explain review rules.

Design

The PLATFORM_STANDARDS_CODE page will be created and structured as follows:

|_How to write code
|__Code conventions
|___General rules
|___Javadoc Conventions
|___Good Practices
|___Code Smells
|___Warning levels
|___Naming conventions
|__Reviewing code
|___Implementation section requirements
|___Scoring
|_Comments

These sections will contain:

  • Code conventions - conventions and rules for writing code and javadoc. Each section heading is self explanatory of what it will contain. These sections will be a much better version of the result in PLATFORM_STANDARDS_CODE_R0.
  • Reviewing code - what the implementation section of a coding task wiki page should contain; rules for scoring; when and how a super review might be requested.
  • Comments - everyone that has some opinion on the standards should describe it here.

Everyone has been asked to give his opinion in the Comments section. During the implementation these comments will be considered and integrated into the wiki page. During the implementation the previous revision of this task will be reviewed, as well as other wiki pages such as CODE_TASKS_REQUIREMENTS.

Implementation

PLATFORM_STANDARDS_CODE created according to the design. Links to CODE_TASKS_REQUIREMENTS were redirected to the new page (except for those coming from some tasks revisions). A heading was added at the top of the old page stating it will be no longer updated. At a later stage it will be deleted. The other wiki pages related to code were not reviewed due to effort consumption (this is the only comment left in the Comments section of the new page).

Testing

Comments