Welcome!

Java IoT Authors: Derek Weeks, Liz McMillan, Automic Blog, Karthick Viswanathan, Stackify Blog

Related Topics: Java IoT

Java IoT: Article

Droplets by Droplets Inc.

Droplets by Droplets Inc.

Tired of using that Web access e-mail client? Going crazy filling out those expense reports using a clunky Web-based system? Missing the superior and responsive desktop application? You're not alone! According to the usability research firm Nielsen Norman Group, "Billions of dollars are wasted yearly in lost productivity as people wait for Web pages to perform duties that could be better handled by a 1984 Macintosh-style GUI application."

The promise of Web architecture (no deployment, large scalability, no firewall opening) is hard to refuse. Yet the wide deployment of HTML-based applications has left end users craving for a responsive and productive user interface. There have been several efforts to combine both the Web and the rich UI (DHTML/ActiveX/Java applets). Unfortunately, these add more pain rather than soothe.

The Droplets application platform, with the User Interface Server and the SDK, enables developers to create software that combines the convenient, instant deployment benefits of the Web with the high usability and rich UI of traditional clients. Droplets GUIs can be dragged directly off of Web pages and onto the desktop, acting as double-clickable icons to launch Web-based apps that look and feel like Windows applications. As there is zero application code on the client machine, Droplets is less prone to security breaches.

Droplets Overview
Droplets has a downloadable SDK from the Droplets Web site developers zone (www.droplets.com/developer). There is an initial evaluation license and plenty of starter materials (tutorials, samples, documentation) to get started. The first time I installed Droplets and tried it out, I could get to a quick sample of mine in less than two hours. Command-line and Notepad-based development is possible. Droplets also has a plug-in for JBuilder and Eclipse. Easy integration with webMethods' Glue makes it possible to hook up with back-end Web services.

The key components of Droplets are as follows.

Droplets UI Server
The Droplets UI Server hosts application logic, instructs the client about GUI rendering, manages client connections, and provides GUI updates in response to both user-initiated and server-side events. The UI Server can also integrate with application servers and back-end components like XML–Web services or EJB/CORBA.

Droplets Client
The client is a lightweight engine transparent to the end user that renders all Droplets applications at the client computer. The Droplets client does require a small, one-time download (~1MB). Thereafter, no application downloads are required and all upgrades are automatic on application startup. The client has two responsibilities: the presentation of the GUI and the reporting of user events to the UI Server. To accomplish this, a small (1–2KB) text file called a "DRP" is used. It holds basic information like the server URL, the server port, and the name of the Droplet to present. The Droplets client also has the ability to support a "Dripline", a desktop alert that allows the UI server to contact a client whenever the state of a given Droplet has changed. This allows the client to update the Droplet's desktop icon, e.g., alerting the user of server events like a change in a stock price or an inventory level dipping below a threshold.

 

Communication Layer Enables Superior Performance
The Droplets client and server communicates via an optimized communications layer running over TCP/IP sockets. The UI Server instructs the client as to the layout of the applications at start-up, and transmits both server-side and user-initiated updates. Droplets transmit only events and individual field updates, whereas an HTML-based application reloads the entire page for each user event. This makes a Droplets application faster and requires less bandwidth than an equivalent Web application.

Droplets SDK
The Droplets Software Development Kit (SDK) is a remote GUI toolkit that allows development using a single standard language. Java and C++ are the current choices. OO-COBOL, C#, and VB should be available in early 2004. The API library is based on Java's AWT package and also incorporates components and interfaces from the Swing package. The Droplets platform provides several infrastructural components such as networking, encryption support, an authentication mechanism, and monitoring. Droplets' server-based architecture allows customization of the look and feel of application instances via "skins," allowing enterprises to blend the Droplet into the look of their other online content.

 

A Real-Life Scenario
The following is an example of a real-life scenario: a large chemical company uses a standardized set of key business performance measures. The company's executives use the key measures that span financial, economic, and customer satisfaction data to make critical business decisions. A business intelligence system from COGNOS was used to gain visibility into a number of different business units using various IT systems. There are over 200 business units, and each unit is measured by around 50 measures. This data is currently loaded every month through a complex ETL procedure, then Excel and paper reports are prepared for the management. These reports are available every 30 days and are largely static in nature. However, the existing Web-based GUI was too slow, cumbersome, and user-unfriendly. It became so unwieldy that the management staff preferred paper reports.

MEC Technologies was hired to build a management dashboard to improve the ease of accessing and reporting data for the management staff. While enriching the end-user experience was critical, it was also important to use industry-standard XML Web services to integrate data from BI Systems, back-end DB, and other third-party data sources. Considering the user base, a highly polished and easy-to-use application was desirable.

