SlideShare a Scribd company logo
1 of 25
Download to read offline
DEVELOPING FOR THE PERVASIVE, 
UBIQUITOUS, M2M INTERNET OF THINGS
  10 Tips to Prepare for the Future of Mobile
INTRODUCTION

                                    There is little doubt that mobile devices have revitalized modern computing. Yet even 
                                    as hardware and network providers prepare for emerging devices connecting the home 
                                    to  the  office,  appliances  to  sensors,  cars  to  intelligent  transportation,  etc.,  software 
                                    developers  are  still  trying  to  tackle  the  highly  fragmented  mobile  phone  environment 
                                    that this explosion of devices has created.
                                    New tools and standards, such as BONDI, have recently emerged to assist developers, 
                                    yet many do not fully support the wide range of sensors, routers, cars and embedded 
                                    devices  that are a part of our pervasively connected future.
                                    Even a name for this connected world  is not fully agreed‐upon: pervasive computing, 
                                    ubiquitous  computing,  M2M,  the  Internet  of  Things… each  phrase  shares  a  common 
                                    vision, but the technical requirements remain ill‐defined.
                                    This eBook is a high‐level overview designed to help developers think about the future 
                                    of  mobile  app  development  and  in  the  absence  of  firm  standards,  offers  tips  for 
                                    choosing a pervasive software architecture that will future‐proof your application. It is 
                                    our hope that you will make it one of your most valuable resources to help shape your 
                                    pervasively mobile strategy.
            Credit: Rudy De Waele



                                    Victoria Romero‐Gomez
                                    Product Manager, Mobility Solutions
                                    Recursion Software



© 2010 RECURSION SOFTWARE, INC.                                                                                                        2
M2M: THE FUTURE OF MOBILE
The World Wireless Research Forum (WWRF) predicts there will be 7 trillion devices for 7 billion 
people by 2017. In other words, around one thousand devices for every man, woman and child on 
the planet. Efforts to connect these devices have many names:


      M2M
                                                                                  Corporate Cloud
      The Internet of Things                     Intelligent Home

      Network of Everything             Smart Buildings

      Ubiquitous Computing


                                                              Personal Networks
                                                 Secure PAN
                                                                   Source: WWRF




© 2010 RECURSION SOFTWARE, INC.                                                                     3
DEFINING M2M
 The common vision expressed by many of today’s market leaders can be used as a guideline for establishing 
 functional requirements for the next generation of mobile, pervasive software. From their collective vision, a 
 common theme emerges: any content or service on any device, sharing content/services between devices and 
 clouds, & the ability to discover and host device communities. 


"It's not the data center or the user device. 
  "It's not the data center or the user device.    "The desktop PC, enterprise computing, mobile 
                                                    "The desktop PC, enterprise computing, mobile 
It's any device to any content 
  It's any device to any content             services running in the cloud and 
                                              services running in the cloud and 
wherever it is in the world over  phone devices……[via] a rich platform." 
 wherever it is in the world over  phone devices [via] a rich platform." 
any combination of networks 
 any combination of networks                                 ‐‐ Steve Ballmer, CEO Microsoft
wired or wireless to the home, to an 
 wired or wireless to the home, to an 
Apple device, to a Microsoft device, to an        "Data will be selectively pushed to the 
                                                   "Data will be selectively pushed to the 
 Apple device, to a Microsoft device, to an 
IBM device, HP. Doesn't matter to us."
 IBM device, HP. Doesn't matter to us."           user based on context……combined with 
                                                   user based on context combined with 
                                                  personal presence, creates transient 
                                                   personal presence, creates transient 
                                                  communities…"
                                                   communities…"
                    ‐‐John Chambers, CEO Cisco


                                                                              ‐‐ Nick Jones, VP Gartner

 © 2010 RECURSION SOFTWARE, INC.                                                                                   4
DEFINING PERVASIVE
                                      In their words, the future of pervasive computing is defined by any content accessible 
                                      on any device over any network. Mobile services must be available to users both in the 
“In what’s called the Internet        cloud and on the device, and will push content to users based on their location, 
of Things, sensors and                interests, behavior, etc. Devices must be able to discover and host transient 
actuators embedded in                 communities that exchange information, while providing customized security and data 
physical objects—from                 privacy options. Communities will be comprised of both human and machines 
                                      participants collaborating and creating new content that is automatically pushed to the 
roadways to pacemakers—are 
                                      entire community in real‐time.
linked through wired and 
wireless networks… When               In short, a checklist of minimum requirements to enable this common vision:
objects can both sense the                    Any device, any content on any network
environment and                               Mobile services in the cloud & on the device
communicate, they become                      Push content autonomously based on time, location, state of being (work, 
tools for understanding                       play, private, etc.)
complexity and responding to                  Form transient, ad hoc mobile communities
it swiftly. What’s revolutionary              Guaranteed message delivery
in all this is that these physical            Security and data privacy
information systems are now                   Enterprise integration
beginning to be deployed, and 
some of them even work 
largely without human 
intervention…”
‐‐ McKinsey & Company

© 2010 RECURSION SOFTWARE, INC.                                                                                                  5
M2M’s TECHNICAL CHALLENGES
 There are many technology barriers to reaching this vision which include:

 Conflicting standards         Various languages
 Many networks and             Device fragmentation (servers to TVs 
  protocols                      phones to sensors)
 Bandwidth scarcity and poor   Content organization/separation 
                                 (Public/private, work/personal)
  performance
                                Security and privacy




© 2010 RECURSION SOFTWARE, INC.                                              6
#1: DESIGN BEYOND THE 
                                                         PHONE
                                      The mainstream mobile model today is to deploy to one or two of the more popular 
                                      handset platforms and forgo the rest of the market due to cost and time restrictions. It’s 
                                      no surprise then that even the most popular mobile apps only work on PCs and a handful 
“We’ve seen numbers                   of select platforms, namely iPhone, Android, and BlackBerry.  
thrown out there from 
analysts that say because of          There is also an assumption that smartphones will become the singular device for 
                                      computing and content. While smartphones combined with mobile apps enable portable 
the M2M space we’ll be at             content, many companies have tried to produce a “one device fits all” device with little 
500% penetration. I think it’s        success. The reality is that people like to choose which device best fits their context at 
hard to walk into a Best Buy          any given time, whether at work or at play, based on location or mood, or while 
                                      accessing public or private content. Mobile users tend to have several wireless devices at 
or Wal‐Mart or RadioShack             their disposal, at minimum a PC and a Smartphone, with newcomers like eReaders, in‐car 
and see all of the devices on         entertainment and wireless TVs. The popularity of niche devices, such as the Kindle, iPad 
the shelves and find one that         illustrate that when it comes to ease of use or media consumption, achieving the best 
                                      experience trumps the economics and convenience of having a singular device.  
wouldn’t be a better device 
and have a better value               Google certainly understands this mindset, and it has teamed with Sony to develop 
proposition for the customer          Android television. In March 2010, the company also co‐launched the first Android‐
                                      powered Roewe car for the Chinese market. But Android’s own fragmentation and 
if it weren’t connected to the        technical bugs make its current incarnation unsuitable as a pervasive platform. The .NET 
Web or to another device.”            Compact Framework (CF) is another platform yet to live up to its potential. And finally, 
                                      a traditional web app cannot today provide the combination of face and faceless apps in 
‐‐ Glenn Lurie, President Emerging    a high performance, autonomous manner.  
Devices, AT&T
                                       To deploy truly pervasive software, consider a platform that supports a range of mobile 
                                         To deploy truly pervasive software, consider a platform that supports a range of mobile 
                                       and embedded software stacks, such as Java’s Micro Edition, Microsoft’s CF, and OSGI 
                                         and embedded software stacks, such as Java’s Micro Edition, Microsoft’s CF, and OSGI 
                                       Containers, on a wide range of embedded operating systems such as Windows Mobile, 
                                         Containers, on a wide range of embedded operating systems such as Windows Mobile, 
              ((TECH TIP))             Symbian, and Embedded Linux to name just a few. The platform must seamlessly 
                                         Symbian, and Embedded Linux to name just a few. The platform must seamlessly 
                                       integrate with .NET, JEE and legacy (MVS, CORBA, etc.) enterprise systems and services, 
                                         integrate with .NET, JEE and legacy (MVS, CORBA, etc.) enterprise systems and services, 
                                       in either a traditional Web Services architecture, or in a high performance manner.  
                                         in either a traditional Web Services architecture, or in a high performance manner.  
© 2010 RECURSION SOFTWARE, INC.                                                                                                7
#2: BE DEVICE, NOT 
                                                         HUMAN‐FOCUSED
                                      Even if your application initially targets a specific phone subset, the ability to control 
                                      devices remotely or integrate data and services from other devices, many which are 
                                      machines and sensors, will soon be a necessity. The siloed mentality of one application 
“If you walk into the [M2M]           with one user is no longer an adequate mobile strategy. 
space and you bring all of 
                                      The role of communities, security and privacy will be discussed later in more detail, but 
your baggage from launching           the main take‐away is that designing for advanced integration and communication with 
a Smartphone or other things          applications, systems, and machines is the foundation for our pervasive future. The 
you’ve done in the past,              number of devices, protocols and platforms grows exponentially when you consider 
you’re probably not going to          initiatives to automate the home or connect the plant.  
be very successful. You will          Your application must be designed to interact with a highly heterogeneous environment 
have to look at this very             of human operated and non‐human operated devices, with different operating systems 
differently. Whether it’s a           and different languages. It will need to utilize intelligent software agents that can gather 
                                      data, respond quickly based on this data as it changes, produce and distribute 
netbook or an eBook reader,           knowledge, and possibly initiate other agent activities.  The underlying rules engine 
the model is very different,          must be easy to use, provide very high performance against potentially large rule sets, 
and the approach with the             and must be available in .NET, Java and C++. 
[OEMs] is very different.”
                                       Services need to be accessible via centralized Web Service Container such as 
‐‐ Glenn Lurie, President Emerging       Services need to be accessible via centralized Web Service Container such as 
                                       Microsoft’s Internet Information Services (IIS) and those provided in the Java world, 
                                         Microsoft’s Internet Information Services (IIS) and those provided in the Java world, 
