IS480 Team wiki: 2010T1 Picturative

From IS480
Jump to navigation Jump to search
Type Student Development Group
Area 3D Virtual Worlds Creation
Industry Computer Software
Product Collaborative Slides System
Team members Bryanmaguire Chia See Shang
Kho Zhi Gang
Sim Kwang Yong, Skye
Subeesh S/O Basheer
Tan Chuanzhong
Faculty Supervisor Professor Zheng Baihua
Sponsors VastPark Pty Ltd, Melbourne, Australia
Advisors Bruce Joy, Chairman, VastPark
Craig Presti, CTO, VastPark
Professor Richard Davis

Developing 3D Spaces for Collaborative Project Development

Business Need: Massive Collaboration Efforts

As companies increase in size and often exist in multiple locations, cross geographic asynchronous collaboration becomes a pain point for larger firms. Differing schedules, multiple versions, and the generally confusing naming conventions of a simple file could result in misinterpreted information. Clearly, firms today are faced with an overload of information, with a lack of a proper system to facilitate the interpretation and understanding of ideas.

Our Proposal: 3D Collaboration

2D environments have always been the choice of collaborative development. However, some drawbacks of having a 2d environment is the lack of real time updates as well as the problems of handling vast amounts of data. We intend to create a multi-user, real time environment that operates a 3D space. As required by the client (Vastpark Pty Ltd), our project endeavors to create a shared space that is intuitive and facilitates effective collaboration efforts on large scale idea development. We believe that with the emergence of social media as well as increasing exposure to 3d entertainment, this will be something that could be a step forward in workplace cooperation.

  • Please note: Due to the nature of development of the project, some information is not reflected on the website by request of the sponsor (the publishable nature of the development content is also a concern). No Pictures of the actual project is posted due to client request.

Product Use documentation will be made available on completion of the project. However, should you require any information regarding program development, please feel free to email any one of us and we will get back to you soonest.

Industry Analysis

Through multiple discussions regarding our goals of development, our team had agreed to develop a software that would receive sustainable adoption in the long term. In order to acheive this, our team felt that it is critical to understand the needs of collaborative technology users. Hence, we took time to research and experiment with various social environments with the following in mind:

  • Understanding the value of depth and form in the space
  • Studying essential user interactions within a 3D space
  • Fostering technology sustainability

Main Article: Information Development
Powerpoint is by for the most prolific of presentation software with over 30 million presentations made daily. Our team does not aim to replace powerpoint in its entirety. Much rather, we intend to leverage on this popularity and provide an alternate space to prepare presentations.

Main Article: Competitor Technologies

Our Team

Picturative was derived from the word Picture and Collaborative. We consist of a team from varied backgrounds, with an even mix of students from junior college and polytechnic. Our interest lies within innovating to create usable environments practical for daily use. Commerical viability is also a critical consideration in our project's development. After several weeks of brainstorming and revision, we have decided to go forward with the development of the idea of a collaborative system for enterprise information display.

Roles & Responsibilities

Role Name Job Scope Email
Project Manager Bryanmaguire Chia See Shang Overall in charge of scheduling project and facilitating project meetings. Responsible for assigning tasks to team members after every meeting and monitoring scrum meeting logs. sschia.2008
Business Analyst Kho Zhi Gang In charge of monitoring the business requirements of the project and ensuring that the system displays the required functions. Collaborates with the rest of team to deliver technical functionality. zhigang.kho.2008
Quality Assurance Sim Kwang Yong Skye In charge of ensuring production system is in order and making sure Iterative Scenarios are prepared. Also in charge of preparing User Test data and 3D models. kysim.2008
Lead Developer Subeesh S/O Basheer In charge of ensuring that program development is on schedule and classes are cleaned accordingly. Spearhead's technical areas of the project. Educates team about C# Development. subeeshb.2008
System /Database Administrator Tan Chuanzhong In charge of overall system architecture and group programming logical setup. Designs programatic functions and documents completed code. cz.tan.2007
Application Functional Expert/Sponsor Liaison J0shua Nair Ensures that the team is up-to-speed with VastPark and mantainance of Picturative Learning Site. Also in charge of sponsor and client liason. Monitors Risk and considers mitigation strategies. joshuan.2007

