<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Archiving and Interchange DTD v1.0 20120330//EN" "JATS-archivearticle1.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink">
  <front>
    <journal-meta />
    <article-meta>
      <title-group>
        <article-title>Collaborative Working Solutions based on Web Technologies powered by the Webinos platform</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Javier Caminero</string-name>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Julio Iván Alegre Torrejón</string-name>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Mari Carmen Rodríguez-Gancedo Telefónica R</string-name>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Madrid</string-name>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Spain</string-name>
        </contrib>
      </contrib-group>
      <abstract>
        <p>Nowadays, there are many applications that make it possible the information sharing, but many current solutions may lack of security or depend on centralized servers with unclear privacy policies and even they may not be available for running on any device. For business purposes, the use of certain existing applications can be risky and unreliable and even many costly commercial solutions have some of the mentioned problems. Webinos FP7-funded project has created an innovative platform able to work in different application domains and running on different operating systems. This paper is focused on how collaborative working applications can be developed based on the webinos open-source platform in the mobile domain and presents 'Creative Notes' application, an innovative solution for collaborative working able to run on many heterogeneous devices. This platform provides a secure framework, able to run on different devices, without the need of central servers for information storage and it works in an asynchronous way.</p>
      </abstract>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>-</title>
      <p>Permission to make digital or hard copies of all or part of this work for
personal or classroom use is granted without fee provided that copies are
not made or distributed for profit or commercial advantage and that copies
bear this notice and the full citation on the first page. To copy otherwise, or
republish, to post on servers or to redistribute to lists, requires prior specific
permission and/or a fee.</p>
      <p>ABOUT WEBINOS
With a “single service for every device” vision, webinos
intends to move the existing baseline of web development
from installed applications to services running consistently
across a wide range of connected devices, ensuring that the
technologies for describing, negotiating, securing, utilizing
device functionalities and context adaptation are fit for
purpose.</p>
      <p>Innovations in contextual description will be broad,
covering but not limited to device capabilities, network
access, user identity and preferences, location,
behaviourally induced properties and finally the more
complex issue of the users’ social network context and
social media engagement.</p>
      <p>Webinos will boost the industry migration towards
webbased services. Webinos can back this by providing
interoperable, standardized, open source technology utilizable
across domains with direct commercially exploitable value.
Webinos will also act as an industry catalyst to encourage
collaboration and discourage fragmentation in this space.
There are strong industry moves towards Internet friendly
and Internet integrated offerings, and there exists a window
of opportunity to place the webinos technology on a robust
open foundation that will remove economic barriers to
engagement, embody policy on data privacy in concrete
technology and creating a centre of web centric expertise.</p>
    </sec>
    <sec id="sec-2">
      <title>Webinos features the following key concepts:</title>
      <p>The resulting platform features web components that
support the rapid creation of innovative and secure web
applications, where
•
•
•
•
•
services can be used in several contexts across all
user devices,
services can make use of the specific capabilities
and resources the underlying hardware platform
provides,
services can securely access private and
nonprivate data and services on the cloud, social web,
as well as data on the user terminal,
services are developed once by service providers
and deployed anywhere, and
manufacturers and network operators have a
service platform constituted by open standards and
open source, which satisfies the requirements of
the four domains: mobile, PC, Home media and
in-car units.</p>
      <p>Webinos will directly address security and privacy issues as
part of Quality of Service that users of web services expect.
The addressed challenges comprise: how to provision and
adapt security across a range of devices, services, networks
as well as how individuals can gain control over the privacy
aspects of their web presence regardless of the service that
is being used. Context and privacy are intimately
intertwined: rich context is valuable but without user
controlled privacy it becomes a liability. This dual approach
is a hallmark of the webinos approach.</p>
      <p>WEBINOS ARCHITECTURE
Webinos architecture (see Figure 1) is based on the concept
of personal zones. A personal zone includes all the devices
associated to a specific user and it provides a framework for
managing all these devices, together with the services able
to run on them.</p>
      <p>The goal of webinos is to provide a multi-device,
multiuser, multi-domain, web-enabled federated framework.
Multi-device means all your devices can easily ‘talk’ to
each other. Multi-user indicates you can contact your
friends’ services too. Multi-domain shows that webinos is
tailored towards different environments, as your car can do
other stuff than your TV but they both can be
webinosenabled. Then, web-enabled means you program it using
web technologies: HTML5, CSS and JavaScript. Finally,
federated indicates different domains can exchange
messages, much like email. Everything is done in a secure
way as well.</p>
      <p>Now, if we forget other users and focus on our own
devices, i.e. if you had a mobile, a STB and a laptop,
together these form your Personal Zone. This zone is
‘managed’ by a single Personal Zone Hub (PZH). Your
devices all have a Personal Zone Proxy (PZP) embedded in
them.</p>
      <p>Programming for webinos is not much different than
