Open Wonderland: A Tool for Collaborative Software Development

Preview:

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, Inc.nicole@wonderbuilders.com

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

nicole@wonderbuilders.com

Recommended