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
2. Outline
of
the
Talk
1
MoHvaHon
2
So/ware
Socialness
3
SSE
Framework
4
Research
Challenges
2
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. State
of
the
Art
of
User
Involvement…
…in
processes
…in
systems
• Conven9onal
soRware
• Heterogeneous,
vendor
processes
are
transac'onal
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. Consequence
1:
LiWle
or
no
indicators
about
real
so/ware
usage
Only
download
or
sales
numbers
7. Consequence
2:
Valuable
experiences
and
volunteered
resources
get
lost
Knowledgeable
users
are
unable
to
contribute
easily
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. Consequence
3:
Frustrated
users
can
harm
the
reputaHon
of
so/ware!
Users
organize
communi9es
against
the
soRware
12. Our
Vision
1. Revolutionizing the role of end users
2. Dissolve the boundaries to software engineers
3. Make software processes and systems social
12
13. Outline
of
the
Talk
1
MoHvaHon
2
So/ware
Socialness
3
SSE
Framework
4
Research
Challenges
13
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. Benchmarking
Socialness
CollaboraHve
Social
User
Involvement
So/ware
So/ware
TransacHonal
Popular
So/ware
So/ware
Community
Involvement
15
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. 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. Outline
of
the
Talk
1
MoHvaHon
2
So/ware
Socialness
3
SSE
Framework
4
Research
Challenges
18
19. Outline
of
the
Talk
1
MoHvaHon
2
So/ware
Socialness
3
SSE
Framework
Process
Architecture
19
20. SNAIL:
A
Social
So/ware
Engineering
Process
Systematic
Analysis
Engi-
neering
Decision
Proactive
Feedback
Update
User Observation
Community Observation
Time
20
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. 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. 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. 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. 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. 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. Outline
of
the
Talk
1
MoHvaHon
2
So/ware
Socialness
3
SSE
Framework
Process
Architecture
27
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. 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. 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. 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. 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. 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. Outline
of
the
Talk
1
MoHvaHon
2
So/ware
Socialness
3
SSE
Framework
4
Research
Challenges
34
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. Summary
of
the
Talk
• Degree of user and community "
So/ware
involvement in the software lifecycle
Socialness
• 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. For
Feedback,
QuesHons
and
CollaboraHon...
Walid Maalej
Dennis Pagano
maalejw@cs.tum.edu
pagano@cs.tum.edu
37