Profile picture for user mvd

In different post there was a requirement to annotate charts by the mashapp user to provide feedback or start a discussion about the KPI. This led me to an idea how this could be achieved

Providing feedback or comments about certain indicators is a very interesting use case. MashZone cannot save data itself; it is intended only to visualize data. So, I created a scenario where I used Google Docs as a storage for the comments provided by the MashZone users. So, let's see how it works.

Google Docs provides functionalities of Office applications like MS Word or MS Excel. But you do not have to install anything locally: it is all in the browser and the data is stored in the cloud (on Google servers).

Google Forms

Google Docs provides a specific feature named Google Forms, which offers a form for entering data by any user who has a link to the form (web site). The input data is stored into a Google Spreadsheet, which could be accessed as a CSV data feed by MashZone. Forms could be used for every kind of polls.

For using Google Docs, you need to have an Google account (e.g. Google Mail). After launching Google Docs (http://docs.google.com), we start by creating a new form. On the start site choose "Create New..." and then select "Form". You will see a simple forms editor. In the form, we want to have just two fields: One holding the user who entered the data and a second field for the comment.

Enter as question title "User" and select "Text" as question type and click done. Next we add a multi-line text field. So click on "Add item" and select "Paragraph text".

Finally, click on "Save".

In the bottom line there is a link for view the form. This link can be send to anybody and one can  used fit or for entering data. There is no need to have an Google account for accessing the form. Remember this URL for later usage in Mashzone.

The entered data is stored in an Excel-like spreadsheet. You can access it from you Google Docs start site in the "All items" list. There is one column for each question plus a time stamp column.

Now, we have an dialog for entering comments and we have a location where the data is saved. The data can accessed directly via URL.

Doing so, we have to publish the Google spreadsheet as a CSV file. This CSV file could be referenced via URL and thus be used in MashZone.

Put the data feed together

In Google Spreadsheet use Share --> Publish as web site to retrieve the right URL.

Copy the URL to the clipboard and then switch over to ARIS MashZone. We will now create the feed for accessing the comments online.

In the feed editor place a CSV data source and paste the URL in the URL text field. Finally, I converted the timestamp into internal Mashzone format and removed the quote characters from the comments.

To visualize the comments in my MashApp, I assign the feed to a table.

In my mashapp, I will insert a URL link to Google Forms. So, when a user clicks an the link (e.g. a text label as shown here), a second browser window with the form (see image no 3 in this post) will show up. The user enters his comment and just presses the Submit button of the form.

The mashapp may look like this:

 

 The label "Click here..." is actually a link to the Google forms. Doing this, click on the label and select the "World globe" button symbolizing the URL. Then check "Call external URL" and paste the view URL of your form. You find the URL at bottom of the form editor.

 I add some extra convenience here for the user providing a comment. In the form he has not to provide his login name, but I prepopulate the form with current user of Mashzone. For prepopulating a field in the form, the URL has to be appended by a value "entry_0=value". entry_0 is the first question of the form. To form a vaild URL precede "entry_" it with the ampersand character ('& #) .

The logged in user is not available directly, but I have created an other control that provides the login as its selection.

For this I added an combobox that displays only the value of a feed.

For the feed definition I build upon a new feature in the upcoming release MashZone 1.0.1, which returns the login user in an information object. The information object returns one single value that can be used for filtering. Here, I just convert it into feed. So, the result feed has exactly one column with one row.

 

At first glance, it seems to be quite complex. But building this is an effort of less than an hour. And according to the idea of mashup - it is just wiring together pieces of technology that are already in place.

There is one caveat for this solution: to access the data on Google Docs, the data has to be published to the public. Anybody who might guess the URL can access the data, so should rely on this solution for very sensitive data.

by Thierry Caro
Posted on Wed, 03/31/2010 - 10:27

It's true that storing information on company KPIs in the public domain can hit some sensibility (thinking about competition).   Thanks for this great post.

0
by Matt Green
Posted on Thu, 04/01/2010 - 10:00

Very nice Markus!  This is one of the best uses of Google Docs I have seen in a long time.

0
by Russell Gomersall
Posted on Thu, 04/15/2010 - 13:07

 Thanks for the great tip. I used it to build up a persistent repository for thresholds on KPI's etc..

So no sensitive data published, just a bit of flatfile memory for the forgetfull Mashzone.

Cheers,

Russell

0
by Sezgin Kaya
Posted on Sat, 03/12/2011 - 23:30

How could that long form of URL be guessed by any public user, unless somebody leaks the URL??? Is sensitivity a real issue here?

0
by Stephan Freudl
Posted on Mon, 03/14/2011 - 08:37

Sure, that way its security by obscurity which is always a bad idea. Therefore MashZone 2.1 will introduce Google Docs authentication. That way your docs remain accessible via your credentials, only. Please expect the next version soon.

0

Featured achievement

Rookie
Say hello to the ARIS Community! Personalize your community experience by following forums or tags, liking a post or uploading a profile picture.
Recent Unlocks

Leaderboard

|
icon-arrow-down icon-arrow-cerulean-left icon-arrow-cerulean-right icon-arrow-down icon-arrow-left icon-arrow-right icon-arrow icon-back icon-close icon-comments icon-correct-answer icon-tick icon-download icon-facebook icon-flag icon-google-plus icon-hamburger icon-in icon-info icon-instagram icon-login-true icon-login icon-mail-notification icon-mail icon-mortarboard icon-newsletter icon-notification icon-pinterest icon-plus icon-rss icon-search icon-share icon-shield icon-snapchat icon-star icon-tutorials icon-twitter icon-universities icon-videos icon-views icon-whatsapp icon-xing icon-youtube icon-jobs icon-heart icon-heart2 aris-express bpm-glossary help-intro help-design Process_Mining_Icon help-publishing help-administration help-dashboarding help-archive help-risk icon-knowledge icon-question icon-events icon-message icon-more icon-pencil forum-icon icon-lock