Download presentation
Presentation is loading. Please wait.
1
Increasing Awareness in Distributed Software Development Workspaces Copyright, 1997 © Dale Carnegie & Associates, Inc. X International Workshop on Groupware (CRIWG'04) Marco A. S. Mangan 1,2, Marcos R. S. Borges 3,Cláudia Werner 1 1 Computer Science Department, COPPE, Federal University of Rio de Janeiro – Brazil 2 Faculdade de Informática, PUCRS – Brazil 3 Núcleo de Computação Eletrônica and Instituto de Matemática, UFRJ, Brazil {mangan, werner}@cos.ufrj.br, mangan@inf.pucrs.br, mborges@nce.ufrj.br
2
Alceste : CRIWG’04: Sep 06, 20042 :: 21 Scenario Distributed or Global Software Development Teammates in different places or worktime Virtual teams In theory: increased productivity In practice: cultural problems, awareness and communication breakdown Distributed Sofware Development Environments (DSDEs) Software development tools + collaboration tools Examples: Palantir, Milos, Tukan, Gossip, Serendipity
3
Alceste : CRIWG’04: Sep 06, 20043 :: 21 Motivation Inadequate support for collaboration in current software development environments (e.g. Eclipse SDE) Collaboration aspects: communication, coordination, memory, and awareness Economics of software development: software reuse DSDE commonalities and variabilities Alternative aproach to development with groupware frameworks and toolkits Development model: Multiple-players, framelets Run-time: No application thread control
4
Alceste : CRIWG’04: Sep 06, 20044 :: 21 Problem and solution Problem: How to build a DSDE? How to provide adequate group and task support? How to manage environment evolution? Proposal: Enhancement of pre-existent software tools A middleware-based collaboration server implementing DSDE commonalities Extension mechanisms to deal with DSDE variabilities Guidelines to develop and maintain extensions
5
Alceste : CRIWG’04: Sep 06, 20045 :: 21 Outline Middleware overview A process to develop awareness enhanced DSDEs Examples of extensions Conclusions and future work
6
Alceste : CRIWG’04: Sep 06, 20046 :: 21 Middleware architecture A description of the main components of a DSDE CASE tool: an event source Collector: a program to collect events (Collaborative) Extension: an event sinker Blackboard architecture Communication uses a single shared space On-line notification Template-based queries A JINI service
7
Alceste : CRIWG’04: Sep 06, 20047 :: 21 Middleware architecture Events: operations + awareness model elements Examples: create class, update line, window move At least, three awareness models Spatial: windows, viewports, UI components Semantic: class, packages, relationships Document-based: document, paragraphs, lines Model selection depends on end-user task
8
Alceste : CRIWG’04: Sep 06, 20048 :: 21 Middleware architecture At least, five basic operations Create, retrieve, update, delete, view/touch Events are partially ordered into channels Historic data and on-line data No separation of commited and local data An API implements events, operations, and channel usage Less than 20 interfaces, average 6 methods each
9
Alceste : CRIWG’04: Sep 06, 20049 :: 21 Middleware architecture CASE tool Collector Extension Collector CASE tool Extension Event Notification e1 write(e1)
10
Alceste : CRIWG’04: Sep 06, 200410 :: 21 Middleware architecture CASE tool Collector Extension Collector CASE tool Extension Event Notification e1 query(e?) notify(e?)
11
Alceste : CRIWG’04: Sep 06, 200411 :: 21 Middleware architecture CASE tool Collector Extension Collector CASE tool Extension Event Notification e2[e1] write(e2[e1]) e1
12
Alceste : CRIWG’04: Sep 06, 200412 :: 21 Outline Middleware overview A process to develop awareness enhanced DSDEs Examples of extensions Conclusions and future work
13
Alceste : CRIWG’04: Sep 06, 200413 :: 21 Process A set of guidelines to DSDE development using this approach Roles: description of required skills and responsabilities CASE tool developer Enhancement developer Integration developer Environment composer Activities: sequence of logical steps to compose a new DSDE People, Tool, and Context Assesment Extension and Collector Selection
14
Alceste : CRIWG’04: Sep 06, 200414 :: 21 Outline Middleware overview A process to develop awareness enhanced DSDEs Examples of extensions Conclusions and future work
15
Alceste : CRIWG’04: Sep 06, 200415 :: 21 Examples Task: software peer review CASE tool: Odyssey SDE Collector: Java UI System Spatial awareness model Task: concurrent programming CASE tool: Eclipse SDE Collector: tool extension mechanism Document-based awareness model
16
Alceste : CRIWG’04: Sep 06, 200416 :: 21 Examples Task: concurrent modeling CASE tool: Odyssey SDE Collector: tool extension mechanism Semantic awareness model Task: software management CASE tool: Odyssey SDE Collector: persistence layer Semantic awareness model
17
Alceste : CRIWG’04: Sep 06, 200417 :: 21 Outline Middleware overview A process to develop awareness enhanced DSDEs Examples of extensions Conclusions and future work
18
Alceste : CRIWG’04: Sep 06, 200418 :: 21 Conclusions Alternative to the development of DSDEs The extension of pre-existent software tools reduce he problem of task support Enhancements are composed of two reusable parts: collectors and extensions A middleware implements common collaborative funcionalities A process guides the development of DSDEs Enhancement examples demonstrate the feasibility of this approach
19
Alceste : CRIWG’04: Sep 06, 200419 :: 21 Conclusions Limitations Side-show windows Dependency on the extension possibilities of CASE tool and its run- time environment Conservative changes
20
Alceste : CRIWG’04: Sep 06, 200420 :: 21 Future Work Third-party feasibility evaluation Observe planning and development of extensions with the architecture Work impact evaluation Observe a group performing a development task with and without the extensions
21
Increasing Awareness in Distributed Software Development Workspaces Copyright, 1997 © Dale Carnegie & Associates, Inc. X International Workshop on Groupware (CRIWG'04) Marco A. S. Mangan 1,2, Marcos R. S. Borges 3,Cláudia Werner 1 1 Computer Science Department, COPPE, Federal University of Rio de Janeiro – Brazil 2 Faculdade de Informática, PUCRS – Brazil 3 Núcleo de Computação Eletrônica and Instituto de Matemática, UFRJ, Brazil {mangan, werner}@cos.ufrj.br, mangan@inf.pucrs.br, mborges@nce.ufrj.br
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.