Using the Droplets Java API, an executive management dashboard was developed in less than two months. Since the entire application was server-based, hooking up with back-end Web services was quite simple. Initially, both Apache Axis and webMethods Glue were used to create Web services proxies and access the measures data. Finally, webMethods Glue was chosen. The user community used NTLM security to get authenticated and then access a URL within the intranet. That URL would launch the Droplets application. Most users remained with the browser-based UI. However, a few advanced users preferred to use the Droplets client. A controlled version was beta tested by the financial analysts community. Once they were satisfied, the application was launched in production for the executive management staff.

Experience Summary
The overall experience of developing with Droplets and using it was quite encouraging. There were very few platform- and Droplets (SDK)- related roadblocks. Data integration (using Web services) was simple due to the server-side architecture and usage of XML and SOAP-based services. Thanks to the Droplets system and access logs, debugging applications during development and production was easy. Session-specific debugging was also enabled. What was really nice was the post-production extension of the application. An application-level usage reporting module was requested, and it was developed and deployed in less than two weeks. The entire new application extension was launched with minimum downtime.

Conclusion
The Droplets platform presents a nice alternative for both developers and IT managers. Developers can use their favorite IDE and use a high-level component-based environment. IT managers can still enjoy their zero-touch deployment.

Microsoft has recognized this space and presents a solid case with smart clients (www.microsoft.com/net/products/client.asp). Let's compare Droplets with .NET smart clients.

With smart clients, any machine that has a .NET CLR installed can download a .NET assembly and can do anything that the CLR classes and the security framework allow, so it fits the "rich client" aspect quite nicely. On top of this, .NET allows automatic synchronization of code versions. The IEEXEC component (integrated with IE) keeps a local cache synchronized with the server-side assembly and does delta updates automatically.

Droplets, a Java-based server, is platform independent. Currently it runs on Windows, HP Unix, Sun Solaris, and mainframe Linux. Microsoft .NET remains a Windows family–only solution. This is major for IT shops having disparate systems and trying to put sharper front ends to their traditional back-end systems.

Smart Clients Promise Offline Capability
The Droplets platform always needs a network connection to the server. However, smart clients are capable of working with local caches (both file system and DB engine based). The promise of being able to work on an application with or without a network connection is huge and will fuel an entire class of on-the-road applications.

However, Droplets has a strong story in the security area. A .NET smart client depends on code being downloaded to the client machine and running on an environment managed by a CLR. It's quite cumbersome to set up the client-side privileges of downloaded code using the Code Access Security (CAS) model. This also leaves much to worry about considering what security door might be left open in downloaded code, exposing it to some serious security breach.

The Droplets platform presents a compelling option for building rich Web applications using a secure and a platform-independent architecture.

