Forrester reviews the KonyOne platform
 

Like this? Share it with your network

Share

Forrester reviews the KonyOne platform

on

  • 3,130 views

 

Statistics

Views

Total Views
3,130
Views on SlideShare
3,121
Embed Views
9

Actions

Likes
1
Downloads
87
Comments
0

1 Embed 9

https://twitter.com 9

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

Forrester reviews the KonyOne platform Document Transcript

  • 1. FOR: Application KonyOne Offers A Flexible, Low-CodeDevelopment& DeliveryProfessionals Platform by Jeffrey S. Hammond, August 28, 2012 KEY TAKEAWAYS KonyOne Installation Guides Are Comprehensive, But Keep In Mind Software Requirements Compared with other mobile middleware solutions, KonyOne has a relatively quick and well-documented installation process. Nonetheless, there are a few hurdles, namely, having a working Java application server, a Kony license key, and a version of Eclipse with the Kony custom plug-ins installed. You’ll also need to install device-specific emulators. Consider KonyOne If You Need Cross-Platform Native Apps Without Writing Native Code As a platform that “errs on the side of native,” KonyOne delivers on compiling native apps with functionality that will feel natural to Android and iOS users. KonyOne can also produce web applications that are a close approximation to the native version. Need To Integrate Web Services? KonyOne Makes It Easy To Link Data To UI Elements KonyOne enables menu-based integration with web services, which allows developers to wire events based on predefined code and use the mapping feature to link data to user interface (UI) elements. Developers can also customize event chains with Lua or JavaScript. KonyOne Is A Flexible And Quick-To-Market Solution In addition to cross-platform native app functionality, KonyOne delivers on speed, flexibility, and ease of deployment. Developers use one comprehensive menu pane to select which devices see which version of the app and can then quickly deploy their app after publishing web services. Forrester Research, Inc., 60 Acorn Park Drive, Cambridge, MA 02140 USA Tel: +1 617.613.6000 | Fax: +1 617.613.5000 | www.forrester.com
  • 2. FOR APPLICATION DEVELOPMENT & DELIVERY PROFESSIONALS AUGUST 28, 2012 KonyOne Offers A Flexible, Low-Code Platform Going Hands On With KonyOne Shows How Middleware Is Evolving by Jeffrey S. Hammond with Phil Murphy and Shannon CoyneWHY READ THIS REPORTIn the latest installment in our “hands-on mobile” series, we rebuild and deploy the simple mobileapplication we built last fall with the KonyOne mobile middleware platform. The KonyOne platformallows developers to build and deploy apps in a variety of mobile configurations, including apps that runnatively on Android, iOS, and Research In Motion (RIM) devices. In the process, we install the KonyOneplatform and use Kony Studio to define mobile forms, wrap web services, and map RESTful payload datainto form fields as well as deploy the app as a native app and a web app to multiple mobile devices. Readon to get a feel for the KonyOne development experience.Table Of Contents Notes & Resources2 KonyOne Is A Leading Contender In The Forrester conducted a hands-on review Mobile Middleware Space of the KonyOne mobile platform for this research. KonyOne Installation And Initial Setup Require A Few Hours Of Effort Related Research Documents Kony’s Mobile Development Experience Will Feel Familiar To 4GL And Java Developers jQuery Mobile: The App Internet, Without The App KonyOne Delivers A Good Cross-Platform November 1, 2011 Native And Web Experience Mobile Development Goes Multiplatform Flexible Deployment Options Make KonyOne December 22, 2010 An Attractive Enterprise Mobile Option Define Your Mobile Development Strategy RECOMMENDATIONS August 24,201011 KonyOne Helps Developers Quickly Build Cross-Platform Apps © 2012, Forrester Research, Inc. All rights reserved. Unauthorized reproduction is strictly prohibited. Information is based on best available resources. Opinions reflect judgment at the time and are subject to change. Forrester®, Technographics®, Forrester Wave, RoleView, TechRadar, and Total Economic Impact are trademarks of Forrester Research, Inc. All other trademarks are the property of their respective companies. To purchase reprints of this document, please email clientsupport@forrester.com. For additional information, go to www.forrester.com.
  • 3. FOR APPLICATION DEVELOPMENT & DELIVERY PROFESSIONALSKonyOne Offers A Flexible, Low-Code Platform 2KONYONE IS A LEADING CONTENDER IN THE MOBILE MIDDLEWARE SPACEIn the latest installment in our “hands-on mobile” series, we’re reviewing KonyOne, a mobilemiddleware framework that a growing number of enterprises use to develop and deploy bothconsumer-facing and enterprise applications. Kony originally designed the platform as theunderpinning technology to its vertical application business. In the early stage of the company’sgrowth, its primary focus was building turnkey applications for clients in the airline, insurance,and financial services industries. Over the past few years, the Kony team has extracted the runtimeplatform and developer tooling to make them consumable by enterprise development shops ineither a hosted or an on-premises version. Applications written for KonyOne are cross-compiledinto native packages for Android, iOS, and RIM’s BlackBerry and QNX operating systems orrendered as mobile web applications that use JavaScript, Cascading Style Sheets (CSS), and HTML.For native mobile applications, app code is packaged along with KonyOne runtime code, and theresulting package is deployed using the same techniques used to deploy a regular native app. Theresult is cross-platform deployment with lower maintenance costs.1 At the time of our hands-ontesting, KonyOne supported compilation to eight different native mobile phone platforms and threenative tablet platforms. For our hands-on review, we started with the application from our previousinstallment and rewrote it on the KonyOne platform.2KonyOne Installation And Initial Setup Require A Few Hours Of EffortBy definition, mobile middleware tools have a server-side component, and KonyOne is no exception.Getting the server side of a mobile middleware platform up and running can sometimes be tricky,but that was not the case with KonyOne. We installed the KonyOne server on a machine with aclean build of Windows 7. Installation was simple — we unzipped a large file (called the “SuperBundle”), and the installation was relatively straightforward. Note that: The server is dependent on Java. The KonyOne server requires a Java application server. In our case, we used the Tomcat image provided in the Super Bundle, but you can also install it on an existing J2EE app server. Of course, this means you also need a modern Java VM installed, running, and reachable via the CLASSPATH variable. Installation requires a license key. KonyOne is a commercial product that enforces its license with keys. We had to download the keys Kony provided and enter them on the machine to enable the server. This process took approximately 10 minutes to complete. Installation requires Eclipse. KonyOne Studio consists of Eclipse and a set of custom-built plug-ins. In our case, we simply used the preconfigured version of Eclipse. While in theory you could write Kony Mobile apps on the command line, we don’t recommend it.© 2012, Forrester Research, Inc. Reproduction Prohibited August 28, 2012
  • 4. FOR APPLICATION DEVELOPMENT & DELIVERY PROFESSIONALSKonyOne Offers A Flexible, Low-Code Platform 3 Installing device emulators can be tricky. KonyOne executes compiled applications; therefore, developers use standard Android, iOS, and RIM emulators to test apps on their development machines. We found it a bit tricky to install the Android and RIM emulators and get them working with Eclipse. This would be the case for all approaches that use standard emulators — it’s not specific to the KonyOne platform.All told, it took us a little more than an hour to install and set up the KonyOne Super Bundle and getit ready for development. Unlike our previous experience with jQuery mobile, clear documentationaided our setup considerably.Kony’s Mobile Development Experience Will Feel Familiar To 4GL And Java DevelopersDeveloping a mobile application within the KonyOne Studio is straightforward for developersalready familiar with Java development tools such as Eclipse and Oracle JDeveloper as well asthose experienced with traditional fourth-generation programming language (4GL) tools such asPowerBuilder and Visual Basic. Developers start by creating a Kony project in the Eclipse-basedintegrated development environment (IDE). For simpler enterprise apps, developers can use acombination of Apache Tomcat and Memcached to execute server-side code. Alternatively, they candeploy an app on commercial Java application servers such as IBM WebSphere or Oracle WebLogic.When it comes to actually laying out your mobile app, KonyOne Studio uses a forms-basedapplication metaphor. Developers create a new form for every screen they want to build into theapplication, and then the developer adds user interface (UI) elements to the screen from a palette.The experience isn’t quite “what you see is what you get” (WYSIWYG), but it’s close enough to itthat it makes little practical difference. The Kony Mobile control palette organizes UI elementsby function and offers a rich set of basic widgets, containers to group widgets and manage layoutacross different devices, and more-advanced widgets such as chart and map. KonyOne also supportsspecial widgets for Windows Mobile and for dedicated mobile web apps. Developers can eitherplace UI elements directly on forms or place them into reusable modules. The module feature isparticularly useful for larger mobile apps and multideveloper teams, as it allows designers to create aconsistent navigation design and layout that can then be reused across multiple screens.When building our test app, we were particularly impressed with a number of KonyOne’s features: Good control of form header and footer elements. In most mobile apps, you’ll find a header or footer bar that contains buttons or images that link to different screens for navigation. These header and footer bars are the modern-day design equivalent of menus and are critical pieces of app design. The Kony Mobile platform implements these controls as discrete UI elements but also handles device-specific styling for the user. By default, the navigation bars adopt device conventions, appearing on the top of the screen in Android apps and on the bottom in iOS apps. Developers can, of course, override the defaults, but correct app styling by convention is a nice touch for less-experienced mobile developers.© 2012, Forrester Research, Inc. Reproduction Prohibited August 28, 2012
  • 5. FOR APPLICATION DEVELOPMENT & DELIVERY PROFESSIONALSKonyOne Offers A Flexible, Low-Code Platform 4 Visual layout of screens and a quick preview mode. We used the form editor to lay out the basic screens of our application (see Figure 1). In our case, we used an element called a segment, which is useful when you will have repeating elements in the app (in our case movie title, descriptions, and box art). Within the segment, we simply dropped label UI elements and an image UI element and then configured important parameters in the property page. One criticism: We could resize the UI elements on the form painter but could not rename elements on the form itself, only in the property page. Once a form is laid out, the developer can quickly view the form on a device emulator by using the preview button and then selecting the device in the emulator pane. We found ourselves continually tweaking the design and using the quick preview mode to view the results. Extensive support for web services. As part of our basic mobile app, we consume movie catalog data from an Open Data Protocol (OData) application programming interface (API) that Netflix provides to developers. It took us approximately 30 minutes to set up, define, and debug our web service call in the KonyOne Studio service definition tool (see Figure 2). The result: an XML-based service call that gets data for top-ranked movies in the Netflix catalog. In addition to RESTful XML and JSON web services, KonyOne Studio also supports definition of SOAP- based services as well as a screen-scraping service that pulls data from existing website HTML pages. This last service type would be particularly useful to developers who need to build a mobile version of an existing web application but don’t have the time or the data access rights to build a proper service façade. Our service definition efforts were not without some minor challenges. We initially tried to use a JSON service but encountered some difficulty: Our test call returned a “Malformed JSON error.” We then switched to an XML-based service and were able to return data and manipulate the data set to parse movie titles, summaries, and box art. While we were later able to define a working JSON version of the web service with some guidance from Kony tech support, better error messages and documentation would have sped our initial attempts. Wiring events reduces the amount of code required. You can create application flow in a Kony application without actually writing code, as each UI element in KonyOne has a set of predefined events for standard actions. For example, buttons have an onclick event when they are pressed. For our form, we chose the masterdataload event that is executed when a form loads for the first time. Selecting an event takes the developer into a wiring screen where events kick off chains of actions defined by a developer (see Figure 3). In our case, we call the previously defined Netflix service and then map the data returned into UI fields in our form by using a mapping action (see Figure 4). While we did not have to write custom code, it would have been simple to add a function event to the chain we created. Custom code is written in the Lua language, a lightweight scripting language that will feel familiar to developers who have used Visual Basic Script (VBScript), PowerScript, or a host of other Windows based 4GLs.© 2012, Forrester Research, Inc. Reproduction Prohibited August 28, 2012
  • 6. FOR APPLICATION DEVELOPMENT & DELIVERY PROFESSIONALSKonyOne Offers A Flexible, Low-Code Platform 5 Visual styling of apps with device-specific look and feel. Kony accomplishes visual styling of apps by applying “skins” to UI elements. By default, skins are applied consistently across all target platforms, but it’s easy to “fork” a skin, which creates variants for each mobile platform the developer intends to target. By default, the forked children are copies of the parent skin, so the developer only has to modify the skin for the device for which they want to create a custom look. It’s also easy to add theme elements to an application’s skin definition, and we found we were able to create the same look and feel of our original jQuery mobile app in about 45 minutes. App-specific look and feel also goes beyond skins: Developers can completely suppress individual UI elements on a device-by-device basis simply by setting a configuration option in the properties editor.All told, it took us about six hours to learn to use Kony Studio, define our app, adjust its visual style,and get it to a deployable state. While the app definition period was longer than the time we spentwith jQuery Mobile, the total time to spin up on KonyOne was less, mainly because we had gooddocumentation and samples to draw from.Figure 1 The KonyOne Studio Plug-In For EclipseSource: screen shot from our test using KonyOne Studio76981 Source: Forrester Research, Inc.© 2012, Forrester Research, Inc. Reproduction Prohibited August 28, 2012
  • 7. FOR APPLICATION DEVELOPMENT & DELIVERY PROFESSIONALSKonyOne Offers A Flexible, Low-Code Platform 6Figure 2 Defining An XML-Based Web Service In KonyOne StudioSource: screen shot from our test using KonyOne Studio76981 Source: Forrester Research, Inc.© 2012, Forrester Research, Inc. Reproduction Prohibited August 28, 2012
  • 8. FOR APPLICATION DEVELOPMENT & DELIVERY PROFESSIONALSKonyOne Offers A Flexible, Low-Code Platform 7Figure 3 Using The Event Flow Editor In KonyOne StudioSource: screen shot from our test using KonyOne Studio76981 Source: Forrester Research, Inc.© 2012, Forrester Research, Inc. Reproduction Prohibited August 28, 2012
  • 9. FOR APPLICATION DEVELOPMENT & DELIVERY PROFESSIONALSKonyOne Offers A Flexible, Low-Code Platform 8Figure 4 The Mapping Editor In KonyOne Studio Makes It Easy To Link Data To UI ElementsSource: screen shot from our test using KonyOne Studio76981 Source: Forrester Research, Inc.KonyOne Delivers A Good Cross-Platform Native And Web ExperienceAfter we designed our application, we deployed it as a native app on Android and as a web app foriOS and RIM. We were pleased with the results: Our native app worked well in both emulators and on real Android phones. Deploying a KonyOne app to an emulator is a simple task, which allowed us to do most of our unit testing on the development machine. Once we were satisfied with the result, we were able to install the *.apk file created by the KonyOne Studio build process onto a real device without incident. Web versions were a close approximation of the native apps. The web version of our test application rendered well across an Apple iPhone and an RIM Torch. We also tested the web version on an iPad tablet, and it rendered well while resizing to fit the expanded real estate of the 10-inch screen.© 2012, Forrester Research, Inc. Reproduction Prohibited August 28, 2012
  • 10. FOR APPLICATION DEVELOPMENT & DELIVERY PROFESSIONALSKonyOne Offers A Flexible, Low-Code Platform 9 Our application look and feel was consistent with our desired design. Our goal was to create an application that looked as much like our original version as possible. We succeeded; the resulting KonyOne app captures the same design aesthetic as our jQuery Mobile app (see Figure 5). That said, we did find the theming options to be a bit simplistic. For example, backgrounds for UI elements could be one or two colors, but blending between two colors could only be set from top to bottom. It also took a bit of work to achieve the flat menu bar look and feel in our original app with the buttons we used for navigation in the footer element of the KonyOne app.Figure 5 Our Sample KonyOne App Running In The Android EmulatorSource: screen shot from our test using KonyOne Studio76981 Source: Forrester Research, Inc.© 2012, Forrester Research, Inc. Reproduction Prohibited August 28, 2012
  • 11. FOR APPLICATION DEVELOPMENT & DELIVERY PROFESSIONALSKonyOne Offers A Flexible, Low-Code Platform 10Flexible Deployment Options Make KonyOne An Attractive Enterprise Mobile OptionOnce we completed our test mobile application, we were easily able to deploy it to a KonyOneserver instance running locally. Deployment was a two-stage process: First we published the webservices we created, and then we published the web application. For the native Android version,Kony created an *.apk file, which we installed on a local Android device. Total deployment timefor all versions of the application was less than twenty minutes. Kony also has a hosted version ofits platform, so we could have chosen to deploy a production version of our application on Konyinfrastructure instead of our own.It’s also worth noting that the KonyOne platform has a number of enterprise features that we did notexercise with our basic mobile app. For the sake of completeness, we’ll mention four in particularthat we think enterprise developers will find useful: Extended integration with device capabilities. We did not need to integrate with on-device instruments such as the camera or accelerometer for our simple mobile app, but KonyOne provides deep platform integration with what it calls its foreign-function interface capability. Foreign functions interface with native device APIs and allow platform-specific native code to run in a KonyOne app. This bridging capability gives app developers the ultimate escape — they can always code a specific bit of functionality in Objective-C or Java if they need to. Heightened information security requirements. Kony has recently begun to add mobile app management (MAM) capabilities into the KonyOne platform. These capabilities allow developers to force upgrades to new versions, set policy around when on-device data expires, or trigger a remote wipe of an application. Built-in MAM can be a boon to development organizations that are running ahead of their IT operations peers because it allows developers to exert fine-grained control over their own apps. Data synchronization for offline scenarios. The KonyOne platform contains a synchronization component that allows developers to implement full bidirectional synchronization to support offline applications and to enforce data integrity. When devices reconnect to the network, the synchronization engine reconciles the differences between the local and server data stores. We did not test offline sync, as our application’s task only makes sense when a user is connected to the Internet. Connectors to popular enterprise applications. KonyOne includes connectors to several key systems of record, including Microsoft SharePoint, Oracle PeopleSoft, Oracle Siebel, and SAP ERP and CRM. These connectors make it easier for developers to expose back-office functionality to mobile devices.In the end, we were able to meet our goals and ship both native and web-based versions of oursample app. Our total time on the tool was approximately 20 hours of labor for a novice mobiledeveloper to run through the KonyOne installation process, learn the basics of the KonyOne Studio,set up a mobile app, test it, and deploy it.© 2012, Forrester Research, Inc. Reproduction Prohibited August 28, 2012
  • 12. FOR APPLICATION DEVELOPMENT & DELIVERY PROFESSIONALSKonyOne Offers A Flexible, Low-Code Platform 11R E C O M M E N D AT I O N SKONYONE HELPS DEVELOPERS QUICKLY BUILD CROSS-PLATFORM APPSKonyOne is an industrial-strength middleware platform that is adapting well to the shifts in mobileapp development technology. We were able to complete our assigned tasks while barely scratching allthe capabilities of the platform. Our one complaint is that KonyOne Studio is still a bit rough aroundthe edges, reflective of its genesis as an internal configuration tool. We had a few spots that tripped usup but got beyond them with a bit of coaching from the Kony team along the way. By the time youread this, Kony will have shipped a major update to its platform, which will smooth some of thosespots and add JavaScript to Lua as a supported programming language. If you need to build native,hybrid, and web apps from a common code base, we recommend that you put KonyOne on yourevaluation shortlist. Based on our hands-on experience, we’d recommend the Kony platform for: Development shops that want a single mobile platform for consumer and enterprise apps. Many companies separate their business-to-employee mobile app strategy from their business-to-consumer (B2C) strategy: Marketing is in charge of consumer apps, and IT is on the hook for employee apps. Tens of thousands of customer mays intermittently use B2C apps, while hundreds of users may use an employee app each day. KonyOne is capable of working well across both scenarios and has a pricing model that supports deployment of large-scale consumer apps. Development shops that build apps to support a variety of mobile workloads. Multiple app deployment options make KonyOne a good option for organizations that have device- centric, connected, and mobile content needs. Developers can best deliver different types of app functionality by using different mobile architectures. For example, we see many successful content-centric apps delivered with HTML5, while Internet-connected workloads use a combination of native and hybrid app technologies. With the KonyOne platform, developers can make decisions about what technology style to use on a screen-by-screen basis, allowing them to structure large apps with composite workloads to use the mobile deployment technology that best matches each discrete task. Development shops looking for a higher-level development experience. Many of the elements of KonyOne Studio will feel familiar to Java, .NET, and 4GL developers. For traditional development shops, an environment that does not entail a conceptual shift in development or tools or require developers to learn more functional programming languages will result in a reduced on-ramp to productive mobile development.© 2012, Forrester Research, Inc. Reproduction Prohibited August 28, 2012
  • 13. FOR APPLICATION DEVELOPMENT & DELIVERY PROFESSIONALSKonyOne Offers A Flexible, Low-Code Platform 12ENDNOTES1 In our conversations with development shops that build native apps for multiple platforms using the dedicated platform software development kits (SDKs), they report a 50% to 70% porting cost per platform.2 In the first installment of our hands-on mobile series, we reviewed jQuery mobile. See the November 1, 2011, “jQuery Mobile: The App Internet, Without The App” report.© 2012, Forrester Research, Inc. Reproduction Prohibited August 28, 2012
  • 14. About Forrester A global research and advisory firm, Forrester inspires leaders, informs better decisions, and helps the world’s top companies turn the complexity of change into business advantage. Our research- based insight and objective advice enable IT professionals to lead more successfully within IT and extend their impact beyond the traditional IT organization. Tailored to your individual role, our resources allow you to focus on important business issues — margin, speed, growth — first, technology second. FOR MORE INFORMATION To find out how Forrester Research can help you be successful every day, please contact the office nearest you, or visit us at www.forrester.com. For a complete list of worldwide locations, visit www.forrester.com/about. CLIENT SUPPORT For information on hard-copy or electronic reprints, please contact Client Support at +1 866.367.7378, +1 617.613.5730, or clientsupport@forrester.com. We offer quantity discounts and special pricing for academic and nonprofit institutions. Forrester Focuses On Application Development & Delivery Professionals Responsible for leading development and delivery of applications that support your company’s business strategies, you also choose technology and architecture while managing people, skills, practices, and organization to maximize value. Forrester’s subject-matter expertise and deep understanding of your role will help you create forward-thinking strategies; weigh opportunity against risk; justify decisions; and optimize your individual, team, and corporate performance. « ANDREA DAVIES, client persona representing Market Insights ProfessionalsForrester Research, Inc. (Nasdaq: FORR) is an independent research company that provides pragmatic and forward-thinking advice toglobal leaders in business and technology. Forrester works with professionals in 17 key roles at major companies providing proprietaryresearch, customer insight, consulting, events, and peer-to-peer executive programs. For more than 29 years, Forrester has been makingIT, marketing, and technology industry leaders successful every day. For more information, visit www.forrester.com. 76981