• Like
An Architecture to Support Learning, Awareness, and Transparency in Social Software Engineering
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

An Architecture to Support Learning, Awareness, and Transparency in Social Software Engineering

  • 1,199 views
Published

 

Published in Technology , Education
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
    Be the first to like this
No Downloads

Views

Total Views
1,199
On SlideShare
0
From Embeds
0
Number of Embeds
1

Actions

Shares
Downloads
64
Comments
0
Likes
0

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide

Transcript

  • 1. An Architecture to Support Learning, Awareness, and Transparency in Social Software Engineering Wolfgang Reinhardt Sascha Rinne University of Paderborn Institute of Computer Science
  • 2. if you want to tweet #icl09 #mashl09 #mashl09_5D
  • 3. Social Software Engineering • ambivalent term • social activities represent a substantial part of daily development work • developers not only communicate, they connect through shared artefacts • social connections to people inside and outside the project © Wolfgang Reinhardt, University of Paderborn • other projects, knowledge bases, bulletin boards, developer lists etc. • domain experts do often not reside within the own organisation 3 Wolfgang Reinhardt
  • 4. Learning and KM in software projects © Wolfgang Reinhardt, University of Paderborn • learning and understanding takes place by sharing of information and ad hoc exchange of short messages • inter-project networks are very important for learning in groups 4 Wolfgang Reinhardt
  • 5. Collaborative Development Environments (CDE) „A virtual space wherein all stakeholders of a project - even if distributed by time or distance - may negotiate, brainstorm, discuss, share knowledge, and generally labor together to carry out some task, most often to create an executable deliverable and its supporting artifacts“ Booch & Brown, 2003 © Wolfgang Reinhardt, University of Paderborn • mostly focussed on one single project • support most stages of a developer‘s work • several stages of maturity, most mature CDEs „encourage a vibrant community of practice“ 5 Wolfgang Reinhardt
  • 6. Existing approaches • Trac and Assembla • Focussed on single projects • Lists of recent actions • Sourceforge and Github © Wolfgang Reinhardt, University of Paderborn • sites that handle multiple projects • free and paid hosting • main tools for software development included (tracker, version control, file mgmt.) 6 Wolfgang Reinhardt
  • 7. Lack of Transparency and Awareness • many systems / tools used during software project • lists of events are hard to understand • many events not interesting for all people involved • common focus on single projects, no support for project-spanning exchange © Wolfgang Reinhardt, University of Paderborn • no easy way of finding domain experts and contact persons • community often resides outside the hosting platform • found help is externalised somewhere else, cannot be reused 7 Wolfgang Reinhardt
  • 8. Solution Design
  • 9. Basic ideas and goals • Platform that hosts multiple projects • easy creation of new project for anyone • allowing project-spanning exchange of expert knowledge and experiences • embedding in a vibrant community © Wolfgang Reinhardt, University of Paderborn • Mashups as design pattern • leaving subsystems as they are and integrate events • enhancing artefact- and person awareness and make process more understandable and transparent 9 Wolfgang Reinhardt
  • 10. Organisational Requirements • embedding of project-related activities in a community-context • Community-embedded Cooperative Development Environment (CCDE) • easy adding of new developers • using commonly well-known software without making adaptions to it © Wolfgang Reinhardt, University of Paderborn • automatic creation of instances of all required tools • allowing project-spanning expert exchange 10 Wolfgang Reinhardt
  • 11. Data sources in SE projects • Repository • Instant Messaging • Issue Tracker • Audio/Video-Conferencing • Wiki • Social Bookmarks • Roadmap Planning • RSS Feeds © Wolfgang Reinhardt, University of Paderborn • Blog / Microblog • Bulletin boards • E-Mail • Shared Whiteboards • Calendar • ........ 11 Wolfgang Reinhardt
  • 12. Mashup as design pattern • using standard software to meet organisational and technical requirements • Repository: Subversion • Wiki: MediaWiki • Blog: Wordpress © Wolfgang Reinhardt, University of Paderborn • Microblog: StatusNet aka Laconi.ca • Issue Tracker, Roadmap planning, source code browser: Trac • integration via a meta-navigation bar 12 Wolfgang Reinhardt
  • 13. Event-based architecture • subsystems serve as EventProvider • adapter provides basic event data for eCopSoft core • analyzers investigate according action / artefact more deeply • semantical analysis of text-based artefacts, code-analysis and people © Wolfgang Reinhardt, University of Paderborn tagging • IntegrationLayer • association of events / users / projects • provides the API 13 Wolfgang Reinhardt
  • 14. Semantic Web Approaches • storage of all users and events in Artefact-Actor-Network • layers of systems consolidated artefact network • semantical relations between artefact / users consolidated social network • interconnecting project spaces © Wolfgang Reinhardt, University of Paderborn isReferencedBy isSupervisorOf referencing isSupervisedBy Organization isUsed owner isAuthor modfier uses Projectspace A Projectspace B Projectspace C 14 Wolfgang Reinhardt
  • 15. Overall architecture (very schematical) © Wolfgang Reinhardt, University of Paderborn 15 Wolfgang Reinhardt
  • 16. Creating Awareness & Transparency © Wolfgang Reinhardt, University of Paderborn 16 Wolfgang Reinhardt
  • 17. Widget-like User Interface © Wolfgang Reinhardt, University of Paderborn 17 Wolfgang Reinhardt
  • 18. What is still to do?
  • 19. Conclusion • embedding a CDE into a community • supporting knowledge sharing and individual learning through ad-hoc communication © Wolfgang Reinhardt, University of Paderborn • Mashup of various well-known tools to support the development process • connecting multiple separate projects 19 Wolfgang Reinhardt
  • 20. Outlook • End implementation ;) • Complex Event Processing (CEP) • aggregate events to gain a deeper understanding or to alarm people in the project (traffic light system) © Wolfgang Reinhardt, University of Paderborn • field test of the platform with student groups at UPB • roll out as open platform for all students, employees and working groups at the UPB • assess the usage and quality of project-spanning helps • Web-based and Desktop Widgets that allow staying up-to-date 20 Wolfgang Reinhardt
  • 21. Thank you Want to know more? http://twitter.com/wollepb http://isitjustme.de http://artefact-actor-networks.net Wolfgang Reinhardt University of Paderborn Institute of Computer Science Working Group Didactics of Informatics http://ddi.upb.de
  • 22. Image sources • http://de.fotolia.com/id/3805293 • http://www.sxc.hu/photo/282237 • http://www.sxc.hu/photo/1011829 • http://www.sxc.hu/photo/317067 23