Changes between Version 58 and Version 59 of PLATFORM_STANDARDS_GENERAL
- Timestamp:
- 01/07/09 10:47:54 (16 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
PLATFORM_STANDARDS_GENERAL
v58 v59 2 2 = Tasks types = 3 3 Currently we have five task types. Each task has different requirements for revision phases - Analysis, Design and Implementation. 4 * Coding tasks4 * '''Coding tasks''' 5 5 * Description - This task type contains tasks which result should be added application functionality, code change/improvement. 6 6 * [wiki:PLATFORM_STANDARDS_ANALYSIS Analysis] - Analysis of these tasks revision contains what are the requirements for the task, what are expected results, functionality/improvement requirements, how-to demos, implementation ideas. … … 8 8 * Implementation - In the implementation section of the task's revision there should be a link to the change set of the commit where the modifications are done. Explanation of the changes should be provided. Write down the added functionalities or improvements that the tasks code bring to the project. Explain which part of source you've added/edited and how. The result of your work should be presentable in Analysis/How to Demo section. 9 9 * Testing - In testing should be described how this task will be tested, here should be linked trac tickets, auto tests, test cases. 10 * Example - [wiki:BASE_BOUND_CONTROLS_R0]; [wiki:PRO_LIB_CORE_TUTORIAL_R0] 11 * Bug Fix 10 * Coding task kinds 11 * '''external feature (visible from the user):''' 12 * analyzing 13 * should have a specification, and a manual testing scenario 14 * designing 15 * write an automatic test or tests that verifies that your feature is working 16 * look at the related code 17 * decide what needs to be added 18 * if you add new library feature 19 * write use case tests for it 20 * you may also write skeleton types (only declaration) and demos 21 * write an outline of your design. 22 * implementing 23 * make all the designed things work. 24 * ensure that all tests pass. 25 * during the process, add more tests. 26 * '''Researching about a technology or library''' 27 * analyzing: specify what needs to be researched 28 * what the research will solve 29 * what is needed to be solved (this is important) 30 * designing 31 * you can try things, but do not pollute the main source (for example with libraries) 32 * if you need to use other libraries, do it in another project (or in another branch) 33 * if you don't need other libraries, you can do it in a research package, but you should make sure that you don't introduce warnings, failing tests, etc. 34 * implementing 35 * you present the written results / conclusions of your research, demo codes, etc. 36 * reviewers: 1-2 developers 37 * '''implementing a new internal feature (a library or something, not directly visible)''' 38 * analyzing: what the library will provide 39 * designing: should include: 40 * use case tests 41 * samples 42 * demo (in some cases), 43 * design outline 44 * implementing 45 * the library should be implemented 46 * enough tests should be written during the process 47 * reviewers: 2 developers 48 * '''Performing structure changes or refactoring.''' 49 * analyzing: what the issues are 50 * designing: understanding it, and providing an idea how to fix the issues 51 * implementing: fixing the issues 52 * reviewers: 1-2 developers 53 * Examples: [wiki:BASE_BOUND_CONTROLS_R0]; [wiki:PRO_LIB_CORE_TUTORIAL_R0] 54 55 * '''Bug Fix''' 12 56 * Description - Bug fix type tasks are part of Unplanned tasks. These tasks consist of different kinds of unwanted application behavior - lack of functionality, wrong functionality, different errors. Bug tasks should be presented as "BUG_TASK_NAME" 13 57 * [wiki:PLATFORM_STANDARDS_ANALYSIS Analysis] - Analysis of Bug Fixes should contain exact explanation of exactly happens / not happens (what's wrong). How to demo should contain steps to recreate to prove that the bug doesn't exist anymore. In this section links to tickets can be very useful … … 16 60 * Testing - In testing should be described how bug task will be tested, here should be linked trac tickets, auto tests, test cases. 17 61 * Example - none for now (will be added when such is available) 18 * Document62 * '''Document''' 19 63 * Description - Document tasks require different documents as result. In most cases, these documents are auxiliary for other tasks. Commonly, the result of document tasks will be Wiki page, but may also be other document and may consist of text, diagrams, media files, spreadsheets, examples, etc. 20 64 * [wiki:PLATFORM_STANDARDS_ANALYSIS Analysis] - Analysis section should contain document requirements (file format, dimensions, formatting), contents requirements. This section should also contain related tasks - tasks that depend on that one, tasks of which this task depends, similar tasks, etc. … … 22 66 * Implementation - Implementation section as in other tasks should contain link to created documents and explanation how they were done. Because most of the tasks include more than one revision you must explain what's added/improved during the last revision. The results should be presentable in Analysis/How to Demo section. 23 67 * Example - [wiki:PROCESS] 24 * Setup68 * '''Setup''' 25 69 * Description - The result of this tasks are hardware/software setup of different computer appliances that will be used for executing all other tasks. These contain website, wiki, developer platform setup, etc. 26 70 * [wiki:PLATFORM_STANDARDS_ANALYSIS Analysis] - Analysis answers the question what are the requirements for this appliance - hardware and software. For example, some of the community server hardware requirements are space and bandwidth, and software - running web server, security issues. Here should be also listed tasks that depend on that one. How to demo should point the address of the server/computer and presentation of some features.