AppGyver Composer: The Rise of the "Citizen Developer"

Development Tools / Utilities
  • Smaller Small Medium Big Bigger
  • Default Helvetica Segoe Georgia Times


AppGyver Inc.'s AppGyver Composer is graphical enough that even non-programmers can use it to build mobile-device applications.

It's probably no surprise that there's an application development platform named after MacGyver, the endlessly inventive TV character who concocts ingenious devices from random materials always conveniently at hand. AppGyver, Inc.'s AppGyver Composer is a rapid mobile application development (RMAD) tool, also always conveniently at hand, which lets developers visually build enterprise apps for iOS and Android (including web deployment via HTML5) via a browser-based toolset.

Let the End Users Build Their Own Apps

Composer is a low-code development tool that lets app designers use menus and drag-and-drop methods of assembling UI and other components into mobile-device apps of any complexity, including defining page structures and navigation. The graphical tools in AppGyver are simple enough that they provide the building blocks for assembling apps without the need to understand how to use any underlying code. This means that mobile apps no longer need to be developed end-to-end by teams of expensive, professional coders. Rather, technically knowledgeable end users (or "citizen developers" as Gartner terms them)—the people closest to coping with the business needs to be met by an app—can actually help assemble the apps themselves. In fact, development work can potentially be divided into smaller pieces and done asynchronously by different groups. This can lead to major time and cost savings.

Of course, developers who can code can still custom-build parts of apps in JavaScript and HTML5 as needed for flexibility, but a low-code solution like AppGyver lets those higher-level developers focus instead on building libraries of custom UI components and modules containing business logic that others can use (and reuse) in multiple new apps. Each functional piece of an app, or even entire apps, can be saved in a sharable library and reused in other apps. Over time, this process creates a repository of reusable digital assets (e.g., app templates, modules, database connectors, and components) that become familiar to end users because they'll have seen them before in other apps they use. These digital assets also become familiar building blocks that the citizen developers can use to build the next new app featuring the same business logic, user permissions, and interface icons. Data integrations, backend cloud code, UI components, and other customizations or extensions can be packaged into the libraries, which can then be used across apps. This also means that every app built with the visual tools actually speeds up the development of any future apps because the in-house com­ponent library will expand and deepen. If more building blocks are needed, it's also possible to access a huge library of open-source PhoneGap plugins, with which Composer is fully compatible. If preferred, the libraries and components themselves can be outsourced while actu­al application development stays in-house.

A front-end logic editor lets developers of whatever level connect actions to buttons, update the app UI and data based on user actions, access native device abilities like GPS and cameras, and basically anything that can be accomplished traditionally by scripting. Composer also enables creation of business rules and automation of features like push notifications. In addition, application builders can install modules from libraries or third-party sources and customize function and form properties, and incorporate data sources into an app with drag-and-drop tools by simply picking data assets from a visual display and associating them with application data from a parallel display. Designers can also create custom forms and other means for end users to input data to finished apps, select various types of graphic displays for data, combine multiple data sources, and synchronize data automatically between mobile apps and back-end servers.

Developers building their first app are walked through the process by an online questionnaire that sets the stage for building software. The questionnaire asks developers what kind of app they want to build, directs them to choose the user-authentication method, walks programmers through naming and configuring the app, creates a custom domain for the app if needed, and lets the developer select a page type. From then on, developers can build the entire app with the same simplicity.

Let the End Users Test Their Own Apps, Too

AppGyver automates publishing apps, or even parts of apps, to local or remote devices with a single click. By using a native companion app, changes made can be streamed to end users’ actual devices without the need to package and publish a standalone binary (which is also possible, if preferred). This opens the possibility of testing components or whole apps as soon as they've been assembled. What's more, this can be done as an iterative process. Developers tinker, users try it and give immediate feedback (if they're not doing the tinkering themselves), and if necessary a little more tinkering follows. It becomes possible to build a functional, simple app in as little as two hours and more complicated ones in a few days, drastically reducing potential time-to-market for any new app. In addition, the new app is one that can already have user acceptance assured. This amounts to a shortcut over traditional methods of application building that significantly saves time and money. A proprietary JavaScript library called Supersonic also lets developers manipulate app data, manage native animation-boosted transitions, and access other device APIs.

Integration with back-end servers includes the ability to connect via the cloud, use drag-and-drop to define built-in custom databases to support apps, incorporate APIs, build automation rules, establish workflows with BPM diagrams, and handle app publishing and distribution throughout an app's lifecycle.

What About Security?

Composer offers a range of user authentication options, including AppGyver authorization, LDAP, and Facebook authorizations, or no user authentication at all if the plan is for all users to be anonymous. AppGyver also supports fully customized authentication protocols, and flows are also supported. Encrypted data transfers, data-related permissions controls, application-infrastructure-level security aspects, and end-to-end encryption of data, including the cached data inside the application pack­age, are available right out of the box. Further customizations can be developed by the IT department and provided as a standard component for everyone to use in their appli­cations. Communications traffic between devices uses SSL encryption, and an access-rights feature allows client apps to receive only data that's accessible by the currently logged-in user.

AppGyver includes features such as easy-to-add custom authentication and identity pro­viders, application-wide permission controls, managed app distribution, push notification services, and app analytics. AppGyver Com­poser also solves problems such as backend integrations and data transformations, data synchronization and caching, access revoking, and secure data transfer. Composer also includes a Node.js-based Cloud Mesh service that enables complex data transformations from any protocol and format to application layers. Composer-built apps are secure enough to run in data centers that must be PCI- and HIPAA-compliant.

AppGyver Deployment Options

AppGyver supports four main deployment options for new apps, which once established can be accessed with a single click. First is deployment to AppGyver's public cloud, hosted by Amazon Web Services. It offers minimal maintenance and support fees, optimized customizations, public-facing APIs for accessing business data, and secure connections to private networks. Second is an AppGyver private cloud, hosted by a mutually acceptable IaaS provider. This alternative offers secure PCI- and HIPAA-compliant deployment, infrastructure management largely handled by AppGyver, and all the features of the public cloud. The third option is a customer private cloud, largely maintained by the customer but with technical help as requested from AppGyver. This has the advantages of letting the customer deal with its existing IaaS provider, gives the customer control over compliance with corporate standards and policies, mutually schedules platform updates, and lets the customer access private data sources without routing traffic over the public Internet. The final option is on-premise deployment, which gives the customer full control over the infrastructure and the other benefits available via a private cloud.

Protection Against Device-OS Upgrade Glitches

When a new operating system version of iOS or An­droid ships, it can put apps using hybrid app frameworks (e.g., PhoneGap) at risk. If the upgrades affect the way underlying APIs are used, formerly stable device apps can malfunction, in turn causing unpredictable amounts of development time to fix these unintended consequences. Other components such as built-in database integrations, push notification services, and access to native device capabilities with JavaScript can be affected or users can be locked out of their apps. This can also happen when employees upgrade their phones to new models.

Ap­pGyver Composer protects apps built within it from these problems via its deployment options. Because Composer exists within a managed platform, AppGyver includes OS upgrades in the mix. As new iOS or Android beta apps roll out, Appgyver tests them against its platform so it's ready to upgrade its customers' cloud environment when the betas go into full release. If an app is distributed via a Mobile App Management platform or App Store/Google Play, AppGyver's Cloud Build service lets users request new binaries with any necessary updates at the click of a button.

So long as your corporate culture isn't solidly invested in traditional methods of designing and deploying software applications, AppGyver might provide a means of revolutionizing how your enterprise produces and deploys mobile software apps.