Design should be started after the Analysis for this revision has passed review (>=3 points). A task with non-reviewed analysis and design gets review at implementation. In that case the mark is for design and analysis, too. Design section for each task should cover implementation method for this task revision (what has to be done exists in Analysis section) - how it should be implemented. For each task in Design section, please include: Depending on task type design section should contain * Coding tasks - Design of these tasks should describe technology that will be used for reaching task's requirement. * Required libraries * Implementation methods, suggested algorithms, etc. * UML diagrams (class diagrams) where needed * Initial tests * Bug Fix - Design of bug fixes is similar to Coding tasks' design, but should also answer the questions why does this bug appear, which part of the code is guilty for the wrong functionality (what was wrong with the code, why it was not suitable). Design also contains auto-tests that prove bug wouldn't be presented after implementation. * In which module did the bug appear * In which part of the code did the bug appear * Required libraries * Implementation methods, suggested algorithms, etc. * UML diagrams (class diagrams) where needed * Initial tests * Document - Design should point which tools will be used, how the document will be created. * Required auxiliary tools * Basic content of the document, a sentence for every fundamental thing. These will be expanded in Implementation section. * Useful external links * Image/Diagram requirements - content, file types, file sizes, position, etc. * Setup - Design section should be decided which computer appliance will satisfy the requirements, how it will be set up, what technologies will be used. Give links to websites of software solutions that should be used. * Hardware requirements - point specific hardware requirements, limitations if any * Software requirements - point which of the suitable tools will be installed and configured. * Maintenance - Design explains what should be done for meeting the requirements, links to tools that will be used, algorithms, diagrams and whatever is needed for an easy implementation. * If script are needed, design and link them * Link any used tools for maintaining appliances. A good design doesn't leave any questions about implementation - when it's read, implementation should be trivial. Parts of the design may be pointed as implementation. Use the design section [wiki:PageTemplates/TaskPageTemplate#Design] of the Task Page Template.