towards communities of practice for mashups

30
Dec 1st 2010 Towards Communities of Practice for Mashups Leif Singer Software Engineering Group Leibniz University Hannover, Germany [email protected]

Upload: mashups

Post on 01-Nov-2014

676 views

Category:

Documents


1 download

DESCRIPTION

by Leif Singer

TRANSCRIPT

Page 1: Towards Communities of Practice for Mashups

Dec 1st 2010

Towards Communities of Practice

for Mashups

Leif SingerSoftware Engineering Group

Leibniz University Hannover, [email protected]

Page 2: Towards Communities of Practice for Mashups

Leif Singer: Towards Communities of Practice for Mashups Dec 1st 2010

INTRODUCTION

2

Page 3: Towards Communities of Practice for Mashups

Leif Singer: Towards Communities of Practice for Mashups Dec 1st 2010

Introduction

• Leif Singer, PhD Student in Software Engineering

• Software Engineering is Processes, Practices and Tools– Waterfall, Agile, XP, Lean– Architecture, Design Patterns– Information Flow in Projects– Model-Driven Development

• me: End User Development (EUD)

• Position Paper: Work in Progress

3

Page 4: Towards Communities of Practice for Mashups

Leif Singer: Towards Communities of Practice for Mashups Dec 1st 2010

Introduction

• IT Projects in Enterprises: expensive, take a long time

• Actual Needs: right here & right now, I need to combine data from these three systems to do my job better today!– There must be a Long Tail here ...

• Excel fills this gap! – but badly (much copy & paste between systems)

• Needed: a tool for end-user-driven enterprise integration– Sorry.

4

Page 5: Towards Communities of Practice for Mashups

Leif Singer: Towards Communities of Practice for Mashups Dec 1st 2010

Introduction

• Different Approaches for EUD Mashups– most workflow-based, e.g. Yahoo! Pipes

• What about Business Users? – They know Spreadsheets! – exisiting, proven approaches (Karma, Mashroom, Spreadmash, ...)

• Halbert: spreadsheets don’t switch between programming & runtime– no need to visualize program flow– less of a cognitive burden on non-programmers– Tuchinda et al.: Spreadsheet Mashups better understood than workflow

mashups (by end users)

5

Page 6: Towards Communities of Practice for Mashups

Leif Singer: Towards Communities of Practice for Mashups Dec 1st 2010

Introduction

• How to build a Community of Mashup Creators – in an Enterprise Setting?

• Tools are not enough, need sociotechnical approach

• with Tools that– are easily accessible– connect users

• Users themselves determine their Engagement– use superficially: like Excel on the Web– use it to mix Services: as a simple Mashup Editor– use it to create new Tools!

6

Page 7: Towards Communities of Practice for Mashups

Leif Singer: Towards Communities of Practice for Mashups Dec 1st 2010

Introduction

• Nardi: EUD Communities work when tools support layered approach– accessible to users of different knowledge levels

7

no programming knowledge

professional programmers

tinkerersgardeners

Page 8: Towards Communities of Practice for Mashups

Leif Singer: Towards Communities of Practice for Mashups Dec 1st 2010

Introduction

• Nardi specifically on Spreadsheets:– Formulas are accessible by all– Macros used by Tinkerers

• A layered approach for a Mashup Editor? – Macro Language for Spreadsheet Mashup Tool

• Great Example: Surveys from Google Docs– Spreadsheets + a Survey-Layer on top– also: see Keynote, Google Apps Script in Spreadsheets :)

8

Page 9: Towards Communities of Practice for Mashups

Leif Singer: Towards Communities of Practice for Mashups Dec 1st 2010

Introduction

9

Page 10: Towards Communities of Practice for Mashups

Leif Singer: Towards Communities of Practice for Mashups Dec 1st 2010

Introduction

10

Page 11: Towards Communities of Practice for Mashups

Leif Singer: Towards Communities of Practice for Mashups Dec 1st 2010

Introduction

• But what good is such a tool if everyone works in isolation?

• Fischer et al.: Users will work together when finding out they are working on similar Problems

• Use Social Software to improve the Awareness between Coworkers

11

Like

I just created a new Mashup: Sales Report 2010. Take a Look!

Page 12: Towards Communities of Practice for Mashups

Leif Singer: Towards Communities of Practice for Mashups Dec 1st 2010

A SCENARIO

12

Page 13: Towards Communities of Practice for Mashups

Leif Singer: Towards Communities of Practice for Mashups Dec 1st 2010

A Scenario

• People copy and paste stuff from enterprise systems into Excel all the time– enable them to directly include them– less error-prone, much faster

• Mrs. Miller: sales person, writes personal letters to her best customers– uses ERP system to find those– uses CRM tool to find their addresses– copies addresses into spreadsheet, sends emails

13

Page 14: Towards Communities of Practice for Mashups

Leif Singer: Towards Communities of Practice for Mashups Dec 1st 2010

A Scenario

• Creates a mashup that collects all that data for her– SNS automatically generates message

• Her contact Mr. Slater sees the messages– takes a look – has no use for it, but likes the idea: clicks “like”

14

Like

