Presentation is loading. Please wait.

Presentation is loading. Please wait.

For Eclipse users Reduces information overload For developers and integrators Provides framework for tasks and contexts Mik Kersten, project lead EclipseCon,

Similar presentations


Presentation on theme: "For Eclipse users Reduces information overload For developers and integrators Provides framework for tasks and contexts Mik Kersten, project lead EclipseCon,"— Presentation transcript:

1 For Eclipse users Reduces information overload For developers and integrators Provides framework for tasks and contexts Mik Kersten, project lead EclipseCon, Santa Clara USA, © March 21, 2006 by UBC, made available under the EPL v1.0 A Task Focused UI for Eclipse Mylar NOTE: contains animations, best viewed as slideshow

2 Information Overload Hard to see the forest through the trees Repetitive scrolling, searching, navigating

3 Mylar see only what you’re working on Aluminized film used to avoid blindness when staring at an eclipse Task Focused UI to avoid information blindness when staring at Eclipse

4 Overview Working with Mylar Tasks and contexts make working with large systems easier Bugs/issues/tasks are integrated and easy to manage Demos highlighting key features Working with task context Eclipse integration (SDK) Repository integration (Bugzilla, JIRA) Building on Mylar Internals & architecture Framework & APIs

5 Demo 1: task context Without Mylar Manually manage context Use working sets, filters With Mylar Indicate what task you’re working on Programming activity forms context for that task Context becomes explicit in the UI

6 Task context Tasks User-defined unit of work, e.g. bug report Context Mylar monitors your interaction Creates degree-of-interest model What you touch is in your context Actively managed as you work Stored and easy to recall Focused UI Views: filtering, decoration Editors: folding, content assist Context switching, editor management

7 Demo 2: integration Search Repeatedly search and scanning results to find what’s related Synchronize Sometimes you only want to commit or update a subset

8 Integration Active search Related elements become interesting Search is seeded and scoped by task context Active change sets Commit just a piece of what you’ve changed Automatically managed with tasks Resources in context mapped to change set

9 Demo 3: task repositories Without Mylar Work with various web UIs to manage bugs/issues/tasks With Mylar Task management is integrated Similar to source repositories Get persistence, offline editing

10 Task repositories Connectors Similar to source repositories Support Bugzilla and JIRA Tasks Local Web linked Repository queries Authoring, offline editing One integrated task list Personalized notes, reminders Archive, filters, notifications

11 There’s more… Automation Testing context via Active Test Suite Context views Active Type Hierarchy Everything is linked Tasks to context to resources Easy to build on XP planning via Task Activity View

12 Changing how we work with Eclipse What you need to do Buy into working with tasks Have patience with an evolving UI (v0.5) Once tasks are explicit Reduces information overload Information you need to get work done is at your finger tips Context switching and recalling old tasks become effortless UI automation (e.g. working sets, search, commit messages) UI for task management is consistent and integrated Keeps you in Eclipse and out of your browser and inbox

13 under the hood

14 Interaction history InteractionEvent stream Origin, handle, type, date Context (Core) Degree-of-interest graph Degree-of-separation scope Scaling factors Projections (UI) Views, editors, files Mylar’s context model interest

15 Context framework Mylar Core Generic model, context management, persistence Structure bridges: map context to existing models: e.g. JavaModel Designed to scale Model scales with interaction, not with workspace size We generate in the order of 1MB of interaction history/month Mylar UI Decorators, managed views and editors, interest projection UI bridges: selection/edit/refactoring capture, map to UI Designed to integrate Made possible by Eclipse’s modularity and component model

16 Task framework Similar to SDK’s abstractions for resources Core facilities: lifecycle, persistence, synchronization UI facilities: editing, diffs, notifications Repository connectors Extensibility for task/bug/issue trackers/repositories UI and persistence provided JIRA connector is around 500 LOC, bridges to JIRA Core Services

17 Extensibility Make tasks a first class abstraction, connected to resources with context Context Focused UI ResourcesJDTTasks Java Ant Bugzilla XML Workbench JIRA IDE Tasks UI Repository ConnectorsStructure and UI Bridges

18 Provisional APIs Tasks API Currently supports two connectors: Bugzilla, JIRA Extensible to other kinds of trackers and repositories Ready for early API adopters to influence and stabilize Context API Currently supports: Resources, JDT, PDE, Ant Has been stable, but revision coming Monitor API Usage monitoring based on interaction history Studied ~100 developers voluntarily using Mylar Privacy, obfuscation, reporting

19 Community June 2005 Eclipse.org project created July - Oct: 0.3 Users: user study, ~100 participants, 353 bugzilla reports resolved Developers spend more time coding, less searching and navigating November - March: 0.4.0 – 0.4.10 Users: 1-2K installs of each and growing, 406 bugzilla reports resolved Contributors: dozens patches applied Integrators: JIRA, prototype for nntp Now (0.5) - Callisto Users: making context more first class, easier sharing and reuse Integrators: provisional API stability, early API adopters Mylar 1.0 Tools project quality and API contract

20 Committers Mik Kersten, Gail Murphy, Robert Elves (pending) Notable contributions from Eric Booth, Wesley Coelho, Leah Findlater, Brock Janiczak, Eugene Kuleshov, Shawn Minto, Ken Sueda More info eclipse.org/mylar Mylar BOF tonight at 8:45pm Grand Ballroom Reducing information overload one task at a time


Download ppt "For Eclipse users Reduces information overload For developers and integrators Provides framework for tasks and contexts Mik Kersten, project lead EclipseCon,"

Similar presentations


Ads by Google