Devices, AT&T                          but also must be accessible in a decentralized fashion directly to agents, exposed as 
                                         but also must be accessible in a decentralized fashion directly to agents, exposed as 
                                       remotely accessible services, that are running on edge and wireless devices. The 
                                         remotely accessible services, that are running on edge and wireless devices. The 
                                       location of intelligent mobile agents and the mobile services they expose must be 
                                         location of intelligent mobile agents and the mobile services they expose must be 
               ((TECH TIP))            irrelevant to the client application.
                                         irrelevant to the client application.




 © 2010 RECURSION SOFTWARE, INC.                                                                                                    8
#3: CHOOSE YOUR 
                                                   ARCHITECTURE WISELY
                                    The question of native vs. web has been long debated. And the answer is that no one‐
                                    size fits all. The choice is largely dependent upon what kind of transactions your app 
Five Common Reasons for             needs to perform. Rule of thumb: use a mobile web app when you need simple, less 
Native Apps:                        sophisticated apps and need to ramp up quickly. Native apps are best for high 
                                    performance, for complex processing, multiple‐devices types, and collaboration. 
     Performance
     Offline Mode                  As platforms continue to be highly competitive, the default option for most apps is to 
     Findability [market           design for the mobile web to avoid fragmentation, although it should be noted that 
                                    mobile browsers are also fragmented. The relative simplicity of the mobile web is often 
    channel]                        best if your application and business model offers enough differentiation within the 
     Device Attributes             noisy app market.
     Monetization
                                    In contrast, native solutions offer better performance, consume less bandwidth, have 
    ‐‐ Jason Grigsby, Cloud Four    offline capabilities, and offer more sophisticated transactions if fragmentation can be 
                                    solved. Additionally, more sophisticated apps need a robust object oriented language 
                                    like Java rather than JavaScript which has inconsistent browser performance. 

                                    The apps of our M2M future will likely be highly collaborative in a heterogeneous 
                                    device environment, therefore they need  pervasive native platform will outperform 
              ((TECH TIP))          the web in performance, efficiency and security. They need to do more than just solve 
                                    the fragmentation issue, they need to employ a distributed knowledge network that 
                                    create meaningful content rather than simply post it.

                                    This is where the phrase “Internet of Things” is a bit of a misnomer and the “Network of 
                                    Everything” makes better sense. To understand the dis/advantages of each approach, we 
                                    will review their basic architectures.


  © 2010 RECURSION SOFTWARE, INC.                                                                                               9
COMPARING ARCHITECTURES
 Thin Client‐Server (Centralized)                                        Smart‐Client (Distributed)
     Mobile Web (HTML,  JavaScript)                                            P2P Edge Platforms (ex. Voyager)
     Mobile Enterprise solutions (ex. Sybase, 
      WebSphere)
                                                                            Description: This model uses mature technologies in a new 
     Description: This model uses mature technologies, such as              way, by relying on mobile software agents to deploy 
     HTML and JavaScript or an enterprise platform                          intelligence
                                                                                                   Bidirectional 
                                                                                                  communication

                                                                                                                    Intelligent client 
                                                                        Each client has server 
                                                                                                                    performs transactions 
                                                Server hosts all        intelligence and capabilities. 
Client enters data,                                                                                                 autonomously until a 
                                                services and content, 
each click sends                                                                                                    request to share is 
                                                acting as a gateway. It 
data to server                                                                                                      made. 
                                                receives requests and                                Bandwidth 
                  High bandwidth use            data, performs filtering 
                                                                                                      Efficiency
                                                or transactions and 
                                                sends output back to 
                                                                          Content or messaging is sent              Clients can be 
                                                client(s) if shared
                                        ly                                P2P/Group (guaranteed                     faceless, such as 
                                  ll on
Client displayed data. 
                                pu                                        messaging)                                sensors, and use 
Process repeats for each 
                                                                                                                    any language or OS
click or transaction. 
     © 2010 RECURSION SOFTWARE, INC.                                                                                              10
COMPARING SERVICES & FEATURES
                               Traditional             Method                    Innovative




             Feature
                                 Enterprise           Mobile Web                     P2P
Performance                   Mid                    Worst                    Best (+20‐50%)
Shared services               No                     No                       On device
Push content                  No                     No                       P2P/Group
Ad hoc Communities            No                     No requires invite      
Guaranteed Messaging                                No                      
Security                                             Limited: https         Bidi, NAT
Efficient Bandwidth           No every click=data    No every click=data     
Offline persistence           No                     No                      
Data to Knowledge              at the server only   No                       On device
Legacy Integration             via webservices      No                       Multiple
Multi‐Language                No                     N/A (HTML, JS. No OO)    Java, C#, C++
Self‐healing SOFTWARE, INC.
    © 2010 RECURSION          No                     No                                     11
ABSTRACTION PLATFORMS                                                                           Smart 
                                                                                        Thin Client                                                    Client
                                                          Airplay      Alchemo   PhoneGap       Pyxis     Rhodes       Smartface Sybase     Titanium   Voyager
                                                                                             Mobile App                Designer Unwired      Mobile
                                                                                               Studio                            Platform
                                                                                            Platforms Supported
 Abstraction platforms have                  Android
                                                             X                                                  X                              X         X
                                             Java FX
 emerged that aim to ease                                                                                                                                X
                                            Windows
 the deployment to multiple                  Mobile          X           X                      X               X                   X                    X
                                             Linux
 mobile platforms.                         Blackberry
                                                                                                                                                         X
                                                                                                X               X         X         X                    X
                                            Symbian
                                                             X                                                  X         X                              X
                                             BREW
                                                             X           X                                                                               X
                                             iPhone
                                                             X           X*         X           X*              X                   X*         X         X*
                                            Java ME
                                                                                                                          X                              X
                                                                                        Development Languages
                                              C++
                                                             X                                                                                           X
                                            Java ME
                                                                         X
                                              Java
                                                                                                                                                         X
                                              .NET
                                                                                                                                                         X
                                              HTML
                                                                                    X                           X                              X
                                           Own Visual
                                           Language                                             X                         X         X
* Due to a change in the Apple iOS                                                           Other Properties
                                           Open Source
developer agreement, apps built using                                               X                           X
                                           Enterprise
3rd party platforms and tools may be 
                                           Integration
prohibited from listing on Apple iTunes                                                         X                                   X                    X
(consumer apps). Enterprise                   Free
                                                         X (only for                                     X (if using
deployments are still possible.                           iPhone)                   X                       GPL)



  © 2010 RECURSION SOFTWARE, INC.                                                                                                                                12
MOBILE WEB DIS/ADVANTAGES
 Device support‐ wide availability for mobile phones and PCs, 
  however browser fragmentation creates an inconsistent 
  experience. Unavailable for embedded devices.
 Network efficiency‐ increasingly poor performance as wireless 
  devices proliferate. Good for simple applications. 
 Collaboration/Groups‐ limited to email/chat and a shared folder 
  on server for file transfer.
 Security‐ good, but unable to manage device remotely.
 Performance‐ relatively slow. HTML and JS are not as robust as 
  Object Oriented languages. Centralization offers relatively slow
  processing and scalability.
 Cost‐ free and open. Support through user groups or 
  consultants.
© 2010 RECURSION SOFTWARE, INC.                               13
ENETERPRISE DIS/ADVANTAGES
 Device Support‐ Limited to specific operating systems for which 
  the code is written/ported.  Typically only mobile and PCs 
  running certain platforms.
 Network efficiency‐ some offer offline input capability, a huge 
  advantage as bandwidth becomes more scarce.
 Collaboration/Groups‐ limited to email/chat and a shared 
  folder on server for file transfer.
 Security‐ on device security can be achieved, yet vulnerability 
  occurs with collaboration and data exchange
 Performance‐ good on‐device performance, but collaboration 
  requires servers and a network connection, slowing 
  performance and creating a bottleneck.
 Cost‐ proprietary solutions are more expensive, but better 
  supported than open source. Cost rises w/ additional platforms.