Mrs. Miller: I just created a new Mashup: My Best Customers. Take a Look!

Like

Mrs. Miller: I just created a new Mashup: My Best Customers. Take a Look!

Page 15: Towards Communities of Practice for Mashups

Leif Singer: Towards Communities of Practice for Mashups Dec 1st 2010

A Scenario

• Mr. Smith is a contact of Mr. Slater, gets noticed of “like”

• Takes a look, thinks it would be useful– clicks “make my own copy”– changes zip code, names it “Best Customers for Birmingham”

• Mrs. Miller is is happy other people find stuff she made useful

15

Mr. Slater: I just liked a Mashup: My Best Customers.

Mr. Smith: I just copied the Mashup My Best Customers to a new one: Best Customers for Birmingham

Page 16: Towards Communities of Practice for Mashups

Leif Singer: Towards Communities of Practice for Mashups Dec 1st 2010

A Scenario

• Mr. Smith is a tinkerer, plays with Mashup tool, finds macro language– writes a macro that will send the email for him

• Mrs. Miller gets notified

• Cherry-picks the changes she wants (see GitHub.com)– need (semi-)automatic creation of independent commits (see e.g.

Hayashi and Saeki 2010)

16

Mr. Smith updated his Mashup Best Customers for Birmingham: “Send Email automatically”

Apply Change to My Best Customers?

Page 17: Towards Communities of Practice for Mashups

Leif Singer: Towards Communities of Practice for Mashups Dec 1st 2010

OUR PROGRESS

17

Page 18: Towards Communities of Practice for Mashups

Application Landscape

Adapters

Social Network Site

Web Scraper

Mashup Editor

SVN Adapter

SVN Repositories

Trac Adapter

Trac Instances

Feed Adapter

Newsfeeds

End User

Web Pages

Leif Singer: Towards Communities of Practice for Mashups Dec 1st 2010

Our Progress

18

Page 19: Towards Communities of Practice for Mashups

Leif Singer: Towards Communities of Practice for Mashups Dec 1st 2010

Our Progress

19

Page 20: Towards Communities of Practice for Mashups

!"#$%"&'()*+"'",%-'(),,'(+.'/)%+0*+.+"#$'+"0+',%)%",#$+'1"#$%')23'("+'(40)5",#$+0'/)%+0'(+.'62+77+ '*"+%+%8 '/), '*+(+2%+%- ' (),, '("+ '/)%+0- '("+ '(+. '9+02%:+. ' "0 '(+. ';)*+77+ ' ,"+$%- ' 0"#$%'20*+("0&%')<%2+77',"0(8'/)(2.#$'=".('+,'(+5'9+02%:+.'+.5>&7"#$%-',+"0+'?<%"@0+0')23',%+%,'(+5,+7*+0 ' /)%+0*+,%)0( ' (2.#$:23A$.+0 ' 20( ' ,@ ' B0(+.20&+0- ' ("+ ' &+%C%"&% ' =2.(+0- ' )23'(+0,+7*+0'/)%+0':2',+$+08'D5'E+&+0,)%:'():2',%A0(+'+"0+')2%@5)%",#$+'?<%2)7","+.20&':2'*+,%"55%+0 ' F+"%G20<%+0- ' =), ' )77+.("0&, ' ("+ ' H*+.,"#$%7"#$<+"% ' *+7),%+0 ' =A.(+8 ' ?7,'I@5G.@5",, '=".( '(+5'9+02%:+. '("+ 'J>&7"#$<+"% '&+&+*+0- '(+0 '/)%+0*+,%)0( '5)02+77 ' :2')<%2)7","+.+0-',@(),,')2#$'0+2+'/)%+0'*+"'9+().3'&+7)(+0'=+.(+0'<>00+08

