Friday, January 6, 2017

What You Need to Develop a Successful Enterprise App

Enterprise applications have gone from being just optional add-ons to mission critical tools, necessary for smooth business operations in many organizations. A recent report by Apperian reveals that a vast number of corporate employees in 91% of the enterprises surveyed used work-related apps in 2016.

Worthy of note is the fact that a majority of organizations are planning to put more time, money, and effort into internal app development this year, thanks to the value apps bring to business — improved internal communication, increased operational efficiency, more seamless collaboration, anytime/anywhere access to data, and so on.

While this is good for workplace productivity, the problem is that as demand for business apps increases, internal developers may be forced to compromise quality in order to deliver more quickly. But business users have greater expectations — they want great user experience (UX) comparable to the ones found in consumer apps.

So how can you ensure you deliver a good enterprise app that's successful?

This post answers the question, but let's first have a brief look at what a “successful enterprise app” is:
A successful enterprise app is one employees find helpful — even delightful — to use. It does at least one of the following:
  • Solves employees’ problems and makes their jobs easier. 
  • Fixes efficiency issues. 
  • Streamlines complex business processes in an organization. 
  • Capacitates effective collaboration between both individuals and departments. 
  • Curtails costs of time and money. 
  • Allows organizations to quickly and easily identify and take opportunities. 
  • Enables employees to continue working outside of a traditional workspace. 
  • Improves workflow and approval processes. 
  • Provides secure access to information. 
Sounds good, doesn't it?

Here are the most important things you need if you want to build internal apps that deliver these benefits: 

1. A clear purpose of the app with an appropriate framework

One of the first things you will need is a well-defined, basic conceptual structure of the app you're trying to create. This comes at the ideation stage. The fact is, without an idea of what you want to build, you won't be able to actually build it.
Determine what problems the application will solve. This sort of structural framework will help you build an app that serves a clear purpose, something that's necessary for an app to be considered successful.

KEY TAKEAWAY: Don't try to generalize the purpose of the app but make it task- or process-specific.

We'd even recommend you get all the major participants to come together to deconstruct the app idea down to the crux of its core value proposition, and then build up from there. You may also want to talk to the target users — employees — to understand their pain points and gauge what they actually need. This will keep everyone on the same page regarding what to expect, streamline the development and deployment processes, and increases the app’s chances of being adopted by employees and eventually succeeding.

2. User engagement

Great user experience is an important feature of every successful app. Without it, your app will be treated with disinclination by employees.

What should you do? Create better UX.
A good idea might be to try to make your enterprise apps go head to head with well-built consumer apps in terms of UXD.

Here's why:

Generally, people are accustomed to consumer apps that are intuitive, clean, and user-friendly. You need to integrate these attributes into your enterprise apps. Statista forecasts that by the end of this year, over a third of the world’s population will own a smartphone; that's an estimated total number of almost 2.6 billion smartphone users in the world. This will amp up market demand for business-focused apps that meet the high performance and usability of consumer apps.

Your aim should be to build something that's truly exciting and engaging for people to actually participate. It should be to proffer a solution that’s better than and different from the clutter employees see out there. It should be to create stuff that offers a more convenient way of interacting with job-related tasks, making it rewarding to use. Only then will it be used to the same degree as consumer apps.

Don't know where to start? Here are a few guidelines to give you a leg up:
  • Keep all interactions within the app short and straightforward. 
  • Provide as much information as necessary to easily complete each action… sort of quick walkthroughs. 
  • Offer some level of customization so each user can tailor the app to their own needs. 
  • KISS it. (Not literally though; I'm talking about applying the ‘keep it simple, stupid’ principle when dragging and dropping those design elements.) 
  • And don't forget that UI is a key factor in user experience design. A flabby, strewn interface can turn users down forever.
3. Multi-platform accessibility

Where and how people access your apps matter. Build it for just one platform and you might be excluding a number of employees from the experience.
Bring your own device (BYOD) is becoming increasingly popular in the corporate world. According to a report by Gartner, an IT-research and advisory firm, employees use an average of three devices in a typical work day in the modern workplace. The report mentions that as wearables and the Internet of Things (IoT) gain momentum, that number is expected to increase to five or six devices per day. This means for your enterprise app to gain ground, it needs to be cross-platform.

We recommend you go with a web-based app. That way, it’ll be available and used across devices regardless of platform or OS. Joget Workflow makes it easy to quickly create enterprise web apps that are mobile-optimized and cloud-ready.

4. Your IT team's support

It is not uncommon to try to have a go at building apps on your own, especially when using a no-code/low-code platform like Joget. But here’s what:

You need your IT…

Not necessarily to write code but to help minimize the roadblocks that may once in a while pop up during the development process and in the future. For one, you don’t want to make your IT feel as though you're replacing their jobs with a third-party service. Remember, they'll be responsible for managing the app after it’s developed and deployed. You need to work with them from day one and not only when you run into technically complex issues you can’t resolve on your own.
With IT involved, you can be sure that you will be getting internal support like quickly handling minor bugfixes (this saves you from bugging your software vendor every time, which in turn saves your organization time and money) and their expert contribution, which all go to add to the overall success of your enterprise application.

5. Adoption strategy

Successful app development does not end with just the build process; it continues to deployment and adoption. And until the app fulfills its purpose, it's not successful. How can the app fulfill its purpose when it hasn’t been adopted and used by employees?

study conducted by SAP points out that 78 percent of enterprise apps are abandoned after their first use.

Here's the rub:

The app development process may not be the hard part, but adoption. Some organizations struggle with this. This is why you need a good adoption strategy in place.
To start with, create an app that's enthralling and easy to use as discussed in point #2 above. Most times, employees are typically already swamped with too much work. For example, they might already be overwhelmed by the high number of emails they get each day. Introducing “another burden” will only result in a slap in the face for your app. Not nice!

Some gold nuggets to give you a kick in the butt?
  • Offer incentives if you have to, but the best adoption strategy should be building an app that incentivizes its own adoption through its features and benefits. 
  • Talk them into using the app; if they understand it will help make their job easier, then they will use it. 
  • Follow up after the initial deployment, stay engaged with users, and identify and solve complaints. 
  • Sometimes, all you really need to do is train the staff on using the app. 
We advise you don’t force users to adopt your app. They should make that choice on their own on the basis of it being a better option. Otherwise, get back to the drawing board and create something better.

What You Don't Need

So above we’ve discussed some of the most important things you need to make your enterprise app successful. Good stuff, but here’s what you don’t necessarily need:

Coding skills!

Codeless development is growing in popularity. Rapidly. It's the future. And this means anyone can easily develop and deploy apps quickly using talent they already have.

If becoming a professional programmer intrigues you, great. But if you’re interested in building usable apps in minutes without gambling with quality, then you don’t necessarily need to learn to code; just learn how to work with technology. The trick is to take the next step by getting started with Joget Workflow today if you aren't already doing so.

Friday, November 25, 2016

What’s Planned for Joget Workflow v6?


the upcoming Joget Workflow v6 will have a dual pronged focus: User Experience (UX), and App Maintainability and Performance. Following the previous article which offered a sneak peek at what to expect, here’s a more detailed look at what’s to come.

User Experience

Enhanced App User Experience for Desktop and Mobile


Say goodbye to uninspired user interfaces expected in business apps, as v6 will provide a Universal Userview Theme that embraces Google’s Material design philosophy. Responsive to fit desktop and mobile devices, the theme allows for simpler and more flexible configuration, while still allowing fine-tuning via custom CSS or JavaScript.   

Customizable App Center with Joget Marketplace Integration


The App Center, the default landing page providing access to apps and seamless integration with the Joget Marketplace, is now a customizable app! Adapt the App Center to specific needs, or even replace it entirely if required.  

Dashboard Capabilities


One of the frequently requested features, a Dashboard Userview element now provides the capability for multiple elements to be presented in dashboard format for better information visibility.

Calendar View



The Calendar Userview element displays events in a familiar monthly, weekly or daily calendar view.

Unobtrusive Admin and Design Interface


The focus is on the apps, so the administration and app design interface is designed to be discreet and to stay out of the way. A floating design button toggles to show the Admin Bar and Front-End Edit Mode to show elements directly within the app.  

Design Apps Anytime, Anywhere with Support for Touch Devices


Touch devices are now supported! App designers can now use tablets or touch screen PCs to design all the processes, forms, lists and userviews. Dragging, dropping and configuring elements using your fingers or a stylus makes building and maintaining apps more accessible anytime, anywhere.

App Maintainability and Performance

Improved App Maintainability with Advanced Tools


The major challenge in app development is not building it the first time, but rather maintaining and evolving it over time. A big focus in v6 is improving app maintainability hence the new Advanced Tools which will make it easier to manage dependencies, while adding support for automatic merging of concurrent changes. For improved accountability, all changes to an app are now captured in the system audit trail as well.

Enhanced Configuration Options for Codeless Apps


The Joget Workflow platform allows for almost limitless extensibility via plugins and custom coding. However, the requirement for coding makes it less accessible to non-coders. In v6, there are now additional configuration options in various elements to allow for simple configuration instead. For example, retrieving data from multiple forms can be accomplished using simple form selections, instead of using custom SQL JOIN queries.

Improved Performance with Userview Caching


Caching is now available for all userview pages. Requiring just a couple of settings, any userview menu and page can be easily cached to eliminate bottlenecks and reduce server-side processing. When used appropriately, caching can greatly improve the performance and scalability of apps.

Database Connection Monitoring and Leak Detection



A new feature incorporated into the Performance Analyzer now provides monitoring of database connections at runtime. When logged in as an administrator, the Performance Analyzer displays the number of active and idle platform datasource connections at the top left corner of the app userview.

There is also database connection leak detection, which works for both BeanShell scripts and custom plugin code. When a possible leak is detected, a warning will be captured in the logs to allows administrators to identify the page causing the problem.

Additional Plugins Out of the Box for Greater Flexibility

v6 includes additional useful developer and integration plugins to cater for more complex app requirements.
  • More JDBC and BeanShell plugins are now available out of the box to allow for custom SQL and BeanShell code in forms and lists.
  • The Permission Userview Menu element allows userview permissions to be configured in the front-end app.
  • There is also a new Sync LDAP Directory Manager that allows LDAP and Active Directory information to be synchronized with the local user directory.

Latest Upgrades Under The Hood



Joget is built on Java using the proven and popular enterprise libraries Spring Framework and Hibernate ORM and in v6 they will be upgraded to new stable releases (Spring 4.3 and Hibernate 4.3) to take advantage of all the performance, stability and security improvements available.

Resources

While v6 is in the works, check out the current stable v5 release through the following resources:


NOTE: The features in v6 are subject to change prior to release.


Wednesday, November 23, 2016

The Future of App Development: Touch to Build?

The Present



How does software get built today? The image of software engineers hunkering down over their computers is a familiar sight and is representative of how things work today. Building software and apps is the domain of experienced computer programmers and coders, of which there is a real shortage. This global phenomenon (check out a finding from the European Commission, for example) is not new, and will only get worse.

The Future


Now, imagine a future where non-coders are able to build and maintain apps. It may sound far-fetched and impractical now, but this is where we believe the world is heading. With the proliferation of smartphones and tablets, IT literacy and competency are rapidly increasing all over the world. With the emergence and growth of low-code platforms, and the feedback from the Joget Workflow community, the trends point towards a future where more and more people are becoming creators, not just consumers of software.

At Joget, our vision is a business world where apps can be built and managed anytime, anywhere. But just as how smartphones revolutionized photography for the average person as opposed to professional photographers, software development professionals will still play a big role at a deeper level. However, the time is ripe for everyone to be able to create software when required. Imagine someone walking around with an iPad to build apps anytime, anywhere. Dragging some elements here, dropping some stuff there, everyone is empowered to create.


Well, “touch to build” is arriving in the upcoming Joget Workflow v6. Watch this space for updates!

Tuesday, November 22, 2016

A Sneak Peek at What’s Coming in Joget Workflow v6

As an open source platform to easily build enterprise web apps for cloud and mobile, Joget Workflow has managed to build up a pretty large community of more than 1,600 installations and 9,100 community members to date. With a number of glowing customer testimonials and positive reviews on Capterra and GetApp.com, the platform is growing each day towards making app development simpler and more accessible.

The current v5 release provides a combination of nice new features, stability and security. However, there are a couple of focus areas for the next major release. Based on all the great feedback we have gotten from our community, and aligning with our vision for the future of app development, there will be a dual pronged focus in Joget Workflow v6: User Experience (UX), and App Maintainability and Performance.

User Experience and Mobility


User Experience (UX) and mobility are the Achilles' heel for enterprise apps. As consumer apps and sites redefine UX, enterprise software are often clunky in comparison. A key focus of v6 is to have Joget Workflow apps present a great user experience, learning from lessons in the consumer app world. Incorporating elements from Google’s Material design, mobile device responsiveness, and even touch support for designing apps (imagine using an iPad to build and maintain apps!), building beautiful and user friendly apps will be easier than ever.

App Maintainability and Performance


The major challenge in app development is not building it the first time, but rather maintaining and evolving it over time. A big focus in v6 is improving app maintainability, with additional tools to manage dependencies and to automatically merge concurrent team changes. Performance is also another key focus area. We plan to have tools to help app designers optimize their apps more easily through easy-to-use caching, and to prevent common app performance bottlenecks such as detection of database connection leaks.


The v6 roadmap has yet to be finalized, but there has been good progress and there should be a series of future articles to describe all the great stuff we have in store. Stay tuned!

Thursday, November 17, 2016

The 3 Key Principles of the Joget Workflow Platform

As we passed the 150,000 download milestone for the open source Community Edition earlier this year along with the release of Joget Workflow v5, we reflect upon the vision for the product as we work towards developing the next major release.

As an application development platform, the main value proposition can be summarized into 3 key principles: Simplicity, Flexibility and Openness.

Simplicity

Photo by Gisela Giardino / CC BY

Unlike many competing app development platforms, Joget Workflow empowers non-coders. Just a web browser is required to build and maintain apps anytime, anywhere. The web accessibility, visual approach and focus on simplicity reduces the time it typically takes to build apps from months to weeks or days. Or even just minutes for working prototypes.

There’s also the Joget Marketplace, where you can download ready-made apps and plugins. Just as how the Apple App Store and Google Play Store revolutionized smartphones by allowing apps to extend the functionality of a phone, the Joget Marketplace is a place to extend the capability of the Joget Workflow platform.

Flexibility

Rapid Application Development (RAD) products are typically focused on UI or database centric use cases, while Business Process Management (BPM) products are typically restricted to process centric scenarios.

Joget Workflow combines the best of both worlds to support full fledged end-to-end applications for cloud and mobile. Forms, lists, UI, workflow processes, user security, integration APIs. All the core features are provided out of the box.

However, it is very important to recognize that there is absolutely no way for any solution to cater to every requirement out there. That is why the platform is designed with a dynamic plugin architecture and APIs that allow developers to extend the platform as and when required.

Openness


We believe openness is a very important trait for software.

The core platform is open source, with associated benefits in cost, freedom, security and accountability. The platform can be deployed in various ways, whether on-premise, in the public or private cloud. It also runs on a multitude of operating systems, databases and application servers so it fits in with your infrastructure e.g. Windows, Linux, Oracle DB, Microsoft SQL Server, SAP HANA, MySQL, IBM Websphere, Oracle Weblogic, Red Hat JBoss, Apache Tomcat, etc.

There are also several editions of the platform to cater to different features and affordability needs, whether for Fortune 500 enterprises, government agencies, mid-market companies, departments, or small businesses.

What’s Coming in Joget Workflow v6

For the upcoming Joget Workflow v6, these 3 principles will still hold sway. In addition, based on the great community feedback in alignment with our product vision, there will be a dual pronged focus: User Experience (UX), and App Maintainability and Performance. More details will be coming soon!

Thursday, August 11, 2016

Is Joget Workflow Code Less or Codeless?

Recently, a friend forwarded an online article published by PC Magazine titled, "Building an App With No Coding: Myth or Reality?" (http://www.pcmag.com/article/345661/building-an-app-with-no-coding-myth-or-reality)

The PC Magazine article faced off 4 low-code application development platforms - Appian, Microsoft, Salesforce and Zoho in a challenge to build a basic but working scheduling app in an hour.

It was an interesting read and I did not think much of it then, but I do remember thinking, after reading the article, that, "Hey! Joget Workflow could easily build a working scheduling app in under 60 minutes".

And then a week or so later, the same friend forwarded another article titled, "Microsoft Bookings is a new Office 365 service for managing appointments" (http://venturebeat.com/2016/07/20/microsoft-bookings-is-a-new-office-365-service-for-managing-appointments/)

I definitely remembered asking my friend why is scheduling and resource bookings cropping up so frequently all of a sudden. We laughed about it and that was that.

Then, last week, I was in Jakarta, Indonesia, on a business trip to visit some of our customers. Itasoft, our local partner in Indonesia, made appointments for me and Hugo to visit 3 of the largest financial institutions there, whom are already using Joget Workflow to build web applications and automate their processes.

In one of the meetings, the client mentioned that they would like for their internal team to be able to developed a meeting room booking application that can be used to managed all their meeting room reservations. They actually showed us the requirements for the application that they wanted to build.

I did not know what came over me, but as soon as the client explained and showed us the requirements for the meeting room scheduling and booking application, I dived in and offered to meet the challenge to build the booking web app using Joget Workflow in 15 minutes.

Responsive theme showing the
booking in calendar view.
I expected my colleague, Hugo, to protest. But without batting an eye, he got to work. Using the Joget Workflow App Generator and a calendar view plugin from the Joget Marketplace, he managed to build a full functioning and working scheduling app in less than 15 minutes totally unrehearsed. I was amazed, the client was amazed and their team was amazed! But the really amazing part of the story was that Hugo did not type a single line of code to build the fully production ready app. Codeless. (You can download the exact booking app as-is here if you like. After downloading, import it into your v5 installation. Totally free to use, distribute or modify to your needs.)

Which brings me to the topic of this blog post, "Is Joget Workflow Code Less or Codeless?" Let me define what we mean by "code less" and "codeless".

Back in 2012, we pivoted from a workflow engine to a web app development platform and we needed to highlight Joget Workflow as a platform that non-programmers and business users can use to build data driven applications and automate processes with little or no programming. That was the first time we used the terms "code less" and "codeless" in our marketing collaterals.

Room booking form.
"Code less" simply means that coding is still needed to build web apps, but "less coding" or "code less" (or some may refer to as low-code). And "codeless" simply means that no coding is needed to build web apps!

So to answer the question, "Is Joget Workflow Code Less or Codeless?" I would have to say that Joget is both a "code less" and a "codeless" platform depending on who the user is and what level of programming knowledge and experience he/she possessed.


I would be the first to say that there is no magic web application development platform that can be completely "codeless". But to a non-programmer or a Citizen Developer who wants to solve his or her problem quickly and with a relatively low learning curve, Joget Workflow may just be exactly what they need.

Now, if you happen to be one of these non-programmers that need to build a web application really fast whether as prototypes or as production ready apps, I would strongly urge you to try Joget Workflow out. And if you do not mind, share with us your experience by commenting below. Let us know what you think.

Feedback is gold to us. Cheers!

P/S All web apps developed on the Joget Workflow platform are mobile ready. Download the Joget Workflow iOS and Android apps from here.

Some Screenshots of the Booking App:



Friday, July 8, 2016

Document Approval and Workflow on Google Drive

Cloud file storage is increasingly important in today’s computing environment, be it for personal, small business or enterprise use. Services like Dropbox, Box.com, Microsoft OneDrive and Google Drive are leading the way. Google Drive is Google’s popular file storage service, and is seamlessly integrated with Google Apps.


If you are using Google Apps for Work, having files stored and synchronised seamlessly in the cloud makes collaboration and document sharing easy. But if you need document approvals and routing, using Google Apps Script to enable workflow is too complex and not for everyone. There is a better way to manage the sending of documents for approval within the organisation and that’s through Joget Workflow for Google Apps.

Visually design apps with integrated support for Google Drive


Joget Workflow for Google Apps is a cloud platform to build apps and automate processes. Seamlessly integrated with Google Apps for Work, you can visually design your own custom applications. With Google Drive Integration, you can drag-and-drop a file upload that directly uploads and reads files from Google Drive.

To set up, visit Google Apps Marketplace and install Joget Workflow for Google Apps in a few steps.


When it is up and running, try to create an app from scratch using the App Generator following the Overview Tutorial (kudos if you can get it done in 10 minutes or less). In the Form Builder, drag-and-drop the Google Drive File Upload element into your form.


Configure the element with just a few simple properties.



From the front-end, users will be able to upload and store files on Google Drive.


Install apps from the Joget Marketplace

An alternative to creating an app using the App Generator is to download a ready made app from the Joget Marketplace. Just install the desired app, edit an existing form and add in the Google Drive File Upload element.

Mobile Support

Also, if you need for your apps and data to be accessible on the go, the Google Drive File Upload element just added in the form is automatically mobile ready, and can be accessed using a mobile browser, or via the Joget Workflow Mobile App (available on the Apple App Store and Google Play Store).


The addition of Google Drive support for apps developed on Joget Workflow for Google Apps,  will hopefully make document approval and routing easy. More information on Joget Workflow can be found at http://www.joget.org.