Skip to main content

Teaching and Learning in a Social Software Development Tool

  • Chapter
  • First Online:

Abstract

The best practices in the education of software developers require substantial interactions between educator and student, and between students in team projects. Because many students are remote, and colocated students often have different work schedules, their educational needs mirror the needs of distributed software developers. These needs include collaboration tools that replicate the benefits of face-to-face meetings, support real-time tasks such as pair programming, and facilitate asynchronous project-focused communication among team members. Software researchers have invented various development tools that integrate collaborative features. Unfortunately, most of the available collaborative tools have specialized capabilities, such as source-code editing, and developers face numerous collaboration and communication challenges in working with each other.

This chapter presents the core idea and novel design and implementation techniques for a collaborative integrated software development environment with social networking features. The tool, named Social Collaborative IDE (SCI), enables developers to interact with each other within a 3D virtual world. The research results include solutions to problems associated with providing distributed awareness and presence information. SCI addresses the communication and collaboration needs in a variety of different phases in a team software development process, unifies the concepts of social networking and collaborative Integrated Development Environment (IDE), and integrates presence information and collaborative development tools into a single environment.

The SCI system provides software development communities with social activity, presence, and awareness information of team members, other teams, active projects, and current debugging and coding sessions. It also assists developers to find appropriate assistance from inside the development environment. This chapter covers the technical issues in the design and implementation of SCI.

This is a preview of subscription content, log in via an institution.

Buying options

Chapter
USD   29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD   84.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD   109.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info
Hardcover Book
USD   109.99
Price excludes VAT (USA)
  • Durable hardcover edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Learn about institutional subscriptions

References

  • Annetta, L., Holmes, A.S.: Creating presence and community in a synchronous virtual learning environment using Avatars. Int. J. Instr. Technol. Distance Learn 27–43 (2006)

    Google Scholar 

  • Bouillon, P., Krinke, J., Lukosch, S.: Software engineering projects in Distant Teaching. In: 18th Conference on Software Engineering Education & Training, pp. 147–154 (2005)

    Google Scholar 

  • Chacon, S.: Pro Git. Apress, 2009. Available from http://progit.org/book/

  • Cheng, L., de Souza, C., Hupfer, S., Patterson, J., Ross, S.: Building Collaboration into IDEs. ACM Queue 1, pp. 40–50 (2003–2004)

    Google Scholar 

  • Cheng, L., Hupfer, S., Ross, S., Patterson, J., Clark, B., de Souza, C.: Jazz: a collaborative application development environment. In: 18th Annual ACM SIGPLAN Conference on Object Oriented Programming Systems Languages and Applications, pp. 102–103. Anaheim (2003)

    Google Scholar 

  • CodeBeamer. http://www.intland.com and http://www.codebeamer.com

  • Collaborative Development Environment Using Visual Studio. http://research.microsoft.com/enus/projects/collabvs/default.aspx

  • Cook, C.: Towards computer-supported collaborative software engineering, PhD Thesis, University of Canterbury, Christchurch (2007)

    Google Scholar 

  • Cubranic, D., Storey, M.A.: Collaboration support for Novice Team Programming. In: ACM GROUP’05, pp. 136–139 (2005)

    Google Scholar 

  • CVS, Concurrent Version System. http://www.nongnu.org/cvs

  • Dourish, P., Bellotti, V.: Awareness and coordination in shared workspaces. In: CSCW, ACM (1992)

    Google Scholar 

  • Eclipse Platform Technical Overview, Object Technology International Incorporated. http://www.eclipse.org/whitepapers/eclipse-overview.pdf (2003)

  • Garrison, D.R., Anderson, T., Archer, W.: Critical inquiry in a text-based environment: computer conferencing in higher education. Internet Higher Educ 2(2–3), 87–105 (2000)

    Google Scholar 

  • Gunawardena, C., Zittle, F.: Social presence as a predictor of satisfaction within a computer-mediated conferencing environment. Am J Distance Educ 11(3):8–26 (1997)

    Google Scholar 

  • Gutwin, C., Greenberg, S.: Workspace awareness for groupware, Conference on Human Factors in Computing Systems, ACM, New York, pp. 208–209 (1996)

    Google Scholar 

  • Gutwin, C., Penner, R., Schneider, K.: Group awareness in distributed software development. In: ACM Conference on Computer Supported Cooperative Work, pp. 72–81. Chicago (2004)

    Google Scholar 

  • Hegde, R.: Collaborative Development Environment using Visual Studio. Available at http://research.microsoft.com/en-us/projects/collabvs/ (2009)

  • Herbsleb, J.D., Grinter, R.E.: Architectures, coordination, and distance: conway’s law and beyond. IEEE Softw. 16(5), 63–70 (1999)

    Article  Google Scholar 

  • 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 

  • Kobylinski, R.: Building group awareness in distributed software development projects, PhD Thesis, Technische Universität München (2005)

    Google Scholar 

  • McKinney, D., Denton, L.: Developing collaborative skills early in the CS curriculum in a laboratory environment. In: 37th SIGCSE Technical Symposium on Computer Science Education, pp. 138–142. Houston (2006)

    Google Scholar 

  • Ripley, R., Sarma, A., Van der Hoek, A.: Workspace awareness in application development. In: Eclipse Technology eXchange Workshop, pp. 17–21. Vancouver (2004)

    Google Scholar 

  • Sarma, A., Noroozi, Z., der Hoek, A. Palantír: Raising awareness among configuration management workspaces. In: Twenty-fifth International Conference on Software Engineering, pp. 444–454. Portland, (2003)

    Google Scholar 

  • Schneider, K., Gutwin, C., Penner, R., Paquette, D.: Mining a software developer’s local interaction history. In: International Workshop on Mining Software Repositories (MSR). Saint Louis (2005)

    Google Scholar 

  • Schümmer, T.: Lost and found in software space. In: 34th Annual Hawaii International Conference on System Sciences (HICSS-34), vol. 9 (2001)

    Google Scholar 

  • Short, J., Williams, E., Christie, B.: The Social Psychology of Telecommunications. Wiley, London (1976)

    Google Scholar 

  • SourceForge.net. http://sourceforge.net/

  • Storey, M.A., Michaud, J., Mindel, M. et al.: Improving the usability of eclipse for Novice Programmers. In: OOPSLA Workshop: Eclipse Technology Exchange, pp. 35–39. Anaheim (2003)

    Google Scholar 

  • SVN, Subversion. http://subversion.tigris.org

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Hani Bani-Salameh .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2011 Springer-Verlag Berlin Heidelberg

About this chapter

Cite this chapter

Bani-Salameh, H., Jeffery, C. (2011). Teaching and Learning in a Social Software Development Tool. In: White, B., King, I., Tsang, P. (eds) Social Media Tools and Platforms in Learning Environments. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-20392-3_2

Download citation

  • DOI: https://doi.org/10.1007/978-3-642-20392-3_2

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-642-20391-6

  • Online ISBN: 978-3-642-20392-3

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics