Tool Reduces information overload Makes multi-tasking easy Framework How it works Integrating and...

32
Tool Reduces information overload Makes multi-tasking easy Framework How it works Integrating and extending Integration Showcase of extensions Task-Focused Desktop Mik Kersten Last updated June 2007, made available under the EPL v1.0 Task-Focused Toolkit Mylyn

Transcript of Tool Reduces information overload Makes multi-tasking easy Framework How it works Integrating and...

Page 1: Tool Reduces information overload Makes multi-tasking easy Framework How it works Integrating and extending Integration Showcase of extensions Task-Focused.

Tool• Reduces information overload• Makes multi-tasking easy

Framework• How it works• Integrating and extending

Integration• Showcase of extensions• Task-Focused Desktop Mik Kersten

Last updated June 2007, made available under the EPL v1.0

Task-Focused Toolkit

Mylyn

Page 2: Tool Reduces information overload Makes multi-tasking easy Framework How it works Integrating and extending Integration Showcase of extensions Task-Focused.
Page 3: Tool Reduces information overload Makes multi-tasking easy Framework How it works Integrating and extending Integration Showcase of extensions Task-Focused.

Information overload

Context loss when multi-tasking

Page 4: Tool Reduces information overload Makes multi-tasking easy Framework How it works Integrating and extending Integration Showcase of extensions Task-Focused.

With Mylyn

Tasks are integrated

See only what you are working on

Page 5: Tool Reduces information overload Makes multi-tasking easy Framework How it works Integrating and extending Integration Showcase of extensions Task-Focused.

Overview

Task-Focused UI• Demos of key features• Integrated task management• Automated context management• Collaboration and planning

The framework• How the task context model works• How to build on Mylyn

Integration showcase• Extensions and ecosystem• Task-Focused Desktop

Page 6: Tool Reduces information overload Makes multi-tasking easy Framework How it works Integrating and extending Integration Showcase of extensions Task-Focused.

Task management

Before MylynScattered throughout web apps, code and pieces of paperNo integration with IDE workflow

One task list• Manage all your tasks in a single personalized view• Eclipse’s rich searching, linking and editing facilities

Repository connectors• Integrate web-based task repositories• Offline editing and access• Integrated change notifications

Demo

Page 7: Tool Reduces information overload Makes multi-tasking easy Framework How it works Integrating and extending Integration Showcase of extensions Task-Focused.

Task-focused UI

Information overloadTime wasted scrolling, browsing and searching, tagging, filteringConstant multi-tasking causes context loss

Task context• Mylyn monitors your interaction• Creates degree-of-interest model• What you touch is in your context• Actively managed as you work

Task-focused UI• View filtering, element decoration• Automatic folding, content assist ranking• Editor and perspective management• One-click task switching

Demo

Page 8: Tool Reduces information overload Makes multi-tasking easy Framework How it works Integrating and extending Integration Showcase of extensions Task-Focused.

Collaboration

Before MylynManual management of change setsEmail overload, interruption, difficulty sharing expertise

Change set management• Changes are automatically grouped by task• Commit messages are automatic• Everything is linked

Task context sharing• Expertise is captured and can be shared via repository• Tasks are easy to recall, knowledge easy to share

Demo

Page 9: Tool Reduces information overload Makes multi-tasking easy Framework How it works Integrating and extending Integration Showcase of extensions Task-Focused.

Planning

With MylynToo many tasks end up in your Task List

Personal planning• Meshes with team planning activities• Can monitor components and collaborations

Focused workweek• See only the tasks you need to work on

Demo

Page 10: Tool Reduces information overload Makes multi-tasking easy Framework How it works Integrating and extending Integration Showcase of extensions Task-Focused.

Mylyn 2.0

Schedule• 2.0M3 May 11• 2.0RC1 June 15 • 2.0 final June 29 with Europa

Even deeper integration• Debugging, XML, relationship navigation

More automation• Workflow, content assist, streamlining

Easier organization• Personal and team planning

Page 11: Tool Reduces information overload Makes multi-tasking easy Framework How it works Integrating and extending Integration Showcase of extensions Task-Focused.

Mylyn Framework

Page 12: Tool Reduces information overload Makes multi-tasking easy Framework How it works Integrating and extending Integration Showcase of extensions Task-Focused.

Mylyn Framework

Status• Mylyn 1.0 provided APIs that supported a core set of

connectors• Mylyn 2.0 is evolving based on integrator feedback

APIs• Tasks: task management• Context: context management• Team: team provider integration• Monitor: workbench interaction monitoring

Page 13: Tool Reduces information overload Makes multi-tasking easy Framework How it works Integrating and extending Integration Showcase of extensions Task-Focused.

Tasks API

Goal• Bring your repositories’ tasks into Eclipse• Streamline task management user experience across

repositories• Provide customizable behavior with consistent integration

Task repository connectors• Core facilities: lifecycle, persistence, synchronization• UI facilities: queries and task editing• Decide on level of integration: queries only, rich editing• Reference implementation is Bugzilla

