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




Wolfgang Reinhardt
Sas...
if you want to tweet
#icl09

#mashl09

#mashl09_5D
Social Software Engineering
• ambivalent term


• social activities represent a substantial part of daily development work...
Learning and KM in software projects




                                                                                 ...
Collaborative Development Environments (CDE)
 „A virtual space wherein all stakeholders of a project - even if distributed...
Existing approaches
• Trac and Assembla


  • Focussed on single projects


  • Lists of recent actions


• Sourceforge an...
Lack of Transparency and Awareness
• many systems / tools used during software project


• lists of events are hard to und...
Solution Design
Basic ideas and goals
• Platform that hosts multiple projects


   • easy creation of new project for anyone


• allowing ...
Organisational Requirements
• embedding of project-related activities in a community-context


   • Community-embedded Coo...
Data sources in SE projects
• Repository                  • Instant Messaging


• Issue Tracker               • Audio/Vide...
Mashup as design pattern
• using standard software to meet organisational and technical requirements


   • Repository: Su...
Event-based architecture
• subsystems serve as EventProvider


   • adapter provides basic event data for eCopSoft core


...
Semantic Web Approaches
• storage of all users and events in Artefact-Actor-Network


   • layers of systems
             ...
Overall architecture (very schematical)




                                               © Wolfgang Reinhardt, Universit...
Creating Awareness & Transparency




                                         © Wolfgang Reinhardt, University of Paderbo...
Widget-like User Interface




                                  © Wolfgang Reinhardt, University of Paderborn
           ...
What is still to do?
Conclusion


• embedding a CDE into a community


  • supporting knowledge sharing and individual learning through ad-hoc
...
Outlook
• End implementation ;)


• Complex Event Processing (CEP)


   • aggregate events to gain a deeper understanding ...
Thank you
Want to know more?
http://twitter.com/wollepb
http://isitjustme.de
http://artefact-actor-networks.net




      ...
Image sources
•   http://de.fotolia.com/id/3805293



•   http://www.sxc.hu/photo/282237



•   http://www.sxc.hu/photo/10...
An Architecture to Support Learning, Awareness, and Transparency in Social Software Engineering
Upcoming SlideShare
Loading in …5
×

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

1,480 views

Published on

Published in: Technology, Education
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
1,480
On SlideShare
0
From Embeds
0
Number of Embeds
6
Actions
Shares
0
Downloads
66
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

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

  1. 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. 2. if you want to tweet #icl09 #mashl09 #mashl09_5D
  3. 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. 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. 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. 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. 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. 8. Solution Design
  9. 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. 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. 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. 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. 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. 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. 15. Overall architecture (very schematical) © Wolfgang Reinhardt, University of Paderborn 15 Wolfgang Reinhardt
  16. 16. Creating Awareness & Transparency © Wolfgang Reinhardt, University of Paderborn 16 Wolfgang Reinhardt
  17. 17. Widget-like User Interface © Wolfgang Reinhardt, University of Paderborn 17 Wolfgang Reinhardt
  18. 18. What is still to do?
  19. 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. 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. 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. 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

×