Team Deliverables & Intended Learning Outcomes

Our team also aims to learn essential skills within the project. While being able to develop our technical know-how, the following are skills that we require us to complete the project:

  • Human Computer Interaction User Development
  • SCRUM Methodology
  • .NET programming knowledge
  • Vastpark Platform Picturative Learning Site
  • Workign with Open Standards: IMML (Interactive Media Markup Language)
  • Plug-ins for VastPark using .NET

It is also our aim that the project would allow us a better understanding of the following areas:

  • Project and Scope Management
  • IT Architecture Design and Analysis
  • User Interface Development
  • Client Management and Collaboration
  • Challenges involved in developing technologically different software

About Our Client

VastPark Pty Ltd

Founded in 2007, VastPark's goal was to better connect organizations together using adaptive web-like technologies. VastPark has been under active development and has won various awards while delivering it's technology to many organizations around the world.

Consisting of successful entrepreneurs in many industries including banking, pharmaceutical, energy, entertainment and defence. VastPark's teams aim is to deliver greater profits through better and more timely knowledge creation, management and access within as many businesses as possible.


The following details the architecture that allows VastPark to translate XML documentation into 3D environments taht users can gainfully employ.

VastPark-User-Level-Overview small.png
  • IMML for describing the structure of an immersive scene
  • HTTP for transmitting information
  • Apache/IIS/VastPark Server for serving IMML
  • VastPark Player for rendering IMML
  • VastPark Creator/Notepad/ImmlPad/MaxImml for authoring IMML
  • VastPark Publisher for publishing media to a server

VastPark Interface

Vastpark Open Architecture

VastPark is a new interface that utilizes XML standards to generate objects on a 3-d environment. It is an open distributed virtual world platform built on service oriented architecture and new "meta"-level specifications to describe complex spatial environments (IMML), items (Metaforik) and time-based events (Continuum) in a simple way. The platform is currently being used by universities both for research as well as implementation of 3d collaborative environments.

VastPark Web FrameWork

Vastpark Architecture

VastPark Publisher :
Facilitates the importing of content into VaskPark along with the creation of searchable metadata to make your content discoverable to the types of users you authorized.
VastPark Creator :
The creator is a 3D scene layout and IMML editor that is used to create virtual environments. It supports easy access to 3D content uploaded by the VastPark Publisher based on users rights to discover content.
VastPark Server :
The server contains server-side functions required to host .imml files and manages multi-user connectivity among connected client. VaskPark Server is capable of hosting an unlimited number of fully self-contained parks, only constraint being system hardware and internet bandwidth.
VastPark Player :
The Player enables you to participate in any virtual environment built upon the VastPark framework.

Picturative: Project Overview

The following details a brief summary of our project. As mentioned earlier, some of the information has been left out due to client request. Prioritizing the needs of our target consumer: knowledge creating teams that require collaboration has made us focus on the following areas. The brackets indicate the results of our findings from survey and research.
1. Usability (45)
2. Intuitive Program Design (22)
3. Practicality(20)
4. Social Elements (18)

In order to deliver these properties to the user, we have chosen Human-Computer Interaction Design for program development. As this demands continuous iteration of the process we have designed an project progress tracking system that is a modification of SCRUM, demanding 48 hour update blocks.

Process Flow For End User


Project Scope & Functions

Through simulations, we were able to derive the core functionality of the system. The following functions were approved and vetted by the client and were subsequently broken down into sprints for development.
As mentioned below, each iteration represents a single sprint of our modified scrum process.

Development FrameWork

To Develop our project: we had used 2 Methodologies:

  • For User Interface Development : Human Computer Interaction was used