programming for the web using some advanced HTML5
features and when invoking methods on remote services,
the PZP forwards the marshaled request to the PZH, which
in turn finds the correct PZP. If that PZP belongs to a
different Personal Zone, it determines the corresponding
PZH and forwards the request to that. This whole process is
under strict policy control and may be forbidden at any step
of the way.</p>
      <p>The interaction between devices is implemented through a
common discovery service, an App2App service and an
event system. The discovery service is in charge of finding
the services offered by remote devices, and once they have
been identified, accessing them through specific APIs. The
event system is used for solving the different
communication needs among the applications. An
application could either publish its own events or subscribe
to a type of event published by others. An alternative to the
events system is the App2App service in which the user can
subscribe to determined channel.</p>
      <p>
        Webinos offers different APIs that can be categorized as
follows (see [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ] for further details regarding APIs
specification):
•
      </p>
      <p>Webinos base and generic objects/interfaces: for
example, the Webinos core module that defines a
common interface which all Webinos APIs can be
accessed through.</p>
      <p>APIs for service discovery and remote access:
APIs allowing applications to discover other
devices and services/applications on other devices
and on network servers.</p>
      <p>Hardware resources APIs: APIs to access
information and functionality relating to specific
device hardware such as GPS, camera,
microphone, sensors, etc.</p>
      <p>Application data APIs: application capabilities
such as contact items, calendar information,
messages, files, etc.</p>
      <p>Communication APIs: APIs allowing applications
to communicate with other applications in the
same or another device.</p>
      <p>Application execution APIs: in order to let
Webinos applications to launch other Webinos and
native applications.</p>
      <p>User profile and context APIs: APIs allowing
applications access to user profile data and user
context.</p>
      <p>
        Security and privacy APIs: APIs related to the
security model for Webinos.
There are some evidences that workers can benefit from the
use of technology to enhance their creative processes [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ].
For example, letting designers to join effectively words and
images, and thus show visual representations of the
relationships among designers, images, and words [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ].
Furthermore, companies in general (and overall SMEs) are
hold to adapt and solve problems creatively in order to
sustain their existence and grow [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ].
      </p>
      <p>Considering this framework, the innovative application
called ‘CreativeNotes’ has been defined, mainly targeted to
encourage the innovation and the sharing of ideas and
knowledge within different communities to have a real
impact in people’s daily life.</p>
      <p>In this sense, several needs have been identified in many
business sectors, mainly in companies like SMEs that
usually have more limited resources, although in some of
them, mainly start-ups, creativity is presented every day, in
spite of them not having the more adequate tools to share
knowledge among creators, using sometimes traditional
ways of information sharing instead of taking advantage of
the different innovations present in the digital world.
Besides, webinos platform provides developers with
excellent tools that make it possible an easy interaction
among different mobile devices that can be simultaneously
used by different users and even using different modalities
depending on the context, i.e. voice, text, video, photos, etc.
It is very important to take into account the context and that
SFEs can perform an adaptation to the context of use in
order to create successful applications.</p>
      <p>Proposed Approach
Creative Notes (see figure 2) is an advanced notes creator
and editor in real time that follows the creative procedure.
Creative Notes simplify permissions and groups following
the webinos architecture. All the communications are
asynchronous so there is no need to refresh any page or
sync anything.
Thanks to webinos framework, different devices
communicate each other in a secure and easy way.
Important information can be transferred from one to every
device connected with Events API and without the needing
of an intermediate server. With this API every device will
listen for events asynchronously. Every data handled by the
application is stored in the device via File API. With
MediaCapture API, photos, videos or audio can be added to
the note in real time. This avoids the need of launching
Camera, or Voice Recording application prior to launch
Creative Notes. Finally Geolocation can be added to any
note thanks to Geolocation API. Once the webinos Personal
Zone is set, there is no need to authenticate or create any
account, everything will work automatically with your
webinos settings.</p>
      <p>Creative Notes is a complete multimedia note editor/creator
in real time and asynchronous syncing. Every device
configured under the same mail account (in webinos
configuration) will be in sync. This configuration
determines the Personal Zone. This means that if you have
two or more devices and you create some multimedia note
in one of these devices, this device will notify and send the
note to the rest without the needing of an intermediate
server. The updates are received instantly with the events
oriented communication of Events API.</p>
      <p>Every note can contain anything that you want. With
MediaCapture API, the application can launch directly the
camera, videocamera or voice recorder. All these media
will be instantly saved in the device via File API, to be fast
and responsive. These files will be transferred between
devices, and in the future, notes can also contain location.
Every device stores internally all the notes from the
Personal Zone where it belongs to. When a certain device
reconnects, it performs a synching up process by asking the
other users for the updated list of shared notes. Once
received, it will check for the changes in both the local and
the shared list of notes:
•
•
•
•
•</p>
      <p>Those local notes not present in the shared list of notes will
