Integrating Collaborative Program Development and Debugging within a Virtual Environment

  • Hani Bani-Salameh
  • Clinton Jeffery
  • Ziad Al-Sharif
  • Iyad Abu Doush
Part of the Lecture Notes in Computer Science book series (LNCS, volume 5411)


A collaborative integrated development environment enables developers to share programming-related tasks. This paper presents the design and implementation of a collaborative IDE named ICI (Idaho Collaborative IDE). ICI enables developers in different locations to collaborate on a variety of software development activities in real-time. It supports software development in C, C++, Java, and Unicon. ICI combines a synchronous collaborative program editor and a real-time collaborative debugger within a 3D multi-user virtual environment. ICI reduces cognitive context switches between tools inside the IDE and between IDE tasks and virtual environment activities, allowing developers to share, in real-time, the process of editing, compiling, running, and debugging of their software projects.


collaborative environment debugger run-time debugging Integrated Development Environment (IDE) 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Cubranic, D., Storey, M.-A.: Collaboration support for novice team programming. In: Proceedings of ACM GROUP 2005, November, pp. 136–139 (2005)Google Scholar
  2. 2.
    Sarma, A.: A survey of collaborative tools in software development. Technical report, University of California Irvine, Institute of Software Research (2005)Google Scholar
  3. 3.
    Kubo, M.M., Tori, R., Kirner, C.: Interaction in Collaborative Educational Virtual Environments. CyberPsychology & Behavior 5(5), 399–408 (2002)CrossRefGoogle Scholar
  4. 4.
    Bouras, C., Tsiatsos, T.: Educational Virtual Environments: Design Rationale and Architecture. Multimedia Tools and Applications 29, 153–173 (2006)CrossRefGoogle Scholar
  5. 5.
    Jeffery, C., Mohamed, S., Parlett, R., Pereda, R.: Unicon book Programming with Unicon (1999-2003),
  6. 6.
    Jeffery, C., Jeffery, S.: An IVIB Primer (February 21, Unicon Technical Report #6b (2006),
  7. 7.
    Langton, J., Hickey, T., Alterman, R.: Integrating tools and resources: a case study in building educational groupware for collaborative programming. Journal of Computing Sciences in Colleges 19(5), 140–153 (2004)Google Scholar
  8. 8.
    Cheng, L.-T., De Souza, R.B.C., Hupfer, S., Patterson, J., Ross, S.: Building Collaboration into IDEs. ACM Queue 1(9), 40–50 (2003)CrossRefGoogle Scholar
  9. 9.
    Booch, G., Brown, A.: Collaborative Development Environments. In: Advances in Computers, vol. 59. Academic Press, London (2003)Google Scholar
  10. 10.
    Cheng, L.-T., et al.: Jazz: a collaborative application development environment. In: OOPSLA Companion, pp. 102–103 (2003)Google Scholar
  11. 11.
    Cheng, L.-T., Hupfer, S., Ross, S., Patterson, J.: Jazzing up Eclipse with Collaborative Tools. In: Proceedings of the OOPSLA Eclipse Technology eXchange Workshop, Anaheim, CA, October 2003, pp. 45–49 (2003)Google Scholar
  12. 12.
    Ellis, C.A., Gibbs, S.J.: Concurrency Control in Groupware Systems. In: ACM SIG- MOD 1989 proceedings, Portland Oregon (1989)Google Scholar
  13. 13.
    Storey, M.-A., Michaud, J., Mindel, M., et al.: Improving the Usability of Eclipse for Novice Programmers. In: OOPSLA Workshop: Eclipse Technology Exchange Anaheim CA, pp. 35–39 (October 2003),
  14. 14.
  15. 15.
    Ho, C., Raha, S., Gehringer, E., Williams, L.: Sangam: A Distributed Pair Programming Plug-in for Eclipse. In: Eclipse Technology Exchange (Workshop) at the Object-Oriented Programming, Systems, Languages, and Applications, OOPSLA (2004)Google Scholar
  16. 16.
    Ozzie, R., O’Kelly, P.: Communication, Collaboration, and Technology: Back to the Future. White paper, Groove Networks (2003)Google Scholar
  17. 17.
    Roseman, M., Greenberg, S.: Network Places for Collaboration. In: Proc. ACM 1996 Conference on Computer Supported Cooperative Work., Boston, MA, pp. 325–333 (1996)Google Scholar
  18. 18.
    Hupfer, S., Cheng, L.T., Ross, S., Patterson, J.: Introducing Collaboration into an Application Development Environment. In: Proceedings of the ACM Conference on Computer Supported Cooperative Work, pp. 21–24 (2004)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2008

Authors and Affiliations

  • Hani Bani-Salameh
    • 1
  • Clinton Jeffery
    • 1
  • Ziad Al-Sharif
    • 1
  • Iyad Abu Doush
    • 2
  1. 1.University of IdahoUSA
  2. 2.New Mexico State UniversityUSA

Personalised recommendations