Details of Picturative HCI Process
The success of our product hinges on our ability to deliver user needs. Because of this, it is imperative to focus on User Driven development, making Human Computer Interaction (HCI) is the key area of our project. It helps us design interfaces that are very focused and targeted, only developing functions required by the user.

  • For Project Progress Monitoring : We modified SCRUM process to suit our needs

Details of Picturative Modified Scrum Process
Due to the constantly changing requirements of our project, it is critical to provide adequate project progress visibility. Examining a few frameworks for project management, we came to the conclusion that SCRUM is most suitable for our needs. However, we needed to modify the process so as to suit our schedules (changing the scrum meeting structure to that of individual progress logs, and changing scrum times to 48 hour updates). This framework gives high visibility to our project's progress and allows us to easily track our schedule.

Project Milestones and Schedule

Released Product Log

Product # Description Priority
1 Web Apps Very High
1.1 Create Project Very High
1.2 Join Project Very High
2.1 Log in Very High
2.2 Log out Very High
2.3 Logging Medium
3.1 Agenda Very High
3.2 Template Very High
3.3 Notification High
3.4 Vote High
3.5 Commenting High
3.6 Flagging High
4.1 Create Slides Very High
4,2 Link Slides High
4.3 Arrange Slides High
4.4 Color Code Slides High
5.1 Export Slides High
5.2 Upload Slides Very High
5.3 Edit Slides Very High
5.4 Help Very High


Risk Mitigation

Risk Mitigation is extremely important to our team in particular as we are using experimental technology and the project scope is ambitious. Before each meeting, we identify possible risks by assessing progress logs in the team. The explanation of the obstacles faced gives us a clear and concise understanding of the mitigation strategies we should adopt. A matrix is used to access to risk impact.

  • HIGH risk items could potentially be project stoppers
  • MEDIUM risk items could cause undue delays if not developed properly
  • LOW risk items generally affect the overall look and feel of the project
Risk Risk Level Risk Assigned To Risk Mitigation Status
VastPark Enterprise (Paid) SDKs may need to be loaned HIGH Joshua Negotiation with sponsor to allow greater access to resources. Complete
Many team members did not understand Vastpark Platform HIGH Joshua Additional meetings organized with lesson plans in place. Complete
Difficulty monitoring project progress Medium Bryan Increasing accountability by pair division and constant log updates. Assigned, In Progress
Lack of Understanding of 3D User interface development Low Skye Assigned research on social networking and virtual worlds. Complete
VastPark platform is evolving quickly Medium Joshua Use the current stable Enterprise Release version instead of the developer snapshots of the next version. Complete
VastPark documentation is not complete. Medium Bryan Requested more documentation, helped generate APIs, refer to code on the open source SVN and give time to ask questions on VastPark's forums which are very responsive (within 24 hours). On going, partially complete
VastPark open source software has some bugs. However these bugs are usually only inconvenient, not catastrophic. Medium Joshua Give extra time to report bugs and find work-arounds as well as to report the bugs on vastpark.org and allow VastPark staff to address the bugs. On going.
Lack of knowledge on Open XML and WPF High Subeesh Allocated more time for research and exploration. 25 hours was allocated. Completed
VastPark Player version risk. Different version of player might have different bugs Medium Joshua Keep different version of player. Debug in different version. Completed

Resources and Reference

Picturative Private Wiki

Wiki Summary.png


  • VastPark Official Site
    The official VastPark website contains more information about the platform as well as download links for the VastPark Player and other tools.
  • VastPark Developer Zone
    The developer zone contains information to help developers and designers learn more about the VastPark platform.

Reference Books

Programming Resources

  • Microsoft Visual Studio
    The IDE for developing VastPark plugins, which are implemented in the .NET Framework.
  • Visual C# Developer Center
    The C# Developer Center, part of the Microsoft Developer Network (MSDN), provides a comprehensive reference to the C# language and .NET libraries and also includes tutorials for those who are new to the language.

Picturative Journey

Research Notes