!"# $%&'()*KA.'("+'9+02%:20&'"00+.$)7*'L@0'F+77+0',%+$+0'"0'(+0'&C0&"&+0';)*+77+0<)7<27)%"@0+0',+$.'L"+7+ '[email protected]+70 ':2. 'M+.3A&20&8 '1+7*,% '("+ ' D5G7+5+0%"+.20& '02. ' +"0+, '<7+"0+0 ';+"7, '("+,+,'K20<%"@0,253)0&, ' =A.(+ ' (+0 ' L+.3A&*).+0 ' N)$5+0 ' ,G.+0&+08 ' /)$+. ' ,@77 ' $"+. ' )23 ' +"0+'+.=+"%+.*).+ ' ?.#$"%+<%2. ' &+,+%:% ' =+.(+0 ' 20( ' 02. ' +"0"&+ ' =+0"&+ ' [email protected]+70 ' "5G7+5+0%"+.%'=+.(+08'/):2'&+$>.+0'("+'E.20(.+#$+0).%+0',@="+'("+'1255+0320<%"@08'?0$)0('("+,+.',@77'("+'O.=+"%+.*).<+"%'(+,'[email protected]+7253)0&,'(+5@0,%."+.%'20('"0'I)G"%+7'P8Q'*+,#$."+*+0'=+.(+08

9+"'(+.'O"0&)*+'L@0'[email protected]+70',@77 ',"#$'(),'R.@&.)55')0'(+.'(+.:+"% 'A*7"#$+0'140%)S'(+.'&C0&"&+0';)*+77+0<)7<27)%"@0+0'@."+0%"+.+08'F25'9+",G"+7'=+.(+0'[email protected]+70',%+%,'5"%'+"0+5'E7+"#$$+"%,:+"#$+0'*+&@00+08

!"+ ,%'-.*/0.%*1%2(&/0.%*(*9+"'(+.'I@5*"0)%"@0'L+.,#$"+(+0+.'62+77+0'*+("+0%',"#$'(),'I@0:+G%'(+.';)%,)#$+-'(),,'("+,+'TG+.)%"@0+0'"0'(+.'N+&+7')23'1#$+5)+*+0+'+.3@7&+0'20('0"#$%')23'/)%+0+*+0+-'()'("+,+'5+",%'(40)5",#$',"0('20('+"0+'M+.C0(+.20&')23'+"0:+70+0'/)%+0'20%+.'U5,%C0(+0'L+.7@.+0'&+$+0'=A.(+8'K@7&7"#$',@77%+'(+.'O("%@.'"00+.$)7*'(+.'1#$+5):+77+0'J>&7"#$<+"%+0'*"+%+0-'("+'3A.'

VW

!""#$%&'()**+),-./012)&'%)314/'1'5/#(/)#''/6.1$")%/6)71"/$$/

!""#$%&'()*8+)!'9#-.4)%/9):";/<4"6=>9/69

Leif Singer: Towards Communities of Practice for Mashups Dec 1st 2010

Our Progress

20

Page 21: Towards Communities of Practice for Mashups

Leif Singer: Towards Communities of Practice for Mashups Dec 1st 2010

Our Progress

21

Page 22: Towards Communities of Practice for Mashups

Leif Singer: Towards Communities of Practice for Mashups Dec 1st 2010

Our Progress

22

Application-Landscape

WebanwendungWeb Application WebanwendungSVN Repository WebanwendungWiki WebanwendungSOAP Service...

Adapters

Web Scraper SVN Adapter Wiki Adapter Service Adapter...

SNSActivity Stream Mashup Tool SNS Service API

End User

Page 23: Towards Communities of Practice for Mashups

Leif Singer: Towards Communities of Practice for Mashups Dec 1st 2010

REMAINING TASKS

23

Page 24: Towards Communities of Practice for Mashups

Leif Singer: Towards Communities of Practice for Mashups Dec 1st 2010

Remaining Tasks

• Categorization of Service Types– different requirements & uses

• Task Services– current VAT, Decision Services – possibly delayed, tied to roles, ...

• Entity Services– e.g. CRUD Operations

• Process Services– Processes have a State; User must be able to proceed in Process

• Feed Services– e.g. for the SNS Timeline

24

Page 25: Towards Communities of Practice for Mashups

Leif Singer: Towards Communities of Practice for Mashups Dec 1st 2010

Remaining Tasks

• Wrapper Services / Adapters

• some examples already developed (SVN, Trac, Feeds, ...)– from our domain

• Insight into real-world enterprise systems is missing– not easy to obtain

• An Approach for Adapters– not single technical solutions

25

Page 26: Towards Communities of Practice for Mashups

Leif Singer: Towards Communities of Practice for Mashups Dec 1st 2010

Remaining Tasks

• Mashup Editor still barebones– clean up needed– Macro Language– Visualizations of Results

• How to use the Service Types in the Editor? – can you create process mashups that users can then click through?

26

Page 27: Towards Communities of Practice for Mashups

Leif Singer: Towards Communities of Practice for Mashups Dec 1st 2010

CLOSING & DISCUSSION

27

Page 28: Towards Communities of Practice for Mashups

Leif Singer: Towards Communities of Practice for Mashups Dec 1st 2010

Closing

• A Spreadsheet-based Mashup Editor– supporting a Macro Language– integrated into a company-internal Social Network Site

• Make the Company’s Resources available via adapters– so End Users can do Data Integration

• Use Mechanisms from Social Software to build and support a Community of Practice for Mashups

28

Page 29: Towards Communities of Practice for Mashups

Leif Singer: Towards Communities of Practice for Mashups Dec 1st 2010

Discussion

• “Tools for making Tools”– More useful, more potential than mere problem solutions– Able to solve Problems that are still unknown– No Support in Mashup Editors for End Users? Google Spreadsheets!

• Have a Story on opening up Enterprise Silos? – Data Integrity, Confidentiality

• How to use Social Mechanisms in Research? – Do I have to prove the “Like”-Button works to use it?

• raise your hand or drop me a line :)– [email protected]– twitter.com/lsinger

29

Thank you for your attention!

Page 30: Towards Communities of Practice for Mashups

Leif Singer: Towards Communities of Practice for Mashups Dec 1st 2010

Attribution

• Faces taken from http://deleket.deviantart.com/art/Face-Avatars-107881096, published there under the "Attribution-Noncommercial-No Derivative Works 3.0 Unported" Creative Commons license: http://creativecommons.org/licenses/by-nc-nd/3.0/

30