# Tasks attributes

*some rules associates different attributes with each others.

Attributes* | Graphical Representation | Explanation
Interactive |  | Task in which user interacts with system An interactive task is represented by a rounded rectangle. e.g. Enter a login, Choose an item in a list
Manual |  | Task performed solely by user A manual task is a task that does not require the use of a computerised system. e.g. Sign a bill, Read a book
Automatic |  | Automatic task is performed solely by system, without any interacting with the user. An automatic task is represented by a rectangle. e.g. print a file; display data on screen
Elementary |  | Task without a decomposition (no shading) Elementary task means a task that does not have sub-tasks.
Composite |  | Task with a decomposition (shaded box). The decomposition is expanded in a individual window. Composite task means a task that has sub-tasks. e.g. Open a file is decomposed into: click on menu File/Open…, select the folder, enter a name, click on open. So, at a high level, Open a file is a composite task.
Feedback |  | It is the feedback provided to the user by the application. To help the designer of the user interface, we can add feedbacks in the task model. Feedbacks may be just a recommendation or may be a real feedback. (1) describes the function of the task to which the feedback is attached (2) describes the feedback provided by the application after executing the task e.g. message printed e.g. Enter a password may have "all characters are displayed as *" as feedback. e.g. Open a file may have "the parameters requested to open a file are displayed" as feedback.
Mandatory |  | A mandatory task is a task that must be processed. In Diane+H, this is extended to tasks which are constrained by a boolean connector. A mandatory task has a bold border (box in solid lines). e.g. When a user connects to a computer, he must give his login and password. Enter login and Enter password are two mandatory tasks.
Optional |  | An optional task is a task that the user may trigger, but that is not required to complete the compounded task. A optional task has a dashed border (box in dotted lines). Note: in Diane+H, an optional automatic task has no sense (an automatic task is always mandatory in Diane+H). e.g. To fill a form (on the web for instance), the user must (mandatory tasks) enter his name and email, but he can also (optional tasks) give some other information (phone number, …).
Parallelism |  | Tasks can be performed in parallel.
Task Sequence |  | It shows the order of tasks to be performed.
Sequence Precondition |  | It shows the condition under which the link is to be followed.
Iteration Constraints |  | A task has a number of iterations that is given by two numbers min and max. These numbers correspond to the minimum and maximum executions for the task in the compound task. Because usually min is implicit for tasks, we use only max. mandatory task è min = 1 optional task è min = 0 In the diagram, it shows the constraint on the number of times that a task can be executed : a minimum of i and a maximum of j times e.g. Enter a password is mandatory and limited to three attempts, so min=1 (implicit) and max=3. e.g in some educational software, help is provided but limited to X access. So, the help is optional and max=X.
Name |  | Task name
Comment |  | Task comment
Task Precondition |  | It shows the condition that must be true for the task to be applicable. A precondition explains what is the condition to enable the execution of the task. It can be about state of other tasks, on data, or from everywhere else. Usually the preconditions are close to the task (they have no sense without the task) but they can be used to give constraints on sequences or anything else. e.g. something is copied is a precondition for paste. e.g. the login has been entered may be a precondition for enter the password, but in this case a link is better.
Terminal Node |  | It indicates the normal end of the task. When the completion of a task means that the compound task is ended, we add a terminal event to the task. The decomposition of a task may contain several terminal events. e.g. "quit Tamot" is a task with a terminal event