Permission required: Global Roles->Customization->Customize content
You can create a new task by clicking on the "Add Task" button. You can modify an existing task by clicking on its title from the Customization->Tasks page.
Inside of the Add New Task / Edit Task page, you will see the following fields:
- Title: The title of the task as it will appear in the Project
- Priority: The priority of the task will appear in the tasks page
- Phase: The phase in which the task will appear
- Problem: The problem which the task is trying to solve. Each task has 0 or 1 problems. By default, the value is "Always Applicable" for new tasks which means there is no associated problem. Alternatively, you can select one of the problems from the drop dow box. This include original problems, which are software weaknesses generally identified in the Common Weakness Enumeration (CWE). Custom problems will also appear in this list. Note that once you select a problem, its corresponding rule will also appear on the right side of the page. The problem's Rule appears on top of an "AND" clause. This means for this task to show up, the Problem must be in-scope for a project. That in turn means the selected project settings must evaluate to true for the problem's rule. For example, suppose you created a task with problem "Buffer Copy without Checking the Bounds". The corresponding rule is "Internal Properties - Uses an unmanaged programming language". Thus, the task will only appear if a user selects an unmanaged programming language. These rules are in addition to any rules you create for the task itself.
- Solution: A general approach on how to solve the problem. This is the main detailed part of the task. Generally, Solutions should be concise and link to other sources for more details. You can use Markdown to create rich text formatting. Details of Markdown syntax are accessible by clicking on the box underneath the Solution You can add some rich text formatting to this field. See some examples.. Note that for tasks in the Testing phase, the solution represents how to test to see if the problem exists.
- Rules: The section titled Applicable to a Project when the following rules are met shows the rules for the task. There are two types of rules that appear here:
- Problem's Rules: If you selected a problem other than "Always Applicable" then that problem's rules will appear first, followed by a single "AND" clause for the Solution's Rules. If you selected "Always Applicable" as the problem, then this section will not appear.
- Task's Rules: These are the rules for when the task should appear in a project. If you selected "Always Applicable" as the problem, then these are the only rules. If you do not enter any rules, then this task will appear in all projects.
- Additional Requirements: Any further description or amendment to the solution which may conditionally apply. Requirements also have a title, text, and rules.
- How-tos: Code samples, testing scripts or other technology/specific examples of how to actually implement the Solution. How-tos should give highly actionable steps to users in their particular context. How-tos also have a title, text, and rules.
You can perform actions on a task according to if it's customized or original:
- Deactivate Task: Disable the task from appearing in projects. Note that deactivated tasks will continue to appear in existing projects until a project lead selects "Accept Content Updates". You can deactivate custom and original tasks.
- Delete Task: Permanently delete a task. You can only delete custom tasks. Warning: If you delete a task, it will also be removed silently from all projects. Be very careful about deleting a task. If you are unsure about the repercussions, deactivate it instead.
- Revert to Original: Discard customizations to a task and use the latest original version. You can only revert original tasks that you have modified.
You can add tags to tasks on the Customization->Tasks page. When you hover over task you will see a small input box you can use to enter tags. You can use tags to add any extra interesting data you like to tasks.
You can use these tags to filter tasks in the task list, as discussed below.
These tags are also displayed in a project's task list.
You can filter the list of tasks by clicking on the magnifying glass icon on the left side of the Customization->Tasks page. From here you can search for specify tasks, filter by category, phase, or tags.
You can also select a type. There are three possible values for this:
- Custom & Original All tasks.
- Custom All new custom tasks and original tasks that you have since customized.
- Original All original tasks you have not customized.