On the Socialness of Software

1,537 views

Published on

Conventional software engineering processes are rather transactional and lack a common theory for the involvement of users and their communities. Users are regarded as pure consumers, who are, at most, able to report issues. In the age of easy knowledge access and social media, discounting the users of software might threaten its success. Potentially valuable experiences and volunteered resources get lost. Frustrated users might even meet in social communities to argue against the software and harm its reputation.
The goal of this research is to revolutionize the role of users, dissolving the boundaries to software engineers. We propose a novel framework for increasing the software socialness, being the degree of user and community involvement in the software lifecycle. Our framework consists of a benchmark, a process, and a reference architecture. The benchmark includes metrics for assessing and monitoring software socialness. The process enables engineering teams to systematically gather and exploit user feedback in the software lifecycle. The context aware reference architecture integrates social media into software systems and the engineering infrastructure. It observes users’ interactions while they use the software and proactively collects in situ feedback.
(paper

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

No Downloads
Views
Total views
1,537
On SlideShare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
20
Comments
0
Likes
2
Embeds 0
No embeds

No notes for slide

On the Socialness of Software

  1. 1. On  the  Socialness  of  So/ware   Walid  Maalej  –  UTS  /  HCTD  –  Dec.    2011   1  
  2. 2. Outline  of  the  Talk   1   MoHvaHon   2   So/ware  Socialness     3   SSE  Framework   4   Research  Challenges   2  
  3. 3. User  Involvement  is  CriHcal  for  the  Success  of  So/ware  Projects   Reasons  for  canceled  projects   Factors  of  success   Incomplete  Requirements   13%   Customer/User  involvement   16%   No  customer  requirements   12%   Ex.  Management  support   14%   Lack  of  resources   11%   Clear  Statement  of     13%   Unrealis9c  expecta9ons   10%   requirements   Uncontrolled  changes  of     9%   Proper  planning   10%   requirements   Realis9c  expecta9ons   8%   [Standish  Group  2003,    recent  studies  with  similar  results]   3  
  4. 4. State  of  the  Art  of  User  Involvement…   …in  processes   …in  systems   •  Conven9onal  soRware   •  Heterogeneous,  vendor   processes  are  transaconal   specific  feedback  interfaces   regarding  users  are  pure   •  User  input  is  difficult  to   consumers   provide  since  full  context   •  Users  involved  in   informa9on  must  be  entered   requirements  ac9vi9es   •  There  is  no  feedback  on  the   •  “2nd  class  ci9zen”   user  feedback   Serious  problems  can  emerge  from  this  situa9on   [Maalej  et  al.  OOPSLA  2009]   4  
  5. 5. Consequence  1:  LiWle  or  no  indicators  about  real  so/ware  usage   Only  download  or  sales  numbers  
  6. 6. 6  
  7. 7. Consequence  2:  Valuable  experiences  and  volunteered  resources  get  lost   Knowledgeable  users  are  unable  to   contribute  easily    
  8. 8. Eric  von  Hippel  of  M.I.T.,  leR,  and  Nathaniel  Sims,  with  hospital  devices  Sims  has  modified.  Von  Hippel  says  users  can  improve  on  products.   [The  New  York  Times,  2007]   8  
  9. 9. Consequence  3:  Frustrated  users  can  harm  the  reputaHon  of  so/ware!   Users  organize  communi9es  against   the  soRware  
  10. 10. 10  
  11. 11. 11  
  12. 12. Our  Vision  1.  Revolutionizing the role of end users 2.  Dissolve the boundaries to software engineers3.  Make software processes and systems social 12  
  13. 13. Outline  of  the  Talk   1   MoHvaHon   2   So/ware  Socialness     3   SSE  Framework   4   Research  Challenges   13  
  14. 14. Socialness  of  So/ware   Socialness  is  the  degree  of  involvement  of  its  users  and  their   communi3es  in  the  so4ware  lifecycle   User  involvement   •  AcHvely  work  on  specific  project  ac9vity   (e.g.  tes9ng,  documenta9on,  development)   •  Influence  management  or  engineering  decision     (e.g.  give  feedback,  vote)   Community  involvement   •  Externalize  important  knowledge   •  Share  common  interests   14  
  15. 15. Benchmarking  Socialness   CollaboraHve     Social    User  Involvement   So/ware   So/ware   TransacHonal   Popular     So/ware   So/ware   Community  Involvement   15  
  16. 16. Measuring  User  Involvement   ContribuHon     Quality   How  is  the  quality  of   the  contribu9on?   2   ContribuHon     1   Explicitness   ContribuHon     Is  the  contribu9on   Means   Individual   explicit  (intended)  or   Metrics     implicit?   Is  the  contribu9on     integrated  into  the   work  environment?     3   4   ContribuHon   Time   Does  the  contribu9on     occur  during  the  user  tasks?   16  
  17. 17. Measuring  Community  Involvement   Community     Size   How  many  members   does  the  soRware   community  have?   Community     2   AcHvity   1   How  is  the   Community     communica9on     AWracHveness   Community     Community     volume  and  topic   Metrics     Metrics     How  is  the  ra9o  of   varia9on  in  the   member  gain  and   community?   member  loss?   3   4   Community   Interweaving   How  is  the  ra9o  of  contributors   in  the  whole  community?   17  
  18. 18. Outline  of  the  Talk   1   MoHvaHon   2   So/ware  Socialness   3   SSE  Framework   4   Research  Challenges   18  
  19. 19. Outline  of  the  Talk   1   MoHvaHon   2   So/ware  Socialness   3   SSE  Framework   Process   Architecture     19  
  20. 20. SNAIL:  A  Social  So/ware  Engineering  Process   Systematic Analysis Engi- neering Decision Proactive Feedback Update User Observation Community Observation Time 20  
  21. 21. SNAIL:  A  Social  So/ware  Engineering  Process   Con9nuous  gathering  of   context  informa9on  to   understand  circumstances   Systematic under  which  a  user   Analysis provides  feedback   Engi- neering Decision Proactive Feedback Update User Observation Community Observation Time 21  
  22. 22. SNAIL:  A  Social  So/ware  Engineering  Process   Systema9c  observa9on  of   user  communi9es  to   gather  input  and  benefit   Systematic from  social  dynamics   Analysis Engi- neering Decision Proactive Feedback Update User Observation Community Observation Time 22  
  23. 23. SNAIL:  A  Social  So/ware  Engineering  Process   Proac9vely  ask  users  to   provide  individual  and   social  feedback  to  improve   Systematic soRware  (e.g.  in  problem   Analysis situa9ons)   Engi- neering Decision Proactive Feedback Update User Observation Community Observation Time 23  
  24. 24. SNAIL:  A  Social  So/ware  Engineering  Process   Reduce  the  amount  of   informa9on  for  engineers   and  iden9fy  conflic9ng   Systematic preferences   Analysis Engi- neering Decision Proactive Feedback Update User Observation Community Observation Time 24  
  25. 25. SNAIL:  A  Social  So/ware  Engineering  Process   Give  users  the  possibility   to  influence  ac9ons   triggered  by  the  analysis   Systematic (e.g.  vote,  rate,  comment)   Analysis Engi- neering Decision Proactive Feedback Update User Observation Community Observation Time 25  
  26. 26. SNAIL:  A  Social  So/ware  Engineering  Process   Inform  users  about   engineering  decisions  and   ra9onale  and  propagate   Systematic changes  to  soRware   Analysis Engi- neering Decision Proactive Feedback Update User Observation Community Observation Time 26  
  27. 27. Outline  of  the  Talk   1   MoHvaHon   2   So/ware  Socialness   3   SSE  Framework   Process   Architecture     27  
  28. 28. FastFix  Reference  Architecture   Applica9on  Usage     Target  Applica9on   Environment   Social  Engineering  Client   Social   Context   User  Feedback   System   System   Media   Communica9on  System   Social  Media  Bridge   Social  Engineering  Center   Communica9on  System   Social  Media  Bridge   User  Feedback  Analysis   Back-­‐Feedback   Community   System   System      Center   Applica9on  Engineering  Environment     28  
  29. 29. Context  ObservaHon  and  Processing   AddiHonal     feedback  InteracHon     Feedback  ReporHng  Interface   Ontology   interact   Context  System   trigger    problem    P  roblem   problem   ApplicaHon     sensors   ElicitaHon   events   Session-­‐   izaHon  ExecuHon   OS     Exec.  Env.  Ontology   update   sensors   sensors   User  Profile   www.teamweaver.org   www.fasaixproject.eu     29  
  30. 30. Unified  Interface  for  User  Feedback   SNAIL Feedback Report Provide feedback Use this form to report on your experience. I did not understand the export dialog. It said export to, but instead it only saved the document to the specified folder. Tag your report Use tags to help other users find your report and to help engineers understand your experience. export, usability, difficulty Mark similar reports SNAIL has found reports that are similar to yours. Help to focus by selecting relevant similar reports. Show similar reports Share with the community I agree to make this experience report public to create awareness about my experience in the community. Context information included This report will contain additional context information that helps to understand your experience. Show additional information 30  
  31. 31. Community  Center  on  Social  Media   SNAIL Community Center Help others Development corner Future directions Help other users with Contribute to make the Influence the future their problems. software better. development directions. Documentation Feature request list Request feature Discussions List of known errors Vote on features Knowledgebase Source code repository Vote on release plan Get information Provide feedback Test bed Browse through the know- Report on your exper- Perform tests of early ledgebase or ask questions. ience. versions. Documentation Report error Beta download page Discussions Request modification Release plan Knowledgebase Report experience Source code repository 31  
  32. 32. Example  of  Community  Center  FuncHonality     SNAIL Feature Requests Influence future directions On this page you can request new features and vote on existing ones. Request new feature Creator: 1746 Add a PDF export feature. Currently files can only be saved in the proprietary SNL votes format. Interchange with other platforms would be a very Dennis !"# important feature. Add comment View comments (17 features) Creator: 1031 It would be helpful to be able to compare two documents. Currently this is only possible using a workaround. votes Walid !"# Add comment View comments (19 features) 32  
  33. 33. Example  of  User  Feedback  Analysis   SNAIL Social Analytics Documentation statistics This page shows statistics about the documentation of SNAIL written by users. Documented Features 2000 1000 April 2011 May 2011 June 2011 July 2011 Visualization options Overall statistics By component 33  
  34. 34. Outline  of  the  Talk   1   MoHvaHon   2   So/ware  Socialness   3   SSE  Framework   4   Research  Challenges   34  
  35. 35. Challenges  for  So/ware  Socialness   Scalability   Huge  amount  of  gathered   Cultural  Issues   (unstructured)  data     ContribuHon  Quality   complicates  manual     Accep9ng  users  as   Unpredictable   analysis   contributors  requires  a   content  and  varying   paradigm  shiR  in   quality,  complicates  commercial  organiza9ons   automated  analysis   Different  types   of  challenges     Human  Issues   Conflict  ResoluHon   Ensure  the  privacy  of   Conflic9ng  preferences  users,  giving  incenHves  to   IntegraHon   and  input,  complica9ng   contribute  in  a  usable   manual  iden9fica9on  and   Diverse  systems  and   non-­‐intrusive  manner   resolu9on  techniques   technologies  have  to  be   monitored  and  integrated     35  
  36. 36. Summary  of  the  Talk   •  Degree of user and community " So/ware   involvement in the software lifecycleSocialness   •  Benchmark for assessing socialness " Making  user   of software involvement     and  user   •  Social engineering process (SNAIL) " communiHes     SSE   involves users thoroughly and continuously Framework   •  Reference architecture integrated into target a  first  order   application and engineering environment concern  of   so/ware   systems  and   •  Main challenges are in the systematic processes  Challenges   analysis of continuous user feedback •  Other cultural and human challenges 36  
  37. 37. For  Feedback,  QuesHons  and  CollaboraHon...   Walid Maalej Dennis Pagano maalejw@cs.tum.edu pagano@cs.tum.edu 37  

×