2010 has been a tremendous year for the Flash Platform and Enterprise applications. Adobe launched a new generation of runtimes (Flash Player 10.1, AIR 2.0 and AIR 2.5 on mobile devices), new releases of the Flex framework (Flex 4), a modernized IDE (Flash Builder 4) and the new collaborative features of LiveCycle Collaboration Service (in addition to unveiling the next generation of LCDS). 2010 was also the year of Flash Catalyst, the first bridge between designers and developers of Flex applications. So what’s next for 2011? Adobe has already unveiled Flex “Hero” with new Spark components, such as he Image, Form and DataGrid, and the new MobileApplication architecture. You can also play with the previews of Flash Builder and Flash Catalyst available on labs.adobe.com. The new StageVideo API of the Flash Player 10.2, which should also be launched in the first half of 2011, will revolutionize the video playback experience on the web. To define the future of the Flash Platform for Enterprise applications, we, as developers, need to understand the top priorities and the key challenges of large IT organizations for 2011.
In my own opinion, this is still the biggest challenge for IT organizations: design-oriented processes. The big majority of IT teams are still defining the applications screens after having defined the back-end architecture. This is due to the evolution of IT. The first trend in the 90′s centered on transforming the knowledge of the Enterprise into “data”. That’s why a lot of companies invested in products from companies such as Oracle or IBM. Then, after the web revolution, we decided to “expose” these data via a SOA. Today, we are moving to Rich Internet Applications, and more globally to a User Experience oriented architecture. That’s one reason why companies are now investing in Adobe solutions and consider Adobe as a key technology partner for the future of their applications.
This revolution involves transforming our mindset. We need to forget the data, forget the backend and focus on the user. This change of mindset is a big challenge. It impacts every level of the IT organization, including the line of business people. We shouldn’t ask the end user “What do you need?” but rather “What’s your issue?” and then solve it via the UI. We must observe, observe, and observe end users as they work and interact with their existing apps. When you can meet users’ needs and business requirements in a single place, then you can design the most efficient UI to achieve a business task. You can use any of several methodologies to move forward, just make sure that the word “Design” is always at the center of your methodology.
At the end of this discovery process, you should be able to design and validate the screens. Flash Catalyst can be a strategic asset in this area, because you can use it to rapidly build interactive prototypes and make sure that end users buy into your UI. The big majority of Enterprise applications don’t fail because of a bad database definition or poor performance on the application server layer. They fail because of a lack of user adoption. Large organizations have to invest in design in 2011, User Experience consultants, give this new approach a try and measure the ROI. Once the screens are designed and approved, it’s impossible to miss a user interaction with your back end. You can then define the services you need to feed your UI and the data you need to persist in the back end. We need to stop designing what the system is expecting from the users, and instead focus on designing what the user expects and needs to complete their tasks. An efficient design can improve uses productivity, shorten decision making time, increase customer satisfaction and dramatically decrease the risks of errors. It’s called Productivity by Design, it empowers productive users. It also empowers productive developers who have the opportunity to work with the Adobe Flash Platform.
A good design must perfectly fit into your current architecture. To enable the communication between an RIA and a back end, you can use bridges or gateways such as LiveCycle Data Services. The next generation of LCDS will follow the trends of the market. First, it will serialize not only Java objects into AMF, but also .NET services into AMF. Many companies are not Java-only shops, they deal with a mix of heterogeneous server-side technologies. LCDS can be used as a standard bridge between Flash applications and your business layer. Flash applications only? No sir, as we also announced a new set a clients for LCDS: a pure Java client, an Android client, an iOS client and a HTML5 client (leveraging the webSockets API). One bridge, several services, several clients.
But again what’s next? First, you need to consider the stability of the network. With a tablet, I can switch from 3D to Edge to WIFI to… nothing as I am filling-in a form and manipulating some data. As developers, we need to handle that and ensure that we are not depending on the network to be stable. LCDS can adjust the quality of transmission of live data based on the quality of your connection. It can also automatically synchronize your data with the local SQLite database to send updates once the client is connected to the remote service. Because of the poorness of HTTP web architecture, IT services and users are getting used to the classic Request/Response user experience. Several years ago, the Flash Platform enabled real-time communications between the client and the server with advanced concepts such as data-push or real-time synchronization. Real-time UX should represent the next generation of web apps. Even Google, with Google instant, reflects this vision. When we interact with an Enterprise application, we’re aware of the hundreds of users interacting with the service at the same time. Sometimes, they interact with the same dataset stored in the back end. LCDS knows how to handle this.
Another trend is to bring in-context collaborative tools inside your existing apps. Rather than launching a pop-up to start a real-time collaborative experience (with a video chat and a shared whiteboard for instance), you can now thanks to LiveCycle Collaboration Service, add collaborative features inside your existing AJAX or Flex apps. Again, IT services should consider adding more and more real-time collaboration features to help users achieve complex tasks together and without disruption.
And here we are… the biggest challenge of them: multi-screen. After years of standardization of the client environment (a Windows OS, MS Office and a web browser), IT organizations have to face various client technologies: Android, iOS, BlackBerry PlayBook, WebKit… More and more smartphones will access back-end services (internal and external services as well) and it’s just the beginning of a new era. I’m not the only one thinking that tablets will be a game changer in the Enterprise. We are geeks, we need to launch Eclipse, Creative Suite tools, and so on, but we are a minority. Typical employees only deal with web applications, office-like apps, a web browser, and an email client. Now imagine these employees having the choice between a light tablet and a laptop, a tablet that they could dock to access a hard keyboard, a tablet that could showcase on a light screen their company’s products to their customers, a tablet that could also host movies and games. Now, take a step back, and imagine the impact on our IT applications. Smartphones and tablets mean different screen resolutions, new native languages (ObjectiveC, Java Android SDK), touch interactions, new gestures, screen redesigns-it will be a massive challenge.
Flex Hero will help. Leveraging their existing Flex skills, organizations will be able to rely on this new release of the Flex framework to build multi-screen applications. Today, Flex Hero applications can be exported on Android and on the BlackBerry Playbook with more devices to come in 2011. I think that this new trend is a fantastic opportunity for Rich Internet Application developers. IT teams won’t be able to rely on the operating system capabilities. No more investments in hard-to-maintain ActiveX; they will have to expose all the Enterprise tools and services thru the browser or thru native applications. Multi-screen applications will be aware of the user context. Thanks to a tablet, I can interact with a water damage claim application and send live pictures, even a live video so that the insurer can quickly estimate the amount of the damages. It means that IT organizations will have to migrate mission critical apps to touch screens, but also add new features and capabilities to assist the end user: geolocation, multi-touch, live video with LiveCycle Collaboration Service, online-offline synchronization with LCDS, and so on.
4. The big picture
If large organizations focus on the User Experience in 2011, they will easily engage and master the multi-screen revolution. What’s the best UX to achieve this business task? What’s the best device for my end users? What are my business priorities and how can I achieve them via a UI? How can I reach the maximum number of users with a single codebase? The Adobe Flash Platform will play a key role because all the stacks are ready to answer these questions: workflow between designers and developers, efficient and cross-platform runtimes, a productive framework, agile back end solutions. I warmly encourage you to download the preview of Flash Builder “Burrito” to start developing your first mobile application and let me wish you a fantastic new year for 2011.