The Telerik Platform helps you manage the complexity of mobile application development. It does this through a modular platform that combines a rich set of UI tools with powerful cloud services to develop web, hybrid and native apps. For a general overview of the Telerik Platform - including our motivations for building it - I'd recommend reading Todd Anglin's (excellent) blog post entitled, Telerik Platform 101.
In this blog post, I'll highlight how the Telerik Platform helps to address critical phases of your mobile application development lifecycle -- especially as it pertains to cross-platform development.
Cross-Platform Mobile Application Development
Cross-platform mobile application development can be a complicated process. The white-hot demand for mobile apps, coupled with the ever-increasing pace of change that's occurring in mobile, can make some developers feel overwhelmed as they try to keep up.
Development teams operate efficiently and effectively when they incorporate tools that help - not hinder - workflow. In order to address the challenges you face when targeting mobile application development, you need a development platform that can keep pace with the mobile industry; a platform that helps you manage the complexity of mobile application development, but is modular to be easily integrated into your team's existing development workflows.
Enter the Telerik Platform.
The design phase is one of the most collaborative phases of the application development lifecycle. In this phase, your team will define a lot of your application's functions and operations in detail. They will iterate upon a number of artifacts such as the application interface. The Telerik Platform provides a collaborative environment for seamless prototyping and design.
With Telerik AppBuilder, you can create interactive UI prototypes with an intuitive drag-and-drop visual designer. This feature is supported through an in-browser client:
Alternatively, you can author these UI prototypes in a Windows client and an extension for Visual Studio.
The UI prototypes you design can be viewed by other members of the workspace. Any changes made can be easily synchronised between clients. Furthermore, these changes can be committed to a repository. From there, your team can iterate against these designs, propose changes, implement new designs, etc.
A critical factor to the successful delivery of any project is identifying opportunities to improve your team's overall efficiency. In the world of software development, these efficiencies are realised through the tools we use. They can be extremely beneficial to developers because they can automate tasks and/or processes that can produce in valuable feedback to the team (i.e. continuous integration). However, without the necessary skills or experience, the tools you use to build mobile apps can quickly become a burden to manage, especially when targeting more than one platform. The cross-platform development tools of the Telerik Platform eliminates some of headaches associated with this phase of your app development lifecycle.
Note: For a detailed overview of our UI controls for native, hybrid, and web applications, please check out Philip Japikse's blog post entitled, A User Interface For Any Approach.
A critical aspect of any software development project is managing your code with a robust version control system. This is built into Telerik AppBuilder and supports features such as change management, history, and conflict resolution:
You can also configure a remote source repository, including GitHub!
Complementing the code/design experience is the built-in device simulator that enables you to run your app is an environment that mimics many hardware characteristics of a device:
Mobile platform vendors provide SDKs and include tools for building applications. Coordinating these tools to work as an orchestrated build process can be a daunting challenge. Telerik AppBuilder cloud services manages all the platform dependencies for you, so you can focus on development. No need to download, configure and manage multiple development environments and numerous SDKs. Telerik AppBuilder handles it all for you through a remote build service for deployment to test device or for deployment to app stores.
Developers continuously test their applications through a runtime environments such as a simulator or device. Telerik AppBuilder can speed up your development through LiveSync, which lets you make changes to the project in the code editor and see those changes applied in real time in the simulator and across devices.
Mobile applications face some unique challenges when it comes to connecting to back-end data and services. Unlike "traditional" applications like those targeting the desktop, mobile applications must deal with a dynamic environment of interruptions (i.e. incoming phone calls), high latency, and variable signal strength. Moreover, these applications must play within the confines of a much more restrictive sandbox; the memory and network constraints imposed by mobile platforms force developers to re-think the way applications are architected.
Telerik Backend Services provides a rich, comprehensive set of services to manage your mobile application's data and users. These services also extend your capabilities in the cloud by exposing rich, custom logic to intelligently manage your back-end data.
Note: To understand the motivations behind Telerik Backend Services, please check out Jim Holmes' blog post entitled, Cloud for the Entire Lifecycle.
With the Telerik Backend Services, you can mobilize your existing data with our standard (web) and custom connectors, which saves you time to develop your mobile applications. Additionally, we have out-of-the-box user management, authentication and push notifications. These and other services provide you turnkey implementations of design patterns that are widely employed by mobile applications today.
It's common practice to integrate testing throughout all aspects of development. However, mobile application testing is fraught with complexity. The capabilities of devices and their development platforms are constantly evolving to adopt consumer demands. The Telerik Platform helps you manage this complexity through Telerik Mobile Testing, an automated cross-platform mobile testing capabilities.
With Telerik Mobile Testing, you can create and execute web, hybrid, and native tests across range of platforms, including Android and iOS. Our test runner infrastructure is built on Node and provides detailed diagnostics:
Our test infrastructure features a small set of web-friendly system requirements:
- HTTP and WebSockets forms the communication channel with JSON-formatted commands
- Android and iOS apps available for native testing (Google Play and the Apple App Store)
- PhoneGap/Cordova plugin for hybrid testing
Once your tests are written, you can execute them remotely via the CLI or web-based interface:
Test execution and their results are synchronised with the test runner. This includes tests against native apps (including those running in simulators):
Once you've executed your test, you can share the results with the rest of your team by publishing them to the Telerik Platform:
Ah, deployment. It's probably one of the more exciting phases of your software development lifecycle. Just ask ten different people in DevOps what deployment can be like and you'll end up with ten different answers.
Deploying to mobile platforms can be terribly cumbersome and error-prone. Certificates must be requested, code must be signed, devices must be provisioned — all of which is required for local deployment. (This doesn't cover submitting to an app store for review!) Moreover, you'll find that mobile platforms have differing software requirements. Generally-speaking, you need Xcode to target iOS, Eclipse to target Android, and Visual Studio to target Windows Phone — hybrid and cross-compilation tools notwithstanding.
The Telerik Platform can help you manage much of the complexity that comes with deploying to one than one mobile platform.
It provides a streamlined system to publish your apps to devices and app stores. You can have apps packaged and ready for publishing in seconds. From there, you can publish to public and enterprise app stores or deploy to iOS and Android without the need for provisioning.
Ask any mobile developer the joys of managing provisioning profiles or cryptographic identities. It's a non-trivial exercise. Everything from navigating device requirements to setting up a developer account appears designed to prevent you from making apps. The Telerik Platform provides an integrated cross-platform management story to help eliminate some of this pain. that enables you to securely deploy public, private, and web apps to your enterprise app store.
Managing enterprise users and devices is done through the cloud admin console. From there, you can add and remove users, assign permissions, and delegate roles:
Measurement is the first step that leads to control and eventually to improvement. If you can't measure something, you can't understand it. If you can't understand it, you can't control it. If you can't control it, you can't improve it. -- H. James Harrington
Mobile application analytics are one of the most valuable sources of information to a development team because they help measure an application's usage and runtime performance in a real-world setting. And yet, far too often, development teams choose not to instrument their mobile applications to gather this information. It's not because they don't care; rather, it's often because they lack the means to do so; they are missing the infrastructure that's necessary to collect, manage, and analyze these analytics in a quick and efficient manner.
Too often, developers lack insight into the kinds of users they have and the devices they use. Even worse, they can't ascertain the most used features and the most encountered errors being hit in the wild. Telerik Analytics provides all this information (and more) in real-time to give developers the much needed insight that will help them improve their apps.
With Telerik Analytics, you can gain an understanding of users and and the way they interact with your mobile applications. This is accomplished by enabling you to better gauge your user base by collecting usage and demographic data. As your mobile application is used, an integrated monitor captures analytics pertaining to a wide range of criteria, including the application's performance, geographic location of users, and feature usage. These metrics are centralised through a data management interface that also includes data aggregation, filtering, exporting and alerts.
Feeling overwhelmed? Don't worry. While the Telerik Platform sounds big and all-encompassing, it's modular by design; like a buffet table, you can help yourself to as much or as little as you need. With the Telerik Platform, you can address all aspects of the app development lifecycle, or only those most relevant to you.
The next step in your journey of discovery is to sign up for your free, 30-day trial (with dedicated support) of the Telerik Platform. Once you've established your account, you'll have full access to explore all of the capabilities that the Telerik Platform has to offer.
Finally, to learn more about the Telerik Platform, you'll want to visit Mobile Apps Are Dead to register for the launch keynote of the Telerik Platform. Seriously. It's going to be awesome. Join us and be among the first to discover the new way of developing lasting, compelling cross-platform, multi-device app experiences that will change mobile development for the better.