Upload
nicole-yankelovich
View
3.228
Download
0
Tags:
Embed Size (px)
DESCRIPTION
Open Wonderland is a toolkit for creating 3D virtual worlds for education and collaboration. This talk focuses on the use of Open Wonderland for distributed software development, detailing the suite of collaborative tools that support each of the different activities involved in the software development process.
Citation preview
A Tool forCollaborative Software Development
Nicole YankelovichOpen Wonderland FoundationWonderBuilders, [email protected]
2Copyright 2013, Open Wonderland Foundation
What is Open Wonderland (OWL)?100% Java, free, open-source toolkit for
creating 3D immersive virtual worlds
3Copyright 2013, Open Wonderland Foundation
Build Worlds for...
Collaboration with Live DocsCollaboration with Live Docs
3D Data Visualization and Analysis3D Data Visualization and Analysis
SimulationSimulation
Mixed-Reality InteractionsMixed-Reality Interactions
Integrating with Real WorldIntegrating with Real World
4Copyright 2013, Open Wonderland Foundation
Education and TrainingEducation and Training
5Copyright 2013, Open Wonderland Foundation
Modules for Extensibility
• Modules akin to “plug-ins” for addingapps and other functionality to OWL
• Mechanism for packaging & sharing OWL extensions written in Java> Can contain code, artwork, audio,
scripts, web management and web services> Also world configurations for sharing whole worlds> Deliver art assets via embedded HTTP server> Packaged as archive (jar) files
• Modules can depend on other modules
ModuleModule
CodeArtworkScripts
Assembled worldsOther resources
6Copyright 2013, Open Wonderland Foundation
Modules can add Apps
• Multi-user, interactive 2D apps
• Interactive 3D apps
Mic Twitter Feed PortalAudio Recorder
Whiteboard Screen SharerFirefox Webcam Viewer
2D + 3D Combined
Comp Sci Lesson
7Copyright 2013, Open Wonderland Foundation
Modules can add Capabilities
• Capabilities are functionality that can be applied to any in-world object
• Each can optionally include a property sheet
8Copyright 2013, Open Wonderland Foundation
Capability Examples• Audio: Add recorded audio or audio stream
• Container: Group objects; inherit properties
• Portal: Teleport to new location
• EZScript: Add scripting to any object
2
9Copyright 2013, Open Wonderland Foundation
Modules can add Menu items
• New functionality appears in menu hierarchy
10Copyright 2013, Open Wonderland Foundation
Wonderland Module Warehouse
• Browseapps &features
• Share• Comment• Rate
11Copyright 2013, Open Wonderland Foundation
Web-based Admin Console
• Add / remove modules from web UI
12Copyright 2013, Open Wonderland Foundation
Case Studies, Activities, and Tools
• Look at two case studies of OWL use for collaborative software development> Subsnapshots Project
• Export objects> Postcards Code-a-thon
• In-world screenshots
• Used a wide range of collaboration tools to support full range of software development activities> Planning, coding, debugging, testing, documenting, ...
13Copyright 2013, Open Wonderland Foundation
Case Study – “Subsnapshot” Project
• Collaborative module development project
• Any developer in the opensource community wasinvited to participate in liveweekly meetings
• All meetings held in OWL• Main purpose
> Help educate developers so more could contribute to project, help fix bugs, and add new features
14Copyright 2013, Open Wonderland Foundation
SubSnapshot Sessions• Logistics
> All participants remote> 2-3 times per month; 1 hour> Averages 8-12 participants> September 2010 – May 2011
• Learning Community> No formal instructor> OWL architect defacto leader> Participants take turns driving> Focus on understanding, good
coding practices, not speed
15Copyright 2013, Open Wonderland Foundation
Case Study - “Postcard” Code-a-thon
• Intensive three-day event to create a module• Participants came from US, Canada, and several
European countries• Run by a small organizing committee
16Copyright 2013, Open Wonderland Foundation
Postcards
• New feature that allowsvirtual world users totake and send pictures.
• Uses a virtual camera to set up shot; simple UI to compose a message and specify how to share
• Differences:> Intensive sessions> Involved more UI design> Non-developers involved
17Copyright 2013, Open Wonderland Foundation
Project Space Setup
18Copyright 2013, Open Wonderland Foundation
Activities & Tools• Before/between sessions
> Live in-world planning mtgs.> Asynchronous collaboration
• Google Wave, GoogleDrive, OWL Forum, Facebook
> Setting up the environment> Installing new code on
community server> Testing
• During the live sessions> Synchronous collaboration with high fidelity audio> Suite of collaboration tools support variety of activities
19Copyright 2013, Open Wonderland Foundation
Activity: BrainstormingTool: Drag-and-drop Images
20Copyright 2013, Open Wonderland Foundation
Activity: Organizing / User StoriesTool: Card Wall
21Copyright 2013, Open Wonderland Foundation
Activity: Planning & DesignTool: Multi-user Whiteboard
22Copyright 2013, Open Wonderland Foundation
Activity: Planning Poker & VotingTool: Voting Tool
23Copyright 2013, Open Wonderland Foundation
Activity: Consulting the WebTool: Firefox
24Copyright 2013, Open Wonderland Foundation
Activity: Collaborative CodingTool: NetBeans
25Copyright 2013, Open Wonderland Foundation
Activity: Collaborative DebuggingTool: Shared Terminal
26Copyright 2013, Open Wonderland Foundation
Activity: Note TakingTool: Sticky Notes
27Copyright 2013, Open Wonderland Foundation
Activity: Doc & Desktop SharingTools: DropBox, VNC Viewer
28Copyright 2013, Open Wonderland Foundation
Activity: DocumentationTools: PDF Viewer / Google Drive
29Copyright 2013, Open Wonderland Foundation
Activity: Unit TestingTools: NetBeans, Image Viewer
30Copyright 2013, Open Wonderland Foundation
Activity: Testing the CodeTool: SubSnapshot Module
31Copyright 2013, Open Wonderland Foundation
Activity: Testing on Remote ServerTools: VNC, Screen Sharer
32Copyright 2013, Open Wonderland Foundation
Activity: Documenting the ProjectTools: Facebook, Screen Sharer
33Copyright 2013, Open Wonderland Foundation
Lessons Learned
• Benefits:> Real work accomplished in
the virtual world> Multiple simultaneous activities> Participants highly engaged> Strong relationships developed> Agile techniques worked
remotely
• Challenges:> Time zones> Doing sufficient pre-work to set up the necessary tools
34Copyright 2013, Open Wonderland Foundation
For More Information• WonderBuilders
> http://WonderBuilders.com> Custom worlds, consulting
• Open Wonderland> http://OpenWonderland.org
• WonderBlog> http://blogs.openwonderland.org
• Facebook> http://facebook.com/openwonderland
• Twitter> http://twitter.com/openwonderland> use hashtag: #openwonderland