be shared by notifying them to the rest of PZPs as new notes
to be included in the shared list of notes.</p>
      <p>Including in its local list of notes those shared notes not
included yet in that list.</p>
      <p>The synching up process also takes care of updates in
existing notes:</p>
      <p>If local changes are detected, an event is sent to notify it to
the rest.</p>
      <p>If remote changes were detected, the existing local note will
be replaced by the remote one.</p>
      <p>If both local and remote changes are detected, a new note will
be created including both the common contents from local
and remote versions and the new contents from both local
and remote versions. This note will be an update of the
respective existing local one and it will be sent to the rest of
PZPs to update their local note list.</p>
      <p>It is important to point out that this P2P decentralized
architecture needs at least two devices connected at the
same time to transfer notes. If a new note were created and
there were not any other device on-line, this note would not
be registered in the list of notes of the others until the
device containing this new note were connected
simultaneously with another one.</p>
      <p>A possible example working scenario would be: one
smartphone creates a new note and add some content to
another one, but at that moment it is the only one
connected. Later, a laptop launches Creative Notes, asking
for the remote list of notes (to the smartphone in this case),
getting both the new note and the updated one and storing
them in its local list of notes. Later, the smartphone
disconnects, but the laptop already has the new and the
updated notes and this device can distribute the notes from
the first device.</p>
      <p>Creative Notes events are sent using the webinos Events
API. These events are:</p>
    </sec>
    <sec id="sec-3">
      <title>Webinos File API is used to:</title>
      <p>•
•
•
•
•</p>
      <p>Cn-getNotes: Ask for a list of notes to the rest of the
devices in the Personal zone.</p>
      <p>Cn-getNotesResp: Answer to a cn-getNotes event
Cn-updatedNote: The device has updated or created
some note. This event can be fired when mixing local
and remote notes.</p>
      <p>Read CreativeNotes.json where the local list of notes is
stored.</p>
      <p>Write CreativeNotes.json whenever a note has been
modified. This functionality is executed when receiving
a Cn-updatedNote webinos event or when mixing notes.
In summary, thanks to a non-centralized architecture, the
notes are shared among devices without an intermediate
server, thanks to webinos Events API and File API.
CONCLUSIONS
An innovative application running under the Webinos
platform has been created to enhance collaborative working
and information sharing. Thanks to its flexibility and easily
adaptable capabilities, the application is multi-purpose and
can be configured to be used in many different domains.
Important issues present in the other existing solutions are
solved thanks to this innovative application and security,
privacy and decentralized access can be provided in a
simple and effective way thanks to the use of Webinos
platform.</p>
      <p>ACKNOWLEDGMENTS
This work received funding from the European
Commission’s Seventh Framework Program under grant
agreement number 257103 (FP7-ICT-2009-5).</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          1. “
          <article-title>Webinos Device APIs Specification”</article-title>
          .
          <source>November</source>
          ,
          <year>2011</year>
          .http://dev.webinos.org/deliverables/wp3/Deliverab le32/API_specifications.html
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          2.
          <string-name>
            <surname>Candy</surname>
            ,
            <given-names>L.</given-names>
          </string-name>
          , &amp;
          <string-name>
            <surname>Hori</surname>
            ,
            <given-names>K.</given-names>
          </string-name>
          (
          <year>2003</year>
          ).
          <article-title>The digital muse: HCI in support of creativity: “Creativity and cognition” come of age: Towards a new discipline</article-title>
          .
          <source>ACM Interactions</source>
          ,
          <volume>10</volume>
          (
          <issue>4</issue>
          ),
          <fpage>44</fpage>
          -
          <lpage>54</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          3.
          <string-name>
            <surname>Nakakoji</surname>
            ,
            <given-names>K.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Yamamoto</surname>
            ,
            <given-names>Y.</given-names>
          </string-name>
          , &amp;
          <string-name>
            <surname>Ohira</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          (
          <year>1999</year>
          ).
          <article-title>A framework that supports collective creativity in design using visual images</article-title>
          .
          <source>Proceedings of the 3rd Conference on Creativity and Cognition</source>
          (pp.
          <fpage>166</fpage>
          -
          <lpage>173</lpage>
          ). New York: ACM Press.
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          4.
          <string-name>
            <surname>Feist</surname>
            ,
            <given-names>G. J.</given-names>
          </string-name>
          (
          <year>1999</year>
          ).
          <article-title>The influence of personality on artistic and scientific creativity</article-title>
          . In R. J.
          <string-name>
            <surname>Sternberg</surname>
          </string-name>
          (Ed.), Handbook of creativity (pp.
          <fpage>273</fpage>
          -
          <lpage>296</lpage>
          ). New York: Cambridge University Press.
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>