Resource

  • Source code: www.sys-con.com/java/sourcec.cfm or www.mectechnologies.com/articles/JDJ/Droplets/Trader.zip

    Droplets Inc.
    636 Avenue of the Americas
    New York, NY 10011
    Web: www.droplets.com
    Phone: 212 691-0800
    Fax: 212 691-6335

    Specifications

  • Deploys standalone, or with any J2EE-compliant application server
  • Supports Windows NT, Windows 2000, Linux, Solaris
  • Programming tools for Java and C++; OO Cobol and VB.Net coming soon
  • Integration with Borland JBuilder; Oracle JDeveloper and Eclipse in beta
  • Windows, Linux, Unix, wireless devices as standalone apps/within a Web browser
  • Integrate with Web services protocols with webMethods’ Glue

    Snapshot
    Pros:

  • Easy-to-build, highly rich Web-based applications
  • Secure application deployment
  • Java-based server enables cross-platform support

    Con:

  • No offline capability
  • More Stories By Somnath Banerjee

    Somnath is the Founder of MEC Technologies, a provider of Web Services and X-Internet related technology products and services. MEC is a Cupertino, CA based company with engineering organizations in India. MEC customers span large Financial Institutions, Manufacturing organizations and other High Technology companies.

    Comments (2) View Comments

    Share your thoughts on this story.

    Add your comment
    You must be signed in to add a comment. Sign-in | Register

    In accordance with our Comment Policy, we encourage comments that are on topic, relevant and to-the-point. We will remove comments that include profanity, personal attacks, racial slurs, threats of violence, or other inappropriate material that violates our Terms and Conditions, and will block users who make repeated violations. We ask all readers to expect diversity of opinion and to treat one another with dignity and respect.


    Most Recent Comments
    Smriti 02/11/04 03:26:58 AM EST

    ULC (www.canoo.com/ulc) is pure Java based rich thin client frame work for J2EE applications. It provides server side widgets with API exactly similar to Swing. ULC apps run in any std J2EE container (servlet or EJB). Client is thin and universal (350 KB of Java) and requires JRE 1.2 or higher on the desktop. There is a Visual Builder plug-in available for IBM Websphere Studio and soon for Eclipse. Developers can use any IDE to program with ULC classes.

    Tahir Awan 02/10/04 11:29:04 AM EST

    I am surprised to see that the author didn''t mention one of the biggest problem I''ve seen while working with droplets platform. That''s having to restart the server every time the code is modified. Imagine a code-build-test cycle where one has to restart the server every time.
    Having worked with mostly J2EE servers with hot-deployment capability, this is the biggest problem I face.

    /tahir

    @ThingsExpo Stories
    SYS-CON Events announced today that Datera will exhibit at SYS-CON's 21st International Cloud Expo®, which will take place on Oct 31 – Nov 2, 2017, at the Santa Clara Convention Center in Santa Clara, CA. Datera offers a radically new approach to data management, where innovative software makes data infrastructure invisible, elastic and able to perform at the highest level. It eliminates hardware lock-in and gives IT organizations the choice to source x86 server nodes, with business model option...
    When shopping for a new data processing platform for IoT solutions, many development teams want to be able to test-drive options before making a choice. Yet when evaluating an IoT solution, it’s simply not feasible to do so at scale with physical devices. Building a sensor simulator is the next best choice; however, generating a realistic simulation at very high TPS with ease of configurability is a formidable challenge. When dealing with multiple application or transport protocols, you would be...
    With 10 simultaneous tracks, keynotes, general sessions and targeted breakout classes, Cloud Expo and @ThingsExpo are two of the most important technology events of the year. Since its launch over eight years ago, Cloud Expo and @ThingsExpo have presented a rock star faculty as well as showcased hundreds of sponsors and exhibitors! In this blog post, I provide 7 tips on how, as part of our world-class faculty, you can deliver one of the most popular sessions at our events. But before reading the...
    In his session at 21st Cloud Expo, Carl J. Levine, Senior Technical Evangelist for NS1, will objectively discuss how DNS is used to solve Digital Transformation challenges in large SaaS applications, CDNs, AdTech platforms, and other demanding use cases. Carl J. Levine is the Senior Technical Evangelist for NS1. A veteran of the Internet Infrastructure space, he has over a decade of experience with startups, networking protocols and Internet infrastructure, combined with the unique ability to it...
    Internet of @ThingsExpo, taking place October 31 - November 2, 2017, at the Santa Clara Convention Center in Santa Clara, CA, is co-located with 21st Cloud Expo and will feature technical sessions from a rock star conference faculty and the leading industry players in the world. The Internet of Things (IoT) is the most profound change in personal and enterprise IT since the creation of the Worldwide Web more than 20 years ago. All major researchers estimate there will be tens of billions devic...
    SYS-CON Events announced today that CA Technologies has been named "Platinum Sponsor" of SYS-CON's 21st International Cloud Expo®, which will take place October 31-November 2, 2017, at the Santa Clara Convention Center in Santa Clara, CA. CA Technologies helps customers succeed in a future where every business - from apparel to energy - is being rewritten by software. From planning to development to management to security, CA creates software that fuels transformation for companies in the applic...
    SYS-CON Events announced today that Elastifile will exhibit at SYS-CON's 21st International Cloud Expo®, which will take place on Oct 31 - Nov 2, 2017, at the Santa Clara Convention Center in Santa Clara, CA. Elastifile Cloud File System (ECFS) is software-defined data infrastructure designed for seamless and efficient management of dynamic workloads across heterogeneous environments. Elastifile provides the architecture needed to optimize your hybrid cloud environment, by facilitating efficient...
    SYS-CON Events announced today that GrapeUp, the leading provider of rapid product development at the speed of business, will exhibit at SYS-CON's 21st International Cloud Expo®, which will take place October 31-November 2, 2017, at the Santa Clara Convention Center in Santa Clara, CA. Grape Up is a software company, specialized in cloud native application development and professional services related to Cloud Foundry PaaS. With five expert teams that operate in various sectors of the market acr...
    "We provide IoT solutions. We provide the most compatible solutions for many applications. Our solutions are industry agnostic and also protocol agnostic," explained Richard Han, Head of Sales and Marketing and Engineering at Systena America, in this SYS-CON.tv interview at @ThingsExpo, held June 6-8, 2017, at the Javits Center in New York City, NY.
    SYS-CON Events announced today that Golden Gate University will exhibit at SYS-CON's 21st International Cloud Expo®, which will take place on Oct 31 – Nov 2, 2017, at the Santa Clara Convention Center in Santa Clara, CA. Since 1901, non-profit Golden Gate University (GGU) has been helping adults achieve their professional goals by providing high quality, practice-based undergraduate and graduate educational programs in law, taxation, business and related professions. Many of its courses are taug...
    Recently, IoT seems emerging as a solution vehicle for data analytics on real-world scenarios from setting a room temperature setting to predicting a component failure of an aircraft. Compared with developing an application or deploying a cloud service, is an IoT solution unique? If so, how? How does a typical IoT solution architecture consist? And what are the essential components and how are they relevant to each other? How does the security play out? What are the best practices in formulating...
    WebRTC is great technology to build your own communication tools. It will be even more exciting experience it with advanced devices, such as a 360 Camera, 360 microphone, and a depth sensor camera. In his session at @ThingsExpo, Masashi Ganeko, a manager at INFOCOM Corporation, will introduce two experimental projects from his team and what they learned from them. "Shotoku Tamago" uses the robot audition software HARK to track speakers in 360 video of a remote party. "Virtual Teleport" uses a...
    In his session at @ThingsExpo, Arvind Radhakrishnen discussed how IoT offers new business models in banking and financial services organizations with the capability to revolutionize products, payments, channels, business processes and asset management built on strong architectural foundation. The following topics were covered: How IoT stands to impact various business parameters including customer experience, cost and risk management within BFS organizations.
    SYS-CON Events announced today that Cloud Academy named "Bronze Sponsor" of 21st International Cloud Expo which will take place October 31 - November 2, 2017 at the Santa Clara Convention Center in Santa Clara, CA. Cloud Academy is the industry’s most innovative, vendor-neutral cloud technology training platform. Cloud Academy provides continuous learning solutions for individuals and enterprise teams for Amazon Web Services, Microsoft Azure, Google Cloud Platform, and the most popular cloud com...
    DX World EXPO, LLC., a Lighthouse Point, Florida-based startup trade show producer and the creator of "DXWorldEXPO® - Digital Transformation Conference & Expo" has announced its executive management team. The team is headed by Levent Selamoglu, who has been named CEO. "Now is the time for a truly global DX event, to bring together the leading minds from the technology world in a conversation about Digital Transformation," he said in making the announcement.
    SYS-CON Events announced today that DXWorldExpo has been named “Global Sponsor” of SYS-CON's 21st International Cloud Expo, which will take place on Oct 31 – Nov 2, 2017, at the Santa Clara Convention Center in Santa Clara, CA. Digital Transformation is the key issue driving the global enterprise IT business. Digital Transformation is most prominent among Global 2000 enterprises and government institutions.
    In his opening keynote at 20th Cloud Expo, Michael Maximilien, Research Scientist, Architect, and Engineer at IBM, discussed the full potential of the cloud and social data requires artificial intelligence. By mixing Cloud Foundry and the rich set of Watson services, IBM's Bluemix is the best cloud operating system for enterprises today, providing rapid development and deployment of applications that can take advantage of the rich catalog of Watson services to help drive insights from the vast t...
    21st International Cloud Expo, taking place October 31 - November 2, 2017, at the Santa Clara Convention Center in Santa Clara, CA, will feature technical sessions from a rock star conference faculty and the leading industry players in the world. Cloud computing is now being embraced by a majority of enterprises of all sizes. Yesterday's debate about public vs. private has transformed into the reality of hybrid cloud: a recent survey shows that 74% of enterprises have a hybrid cloud strategy. Me...
    From 2013, NTT Communications has been providing cPaaS service, SkyWay. Its customer’s expectations for leveraging WebRTC technology are not only typical real-time communication use cases such as Web conference, remote education, but also IoT use cases such as remote camera monitoring, smart-glass, and robotic. Because of this, NTT Communications has numerous IoT business use-cases that its customers are developing on top of PaaS. WebRTC will lead IoT businesses to be more innovative and address...
    In his session at @ThingsExpo, Sudarshan Krishnamurthi, a Senior Manager, Business Strategy, at Cisco Systems, discussed how IT and operational technology (OT) work together, as opposed to being in separate siloes as once was traditional. Attendees learned how to fully leverage the power of IoT in their organization by bringing the two sides together and bridging the communication gap. He also looked at what good leadership must entail in order to accomplish this, and how IT managers can be the ...