Page 14: Tool Reduces information overload Makes multi-tasking easy Framework How it works Integrating and extending Integration Showcase of extensions Task-Focused.

Context API

Goal• Connect task context model to domain-specific artifacts

Task context bridges• Structure bridges: map context to existing models: e.g.

JavaModel• UI bridges: selection/edit/refactoring capture, map to UI • Reference implementation is Java

Page 15: Tool Reduces information overload Makes multi-tasking easy Framework How it works Integrating and extending Integration Showcase of extensions Task-Focused.

Team & Monitor APIs

Team API• Provides change set integration, automatic commit

messages• Reference implementation is CVS

Monitor API• Captures user’s workbench interaction history• Monitors views, editors, commands, preferences• Provides privacy, obfuscation, reporting• Reference implementation is user study example

Page 16: Tool Reduces information overload Makes multi-tasking easy Framework How it works Integrating and extending Integration Showcase of extensions Task-Focused.

Usage Reporting

21

74%

11%

2%

10%3%0%

Package ExplorerSearchType HierarchyOutlineCall HierarchyBookmark

Page 17: Tool Reduces information overload Makes multi-tasking easy Framework How it works Integrating and extending Integration Showcase of extensions Task-Focused.

Framework

Page 18: Tool Reduces information overload Makes multi-tasking easy Framework How it works Integrating and extending Integration Showcase of extensions Task-Focused.

Interaction

Task context

Degree-of-interest (DOI) weighting• Frequency and recency of interaction with element• Both direct and indirect interaction

Model

interest

Page 19: Tool Reduces information overload Makes multi-tasking easy Framework How it works Integrating and extending Integration Showcase of extensions Task-Focused.

Task context graph• Edges added for relations between elements• Scaling factors determine shape, e.g. decay rate

Thresholds define interest levels

Topology

[l, ∞] Landmark

(0, ∞] Interesting

[-∞, 0] Uninteresting

Page 20: Tool Reduces information overload Makes multi-tasking easy Framework How it works Integrating and extending Integration Showcase of extensions Task-Focused.

Integration Showcase

Page 21: Tool Reduces information overload Makes multi-tasking easy Framework How it works Integrating and extending Integration Showcase of extensions Task-Focused.

Status

Eclipse Mylyn

Tasks

Bugzilla

Trac

JIRA

Context Team

CVS

Java

Files

Ant

SVN

XPlanner

CodeBeamer

Ruby

IssueZilla

Page 22: Tool Reduces information overload Makes multi-tasking easy Framework How it works Integrating and extending Integration Showcase of extensions Task-Focused.
Page 23: Tool Reduces information overload Makes multi-tasking easy Framework How it works Integrating and extending Integration Showcase of extensions Task-Focused.
Page 24: Tool Reduces information overload Makes multi-tasking easy Framework How it works Integrating and extending Integration Showcase of extensions Task-Focused.
Page 25: Tool Reduces information overload Makes multi-tasking easy Framework How it works Integrating and extending Integration Showcase of extensions Task-Focused.
Page 26: Tool Reduces information overload Makes multi-tasking easy Framework How it works Integrating and extending Integration Showcase of extensions Task-Focused.
Page 27: Tool Reduces information overload Makes multi-tasking easy Framework How it works Integrating and extending Integration Showcase of extensions Task-Focused.
Page 28: Tool Reduces information overload Makes multi-tasking easy Framework How it works Integrating and extending Integration Showcase of extensions Task-Focused.
Page 29: Tool Reduces information overload Makes multi-tasking easy Framework How it works Integrating and extending Integration Showcase of extensions Task-Focused.
Page 30: Tool Reduces information overload Makes multi-tasking easy Framework How it works Integrating and extending Integration Showcase of extensions Task-Focused.

Community needs

Eclipse Mylyn

Tasks

Bugzilla

Trac

JIRA

Context Team

CVS

Java

Files

Ant

SVN

Perforce

ClearCaseXPlanner

CodeBeamer

ScrumWorks

Spring

Ruby

Tasktop

Desktop

Web

Email

Page 31: Tool Reduces information overload Makes multi-tasking easy Framework How it works Integrating and extending Integration Showcase of extensions Task-Focused.

Changing the way we work

Once tasks are explicit• Dramatic reduction in information overload• Information you need to get work done is at your finger tips• Multitasking and recalling old tasks become effortless• UI automation (e.g. working sets, search, commit messages)• Keeps you in Eclipse and out of your browser and inbox

Validated technology• Statistically significant increase in programmer productivity• Task context model supports generic knowledge work

The framework is open and growing• Mylyn is all about integration

Page 32: Tool Reduces information overload Makes multi-tasking easy Framework How it works Integrating and extending Integration Showcase of extensions Task-Focused.

Committers• Mik Kersten, Rob Elves, Steffen Pingel and Eugene

Kuleshov

Key contributions by• Gail Murphy, Shawn Minto, Willian Mitsuda, Brock

Janiczak, Meghan Allen, Nathan Hapke, Raphael Ackermann, Ken Sueda, Jeff Pound, Wesley Coelho and Leah Findlater

MylynThe Task-Focused UI