© 2010 RECURSION SOFTWARE, INC.                                14
P2P DIS/ADVANTAGES
 Device Support‐ Designed to support a wide range of edge 
  devices. By definition does not need a central server.
 Network efficiency‐ offline capability plus intelligence. Turns 
  clients into servers that host/share services autonomously. 
 Security‐ (Voyager) Secure Firewall/NAT Traversal support via 
  BIDI same socket/port communication & client initiated requests.
 Collaboration/Groups‐ P2P/Group application messaging, chat 
  and file transfer. Ad hoc community formation/discovery.
 Performance‐ (Voyager) P2P/Group ad hoc messaging. 1.5x faster 
  than RMI, 300x faster than web. OO support (Java, C#, C++).
 Cost‐ proprietary solutions are initially more expensive, but 
  better supported than open source. Relative cost lowers 
  exponentially with “write once” capabilities.
© 2010 RECURSION SOFTWARE, INC.                              15
#4: COLLABORATION & 
                                                     COMMUNITIES
                                   The next generation of apps will have social or collaborative elements that incorporate 
                                   data from other applications or third‐party sources. Once data can be shared freely, the 
“The web is like an                opportunity to transform data into knowledge or new content and share it with other 
encyclopedia, where you            applications on a device or distribute to a community elevates collaboration to its true 
                                   potential. This is a leap from traditional collaboration solutions which are limited to 
always start with the index.       mobile email or other messaging, voice and sometimes shared files on a server.
Mobile business 2.0 will be 
more like a theme park             As our world becomes wirelessly connected, a network of devices, primarily sensors and 
where you explore what's           handhelds, will form the foundation of a community that continuously gathers, transmits 
around you. Data will be           and receives data, whether it be environmental data, geo‐tagged content, or real‐time 
selectively pushed to the          alerts, such as people’s location or communication threads. The community cannot be 
                                   human‐dependent, rather devices will have embedded intelligence that will enable them 
user based on context,             to act anonymously on new information they receive from within the community.
matching the users' needs, 
interests, mood, location and 
even recent behaviour.”            Next generation applications must support the formation of P2P and P2‐Group ad‐hoc
                                    Next generation applications must support the formation of P2P and P2‐Group ad‐hoc
                                   communities of devices, as well as the ability to support filtering of messages across 
                                    communities of devices, as well as the ability to support filtering of messages across 
‐‐ Nick Jones, VP Gartner          these communities. Transactions must extend from the enterprise to edge devices and 
                                    these communities. Transactions must extend from the enterprise to edge devices and 
                                   allow for distributed, but coordinated tasks among peers, peer groups, and the 
                                    allow for distributed, but coordinated tasks among peers, peer groups, and the 
                                   enterprise.  Support must be provided to allow for intelligent agents running on the edge 
                                    enterprise.  Support must be provided to allow for intelligent agents running on the edge 
                                   to participate in guaranteed message delivery with enterprise transaction managers 
                                    to participate in guaranteed message delivery with enterprise transaction managers 
             ((TECH TIP))          such as those provided in .NET’s MTS, Java’s Transaction Service, and OMG’s Object 
                                    such as those provided in .NET’s MTS, Java’s Transaction Service, and OMG’s Object 
                                   Transaction Service.
                                    Transaction Service.




 © 2010 RECURSION SOFTWARE, INC.                                                                                               16
#5: LOCATION & DISCOVERY
                                   While your address book will always form the hub of your private and work 
                                   communities, location and discovery services can extend communities beyond your 
                                   address book or a check‐in venue, to become apps that connect and rally sports fans, 
“Mobile business 1.0 (or           exchange photos and communications amongst travelers, discover potential customers 
mobile commerce) failed            and build loyalty among existing ones, and many more iterations on the same theme: ad 
because the industry tried to      hoc collaboration. Ad hoc communities exist for a period of time and space and are 
transplant all web principles      made possible by taking advantage of IP multicast and location APIs. 
into the phone (e.g. WAP).         Combined with rules engines, such as a RETE‐based rules engine integrated with some 
Truly valuable services have       pervasive platforms, engineers can also weave artificial intelligence and cognitive 
not been widely available          capabilities into the location‐based apps they deploy to all targeted devices and servers.  
                                   Engineers will be able to produce applications that provide real‐time intelligence, 
and the location based             situational awareness, and coordination at the edge not found today.
services that we have seen 
have not been very                 To enable these applications pervasively, your platform must support dynamic discovery 
sophisticated…                     via UDP or IMS/SIP and the formation of P2P and P2‐Group ad‐hoc communities of 
                                   devices as previously discussed. Finally, all agents need to be accessible by a Service 
                                   Description in a Yellow‐pages directory, ideally one that also supports Universal 
                ((TECH TIP))       Description, Discovery, and Integration (UDDI).
Location, combined with 
personal presence, creates 
transient communities, 
which offers an opportunity 
for better use of time or 
marketing.”
‐‐ Nick Jones, VP Gartner

 © 2010 RECURSION SOFTWARE, INC.                                                                                              17
#6: BANDWIDTH MAKES OR 
                                                  BREAKS AN APP
                                   While ‘unlimited’ data plans are common among Smartphone contracts, network 
                                   availability it is far from ubiquitous or guaranteed. App‐intensive phones, like the iPhone, 
                                   arguably consume the most bandwidth and customers are often complaining about poor 
“The final consideration is        performance. There is also a great demand to utilize networks more efficiently, as 
whether the user and the           additional consumer devices like eReaders are charged by the kb.
company understand two 
basics about wireless and          The high volume of users resulting in slow network performance at mobility tradeshows 
                                   as well as concentrated subscribers in metro areas like San Francisco serve as a 
Internet access: Do they           microcosm for what our pervasive experience will be when mass market devices become 
understand that the Internet       connected. While each network provider is scrambling to expand to 4G networks, the 
is NOT a mission‐critical          sheer number of devices in our connected world will surely reach a critical mass where 
                                   efficiency is no longer an option, but a requirement. 
network? Do they also 
understand that wireless           Scalability is also a concern at the application messaging level. A centralized server can 
connectivity is NOT always         become a bottleneck for messaging and risks a single point of failure. The most infamous 
available?”                        example of this was when Twitter suffered day‐long downtime due to a sub‐optimal 
                                   architecture. A solution to this is to consider a platform that offers decentralized 
‐‐ Andrew M. Seybold               communication between groups of devices/systems without the need of a central 
                                   messaging server. 

                                   Efficient network utilization is accomplished by removing the requirement to push all 
                                   transactions and data to the cloud and pull data back to the device again with each 
                                   transition or download.  This can be accomplished by a peer‐2‐peer architecture and/or 
                                   by implementing RULES engines and software agents to perform many edge 
                                   transactions as possible. Apps should be able to process data at the source, handle 
             ((TECH TIP))          unreliable and/or limited network connections, and adjust to hardware failures or CPU 
                                   load. Therefore, these devices must also persist data via a micro database. 


 © 2010 RECURSION SOFTWARE, INC.                                                                                               18
#7: NETWORK SURVIVABILITY 
                                                AND MOBILITY
                                   Bandwidth issues and inconsistent network availability lead to the next tip which is that 
                                   apps need to communicate without uniform standards, in multiple languages, multiple 
                                   networks, function when offline. 

“Our wireless devices can          A platform should provide a simple way to access databases, regardless of the type of 
                                   database, be it relational, object, xml, and a multi‐user enterprise database or single‐user 
best be described as being         embedded.  Developers need to be shielded from the intricacies that exist with these 
always on and most of the          various flavors and have support for data synchronization between the edge and 
time connected. There is no        enterprise.  
guarantee of connectivity,         And when back online, devices must support passing messages over standard centralized 
nor is there a guarantee that      messaging servers for integration with enterprise and legacy systems.  More specifically, 
                                   there needs to be seamless integration with Microsoft’s Message Queue (MSMQ), Java’s 
you will always be able to         Message Server (JMS) and other Enterprise Service Buses.
access the information you 
want and need when on the          Additionally, the software components or agents running on edge devices need to 
road if you are connected.         support multiple wireless protocols (GSM, CDMA, Wi‐Fi, UWB, Bluetooth, NFC, RFID) 
Data that resides only in the      and associated networks (Telco, Wide Area, Local, Personal). Ideally, they will 
                                   dynamically reconfigure themselves to use a communication protocol that best matches 
cloud or behind your               the capabilities of their current network connection and the current node(s) they are in 
corporate firewall is not          communication with. 
always accessible.”
‐‐ Andrew M. Seybold               To achieve seamless  mobility across various wireless and telco networks, support must 
                                   exist for devices joining and leaving the network, which will result in changing “internet”
                                   addresses.    The platform needs to be support multiple IP’s of network hopping/fire‐
                                   walled devices/servers either via NAT support, integration with a SIP Server and/or 
             ((TECH TIP))          other means.  This will allow devices to continue to communicate and share data 
                                   services.


 © 2010 RECURSION SOFTWARE, INC.                                                                                                 19
#8: DATA SECURITY & 
                                                            PRIVACY
                                     In a ubiquitously networked world, it will often be necessary to maintain data on edge 
                                     devices.   The security concerns facing enterprises today will need to incorporate 
                                     solutions that extend into a collaborative environment.  Applications must provide an 
“The simple expedient of             extremely high level of security to ensure privacy and protection from rogue/viral clients 
placing a Windows PC behind          and software agents.  This will involve security agents and agent managers that provide 
a Nat router changes the             capabilities above and beyond the current encryption, authentication, and authorization 
equation considerably, giving        that are currently employed in client‐server environments.
even unsecured Windows PCs           When implementing communities, offering the user complete control over his/her status 
an environment in which they         and visibility is crucial. Furthermore, community apps should allow separate 
can operate safely…                  public/private streams and store data to the secure portion of SD card.

                                     Community apps will need to participate in real‐time data sharing with other devices, 
             ((TECH TIP))            systems and clouds regardless of the networks that the participating devices and systems 
                                     are on. Current firewall restrictions inhibit this ability, so the ability for applications to 
                                     easily and securely span networks is increasingly important. Support for Network 
As long as Windows is the            Address Translation (NAT), and the resolution of application clients/services with 
primary operating system for         multiple addresses is key for solutions to utilize multiple networks and spanning their 
                                     firewalls.  Once apps can communicate securely over the same socket and port,  you no 
internet‐connected hosts (a          longer compromise network firewalls.
condition that is unlikely to 
change any time soon), Nat 
will be an important part of 
most users' security 
perimeters.”
‐‐ Daniel Golding, Computer Weekly

 © 2010 RECURSION SOFTWARE, INC.                                                                                                  20
#9: UNDERSTAND THE DEVICE 
                                                       ARCHITECTURE
                                                                        To Other Enterprise
To achieve John                                                         and/or Other Edge
Chamber’s vision of                                                          Devices
“any device to any 
content wherever it is               Wired       WiFi      WiMax         UWB          GSM         CDMA        Bluetooth      Zigbee        NFC
in the world over any 
combination of                                                      Device API Abstraction Layer
networks”, an advanced                  Messaging API               Security API                 Discovery                     Transaction
                                                                                            White/Yellow/Dynamic
pervasive M2M 
                                    SOAP        IIOP    XML-RPC     Binary XML/Objects      TCP/IP      UDP            OMA      DM         OBEX
application will need to 
support most, if not all                                              Universal UI (Webkit) API Abstraction

of the depicted device               Application     Ontology API    Database API    Rules API
                                                                                                              Distributed BONDI Services

components                         Services’ Agents Ontology Engine Database Engine Rules Engine GeoLoc         File              PIM

                                    OSGi                                                                                Contact Calendar     Task

                                                            Universal Collections & Algorithms (Java, .NET, C++)
                                                                    Device API Abstraction Layer

                                           C#                                       Java                                      C++          Obj. C
                                                                                                                   Symbian
                                    .NET     .NET CF      Android                  JEE, JSE, JME                    Brew
                                    Win/Win Mobile                    Linux                BlackBerryEmbedded                  RTOS        iPhone

 © 2010 RECURSION SOFTWARE, INC.                                                                                                                 21
#10: UNDERSTAND THE 
                                                ENTERPRISE ARCHITECTURE
                                                                    To Other Enterprise
An advanced pervasive                                               and/or Other Edge
M2M application with an                                                  Devices
enterprise layer will 
need to support most, if           Wired     WiFi       WiMax        UWB        GSM        CDMA      Bluetooth    Zigbee     NFC
not all of the depicted 
components                                                   Enterprise API Abstraction Layer
                                   JMS     MSMQ      DDS     JEE      .NET     CORBA      SIP      UDDI     JTS      MTS     OTS

                                     Messaging API              Security API            Discovery                  Transaction
                                                                                   White/Yellow/Dynamic

                                   SOAP     IIOP     XML-RPC Binary XML/Objects     TCP/IP      UDP       OMA       DM       OBEX

                                      Application             Ontology API              Database API                Rules API
                                    Services’ Agents         Ontology Engine           Database Engine             Rules Engine
                                    OSGi

                                                        Universal Collections & Algorithms (Java, .NET, C++)
                                                             Enterprise API Abstraction Layer

                                                                     C#                    Java
                                                                    .NET                 JEE, JSE

                                                                 Win Server            Linux      Unix

 © 2010 RECURSION SOFTWARE, INC.                                                                                                   22
DECISION CRITEREA

                                   Each technology approach discussed offers a tradeoff between performance, ease‐of‐
                                   development, reliability, cost, time‐to‐market and differentiating features. The decision criteria 
There is rarely a one‐size         relies on finding the best solution for your app’s vision and audience.
fits all solution. Your 
technology choice should           Requirements to consider:
fit your customer 
                                       Web browsers offer the most widely supported mobile phone support, with limited 
segment (end user),                     fragmentation, extending in some cases to feature phones (non‐smartphones), but 
rather than settling for a              does not support device classes outside of phones. In contrast, smart clients were 
poor‐usability or poorly‐               built specifically to reach a range of devices, from sensor to phone to server. Is 
functioning app.                        there any value to extending your application beyond the phone or PC?
                                       Compared to smart‐clients, thin‐client apps are slower, less reliable, support fewer 
                                        devices and device classes, and in general only gather rather than turn data into 
                                        knowledge and act upon it. Yet, thin clients are an affordable choice for simple, less 
                                        transaction‐oriented applications that are not mission critical or require guaranteed 
                                        messaging. Smart clients are highly transactional, autonomous and function offline 
                                        when needed. What level of sophistication and longevity does your app require?
                                       P2P platforms excel at secure collaboration and maintaining in‐state application 
                                        transfer from device to device. Yet, most low‐level collaboration tasks like email 
                                        and cloud storage are met with a web app.  Does your content or data need to be 
                                        private (P2P platform) or can you use a hosted cloud solution? Do you need to 
                                        collaborate across organizations outside your firewall?




 © 2010 RECURSION SOFTWARE, INC.                                                                                                  23
TAKE‐AWAY: 300 BILLION 
                                             REASONS TO GET CODING
                                  With the second generation of mobile, pervasive apps poised to explode, and with 
                                  standards in limbo, it’s important to surround yourself with the best‐of‐breed tools, 
Harbor Research estimates         technology approach and a roadmap that will future‐proof your application for the years to 
the M2M market to grow to         come. 
$300 B by 2013
                                  Additional Resources
                                  The following are some additional links and resources to assist you with your marketing 
                                  and business models:

                                   Ad Mob Mobile Metrics Reports‐ insight into purchasing behavior and marketing. They 
                                  are published monthly.
                                   Harbor Research‐ Pervasive Internet & Smart Services Market Forecast 
((MARKETING TIP))                  Development Costs‐ discusses risks, opportunities, and typical development costs

                                  For technical advise on fining a platform solution that meets your needs, Recursion assists 
                                  customers with tools, prototype development and consulting services. Visit 
                                  recursionsw.com for more information.

                                  It is truly an exciting time for our industry. It will be interesting to see which of today’s 
                                  mobile app players translate their technology and business models to the pervasive, 
                                  ubiquitous, M2M, internet of things. Will you be one of them? ■



© 2010 RECURSION SOFTWARE, INC.                                                                                                    24
ABOUT THE AUTHORS
                                    Victoria Romero‐Gomez, Product Manager
About Recursion                     vgomez@recursionsw.com
Recursion Software provides         Vicky has worked at technology start‐ups for the last 10 years, including 
next‐generation platforms and       MadetoOrder.com and NextBill.com, where she held various roles including Director of 
middleware designed for mobile      Marketing and Project Management roles. She has led the marketing department at 
communications and                  Recursion since 2006 and she sets the company’s strategic approach to new verticals.
collaboration. Visit us at 
recursionsw.com for information 
about our technology and service    Vicky holds an MBA from the University of Texas at Austin’s McCombs School of Business 
offerings.                          with additional post‐graduate work at Southern Methodist University’s Cox School of 
                                    Business, and a BA from the University of California Berkeley.

                                    Bob DeAnna, CTO Recursion Software
Recursion Software
                                    bdeanna@recursionsw.com
2591 North Dallas Parkway           Bob has more than 24 years of experience in distributed frameworks such as JEE, CORBA, 
Suite 200                           .NET and ATMI, has authored or co‐authored multiple patents in this area. He is also a 
Frisco, TX 75034                    contributing writer and thought leader on mobile technology for publications like 
800.727.8674                        Embedded Computing and .NET Developers Journal. Bob is a visionary who has worked 
972‐731‐8800                        to achieve the technology behind community‐based collaborative networks and is 
                                    currently shaping the product roadmap at Recursion towards this end.

                                    Previous roles include VP of architecture, senior consultant and lead engineer for 
                                    companies like Verizon, ATT, Swiss Re‐Insurance and State Farm Insurance. He holds a BS 
                                    in Mechanical Engineering from Rutgers University, with post‐graduate work in C/C++ 
                                    and Unix Programming at New York University.

© 2010 RECURSION SOFTWARE, INC.                                                                                             25

More Related Content

What's hot

Pervasive Computing: Vision and Challenges
Pervasive Computing: Vision and ChallengesPervasive Computing: Vision and Challenges
Pervasive Computing: Vision and ChallengesRaquel Salcedo Gomes
 
Pervasive Computing
Pervasive ComputingPervasive Computing
Pervasive ComputingAnkita Gupta
 
Mobile Monday London M2M Event 110516
Mobile Monday London M2M Event 110516Mobile Monday London M2M Event 110516
Mobile Monday London M2M Event 110516Ericsson Labs
 
Todays Mobile Cybersecurity
Todays Mobile CybersecurityTodays Mobile Cybersecurity
Todays Mobile CybersecurityVivastream
 
Future Tech for Concur User Conference
Future Tech for Concur User ConferenceFuture Tech for Concur User Conference
Future Tech for Concur User ConferenceMichael Fauscette
 
Context-Aware Computing
Context-Aware ComputingContext-Aware Computing
Context-Aware Computinglogus2k
 
When Where Why Cloud
When Where Why CloudWhen Where Why Cloud
When Where Why Cloudreshmaroberts
 
5.0 pervasive computing
5.0 pervasive computing5.0 pervasive computing
5.0 pervasive computingdsasd sddddwe
 
WmScammell--CDX-Chi-D1-p1
 WmScammell--CDX-Chi-D1-p1 WmScammell--CDX-Chi-D1-p1
WmScammell--CDX-Chi-D1-p1William Scammell
 
Idc consumers and cloud services
Idc consumers and cloud servicesIdc consumers and cloud services
Idc consumers and cloud servicesthriceBOX
 
Pervasive Computing - Let us Pervade our Future
Pervasive Computing - Let us Pervade our FuturePervasive Computing - Let us Pervade our Future
Pervasive Computing - Let us Pervade our FutureKarthikeyan V
 
When where why cloud
When where why cloudWhen where why cloud
When where why cloudsallysogeti
 
Analysing predicted technology trends for the year 2012 through text mining...
Analysing predicted technology trends for the year 2012 through text mining...Analysing predicted technology trends for the year 2012 through text mining...
Analysing predicted technology trends for the year 2012 through text mining...invenQ Insight
 

What's hot (19)

Pervasive Computing
Pervasive ComputingPervasive Computing
Pervasive Computing
 
Pervasive Computing: Vision and Challenges
Pervasive Computing: Vision and ChallengesPervasive Computing: Vision and Challenges
Pervasive Computing: Vision and Challenges
 
Pervasive Computing
Pervasive ComputingPervasive Computing
Pervasive Computing
 
Mobile Monday London M2M Event 110516
Mobile Monday London M2M Event 110516Mobile Monday London M2M Event 110516
Mobile Monday London M2M Event 110516
 
Todays Mobile Cybersecurity
Todays Mobile CybersecurityTodays Mobile Cybersecurity
Todays Mobile Cybersecurity
 
Digital ethnography
Digital ethnographyDigital ethnography
Digital ethnography
 
Bgg Mobile: Top 10 Tech Trends 2014
Bgg Mobile:  Top 10 Tech Trends 2014Bgg Mobile:  Top 10 Tech Trends 2014
Bgg Mobile: Top 10 Tech Trends 2014
 
Future Tech for Concur User Conference
Future Tech for Concur User ConferenceFuture Tech for Concur User Conference
Future Tech for Concur User Conference
 
Context-Aware Computing
Context-Aware ComputingContext-Aware Computing
Context-Aware Computing
 
When Where Why Cloud
When Where Why CloudWhen Where Why Cloud
When Where Why Cloud
 
Pervasive Computing
Pervasive ComputingPervasive Computing
Pervasive Computing
 
5.0 pervasive computing
5.0 pervasive computing5.0 pervasive computing
5.0 pervasive computing
 
WmScammell--CDX-Chi-D1-p1
 WmScammell--CDX-Chi-D1-p1 WmScammell--CDX-Chi-D1-p1
WmScammell--CDX-Chi-D1-p1
 
Why Managing Mobility Matters
Why Managing Mobility MattersWhy Managing Mobility Matters
Why Managing Mobility Matters
 
Idc consumers and cloud services
Idc consumers and cloud servicesIdc consumers and cloud services
Idc consumers and cloud services
 
Pervasive Computing - Let us Pervade our Future
Pervasive Computing - Let us Pervade our FuturePervasive Computing - Let us Pervade our Future
Pervasive Computing - Let us Pervade our Future
 
When where why cloud
When where why cloudWhen where why cloud
When where why cloud
 
Analysing predicted technology trends for the year 2012 through text mining...
Analysing predicted technology trends for the year 2012 through text mining...Analysing predicted technology trends for the year 2012 through text mining...
Analysing predicted technology trends for the year 2012 through text mining...
 
Mobile HW Mashup
Mobile HW MashupMobile HW Mashup
Mobile HW Mashup
 

Similar to 10 Tips to Prepare Your Mobile App for the Future of M2M

Nomadic Computing with Mobile Devices
Nomadic Computing with Mobile DevicesNomadic Computing with Mobile Devices
Nomadic Computing with Mobile DevicesCognizant
 
Harnessing the Power of the Mobile Cloud
Harnessing the Power of the Mobile CloudHarnessing the Power of the Mobile Cloud
Harnessing the Power of the Mobile CloudAntenna Software
 
Four Tech Trends for 2017
Four Tech Trends for 2017Four Tech Trends for 2017
Four Tech Trends for 2017Peter Pajor
 
Disruptive enterprise communications technologies
Disruptive enterprise communications technologiesDisruptive enterprise communications technologies
Disruptive enterprise communications technologiesMartin Geddes
 
Introduction to Mobile Marketing
Introduction to Mobile MarketingIntroduction to Mobile Marketing
Introduction to Mobile MarketingMike Craig
 
Cloud Computing And Android Apps For The Indian
Cloud Computing And Android Apps For The IndianCloud Computing And Android Apps For The Indian
Cloud Computing And Android Apps For The IndianSanjay Chitnis
 
Mobile Social Networking: The New Ecosystem
Mobile Social Networking: The New EcosystemMobile Social Networking: The New Ecosystem
Mobile Social Networking: The New EcosystemElizabeth Lupfer
 
A Study Mobile Computing
A Study   Mobile ComputingA Study   Mobile Computing
A Study Mobile ComputingSara Alvarez
 
Hop- by- Hop Message Authentication and Wormhole Detection Mechanism in Wirel...
Hop- by- Hop Message Authentication and Wormhole Detection Mechanism in Wirel...Hop- by- Hop Message Authentication and Wormhole Detection Mechanism in Wirel...
Hop- by- Hop Message Authentication and Wormhole Detection Mechanism in Wirel...Editor IJCATR
 
A Posteriori Perusal of Mobile Computing
A Posteriori Perusal of Mobile ComputingA Posteriori Perusal of Mobile Computing
A Posteriori Perusal of Mobile ComputingEditor IJCATR
 
A Posteriori Perusal of Mobile Computing
A Posteriori Perusal of Mobile ComputingA Posteriori Perusal of Mobile Computing
A Posteriori Perusal of Mobile ComputingEditor IJCATR
 
How Mobile Will Change your Life @ Work | Interactive Presentation
How Mobile Will Change your Life @ Work | Interactive PresentationHow Mobile Will Change your Life @ Work | Interactive Presentation
How Mobile Will Change your Life @ Work | Interactive PresentationDigitalDesignsInc
 
Pervasive computing
Pervasive computingPervasive computing
Pervasive computingPallav Kumar
 
Mobile Computing: Microsoft Mobile Solutions for Online Learning
Mobile Computing: Microsoft Mobile Solutions for Online LearningMobile Computing: Microsoft Mobile Solutions for Online Learning
Mobile Computing: Microsoft Mobile Solutions for Online LearningTmobile Girl
 
Technology Infrastructure For The Pervasive Vision, Does It Exist Yet?
Technology Infrastructure For The Pervasive Vision, Does It Exist Yet?Technology Infrastructure For The Pervasive Vision, Does It Exist Yet?
Technology Infrastructure For The Pervasive Vision, Does It Exist Yet?Olivia Moran
 
Extending softwareintomobile 11 28-2012
Extending softwareintomobile 11 28-2012Extending softwareintomobile 11 28-2012
Extending softwareintomobile 11 28-2012CorSource
 
Glimpses into the future of mobile devices, the internet, and more - updated ...
Glimpses into the future of mobile devices, the internet, and more - updated ...Glimpses into the future of mobile devices, the internet, and more - updated ...
Glimpses into the future of mobile devices, the internet, and more - updated ...Michael Harries
 
Internet of Things for Next-Generation Public Safety Mobile Communications
Internet of Things for Next-Generation Public Safety Mobile CommunicationsInternet of Things for Next-Generation Public Safety Mobile Communications
Internet of Things for Next-Generation Public Safety Mobile CommunicationsReza Nourjou, Ph.D.
 

Similar to 10 Tips to Prepare Your Mobile App for the Future of M2M (20)

Nomadic Computing with Mobile Devices
Nomadic Computing with Mobile DevicesNomadic Computing with Mobile Devices
Nomadic Computing with Mobile Devices
 
Harnessing the Power of the Mobile Cloud
Harnessing the Power of the Mobile CloudHarnessing the Power of the Mobile Cloud
Harnessing the Power of the Mobile Cloud
 
Four Tech Trends for 2017
Four Tech Trends for 2017Four Tech Trends for 2017
Four Tech Trends for 2017
 
Disruptive enterprise communications technologies
Disruptive enterprise communications technologiesDisruptive enterprise communications technologies
Disruptive enterprise communications technologies
 
PERVASIVE COMPUTING
PERVASIVE COMPUTINGPERVASIVE COMPUTING
PERVASIVE COMPUTING
 
Introduction to Mobile Marketing
Introduction to Mobile MarketingIntroduction to Mobile Marketing
Introduction to Mobile Marketing
 
Cloud Computing And Android Apps For The Indian
Cloud Computing And Android Apps For The IndianCloud Computing And Android Apps For The Indian
Cloud Computing And Android Apps For The Indian
 
Mobile Social Networking: The New Ecosystem
Mobile Social Networking: The New EcosystemMobile Social Networking: The New Ecosystem
Mobile Social Networking: The New Ecosystem
 
A Study Mobile Computing
A Study   Mobile ComputingA Study   Mobile Computing
A Study Mobile Computing
 
Hop- by- Hop Message Authentication and Wormhole Detection Mechanism in Wirel...
Hop- by- Hop Message Authentication and Wormhole Detection Mechanism in Wirel...Hop- by- Hop Message Authentication and Wormhole Detection Mechanism in Wirel...
Hop- by- Hop Message Authentication and Wormhole Detection Mechanism in Wirel...
 
A Posteriori Perusal of Mobile Computing
A Posteriori Perusal of Mobile ComputingA Posteriori Perusal of Mobile Computing
A Posteriori Perusal of Mobile Computing
 
A Posteriori Perusal of Mobile Computing
A Posteriori Perusal of Mobile ComputingA Posteriori Perusal of Mobile Computing
A Posteriori Perusal of Mobile Computing
 
How Mobile Will Change your Life @ Work | Interactive Presentation
How Mobile Will Change your Life @ Work | Interactive PresentationHow Mobile Will Change your Life @ Work | Interactive Presentation
How Mobile Will Change your Life @ Work | Interactive Presentation
 
Pervasive computing
Pervasive computingPervasive computing
Pervasive computing
 
Mobile Computing: Microsoft Mobile Solutions for Online Learning
Mobile Computing: Microsoft Mobile Solutions for Online LearningMobile Computing: Microsoft Mobile Solutions for Online Learning
Mobile Computing: Microsoft Mobile Solutions for Online Learning
 
Technology Infrastructure For The Pervasive Vision, Does It Exist Yet?
Technology Infrastructure For The Pervasive Vision, Does It Exist Yet?Technology Infrastructure For The Pervasive Vision, Does It Exist Yet?
Technology Infrastructure For The Pervasive Vision, Does It Exist Yet?
 
Extending softwareintomobile 11 28-2012
Extending softwareintomobile 11 28-2012Extending softwareintomobile 11 28-2012
Extending softwareintomobile 11 28-2012
 
Glimpses into the future of mobile devices, the internet, and more - updated ...
Glimpses into the future of mobile devices, the internet, and more - updated ...Glimpses into the future of mobile devices, the internet, and more - updated ...
Glimpses into the future of mobile devices, the internet, and more - updated ...
 
Internet of Things for Next-Generation Public Safety Mobile Communications
Internet of Things for Next-Generation Public Safety Mobile CommunicationsInternet of Things for Next-Generation Public Safety Mobile Communications
Internet of Things for Next-Generation Public Safety Mobile Communications
 
Käyttäjien omat laitteet ja ohjelmistot työpaikoilla - Esa Aho 31.5.2012
Käyttäjien omat laitteet ja ohjelmistot työpaikoilla - Esa Aho 31.5.2012Käyttäjien omat laitteet ja ohjelmistot työpaikoilla - Esa Aho 31.5.2012
Käyttäjien omat laitteet ja ohjelmistot työpaikoilla - Esa Aho 31.5.2012
 

10 Tips to Prepare Your Mobile App for the Future of M2M

  • 2. INTRODUCTION There is little doubt that mobile devices have revitalized modern computing. Yet even  as hardware and network providers prepare for emerging devices connecting the home  to  the  office,  appliances  to  sensors,  cars  to  intelligent  transportation,  etc.,  software  developers  are  still  trying  to  tackle  the  highly  fragmented  mobile  phone  environment  that this explosion of devices has created. New tools and standards, such as BONDI, have recently emerged to assist developers,  yet many do not fully support the wide range of sensors, routers, cars and embedded  devices  that are a part of our pervasively connected future. Even a name for this connected world  is not fully agreed‐upon: pervasive computing,  ubiquitous  computing,  M2M,  the  Internet  of  Things… each  phrase  shares  a  common  vision, but the technical requirements remain ill‐defined. This eBook is a high‐level overview designed to help developers think about the future  of  mobile  app  development  and  in  the  absence  of  firm  standards,  offers  tips  for  choosing a pervasive software architecture that will future‐proof your application. It is  our hope that you will make it one of your most valuable resources to help shape your  pervasively mobile strategy. Credit: Rudy De Waele Victoria Romero‐Gomez Product Manager, Mobility Solutions Recursion Software © 2010 RECURSION SOFTWARE, INC. 2
  • 3. M2M: THE FUTURE OF MOBILE The World Wireless Research Forum (WWRF) predicts there will be 7 trillion devices for 7 billion  people by 2017. In other words, around one thousand devices for every man, woman and child on  the planet. Efforts to connect these devices have many names:  M2M Corporate Cloud  The Internet of Things Intelligent Home  Network of Everything Smart Buildings  Ubiquitous Computing Personal Networks Secure PAN Source: WWRF © 2010 RECURSION SOFTWARE, INC. 3
  • 4. DEFINING M2M The common vision expressed by many of today’s market leaders can be used as a guideline for establishing  functional requirements for the next generation of mobile, pervasive software. From their collective vision, a  common theme emerges: any content or service on any device, sharing content/services between devices and  clouds, & the ability to discover and host device communities.  "It's not the data center or the user device.  "It's not the data center or the user device.  "The desktop PC, enterprise computing, mobile  "The desktop PC, enterprise computing, mobile  It's any device to any content  It's any device to any content  services running in the cloud and  services running in the cloud and  wherever it is in the world over  phone devices……[via] a rich platform."  wherever it is in the world over  phone devices [via] a rich platform."  any combination of networks  any combination of networks  ‐‐ Steve Ballmer, CEO Microsoft wired or wireless to the home, to an  wired or wireless to the home, to an  Apple device, to a Microsoft device, to an  "Data will be selectively pushed to the  "Data will be selectively pushed to the  Apple device, to a Microsoft device, to an  IBM device, HP. Doesn't matter to us." IBM device, HP. Doesn't matter to us." user based on context……combined with  user based on context combined with  personal presence, creates transient  personal presence, creates transient  communities…" communities…" ‐‐John Chambers, CEO Cisco ‐‐ Nick Jones, VP Gartner © 2010 RECURSION SOFTWARE, INC. 4
  • 5. DEFINING PERVASIVE In their words, the future of pervasive computing is defined by any content accessible  on any device over any network. Mobile services must be available to users both in the  “In what’s called the Internet  cloud and on the device, and will push content to users based on their location,  of Things, sensors and  interests, behavior, etc. Devices must be able to discover and host transient  actuators embedded in  communities that exchange information, while providing customized security and data  physical objects—from  privacy options. Communities will be comprised of both human and machines  participants collaborating and creating new content that is automatically pushed to the  roadways to pacemakers—are  entire community in real‐time. linked through wired and  wireless networks… When  In short, a checklist of minimum requirements to enable this common vision: objects can both sense the  Any device, any content on any network environment and  Mobile services in the cloud & on the device communicate, they become  Push content autonomously based on time, location, state of being (work,  tools for understanding  play, private, etc.) complexity and responding to  Form transient, ad hoc mobile communities it swiftly. What’s revolutionary  Guaranteed message delivery in all this is that these physical  Security and data privacy information systems are now  Enterprise integration beginning to be deployed, and  some of them even work  largely without human  intervention…” ‐‐ McKinsey & Company © 2010 RECURSION SOFTWARE, INC. 5
  • 6. M2M’s TECHNICAL CHALLENGES There are many technology barriers to reaching this vision which include:  Conflicting standards  Various languages  Many networks and   Device fragmentation (servers to TVs  protocols phones to sensors)  Bandwidth scarcity and poor   Content organization/separation  (Public/private, work/personal) performance  Security and privacy © 2010 RECURSION SOFTWARE, INC. 6
  • 7. #1: DESIGN BEYOND THE  PHONE The mainstream mobile model today is to deploy to one or two of the more popular  handset platforms and forgo the rest of the market due to cost and time restrictions. It’s  no surprise then that even the most popular mobile apps only work on PCs and a handful  “We’ve seen numbers  of select platforms, namely iPhone, Android, and BlackBerry.   thrown out there from  analysts that say because of  There is also an assumption that smartphones will become the singular device for  computing and content. While smartphones combined with mobile apps enable portable  the M2M space we’ll be at  content, many companies have tried to produce a “one device fits all” device with little  500% penetration. I think it’s  success. The reality is that people like to choose which device best fits their context at  hard to walk into a Best Buy  any given time, whether at work or at play, based on location or mood, or while  accessing public or private content. Mobile users tend to have several wireless devices at  or Wal‐Mart or RadioShack  their disposal, at minimum a PC and a Smartphone, with newcomers like eReaders, in‐car  and see all of the devices on  entertainment and wireless TVs. The popularity of niche devices, such as the Kindle, iPad  the shelves and find one that  illustrate that when it comes to ease of use or media consumption, achieving the best  experience trumps the economics and convenience of having a singular device.   wouldn’t be a better device  and have a better value  Google certainly understands this mindset, and it has teamed with Sony to develop  proposition for the customer  Android television. In March 2010, the company also co‐launched the first Android‐ powered Roewe car for the Chinese market. But Android’s own fragmentation and  if it weren’t connected to the  technical bugs make its current incarnation unsuitable as a pervasive platform. The .NET  Web or to another device.” Compact Framework (CF) is another platform yet to live up to its potential. And finally,  a traditional web app cannot today provide the combination of face and faceless apps in  ‐‐ Glenn Lurie, President Emerging  a high performance, autonomous manner.   Devices, AT&T To deploy truly pervasive software, consider a platform that supports a range of mobile  To deploy truly pervasive software, consider a platform that supports a range of mobile  and embedded software stacks, such as Java’s Micro Edition, Microsoft’s CF, and OSGI  and embedded software stacks, such as Java’s Micro Edition, Microsoft’s CF, and OSGI  Containers, on a wide range of embedded operating systems such as Windows Mobile,  Containers, on a wide range of embedded operating systems such as Windows Mobile,  ((TECH TIP)) Symbian, and Embedded Linux to name just a few. The platform must seamlessly  Symbian, and Embedded Linux to name just a few. The platform must seamlessly  integrate with .NET, JEE and legacy (MVS, CORBA, etc.) enterprise systems and services,  integrate with .NET, JEE and legacy (MVS, CORBA, etc.) enterprise systems and services,  in either a traditional Web Services architecture, or in a high performance manner.   in either a traditional Web Services architecture, or in a high performance manner.   © 2010 RECURSION SOFTWARE, INC. 7
  • 8. #2: BE DEVICE, NOT  HUMAN‐FOCUSED Even if your application initially targets a specific phone subset, the ability to control  devices remotely or integrate data and services from other devices, many which are  machines and sensors, will soon be a necessity. The siloed mentality of one application  “If you walk into the [M2M]  with one user is no longer an adequate mobile strategy.  space and you bring all of  The role of communities, security and privacy will be discussed later in more detail, but  your baggage from launching  the main take‐away is that designing for advanced integration and communication with  a Smartphone or other things  applications, systems, and machines is the foundation for our pervasive future. The  you’ve done in the past,  number of devices, protocols and platforms grows exponentially when you consider  you’re probably not going to  initiatives to automate the home or connect the plant.   be very successful. You will  Your application must be designed to interact with a highly heterogeneous environment  have to look at this very  of human operated and non‐human operated devices, with different operating systems  differently. Whether it’s a  and different languages. It will need to utilize intelligent software agents that can gather  data, respond quickly based on this data as it changes, produce and distribute  netbook or an eBook reader,  knowledge, and possibly initiate other agent activities.  The underlying rules engine  the model is very different,  must be easy to use, provide very high performance against potentially large rule sets,  and the approach with the  and must be available in .NET, Java and C++.  [OEMs] is very different.” Services need to be accessible via centralized Web Service Container such as  ‐‐ Glenn Lurie, President Emerging  Services need to be accessible via centralized Web Service Container such as  Microsoft’s Internet Information Services (IIS) and those provided in the Java world,  Microsoft’s Internet Information Services (IIS) and those provided in the Java world,  Devices, AT&T but also must be accessible in a decentralized fashion directly to agents, exposed as  but also must be accessible in a decentralized fashion directly to agents, exposed as  remotely accessible services, that are running on edge and wireless devices. The  remotely accessible services, that are running on edge and wireless devices. The  location of intelligent mobile agents and the mobile services they expose must be  location of intelligent mobile agents and the mobile services they expose must be  ((TECH TIP)) irrelevant to the client application. irrelevant to the client application. © 2010 RECURSION SOFTWARE, INC. 8
  • 9. #3: CHOOSE YOUR  ARCHITECTURE WISELY The question of native vs. web has been long debated. And the answer is that no one‐ size fits all. The choice is largely dependent upon what kind of transactions your app  Five Common Reasons for  needs to perform. Rule of thumb: use a mobile web app when you need simple, less  Native Apps:  sophisticated apps and need to ramp up quickly. Native apps are best for high  performance, for complex processing, multiple‐devices types, and collaboration.   Performance  Offline Mode As platforms continue to be highly competitive, the default option for most apps is to   Findability [market  design for the mobile web to avoid fragmentation, although it should be noted that  mobile browsers are also fragmented. The relative simplicity of the mobile web is often  channel] best if your application and business model offers enough differentiation within the   Device Attributes noisy app market.  Monetization In contrast, native solutions offer better performance, consume less bandwidth, have  ‐‐ Jason Grigsby, Cloud Four offline capabilities, and offer more sophisticated transactions if fragmentation can be  solved. Additionally, more sophisticated apps need a robust object oriented language  like Java rather than JavaScript which has inconsistent browser performance.  The apps of our M2M future will likely be highly collaborative in a heterogeneous  device environment, therefore they need  pervasive native platform will outperform  ((TECH TIP)) the web in performance, efficiency and security. They need to do more than just solve  the fragmentation issue, they need to employ a distributed knowledge network that  create meaningful content rather than simply post it. This is where the phrase “Internet of Things” is a bit of a misnomer and the “Network of  Everything” makes better sense. To understand the dis/advantages of each approach, we  will review their basic architectures. © 2010 RECURSION SOFTWARE, INC. 9
  • 10. COMPARING ARCHITECTURES  Thin Client‐Server (Centralized)  Smart‐Client (Distributed)  Mobile Web (HTML,  JavaScript)  P2P Edge Platforms (ex. Voyager)  Mobile Enterprise solutions (ex. Sybase,  WebSphere) Description: This model uses mature technologies in a new  Description: This model uses mature technologies, such as  way, by relying on mobile software agents to deploy  HTML and JavaScript or an enterprise platform intelligence Bidirectional  communication Intelligent client  Each client has server  performs transactions  Server hosts all   intelligence and capabilities.  Client enters data,  autonomously until a  services and content,  each click sends  request to share is  acting as a gateway. It  data to server made.  receives requests and  Bandwidth  High bandwidth use data, performs filtering  Efficiency or transactions and  sends output back to  Content or messaging is sent  Clients can be  client(s) if shared ly P2P/Group (guaranteed  faceless, such as  ll on Client displayed data.  pu messaging) sensors, and use  Process repeats for each  any language or OS click or transaction.  © 2010 RECURSION SOFTWARE, INC. 10
  • 11. COMPARING SERVICES & FEATURES Traditional Method Innovative Feature Enterprise Mobile Web P2P Performance Mid Worst  Best (+20‐50%) Shared services No No  On device Push content No No  P2P/Group Ad hoc Communities No No requires invite  Guaranteed Messaging  No  Security   Limited: https  Bidi, NAT Efficient Bandwidth No every click=data No every click=data  Offline persistence No No  Data to Knowledge  at the server only No  On device Legacy Integration  via webservices No  Multiple Multi‐Language  No N/A (HTML, JS. No OO)  Java, C#, C++ Self‐healing SOFTWARE, INC. © 2010 RECURSION No No  11
  • 12. ABSTRACTION PLATFORMS Smart  Thin Client Client Airplay Alchemo PhoneGap Pyxis Rhodes Smartface Sybase Titanium Voyager Mobile App Designer Unwired Mobile Studio Platform Platforms Supported Abstraction platforms have  Android X X X X Java FX emerged that aim to ease  X Windows the deployment to multiple  Mobile X X X X X X Linux mobile platforms.  Blackberry X X X X X X Symbian X X X X BREW X X X iPhone X X* X X* X X* X X* Java ME X X Development Languages C++ X X Java ME X Java X .NET X HTML X X X Own Visual Language X X X * Due to a change in the Apple iOS  Other Properties Open Source developer agreement, apps built using  X X Enterprise 3rd party platforms and tools may be  Integration prohibited from listing on Apple iTunes  X X X (consumer apps). Enterprise  Free X (only for X (if using deployments are still possible. iPhone) X GPL) © 2010 RECURSION SOFTWARE, INC. 12
  • 13. MOBILE WEB DIS/ADVANTAGES  Device support‐ wide availability for mobile phones and PCs,  however browser fragmentation creates an inconsistent  experience. Unavailable for embedded devices.  Network efficiency‐ increasingly poor performance as wireless  devices proliferate. Good for simple applications.   Collaboration/Groups‐ limited to email/chat and a shared folder  on server for file transfer.  Security‐ good, but unable to manage device remotely.  Performance‐ relatively slow. HTML and JS are not as robust as  Object Oriented languages. Centralization offers relatively slow processing and scalability.  Cost‐ free and open. Support through user groups or  consultants. © 2010 RECURSION SOFTWARE, INC. 13
  • 14. ENETERPRISE DIS/ADVANTAGES  Device Support‐ Limited to specific operating systems for which  the code is written/ported.  Typically only mobile and PCs  running certain platforms.  Network efficiency‐ some offer offline input capability, a huge  advantage as bandwidth becomes more scarce.  Collaboration/Groups‐ limited to email/chat and a shared  folder on server for file transfer.  Security‐ on device security can be achieved, yet vulnerability  occurs with collaboration and data exchange  Performance‐ good on‐device performance, but collaboration  requires servers and a network connection, slowing  performance and creating a bottleneck.  Cost‐ proprietary solutions are more expensive, but better  supported than open source. Cost rises w/ additional platforms. © 2010 RECURSION SOFTWARE, INC. 14
  • 15. P2P DIS/ADVANTAGES  Device Support‐ Designed to support a wide range of edge  devices. By definition does not need a central server.  Network efficiency‐ offline capability plus intelligence. Turns  clients into servers that host/share services autonomously.   Security‐ (Voyager) Secure Firewall/NAT Traversal support via  BIDI same socket/port communication & client initiated requests.  Collaboration/Groups‐ P2P/Group application messaging, chat  and file transfer. Ad hoc community formation/discovery.  Performance‐ (Voyager) P2P/Group ad hoc messaging. 1.5x faster  than RMI, 300x faster than web. OO support (Java, C#, C++).  Cost‐ proprietary solutions are initially more expensive, but  better supported than open source. Relative cost lowers  exponentially with “write once” capabilities. © 2010 RECURSION SOFTWARE, INC. 15
  • 16. #4: COLLABORATION &  COMMUNITIES The next generation of apps will have social or collaborative elements that incorporate  data from other applications or third‐party sources. Once data can be shared freely, the  “The web is like an  opportunity to transform data into knowledge or new content and share it with other  encyclopedia, where you  applications on a device or distribute to a community elevates collaboration to its true  potential. This is a leap from traditional collaboration solutions which are limited to  always start with the index.  mobile email or other messaging, voice and sometimes shared files on a server. Mobile business 2.0 will be  more like a theme park  As our world becomes wirelessly connected, a network of devices, primarily sensors and  where you explore what's  handhelds, will form the foundation of a community that continuously gathers, transmits  around you. Data will be  and receives data, whether it be environmental data, geo‐tagged content, or real‐time  selectively pushed to the  alerts, such as people’s location or communication threads. The community cannot be  human‐dependent, rather devices will have embedded intelligence that will enable them  user based on context,  to act anonymously on new information they receive from within the community. matching the users' needs,  interests, mood, location and  even recent behaviour.” Next generation applications must support the formation of P2P and P2‐Group ad‐hoc Next generation applications must support the formation of P2P and P2‐Group ad‐hoc communities of devices, as well as the ability to support filtering of messages across  communities of devices, as well as the ability to support filtering of messages across  ‐‐ Nick Jones, VP Gartner these communities. Transactions must extend from the enterprise to edge devices and  these communities. Transactions must extend from the enterprise to edge devices and  allow for distributed, but coordinated tasks among peers, peer groups, and the  allow for distributed, but coordinated tasks among peers, peer groups, and the  enterprise.  Support must be provided to allow for intelligent agents running on the edge  enterprise.  Support must be provided to allow for intelligent agents running on the edge  to participate in guaranteed message delivery with enterprise transaction managers  to participate in guaranteed message delivery with enterprise transaction managers  ((TECH TIP)) such as those provided in .NET’s MTS, Java’s Transaction Service, and OMG’s Object  such as those provided in .NET’s MTS, Java’s Transaction Service, and OMG’s Object  Transaction Service. Transaction Service. © 2010 RECURSION SOFTWARE, INC. 16
  • 17. #5: LOCATION & DISCOVERY While your address book will always form the hub of your private and work  communities, location and discovery services can extend communities beyond your  address book or a check‐in venue, to become apps that connect and rally sports fans,  “Mobile business 1.0 (or  exchange photos and communications amongst travelers, discover potential customers  mobile commerce) failed  and build loyalty among existing ones, and many more iterations on the same theme: ad  because the industry tried to  hoc collaboration. Ad hoc communities exist for a period of time and space and are  transplant all web principles  made possible by taking advantage of IP multicast and location APIs.  into the phone (e.g. WAP).  Combined with rules engines, such as a RETE‐based rules engine integrated with some  Truly valuable services have  pervasive platforms, engineers can also weave artificial intelligence and cognitive  not been widely available  capabilities into the location‐based apps they deploy to all targeted devices and servers.   Engineers will be able to produce applications that provide real‐time intelligence,  and the location based  situational awareness, and coordination at the edge not found today. services that we have seen  have not been very  To enable these applications pervasively, your platform must support dynamic discovery  sophisticated… via UDP or IMS/SIP and the formation of P2P and P2‐Group ad‐hoc communities of  devices as previously discussed. Finally, all agents need to be accessible by a Service  Description in a Yellow‐pages directory, ideally one that also supports Universal  ((TECH TIP)) Description, Discovery, and Integration (UDDI). Location, combined with  personal presence, creates  transient communities,  which offers an opportunity  for better use of time or  marketing.” ‐‐ Nick Jones, VP Gartner © 2010 RECURSION SOFTWARE, INC. 17
  • 18. #6: BANDWIDTH MAKES OR  BREAKS AN APP While ‘unlimited’ data plans are common among Smartphone contracts, network  availability it is far from ubiquitous or guaranteed. App‐intensive phones, like the iPhone,  arguably consume the most bandwidth and customers are often complaining about poor  “The final consideration is  performance. There is also a great demand to utilize networks more efficiently, as  whether the user and the  additional consumer devices like eReaders are charged by the kb. company understand two  basics about wireless and  The high volume of users resulting in slow network performance at mobility tradeshows  as well as concentrated subscribers in metro areas like San Francisco serve as a  Internet access: Do they  microcosm for what our pervasive experience will be when mass market devices become  understand that the Internet  connected. While each network provider is scrambling to expand to 4G networks, the  is NOT a mission‐critical  sheer number of devices in our connected world will surely reach a critical mass where  efficiency is no longer an option, but a requirement.  network? Do they also  understand that wireless  Scalability is also a concern at the application messaging level. A centralized server can  connectivity is NOT always  become a bottleneck for messaging and risks a single point of failure. The most infamous  available?” example of this was when Twitter suffered day‐long downtime due to a sub‐optimal  architecture. A solution to this is to consider a platform that offers decentralized  ‐‐ Andrew M. Seybold communication between groups of devices/systems without the need of a central  messaging server.  Efficient network utilization is accomplished by removing the requirement to push all  transactions and data to the cloud and pull data back to the device again with each  transition or download.  This can be accomplished by a peer‐2‐peer architecture and/or  by implementing RULES engines and software agents to perform many edge  transactions as possible. Apps should be able to process data at the source, handle  ((TECH TIP)) unreliable and/or limited network connections, and adjust to hardware failures or CPU  load. Therefore, these devices must also persist data via a micro database.  © 2010 RECURSION SOFTWARE, INC. 18
  • 19. #7: NETWORK SURVIVABILITY  AND MOBILITY Bandwidth issues and inconsistent network availability lead to the next tip which is that  apps need to communicate without uniform standards, in multiple languages, multiple  networks, function when offline.  “Our wireless devices can  A platform should provide a simple way to access databases, regardless of the type of  database, be it relational, object, xml, and a multi‐user enterprise database or single‐user  best be described as being  embedded.  Developers need to be shielded from the intricacies that exist with these  always on and most of the  various flavors and have support for data synchronization between the edge and  time connected. There is no  enterprise.   guarantee of connectivity,  And when back online, devices must support passing messages over standard centralized  nor is there a guarantee that  messaging servers for integration with enterprise and legacy systems.  More specifically,  there needs to be seamless integration with Microsoft’s Message Queue (MSMQ), Java’s  you will always be able to  Message Server (JMS) and other Enterprise Service Buses. access the information you  want and need when on the  Additionally, the software components or agents running on edge devices need to  road if you are connected.  support multiple wireless protocols (GSM, CDMA, Wi‐Fi, UWB, Bluetooth, NFC, RFID)  Data that resides only in the  and associated networks (Telco, Wide Area, Local, Personal). Ideally, they will  dynamically reconfigure themselves to use a communication protocol that best matches  cloud or behind your  the capabilities of their current network connection and the current node(s) they are in  corporate firewall is not  communication with.  always accessible.” ‐‐ Andrew M. Seybold To achieve seamless  mobility across various wireless and telco networks, support must  exist for devices joining and leaving the network, which will result in changing “internet” addresses.    The platform needs to be support multiple IP’s of network hopping/fire‐ walled devices/servers either via NAT support, integration with a SIP Server and/or  ((TECH TIP)) other means.  This will allow devices to continue to communicate and share data  services. © 2010 RECURSION SOFTWARE, INC. 19
  • 20. #8: DATA SECURITY &  PRIVACY In a ubiquitously networked world, it will often be necessary to maintain data on edge  devices.   The security concerns facing enterprises today will need to incorporate  solutions that extend into a collaborative environment.  Applications must provide an  “The simple expedient of  extremely high level of security to ensure privacy and protection from rogue/viral clients  placing a Windows PC behind  and software agents.  This will involve security agents and agent managers that provide  a Nat router changes the  capabilities above and beyond the current encryption, authentication, and authorization  equation considerably, giving  that are currently employed in client‐server environments. even unsecured Windows PCs  When implementing communities, offering the user complete control over his/her status  an environment in which they  and visibility is crucial. Furthermore, community apps should allow separate  can operate safely… public/private streams and store data to the secure portion of SD card. Community apps will need to participate in real‐time data sharing with other devices,  ((TECH TIP)) systems and clouds regardless of the networks that the participating devices and systems  are on. Current firewall restrictions inhibit this ability, so the ability for applications to  easily and securely span networks is increasingly important. Support for Network  As long as Windows is the  Address Translation (NAT), and the resolution of application clients/services with  primary operating system for  multiple addresses is key for solutions to utilize multiple networks and spanning their  firewalls.  Once apps can communicate securely over the same socket and port,  you no  internet‐connected hosts (a  longer compromise network firewalls. condition that is unlikely to  change any time soon), Nat  will be an important part of  most users' security  perimeters.” ‐‐ Daniel Golding, Computer Weekly © 2010 RECURSION SOFTWARE, INC. 20
  • 21. #9: UNDERSTAND THE DEVICE  ARCHITECTURE To Other Enterprise To achieve John  and/or Other Edge Chamber’s vision of  Devices “any device to any  content wherever it is  Wired WiFi WiMax UWB GSM CDMA Bluetooth Zigbee NFC in the world over any  combination of  Device API Abstraction Layer networks”, an advanced  Messaging API Security API Discovery Transaction White/Yellow/Dynamic pervasive M2M  SOAP IIOP XML-RPC Binary XML/Objects TCP/IP UDP OMA DM OBEX application will need to  support most, if not all  Universal UI (Webkit) API Abstraction of the depicted device  Application Ontology API Database API Rules API Distributed BONDI Services components Services’ Agents Ontology Engine Database Engine Rules Engine GeoLoc File PIM OSGi Contact Calendar Task Universal Collections & Algorithms (Java, .NET, C++) Device API Abstraction Layer C# Java C++ Obj. C Symbian .NET .NET CF Android JEE, JSE, JME Brew Win/Win Mobile Linux BlackBerryEmbedded RTOS iPhone © 2010 RECURSION SOFTWARE, INC. 21
  • 22. #10: UNDERSTAND THE  ENTERPRISE ARCHITECTURE To Other Enterprise An advanced pervasive  and/or Other Edge M2M application with an  Devices enterprise layer will  need to support most, if   Wired WiFi WiMax UWB GSM CDMA Bluetooth Zigbee NFC not all of the depicted  components Enterprise API Abstraction Layer JMS MSMQ DDS JEE .NET CORBA SIP UDDI JTS MTS OTS Messaging API Security API Discovery Transaction White/Yellow/Dynamic SOAP IIOP XML-RPC Binary XML/Objects TCP/IP UDP OMA DM OBEX Application Ontology API Database API Rules API Services’ Agents Ontology Engine Database Engine Rules Engine OSGi Universal Collections & Algorithms (Java, .NET, C++) Enterprise API Abstraction Layer C# Java .NET JEE, JSE Win Server Linux Unix © 2010 RECURSION SOFTWARE, INC. 22
  • 23. DECISION CRITEREA Each technology approach discussed offers a tradeoff between performance, ease‐of‐ development, reliability, cost, time‐to‐market and differentiating features. The decision criteria  There is rarely a one‐size  relies on finding the best solution for your app’s vision and audience. fits all solution. Your  technology choice should  Requirements to consider: fit your customer   Web browsers offer the most widely supported mobile phone support, with limited  segment (end user),  fragmentation, extending in some cases to feature phones (non‐smartphones), but  rather than settling for a  does not support device classes outside of phones. In contrast, smart clients were  poor‐usability or poorly‐ built specifically to reach a range of devices, from sensor to phone to server. Is  functioning app. there any value to extending your application beyond the phone or PC?  Compared to smart‐clients, thin‐client apps are slower, less reliable, support fewer  devices and device classes, and in general only gather rather than turn data into  knowledge and act upon it. Yet, thin clients are an affordable choice for simple, less  transaction‐oriented applications that are not mission critical or require guaranteed  messaging. Smart clients are highly transactional, autonomous and function offline  when needed. What level of sophistication and longevity does your app require?  P2P platforms excel at secure collaboration and maintaining in‐state application  transfer from device to device. Yet, most low‐level collaboration tasks like email  and cloud storage are met with a web app.  Does your content or data need to be  private (P2P platform) or can you use a hosted cloud solution? Do you need to  collaborate across organizations outside your firewall? © 2010 RECURSION SOFTWARE, INC. 23
  • 24. TAKE‐AWAY: 300 BILLION  REASONS TO GET CODING With the second generation of mobile, pervasive apps poised to explode, and with  standards in limbo, it’s important to surround yourself with the best‐of‐breed tools,  Harbor Research estimates  technology approach and a roadmap that will future‐proof your application for the years to  the M2M market to grow to  come.  $300 B by 2013 Additional Resources The following are some additional links and resources to assist you with your marketing  and business models:  Ad Mob Mobile Metrics Reports‐ insight into purchasing behavior and marketing. They  are published monthly.  Harbor Research‐ Pervasive Internet & Smart Services Market Forecast  ((MARKETING TIP))  Development Costs‐ discusses risks, opportunities, and typical development costs For technical advise on fining a platform solution that meets your needs, Recursion assists  customers with tools, prototype development and consulting services. Visit  recursionsw.com for more information. It is truly an exciting time for our industry. It will be interesting to see which of today’s  mobile app players translate their technology and business models to the pervasive,  ubiquitous, M2M, internet of things. Will you be one of them? ■ © 2010 RECURSION SOFTWARE, INC. 24
  • 25. ABOUT THE AUTHORS Victoria Romero‐Gomez, Product Manager About Recursion vgomez@recursionsw.com Recursion Software provides  Vicky has worked at technology start‐ups for the last 10 years, including  next‐generation platforms and  MadetoOrder.com and NextBill.com, where she held various roles including Director of  middleware designed for mobile  Marketing and Project Management roles. She has led the marketing department at  communications and  Recursion since 2006 and she sets the company’s strategic approach to new verticals. collaboration. Visit us at  recursionsw.com for information  about our technology and service  Vicky holds an MBA from the University of Texas at Austin’s McCombs School of Business  offerings.  with additional post‐graduate work at Southern Methodist University’s Cox School of  Business, and a BA from the University of California Berkeley. Bob DeAnna, CTO Recursion Software Recursion Software bdeanna@recursionsw.com 2591 North Dallas Parkway Bob has more than 24 years of experience in distributed frameworks such as JEE, CORBA,  Suite 200 .NET and ATMI, has authored or co‐authored multiple patents in this area. He is also a  Frisco, TX 75034 contributing writer and thought leader on mobile technology for publications like  800.727.8674 Embedded Computing and .NET Developers Journal. Bob is a visionary who has worked  972‐731‐8800 to achieve the technology behind community‐based collaborative networks and is  currently shaping the product roadmap at Recursion towards this end. Previous roles include VP of architecture, senior consultant and lead engineer for  companies like Verizon, ATT, Swiss Re‐Insurance and State Farm Insurance. He holds a BS  in Mechanical Engineering from Rutgers University, with post‐graduate work in C/C++  and Unix Programming at New York University. © 2010 RECURSION SOFTWARE, INC. 25