Original address: http://www.ibm.com/developerworks/cn/java/j-mylyn1/
Mylyn 2.0, Part 1th: Integrated task management
Streamline your work with integrated ECLIPSE issue tracking
Now, in version 2.0, Mylyn (formerly known as Mylar) improves efficiency by seamlessly integrating tasks into Eclipse and automatically managing task contexts as they work. Mylyn Project Director Mik Kersten has updated his two-part Mylyn usage guidelines to include improvements based on the extensive user feedback from Mylyn 1.0. The 1th part introduces Mylyn's task management capabilities and its integration with repositories such as Bugzilla, Trac, and JIRA. In the 2nd part, you'll learn how context management simplifies multitasking and how to reduce information overload.
While software systems, frameworks, and tools can evolve without limits, developers have an upper limit in their ability to actually process information. Most integrated development environments (IDES) try to use structured views, editors, and advanced search capabilities to address this limitation. While these mechanisms can make navigating large systems easier, they are often not enough to help you manage the large amount of information that you must handle to accomplish typical programming tasks. As a result, structured views are becoming more and more overloaded--for example, Eclipse package Explorer often displays thousands of source files even when navigating a small enterprise application--you waste a lot of time scrolling, navigating, and tracking this information.
Interestingly, in most cases, you do not need to look at the entire hierarchy of the system or each reference to a particular method to complete the programming task. For example, you are only interested in a part of the system for any bugs you want to fix or any attributes you want to add. Mylyn is an interactive technology that highlights the system content you are interested in by adding two features of integrated task management and automatic context management to Eclipse. Task management integrates the Task/bug/defect/ticket/story/issue tracker into Eclipse and provides advanced task editing and task scheduling capabilities. Context management monitors your interactions with Eclipse, automatically identifies information related to the current task, and focuses on structured views and editors so that it displays only relevant information. Together, these two features form the Mylyn's task-focused (task-centric) UI, making multitasking easier and dramatically reducing information overload. (For practical results, see the link to the Using Task Context to Improve Programmer Productivity in the Resources section.) )
This two-part article is a guide to the use of Mylyn. Some of this article, especially those that focus on programming rather than task management, assumes you are familiar with the Eclipse IDE. The 1th part is an introduction to Mylyn and describes its function in task management. Part 2nd describes the context management capabilities of Mylyn and discusses its task-focused UI's impact on programming and development methods. Both sections will be published at the same time for the sake of convenience.
Part 1th does not apply to programming activities and is intended for use with Mylyn in any Eclipse release or standalone application that integrates Mylyn. The 2nd part focuses on java™ programming, but also discusses some of the features that apply to all Eclipse-based tools. In the example in this article, I use Bugzilla as the task repository, but the concept and the UI also apply to other task trackers supported by Mylyn. Even if you plan to use Mylyn with different connectors, it is recommended that you look at the steps to use Bugzilla Connector to familiarize yourself with the key features.
Mylyn Introduction
Mylyn extends the Eclipse SDK with a complex mechanism such as task tracking (see supported versions from the Resources section). A task is any unit of work that you want to be recalled or shared with others, such as a bug reported by a user, or a description of a feature improvement. Mylyn enables you to store tasks locally in the workspace, or to work with tasks in one or more task repositories. ( task repository refers to issue trackers such as Bugzilla, Trac, or JIRA.) To connect to a specific task repository, you must also install the Mylyn Connector for that repository.
After the integration tasks, Mylyn monitors the activities on these tasks to identify information related to the current task. At this point, Mylyn creates a task context -a collection of all artifacts related to the task. This can include browsed documents, edited methods, and referenced APIs. Mylyn uses the task context to make the UI focus on the information of interest, to hide information that is not of interest, and to automatically discover relevant information. With the information you need to complete a task, you can reduce the time it takes to perform search, navigation, and scrolling operations to increase productivity. By highlighting task contexts, Mylyn also facilitates multitasking, planning, reusing past work, and sharing expert experience.
After a period of time with Mylyn, there are subtle but important changes in how you work. Once you get used to the task-centric way of working, you'll likely find that productivity is greatly improved. Your work is organized, and it's easy to manage dozens of collaborative tasks and track processes.
The numbering area in Figure 1 shows some of the task management and context management features of Mylyn:
- Task list with active tasks and Bugzilla report scheduled for the day
- Change sets managed by the task context
- Rich task Editor with offline support
- Task-centric mode on Eclipse package Explorer
Figure 1. Mylyn's task-focused UI
Click here to view full map.
The next sections explain the installation and configuration of the Mylyn, and describe its key features. With a general understanding of the Mylyn task management feature, you will gain a deeper understanding of its impact on the daily work process.
Back to top of page
Task Repository Connector
In this article, I use Mylyn's Bugzilla Connector to demonstrate the key concepts of using task Repository integration. For other supported task repositories, these concepts are the same, except that the integration level and connector maturity vary. The Bugzilla and Trac connectors bundled with the Mylyn are very mature and are considered as reference implementations. The Mylyn Extensions page (see Resources section) lists connectors for other issue trackers and project management tools (such as CollabNet, Rally, Mantis, and Xplanner).
Fully integrated connectors provide the following features:
- query (Queries): A query is a mechanism used to retrieve each group of tasks into a Mylyn task list. Query editing and retrieval capabilities are specific to connectors, which can provide an Eclipse-based query Designer, or retrieve queries from an account on the server, or both.
- Rich editor (rich editing): You can edit tasks and queries with an integrated editor. This feature provides hyperlinks to tasks and other structured elements, as well as Eclipse and desktop integration, such as drag-and-drop functionality. A connector that provides rich editing can still provide the ability to open tasks and queries in an embedded browser in Eclipse.
- Attachment (Attachments): You can attach a file to a repository or retrieve a file from a repository. This feature allows you to attach files from the operating system or the Eclipse workspace, and supports features such as context sharing (see part 2nd).
- offline (Offline) Support : You can work in a disconnected situation, directly access files and queries without having to wait for a connection to the server. This feature also provides change notifications, which can be used as task inboxes instead of relying on e-mail clients.
In order for you to get complete integration from Mylyn and to stop relying on external or Web-based UIs, the connector must support all of the four features listed here. However, as long as Eclipse has enough functionality to handle tasks, you can still benefit from the Mylyn task-focused UI. If the task repository for the connector is not available, you can still:
- Use Mylyn to support local tasks. If an unsupported repository has a Web-based UI, you can create a task by dragging and dropping the URL into Mylyn from the browser.
- Using Generic Web Repository Connector, it provides basic query support for many web-based repositories: Google Code Hosting (code.google.com), IssueZilla (java.net, Dev2dev, tigris.org), GForge (objectweb.org), SourceForge (sf.net), JIRA, Trac, PhpBB and VBulletin. See the Resources section for more information.
- Request the task repository provider to create a connector for Mylyn. You may also consider voting on the Mylyn bug page for your connector (see Resources section).
- Create your own connector (see the Resources section for a link to integrator Reference).
Back to top of page
Setup and Setup
Mylyn is now included in most eclipse distributions, so the easiest way to get it is to download a package containing Mylyn from the Eclipse Downloads page (see Resources section). However, for updates to a new version of Mylyn, or for installing Mylyn into an Eclipse version that does not have a bundle Mylyn, the following instructions will still help.
To install the Mylyn that is appropriate for the version of Eclipse that you use, you can use Eclipse Update Manager: Help > Software Updates > Find and install > Search For new features to install. This mechanism is best used when updating the Eclipse 3.2, rather than Search for updates, because the latter does not perform the correct dependency checks. Both methods are feasible on Eclipse 3.3. For the latest Mylyn update site that provides update Manager, refer to the Mylyn download page (see Resources section).
A key design goal of Mylyn is the seamless integration with Eclipse's existing UI tools. Another goal is to require users to install and use only the required features. Figure 2 shows the UI for selecting the features to install. For example, if your task is a bug collation (triaging) rather than development, you can install the Mylyn task List without installing the task-focused UI, and you can select the connector for the issue tracker independently. It is likely that software developers will install both features at the same time.
Figure 2. Select the Mylyn feature and the repository connector
When you select an attribute to install from the update site, you can select one or more task repositories to use. Note, as the Mylyn Downloads page suggests, you may need to add an additional update site to get the connector you want. When installing the recommended task-focused UI features, you should also select all the bridges that can be installed to the current version of Eclipse. (For more information on bridging, see part 2nd). After you restart Eclipse 3.3 or later, you can see the Welcome screen shown in Figure 3. If you are currently using Eclipse 3.2, you can manually open the Welcome screen from the Help menu.
Figure 3. Welcome screen
Back to top of page
Tasks and Queries
Mylyn provides support for working with two types of tasks:
- local tasks are stored in the Eclipse workspace, providing basic task management features, such as scheduling. Local tasks are private and visible only to you.
- The Repository task is stored in a task repository that corresponds to an external application or server. Repository tasks are often shared among multiple people, but still provide all of the local task functions, such as individual scheduling and annotations.
This section shows you how to create and edit local tasks and examine the available features for working with repository tasks. The availability of the features discussed here depends on the integration level of the connector, so simply refer to the applicable features. Regardless of the level of connector integration, you can use all of the task management features of Mylyn discussed in task management and personal planning.
Initial solution for local tasks
After installing Mylyn, follow these steps:
- Click the New Task toolbar button on the task List view to create a new task.
- Select the Local Tasks repository.
- Enter a task summary.
- Click Save on the Eclipse toolbar or press Ctrl+s to save the updated description.
The shortcut for creating a local task is the Insert key, or you can drag and drop text or URLs from the Web browser into the task list. The description of the new task is automatically populated with the title of the corresponding Web page. (In Firefox, you only need a regular drag action, while in Internet Explorer, you need to hold down the Ctrl key while dragging.) Double-click a task in the task list to open the Task Editor (4), where you can create annotations, paste related hyperlinks, or schedule tasks for a specific date. By default, newly created tasks are dispatched on the date of creation.
Figure 4. Editing local tasks
After you have created more than 10 or more local tasks, you might want to organize them by creating categories . If a task is created without selecting a category in the Task list, the task is placed in the uncategorized container. You can use the move to pop-up menu in the Task List or the task Editor or drag-and-drop to move a created task to another category.
To mark a local task as completed, you can use the task's pop-up menu or the Task Editor. By default, tasks marked as completed are filtered out, but they can also be selected without filtering through the Task List's View menu (open with the inverted triangle on the right side of the Task List View toolbar). To avoid clutter, do not display categories that do not display any tasks (for example, a category that contains all completed tasks). Use the Find: box at the top of the task List to access the filtered task. Finally, you can set priority and schedule information for local tasks through the Task Editor. The task management and personal plans section will discuss the plan in more depth.
To familiarize yourself with the Mylyn icon pattern, you can use the Show UI Legend action in the Task List View menu (see Figure 5). I'll refer to the icon pattern throughout the article.
Figure 5. Mylyn UI legend Add Task repository
Different task repositories may have significant differences in the point of reference for functional and task management. Mylyn's task management capabilities provide a unified way to use multiple repositories, including:
- Local Tasks : A special repository for simple tasks that are stored in an Eclipse workspace.
- Shared Tasks : If your team uses shared task repositories, such as Bugzilla servers, you can use this storage libraries authoring to collaborate with others to accomplish tasks.
- Project management tasks : Some connectors, such as Xplanner, provide task management capabilities for organizing tasks into project phases and user events.
- Bugs and Enhancements report : This is a special task that is typically shared between the product user and the support team. Mylyn provides integrated bug reports to help track bug reports that are archived with other tasks.
To create a task repository, you can open task Repositories view (Window > Show view > Mylyn > Task repositories) or use a perspective that contains it, such as Te Am Synchronizing Perspective view. When open, use the View's toolbar to add a new repository. You can then enter the repository voucher and any other connection details, or select a template from the available templates. The bugs.eclipse.org repository in Figure 6 is created automatically when you install Mylyn, to facilitate reporting of bugs and feature requests for Mylyn and Eclipse.
Figure 6. Add eclipse.org Bugzilla repository query repository
Once you have successfully added a task repository, you can access the task on that repository by creating a query from the New query action in the popup menu of the task List. For example, you can write a query to access all the Bugzilla reports that are assigned to my e-mail address, as shown in 7:
Figure 7. Create a new Bugzilla query
After setting the parameters and clicking Finish , the query container in the task list is populated with the corresponding task. When the query performs synchronization, Mylyn retrieves the information for the task in the background. After you download the task information, you can open the task immediately because you do not need to round-trip the server to retrieve information about the task. To change the parameters of a query, you can reopen it (by double-clicking the query in the Task list) and edit the selected value. Although the settings for different connector query parameters vary, the query parameter settings are used to reflect the functionality provided by the connector's Web UI. For more information about creating queries, see the connector documentation or server Web UI documentation.
By default, the query automatically synchronizes every 20 minutes and displays new tasks that match the query parameters. (This time can be changed by Preferences > Mylyn > Task List .) When disconnected from the Web, you do not need to make Mylyn in offline mode. However, if you want to turn off synchronization--for example, if you want to work offline for a long time, or pay for the bandwidth you use--you can do this by toggling the Synchronize automatically setting in the Task List View menu. You can then manually synchronize all tasks and queries through the buttons on the toolbar, or synchronize each task or query individually with a pop-up menu or shortcut key F5. If necessary, you can put a task repository in offline mode from the pop-up menu. This is useful when the repository is not available and it takes a long time to work offline.
For connectors that can be accessed through a Web browser, Mylyn integrates the Web UI that users already know, and if Mylyn's rich editing capabilities do not support certain operations, you may want to rely on this Web UI. You can right-click any task or query to open it in a Web browser (the Eclipse browser settings are located in Window > Preferences > General > Web Browser ), with all of the associated URLs The repository task can be opened with the Open with Browser action on the toolbar of task Editor or the pop-up menu of the tasks. You can also open a Bugzilla query in a browser (for example, suppose you want to paste it into an e-mail message to improve it using the Bugzilla Web UI). You can then paste it as prompted by the New Query Wizard to create a new query in the Task list with the updated URL.
Search tasks
A search task is similar to creating a query, but it does not store the results in the task list. Using the Ctrl+h or Search menu (search > Task search), select the repository you are interested in, enter your search criteria, and then click Search. The search view opens, and in that view you can open the task that matches the search, as shown in 8. To improve the search, simply open the search dialog again to restore the previous criteria. You can transfer search results from the pop-up menu to a query in the search view.
Figure 8. Task Search and results Create repository tasks
To create a new repository task, you can select the action in the Task List toolbar or the File > New menu, and if you have multiple repositories, select a repository. The connector then requires other properties of the input task, such as its Bugzilla component. A new editor opens, where you can fill in the properties and description of the task. Some properties are automatically selected, for example, if you use the Bugzilla connector, the operating system is selected automatically.
Another task that you might want to create is a bug report about Mylyn or another Eclipse-based tool that you use. Making bug reports is easy by automatically adding bugs.eclipse.org repositories and adding actions that you can access from Eclipse's Error Log View and the Help menu to automatically report bugs. If you want to view the error event that you want to report, simply right-click it and select the reporting as Bug. The New Repository Task Editor is then opened, which includes all relevant information, such as stack traces.
The Mylyn also provides automatic duplicate detection because the way a bug report is generated with a single click can result in a large number of duplicate bug archives. The search for Duplicates button uses an automatic or manual sticky stack trace in the reported Description to query the appropriate repository for potential duplicates. The results of the duplicate detection are shown in the Search view, 9. If a match is found, you can open it and make a comment instead of creating a new bug report.
Figure 9. Integrated bug reporting and duplicate detection editing and synchronization
When you open a Bugzilla task, you will notice that there is a Bugzilla and a planning tab on the editor. The Repository connector provides a rich editor, such as this Bugzilla tab, for editing task information that is shared on the repository. Also, the Planning tab provides the same functionality for creating personal annotations using local tasks.
When you view comments on a bug, you can use the Outline view to navigate between annotations, but the automatic folding of unread annotations means that most navigation operations can be done in Task Editor. References to other tasks and other structured elements such as Java stack trace elements are set to hyperlinks (see Figure 10 and Figure 1). The syntax of a hyperlink is specific to a connector. Typically, the reference that appears in the upper-left corner of the task editor can be used to hyperlink a bug. Other syntax supported by the connector's Web UI is also supported. Task <key> syntax is always supported.
Figure 10. Repository Task Editor and content assist
If the connector supports offline editing, Mylyn maintains a cached copy of any open tasks and updates the copy whenever the corresponding query or task synchronizes. If you make any changes, such as setting a property or compiling a partial comment, you can save the changes locally by pressing Ctrl+s. This causes a outgoing indicator to appear on the task. When you are ready to submit the task, click Submitat the bottom of the editor.
If a task has been opened before, it will retrieve the offline copy when it is opened again, and start synchronizing the task in the background. This ensures that you do not have to wait for the round-trip server to begin reading and processing tasks. If a new change is found, or if someone changes the task while the editor is open, the editor's title bar is displayed and prompts to refresh the editor.
If someone else changes a task in the repository, such as adding a new comment, a window appears in the lower-right corner of the screen to display the change, and the task is displayed with an entry arrow marker. If you open a task, the part that is changed is highlighted and the new comment that is added is automatically expanded. If both the local replica and the copy on the server are changed, you can see a red conflict indicator and prompt to resolve the conflict. If you see a conflict, you should click the Synchronize button in the Task Editor and commit your changes, or discard your changes by using the pop-up menu's Mark > Clear outgoing to ensure that the task is synchronized.
Attachment
You can use the Attachments section of the task Editor to Add ... button to add an attachment to the repository. You can also drag files or text directly from the workspace or window manager to the Attachments area of the editor. When you add an attachment, you receive a wizard that lets you choose to create an attachment based on the Clipboard content, a file on your computer, or an Eclipse workspace. With the Attachments table, you can open attachments with a Web browser or editor and perform specific actions, such as saving or copying to the Clipboard, through the context menu.
Back to top of page
Task management and personal planning
Now, I'll discuss how to make Mylyn a separate task list and inbox for you to manage all the related tasks during the work week. For many developers, the scope of tasks to be tracked and dispatched within a given work week includes:
- Solve product defects and analyze features for the products you are developing
- Tasks performed by your colleagues, including your partner, boss, or subordinates
- Bug reports for the frameworks, APIs, and software you use
- Personal to-dos and reminders
Integrating all tasks into one view makes them easier to manage because you can see what to do next, just by looking at a location. To further simplify task management, Mylyn implicitly incorporates recognized task management best practices, such as scheduling and latency tasks, and also includes the immediacy and adaptability of XP-style development. Mylyn's task management tools make it easy for you to adapt to the task change requirements within a week without losing track of long-term priorities. In addition to giving control of the work week to your hands, Mylyn helps you better integrate team practices by simplifying the use of shared repository attributes, such as milestones and priorities, to perform all operations in Eclipse.
Scheduled date and expiration date
Mylyn provides two dates for scheduling: scheduled date (scheduled date) and expiration date (due, date). (You may have noticed that both dates are displayed in the Task Editor.) The scheduled date can help manage and prioritize your work week, while the expiration date corresponds to fixed events such as deadlines.
The scheduled date of the task is based on the variable date of the individual schedule and can be postponed based on the change in priority. It defines when you plan to start processing tasks. When a task arrives at a predetermined date, the task turns red to indicate that you should start working on it or consider postponing its start date. Tasks that are scheduled to be performed today will turn blue instead of red and be scheduled at the end of the workday to avoid rescheduling tasks for the entire workday.
Instead, the expiration date of the task is a fixed date: the date on which the task must be completed. This date is often associated with external constraints (such as deadlines). If you use a shared task Repository or Calendar tool, the expiration date is synchronized so that other members of the team are visible. For example, if the time tracking feature of Bugzilla is enabled, the expiration date of the Bugzilla task can be set through the Tracking zone in the Attributes area of the task Editor, and other members of the team can see the date and edit it. The expiration date is indicated by a small clock on the task icon, which is blue before the expiration date and red after the expiration date.
Focus on Work week tasks
Since Mylyn makes it so easy to create and share tasks, it seems that once you start using it, the Task list will soon fill up to dozens of or even thousands of of tasks. For the early users of Mylyn, including me, this is exactly what happens. Maybe because I'm the first user, my task List currently contains more than 5,000 tasks, with more than 1,000 of them unfinished. At first glance, this seems to be in conflict with the goal of reducing Mylyn rather than increasing information overload. To solve this problem, Mylyn provides improved functionality to schedule and defer tasks, using this information to have the task List display only tasks related to your work week. The newly created task is scheduled on the day of creation and can be quickly postponed to a later time or date through the Planning area or context menu of the Task Editor.
When the task reaches the scheduled date, the task and its container (for example, a query) turn red, and a pop-up window appears on the desktop as a reminder. (As with other Mylyn colors and font settings, you can set the task to highlight with Window > Preferences > General > Appearance > Colors and Fonts ). When a task is deferred to a future date, the weekday start time set inWindow > Mylyn > Tasks > Scheduling determines when the task is scheduled. By changing the end time of the workday, you can determine when the task that is scheduled for that day expires.
The key to the Mylyn task management model is interest-based classification and filtering, which you can enable with the Focus on workweek action on the Task List toolbar. Focus mode causes only tasks related to the work week to be displayed. This includes the following tasks:
- Tasks scheduled to be executed or exceeded on the scheduled date of the week
- Repository tasks with new changes and comments
11, the tasks are shaded and categorized to help you quickly determine the next task:
- Overdue tasks are red and always appear at the top of the list.
- The tasks that are scheduled to be performed today are highlighted in blue.
- Tasks that are scheduled to be performed later in the week are black.
- The task completed today is green.
- The previously completed task is grayed out.
Figure 11. Scheduling tasks to perform scheduled tasks daily
Mylyn helps you prioritize by easily scheduling and deferring tasks and limiting the view to show tasks scheduled within a given work week. To highlight weekdays, Mylyn highlights All tasks scheduled on the day in blue. Because the scroll bar is unlikely to be visible when working in focus mode, the Task List remains expanded, so you always know what to think about and what to do next.
Consider using the Mylyn Focus feature to manage the sample process for the work week:
- At the beginning of the work week, the task list contains a lot of red tasks that are scheduled to be executed this week or postponed to this week.
- Red is not a pleasant color, so you use the context menu to schedule each task to be executed today or on a later day of the week. When all the red is gone (the task that you perform today becomes blue, and the task that is scheduled to run later in the week turns black), you can view this week's schedule, confirm that it is realistic, postpone or delegate others to perform the task if necessary.
- When the task list is activated, you can hover over the green progress bar (11) near the top of the task list to check if too many tasks are scheduled for the work week. If some tasks take longer than other tasks, you can open the planning area of the task and adjust the estimated time so that the work week progress bar can be adjusted accordingly.
- At the end of the workday, all the completed tasks became delightful green. Then, you can check the remaining blue or red tasks and postpone them until tomorrow or later on the date.
- At the beginning of the next day, all tasks scheduled on this day are blue, and all overdue tasks are red. When you schedule a work day, you postpone certain tasks until the date of the week, so the visible blue task represents all the tasks that you can accomplish on that day. Turns green when the task is completed.
- At the end of the work week, the scroll bar should disappear and most tasks on the list should be green.
Because task scheduling is the most important part of task management, Mylyn provides a scheduled representation in a task list, which organizes tasks based on due dates rather than categories and queries. In focus mode, this representation shows all the tasks that must be done every day of the week. This is useful for balancing workload throughout the week. Another advantage of this is that you can avoid distractions when you use shared tasks, because tasks that have new comments but are not scheduled are not displayed. To check for new tasks, you need to switch back to categorized , re-prioritize, and then revisit the timesheet. When not in focus mode, you can use the scheduled representation to balance the task load for future work weeks-for example, by hovering over the next Week container to check how many tasks have been postponed.
Create a working Set
So far, all the features described in this article are a collection of task lists as a unified set of related tasks, and you have the flexibility to schedule them. In addition, you can use queries to organize tasks, and you can further nest subtasks, provided that the Repository connector provides this support (such as the Bugzilla connector, which you can enable from the View menu in the Task List). However, because Mylyn 2.0 supports working sets (working sets) , you can also work with collections that consist of completely unrelated tasks. Let's say you're developing a product and two different open source projects. You may want to spend most of your workday on the most important products, but you also want to follow up on other projects. Mylyn's working set enables you to organize queries and categories related to a specific product or project, and provides the ability to limit the number of files and other resources that are displayed in the Eclipse workspace.
Use the toggle bar at the top of the Task List to create working sets that include related queries, categories, and workspace resources (see Figure 12). As long as the Eclipse view is set to display the Window Working set(the default), toggling the Mylyn working set causes both task List and Eclipse to display only tasks and projects that belong to the working set. For example, if you set up a working set for an open source project and enable it with a drop-down list, the Eclipse Task List, Package Explorer, and Problems view Show only the content that is relevant to that project. Task List Find displays only matches in the working set. It's even possible to find only the contents of the working Set through search (CTRL+H), which is useful if the workspace is large. In other words, the entire Eclipse shows only what is relevant to the working set you created. Working sets can reduce clutter in the workspace, and you can avoid using multiple workspaces. In part 2nd, you'll see how Mylyn can further leverage this focused thought to narrow the visible content in Eclipse to a single task.
Figure 12. Edit and toggle Working set filtering, sorting, and searching
In addition to some automation features, Mylyn also provides manual sorting and filtering capabilities:
- The sort by item in the View menu is categorized by attributes such as priority.
- Use the filter priority Lower Than Item in the View menu to filter by precedence.
- Filter all Archive categories and completed tasks through the View menu (it is recommended to enable this feature, which is enabled automatically in focus mode).
- Filter tasks in a particular category or query by clicking Go into (same as in focus mode).
- Manually categorize by drag-and-drop operations, and classify repository tasks into categories.
Figure 13 shows the available manual Task List filters:
Figure 13. Manual Task List Filter
Manual search and filtering increases the burden of repeatedly switching between different filters and classifiers. It is not recommended for operations in the default mode, but they do work for planning and organizing tasks. Note that when focus on workweek activity, manual filtering and sorting settings are disabled; You can restore them by turning focus mode off.
When you organize a task List, you can move any task through the move to category context menu or by selecting the Remove from category in the context menu. Unless the task is explicitly deleted through the context menu, the task is still displayed in the task list even if it has disappeared from the query or removed from the category. The deleted task can be found in the Archive container. You can easily search for old tasks in Archive or elsewhere by using the Find box at the top of the task List. You can restore previously visible tasks by clicking the Clear button to the right of it or by pressing the ESC key. Archive containers are also useful for viewing previously resolved and commented tasks, because a common way to create queries is to exclude resolved tasks (see Query Setup Recommendations for considerations about this practice).
Backup and Export
The more frequently you use focus mode, the more valuable your Task List becomes. By default, the automatic backup of the Task List is enabled and the backup directory can be set through Window > Preferences > Mylyn > Tasks . To restore a Task List from a backup, you can select the corresponding radio button and select a backup snapshot. By default, Mylyn makes a daily snapshot of all task data and retains a 30-day backup (configured via Preferences > Tasks ). The task can be exported by clicking File > export.
Back to top of page
Part 1th concluding remarks
In the first half of this Mylyn usage guide, I introduced the task management capabilities of Mylyn. I showed you how these features support personalized task management and how they integrate WEB-based issue trackers such as Bugzilla into Eclipse. I also gave an overview of typical work weeks or working days for Mylyn management and demonstrated how to manage Task lists.
Regardless of the number of task repositories you are interested in, the task List view provides only a single location from which to manage all the work. This allows you to spend more time in your workday in efficient Eclipse without having to switch to an external browser window frequently. This also means that you can get a rich client experience for WEB-based issue trackers, such as drag-and-drop attachments and offline support.
The most exciting part of using Mylyn is coming up. Once the task is explicitly rendered as part of the work, Mylyn begins to automatically manage their context. Part 2nd of this article describes the context management features of Mylyn and shows how these capabilities can reduce information overload and how to make multitasking simple enough to be done with a single click. Please read the 2nd part now.
Reference Learning
- You can refer to the original English text on the DeveloperWorks global site in this article.
- "Mylyn 2.0, part 2:automated Context management" (Mik kersten,developerworks,2007 year August): Learn how Mylyn's contextual management capabilities reduce information overload and simplify collaboration.
- "Using Task context to Improve Programmer Productivity" (Mik Kersten and Gail C. MURPHY,FSE 2006): This paper describes the context model of Mylyn and gives evidence A real-world explicit task context can make the programmer more efficient in the actual research results.
- Mylyn FAQ and user Guide:mylyn users documentation.
- Mylyn Home page: Reference and support for Mylyn users and developers.
- Mylyn Integrator Reference: If you want to create your own connector, start here.
- Get started with eclipse: Learn about the Eclipse platform and ongoing projects in eclipse, including Mylyn.
- Mik's Blog: Visit the author's online blog.
- Java Technology Zone: Here are hundreds of articles on every aspect of Java programming.
Access to products and technologies
- Mylyn Extensions: The download is not bound to a connector in Mylyn.
- Generic Web Repository Connector: A compact version of the connector parsing HTML that provides basic query integration for task repositories without rich connectors.
- Mylyn Download: Update the list of sites and supported versions of Eclipse and repositories.
- Eclipse Download: Eclipse 3.2 and other downloads.
Discuss
- Mylyn Bugs and votes: Submit Mylar bug report and functional requirements. Vote for Mylar connectors and bridges here.
- Eclipse Plug-in Central: Use the review form to rate Mylyn.
- DeveloperWorks Blogs: Join the DeveloperWorks community.
Eclipse plug-in Mylyn management context task management