Download presentation
Presentation is loading. Please wait.
Published byBarnard Park Modified over 9 years ago
1
Palantír: Increasing Awareness in Distributed Software Development Anita Sarma and André van der Hoek {asarma, andre}@ics.uci.edu Institute for Software Research University of California, Irvine
2
Scenario Ellen’s CM Workspace in USA Pete’s CM Workspace in Canada Workspaces isolate developers from changes made concurrently by other developers /word pad/edit/spell /write /……… /word pad/edit/spell /undo /redo Configuration Management Repository
3
Direct Conflicts Ellen’s CM Workspace in USA Pete’s CM Workspace in Canada Direct conflicts are overlapping changes to the same artifact in different workspaces /word pad/edit/spell /write /……… /word pad/edit/spell /undo /redo Configuration Management Repository
4
Indirect Conflicts Ellen’s CM Workspace in USA Pete’s CM Workspace in Canada Indirect conflicts are changes to an artifact causing the behavior of another artifact to change /word pad/edit/spell /write /……… /word pad/edit/spell /undo /redo Configuration Management Repository
5
Traditional CM Approach Locking Only one person can change an artifact at a time (check-out/check-in) Limited in allowing parallel changes Does not address indirect conflicts Merging Conflicts have to be manually resolved Indirect conflicts not addressed Current CM functionality is inadequate in addressing direct/indirect conflicts
6
Goal Improve workspace awareness among developers, such that they are continuously informed of parallel changes Which artifacts are changing? What is the severity of the changes? (amount/size of change between two versions) What is the impact of the changes? (effect of changes on my current work) Being aware of the parallel changes would enable developers to reduce direct and indirect conflicts Palantír deliberately but non-intrusively breaks the isolation of workspaces
7
Existing Scenario Ellen’s CM WorkspacePete’s CM Workspace /word pad/edit/spell /write /….. /word pad/edit/spell /undo /redo CM Repository
8
Palantír Components Ellen’s CM WorkspacePete’s CM Workspace /word pad/edit/spell /write /….. /word pad/edit/spell /undo /redo Ellen’s Visualization Pete’s Visualization Severity Analysis Change Impact Analysis CM Repository
9
Complete Palantír Architecture Ellen’s CM WorkspacePete’s CM Workspace /word pad/edit/spell /write /….. /word pad/edit/spell /undo /redo Ellen’s Visualization Pete’s Visualization Severity Analysis Change Impact Analysis CM Repository Event notificatio n
10
Visualization Component Shows pair-wise conflicts between developers Shows severity and impact of the changes Triggered by CM actions Check-out, check-in, add, remove... Unique view per workspace Conflicts are shown only for artifacts present in that workspace We plan to experiment with different visualizations Tabular form, graphical display, ticker tape, …
11
1.Ellen populates her workspace Workspace owner Gray indicates no changes have occurred as of now
12
2.Ellen makes changes to some artifacts in her workspace Green indicates changes by the workspace owner (Ellen) “?” indicates changes are being made but their exact nature is not known
13
3.Ellen puts the changes back into the CM system Severity and impact indicators “!” indicates changes are now known
14
4.Ellen makes changes to print and (again) spell, Pete makes changes to write Red indicates changes in another workspace Stack indicates evolution into new versions
15
5.Pete makes changes to spell
16
Back button for traversing up one layer Other features: zooming in and zooming out
17
Other features: examining other versions and meta-data Examining a different version Artifact metadata
18
Severity Analysis “The amount (size) of change between two versions of an artifact” Proposed algorithms Lines of code Simple, but inaccurate Token based difference Measures structural changes, but language dependent Abstract syntax tree Very detailed analyses, but likely too expensive (and language dependent) Work in progress
19
Impact Analysis “The effect of changes on my current work” Proposed algorithms Overlapping lines of code Simple, but inaccurate Changed interfaces Potentially accurate and effective, but language dependent Dependency analysis Very precise, semantic results, but complex (and language dependent) Work in progress
20
Related Work Configuration Management ClearCase, Telelogic, Subversion, Coven, … Software Visualization Code decay, 3D visualization, … Computer-Supported Collaborative Work Edit wear and read wear, BSCW, TUKAN, … Palantír provides a solution that combines contributions in each of these areas
21
Conclusion Palantír is a prototype that… …brings awareness to workspaces …shows pair-wise conflict …provides severity analysis …provides change impact analysis Use of Palantír (hopefully) results in fewer direct and indirect conflicts Future work Analysis algorithms for both atomic and compound artifacts Additional visualizations
23
Addressing Scale Leverage hierarchical structure of artifact Show pair-wise conflicts Sorting constituent artifacts according to highest severity/change impact Explore “smaller boxed” in the user interface Truncate number of layers being visualized
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.