Building Web Apps with Uniface



Similar documents
The Japanese IT services company has found that Uniface is a smart way to carry out package customizations, as well as standalone development

Advantages and Disadvantages of Enterprise Mobile Application Development

Oracle Application Development Framework Overview

Putting the power of Web 2.0 into practice.

Lecture 26 Enterprise Internet Computing 1. Enterprise computing 2. Enterprise Internet computing 3. Natures of enterprise computing 4.

Servoy the first choice to deliver Software as a Service (SaaS) platform to accommodate fast, better and cheap application development to Java.

Fujitsu Cloud IaaS Trusted Public S5. shaping tomorrow with you

Questions to address while reviewing CRM software

SAM Enterprise Identity Manager

Executive summary. Table of Contents. Technical Paper Minimize program coding and reduce development time with Infor Mongoose

Extend the value of your core business systems.

INTRODUCTION TO CLOUD COMPUTING CEN483 PARALLEL AND DISTRIBUTED SYSTEMS

Rapid application development for JEE using Adobe ColdFusion 9

Accelerating Business Value by

Enterprise Application Modernization: Getting Started to Achieve Increased Competitiveness and ROI

Migration and Developer Productivity Solutions Cloud, Mobile and Web Development Workshop

How On-Premise ERP Deployment Compares to a Cloud (SaaS) Deployment of Microsoft Dynamics NAV

OpenText Information Hub (ihub) 3.1 and 3.1.1

Getting started with API testing

Platform as a Service: The IBM point of view

100% NO CODING NO DEVELOPING IMMEDIATE BUSINESS -25% -70% UNLIMITED SCALABILITY DEVELOPMENT TIME SOFTWARE STABILITY

Mary E. Shacklett President Transworld Data

Fujitsu Service-Oriented Architecture (SOA) A Web Services Framework

Assembling a Next Generation Enterprise Web Infrastructure with Drupal and Acquia

Latte Rapid Application Development. William Dunlap Product Manager Borland International

IBM Customer Experience Suite and Electronic Forms

EnergySync and AquaSys. Technology and Architecture

PLATFORM-AS-A-SERVICE: ADOPTION, STRATEGY, PLANNING AND IMPLEMENTATION

WINDOWS AZURE EXECUTION MODELS

Our clients have come to rely on key benefits when working with us, including: Simplicity.

LET K2 SHOW YOU WHAT MICROSOFT SHAREPOINT CAN REALLY DO

ORACLE APPLICATION EXPRESS 5.0

When Computers really become Personal

Accenture Cloud Platform Unlocks Agility and Control

Six Steps to Migration Project Success

Improving customer satisfaction and operational efficiencies with a proven portal solution.

WHITE PAPER MATTERSPHERE TECHNOLOGY AND FUNCTIONALITY REVIEW CONNECTING YOU WITH WHAT MATTERS

Deltek Vision 7.0 LA. Technical Readiness Guide

Mobile Application Platform

Datamation. Find the Right Cloud Computing Solution. Executive Brief. In This Paper

Get Your Business Moving. In partnership with Nomis Connections

A Guide to. Cloud Services for production workloads

Collaboration solutions for midsized businesses Buyer s guide

Creative Shorts: Twelve lifecycle management principles for world-class cloud development

Develop enterprise mobile applications with IBM Rational software

ORACLE FORMS APPLICATIONS?

IBM WebSphere Application Server Family

Red Hat Enterprise Linux: The ideal platform for running your Oracle database

How Oracle MAF & Oracle Mobile Cloud can Accelerate Mobile App Development

Curl Building RIA Beyond AJAX

<Insert Picture Here> Michael Hichwa VP Database Development Tools Stuttgart September 18, 2007 Hamburg September 20, 2007

Solution brief. HP CloudSystem. An integrated and open platform to build and manage cloud services

The Complete Telecommunications Solution. Telecommunications Resellers. Mobile Virtual Network Operators (MVNO) Internet Service Providers

Inside the Digital Commerce Engine. The architecture and deployment of the Elastic Path Digital Commerce Engine

Modernizing enterprise application development with integrated change, build and release management.

Successful Platform-as-a-Service Requires a Supporting Ecosystem for HR Applications

INTRODUCTION THE CLOUD

SELECTING ECOMMERCE WEB HOSTING & SUPPORT

The Cloud ERP. Case Study JAAS

What Is the Java TM 2 Platform, Enterprise Edition?

Relational Databases in the Cloud

Why HTML5 Tests the Limits of Automated Testing Solutions

Planning the Migration of Enterprise Applications to the Cloud

Azul's Zulu JVM could prove an awkward challenge to Oracle's Java ambitions

CLOUD COMPUTING SOLUTION - BENEFITS AND TESTING CHALLENGES

Power of Oracle in the Cloud

Efficiently Migrating Lotus Notes Applications to Modern Platforms

CLOUD COMPUTING & WINDOWS AZURE

Maintenance Management Software Server, Hosted and Desktop

IBM Maximo technology for business and IT agility

Manufacturer to Enhance Efficiency with Improved Identity Management

IBM WebSphere application integration software: A faster way to respond to new business-driven opportunities.

Transform your customer relationships. Avanade Customer Relationship Management Services

Oracle Hyperion Planning

ORACLE HYPERION PLANNING

IBM Tivoli Service Request Manager

VERITAS NetBackup BusinesServer

4D and SQL Server: Powerful Flexibility

IBM Digital Experience. Using Modern Web Development Tools and Technology with IBM Digital Experience

Key Benefits of Microsoft Visual Studio 2008

Choosing an MDM Platform

SAP FIORI / HR Renewal

How To Choose Help Desk Software For Your Company

Customer Relationship Management

Automating Rich Internet Application Development for Enterprise Web 2.0 and SOA

HP CLOUDSYSTEM. A single platform for private, public, and hybrid clouds. Simply the most complete cloud system for enterprises and service providers

EPICenter Network Management Software

THE MOBlLE APP. REVOLUTlON. 8 STEPS TO BUlLDING MOBlLE APPS FAST ln THE CLOUD

IBM Rational AppScan: enhancing Web application security and regulatory compliance.

Microsoft Azure For Your SAP Solutions

Maximize strategic flexibility by building an open hybrid cloud Gordon Haff

Done. Imagine it. c Consulting. c Systems Integration. c Outsourcing. c Infrastructure. c Server Technology.

The Recipe for Sarbanes-Oxley Compliance using Microsoft s SharePoint 2010 platform

Transcription:

Building Web Apps with Uniface written by Michael Taylor, Uniface Mobile Product Manager

10 Ways Uniface Helps You Succeed Introduction When you re choosing a development tool for new applications and particularly for web apps an end-to-end solution brings productivity and reliability, among other advantages. From a lifecycle perspective, Uniface has strategic strengths that mean your application not only gets developed (or migrated to the web) fast, but will also have a long and productive life, adapting to whatever business and technology changes lie ahead. Strategic advantages include: Exceptional productivity in both development and maintenance #1 PRODUCTIVITY Built-in security features #2 #3 #4 #5 #6 #7 #8 #9 #10 RELIABILITY SECURITY ENTERPRISE SCALABILITY APPLICATION LONGEVITY TECHNOLOGY INDEPENDENCE INTEGRATION & REUSE COLLABORATION FOR RESULTS USER COMMUNITY PARTNERSUNITED PROGRAM Tools and resources for developers to use High reliability Scalability to ensure performance with peak loads the perfect match for cloud Technology independence, so you can switch platforms, operating environments, or databases Ease of integration with existing or third-party systems Reuse of existing components Professional services to help you to create new apps, modernize existing apps for the web, or expose business logic as a service Our commitment to keep you abreast of technological developments with frequent upgrades, providing compatibility between versions so you don t need to rewrite code. There are also technical advantages, such as an advanced approach to dynamic server pages (DSPs) enabling you to allocate processing efficiently between client and server, and mash up simple components to give sophisticated results. This simplifies development and achieves superior performance. Features like these make Uniface the ideal development platform for web apps, whether you already have existing Uniface apps, or are building a new one. WWW. 2

Obsolence and Compatibility Problems with Frameworks A program manager with one of our partners said five of the frameworks they have used are now obsolete. Another customer is having problems upgrading from one version of a framework to another because versions are not downwards compatible. New to Uniface? Start Here The Uniface platform: Is an Integrated Development Environment (IDE) and deployment tool Operates on Microsoft Windows, Linux, proprietary Unix, and legacy platforms from HP and IBM Maintains critical enterprise data and supports vital business processes (e.g. webbased online shopping, financial transactions, salary administration, and inventory control), making it an ideal solution for complex systems Is used by thousands of companies and millions of end-users. Uniface applications: Are database- and platform-independent Integrate with all major database products Integrate with many other technologies at multiple tiers of the application architecture Range in architecture from mobile to web to client/ server Include everything from data entry to intranets. Choose Your Development Tool from an Application Lifecycle Perspective Total cost of ownership should be a key consideration when you re contemplating any development project. The temptation is to focus on the initial development task and choose a tool that is to hand and familiar to your staff. This may be convenient in the short term but can prove expensive over the lifespan of a project. When you look at the effectiveness of development tools across the whole application lifecycle, you will see them in a different light. This is particularly true of web apps. These make special demands on the development team because the apps need to be ultra-flexible. They must operate on a range of platforms, adapt to rapid changes in technology, and be capable of scaling and tuning to provide high performance in challenging conditions. Locking into an inflexible development environment can prove expensive, even if the initial build is fast. From an end-to-end perspective, Uniface is a choice that should be considered for any web application. In this white paper we ll detail some of the strategic and technical advantages that Uniface offers over some other development environments. The lifecycle perspective reveals a further, overriding advantage of Uniface: the fact that it s here to stay. Some choices of development environment will limit the life of your web app. If you use Java, you re likely to use several frameworks to speed up development, for example in the area of database accesses. As well as necessitating multiple support contracts, this means your application is dependent on the frameworks remaining actively supported. With Uniface you get peace of mind from a proven track record, a solid customer base, and a commitment to providing frequent upgrades to keep you abreast of technological developments, with assured compatibility from one version to the next, so you don t have to rewrite code. And you don t have to assemble your own toolkit, with the subsequent dependency risk, because Uniface provides a one-stop shop. 3

Uniface Improves Development throughout the Lifecycle Uniface has advantages that help you reduce total cost of ownership and improve the usefulness of your web app throughout its life not just in the initial development phases. Productivity I need to get web apps up and running fast and then update them often to keep them interesting and stay ahead of technology or business change. Web apps are expected to be dynamic from a functionality perspective just as content has to change frequently to remain sticky. (Think how often Facebook changes.) This could be about changing either the user interface bling or the business logic. In both cases, Uniface lets you make changes quickly and efficiently, and roll them out immediately. Creative Intellect Consulting, an analyst research, advisory and consulting firm, recently conducted a study comparing Uniface delivery timeframes and execution dynamics with those of Microsoft s.net for a series of progression scenarios typical of the application lifecycle. Some of the results are summarized in the following table (figure 1). Scenario Uniface effort.net effort Figure 1: Uniface Productivity Benefits vs..net Change of database from MS SQL Server to Oracle Migrate from desktop client to web-based client Port application to the cloud Add mobile capabilities Move from Windows to Linux 3 days 8 days 15% of original build time plus 3 days to polish 50% of original build time 1 day 5 days 15% of original build time plus 5 days to add RWD 30% of original build time 1 day Not possible Of course, Uniface s productivity applies to new functionality as well. It arises in part from the model-driven approach to development, which means that very little code needs to be written and maintained. The table below (figure 2) was the result of a lab project that developed the same application, a pet store, in Java, Microsoft.NET, and Uniface. The app in question was created by the three vendors concerned Sun, Microsoft and Uniface. 4

Figure 2: This table shows the total lines of code (LOC) and number of separate files required by Uniface Pet Plaza, Java Pet Store, and Microsoft Pet Shop Application LOC Derived From Java Pet Store 14,273 173 text & Java files Microsoft Pet Shop 3,484 65 files Uniface Pet Plaza 1,959 2 models, 1 library, 2 server page templates, 1 startup shell, 20 server pages and service components Uniface also lends itself to agile and prototyping approaches. New functionality can be added quickly something that counts for companies needing to bring new products or services to market. And our rules-based model means that you can work fast without threatening the integrity of your data. Security I want to introduce web apps without laying myself open to security threats. Security and productivity go together as the majority of time spent creating web apps today goes into the creation of a secure environment on the server, in which to open up sensitive corporate data in such a way that it can t be damaged. Security is among most CIOs top three concerns, and the general rule is that it s only as good as the technicians you have on hand. With Uniface, the picture is different: the security of the static components is taken care of by us, meaning that your deployment infrastructure is intrinsically safe. We also provide comprehensive security features that your developers can use to combat threats like password cracking, interpreter injection, and session hijacking. In addition, we offer detailed guidance on how to use these features. Vericode regularly verifies our deployment architecture. 5

Model-driven development has been ignored by the mainstream for a long time. As we move into an uncertain future, we only need to look at IT changes over the last decade to see how this approach would have had considerable benefits. While traditional development methods and architectures worked well in a single deployment environment, they quickly break down when an application needs to be deployed to different or multiple environments. CIC Commentary: Quantifying Uniface developer productivity in an era of technology change Case study: Wizrom In its first-ever Uniface project, our partner Wizrom a leading Romanian software provider created a complex instant quote facility for the website of a US-based company that offers professional 3D print services. Each quote had to be generated from a computer-aided design (CAD) file submitted online, and the application also needed to integrate with courier and payment card services. With the whole application written in Uniface, the project completed on time and to budget and produced a robust application. The solution was developed on a Windows platform but deployed on Unix in the cloud (via Microsoft Azure), with a different database. Rapid prototyping of screens facilitated collaboration with a client in a different continent. Reliability I use my apps to run my business so they need to be available 24/7. Reliability is critical for web apps they can be your main way of talking and selling to customers, and therefore mission-critical. Uniface s intrinsic reliability in deployment brings you peace of mind. Many of our clients are in industries like financial services or laboratory testing for hospitals. For them, application failure is simply not an option and they get 24/7 availability from Uniface applications because of Uniface s stability and robustness. Enterprise scalability Cloud looks great from the scalability point of view, but in reality how much I can scale is limited by my software. With a customer-facing web app you typically don t know how many endusers there will be. Uniface lets you scale the application, adding hardware if necessary and often avoiding hardware upgrades altogether by making best use of what you already have. It complements your cloud strategy, accomplishing in software terms something very similar to what cloud does in infrastructure terms. Technology independence I m worried about getting locked into one platform and database for the lifetime of my app. Uniface makes it easy to move the app from one environment to another, for example from an in-house server to a commercial cloud environment. (Some of our customers are attracted to this idea not just for scalability reasons but to have someone else take care of their infrastructure and if required keep it up and running round the clock so they can concentrate on their main business.) You might need to review some design aspects of an existing app to take full advantage of cloud, but the logic of the application can just be picked up and moved. You can also change databases for example, if you don t like the licensing arrangement your current provider offers then you can move to another one without changing the application. Or you can change server platforms: many customers are saving money by moving from proprietary platforms to generic ones with a commercially supported Linux distribution. Some want to move from Windows to Linux or vice versa (especially in Japan, some customers prefer Windows for its simple administration of user accounts, etc). As a software development company, we can t dictate hardware and operating environment choices to our clients, but nor can we support multiple versions of everything. This ease of migration is important for customers who may need to alter their strategy over time, and equally so for our partners who want to offer their customers a choice of platforms. 6

Integration and reuse My new web app needs to be able to talk to legacy systems and third-party software and they don t all speak the same language. Uniface s versatile integration capabilities mean that users who have recently switched to Uniface find they can easily get Uniface applications, web-based or not, talking to their existing application assets. We have a range of approaches for doing this, including native 3GL call-outs, file exports, and web services. This brings us to another of our advantages, reusability. Let s say you build a security module for user access for example to control self-service access to an HR system so employees can change their addresses but not give themselves pay rises. If you write that logic with Uniface, you can recycle it wherever you like. Existing Uniface users know that with a little extra effort spent on wrapping the logic with web technology, they can even reuse logic from legacy client/server systems. I ve already invested a lot in coding business logic ideally I need to go on using that logic in my new web app. This way, you don t lose any work or knowledge when you transition to a new environment. It also helps you create new applications very quickly. Collaboration for results I need to turn my legacy application into a web app but I don t have the resources to do it in-house. Uniface users can capitalize on the expertise, best practices, and methodologies delivered by Uniface Professional Services - for example, by helping you turn a whole existing application into a web application. The services division provides modernization as a service (see our white paper on Enterprise Application Modernization). We can approach the task in a variety of ways, from Uniface Anywhere, which allows Uniface Windows applications to be deployed directly in a browser without recoding, to reimplementation of the apps with service-oriented architecture, which is more labor intensive but nonetheless typically reuses up to 80% of your legacy code. Uniface s Technical Advantages: DSP Example I need to be flexible about whether a given piece of processing runs on the client or the server. As we ve seen, Uniface has a number of strategic advantages when it comes to developing and maintaining web apps. In addition, we have major technical advantages. 7

Case study: T-Systems Hungary Our partner T-Systems Hungary helped its client the Volánbusz Transport Company to create an engaging, customer-friendly web application for self-service purchasing of international bus tickets, to be integrated with an existing Uniface-based transportation system. Two T-Systems developers created a prototype application within a few weeks, then the live application in just a month. Volánbusz and the public have been using it happily for several years. In a subsequent project, T-Systems Hungary created a sophisticated booking system for Volánbusz to put into tourist offices incorporating functionality from the existing web application and client/ server system this was completed in just two months. Take DSPs. In Uniface there s a symbiotic relationship between the client and the server: a given process can be delegated to either in a secure manner, so you decide what happens where. You just declare where you want a process to run, so there s no additional complexity from your point of view we take care of it behind the scenes. Our robust approach protects you from some of the pitfalls like race conditions, where multiple tasks running in parallel interfere with one another and cause applications to behave unpredictably. We need some complex screens, but ease of maintenance is also vital. Our DSP approach allows us to reduce complexity in another way: by having our runtime bind diverse elements within a web page. This means you can develop a DSP application as a mash-up, using JavaScript to extend and enhance it. This enables a modular approach, where you combine simple components to get a sophisticated result. For example, if you want to have tabs, you can define each of the pages separately and combine them at runtime, or embed a component within a tab. As well as simplifying development, this architecture reduces the amount of information passed between client and server. Although partial page updates are possible with other technologies, there is usually a penalty such as loss of portability. Uniface tackles this issue in a more sophisticated way and the app remains completely portable. Responsive. Uniface ticks all the boxes for web app development and mobile solution deployment Uniface meets all of the requirements for a typical web app development project. HTML5, CSS3, AJAX partial page updates. Our support for the important HTML5 and CSS3 standards makes it easy to keep the user interface compelling. AJAX helps us to combine DSPs, which is how we handle partial pages. Scales to accommodate many thousands of concurrent users. Uniface apps scale to support peak usage. Responsive web design to support desktop and mobile browsers. Our support for HTML5, CSS3 style sheets, and AJAX is part of a comprehensive one-stop solution that facilitates this type of design. You don t need to assemble any extra tools. Server integration with SOAP and REST services. These are among our approaches to integrating Uniface applications with one another and with non-uniface applications. Integrating via web services is a way to share business logic and data across applications. It opens up a whole range of choices, such as providing an API for your web application in addition to the graphical front-end to facilitate business-to-business integration. 8

Securely expose functionality as SOAP and REST services. Our comprehensive approach to secure integration minimizes the risk attached to sharing logic (or data) with the outside world. Resistant to SQL, HTML and JavaScript injection. Our architecture offers protection against all of these, and we supply guidance on how to use the relevant features. Support multiple databases (SQL Server, Oracle, Sybase, SAP Hana, PostgreSQL, etc). Uniface supports any database and makes them interchangeable from the application s point of view. Support multiple server platforms (Windows, Linux, Solaris, etc). Again, Uniface s platform independence means that you can migrate applications from one platform to another with no changes required. Technology protected via long-term support contracts, actively maintained and forwards compatible. This is the way we do business, and the way we give our customers peace of mind. Conclusion Particularly from a whole-lifecycle perspective, Uniface is the ideal medium for developing web apps, whether you re new to Uniface or an established user. For new customers, it makes sense to build your web applications with Uniface because all the traditional Uniface advantages like productivity, security, scalability and technology independence apply, plus additional ones like our sophisticated management of dynamic server pages (DSPs) which avoids technical complexity and reduces traffic between client and server. Uniface s versatile integration capabilities mean that it is easy to get an existing application talking to a new Uniface one. For existing customers, all the above advantages apply, and in addition you have the ability to reuse logic from existing applications even legacy client/server ones. 9

About Uniface Uniface, the most productive, reliable development tool in the industry, provides a model-driven environment for the rapid development of scalable enterprise mission-critical applications. Learn more at www.uniface.com Uniface B.V. Hoogoorddreef 60, 1101 BE Amsterdam, The Netherlands 2015 Uniface B.V. www.uniface.com/legal 10 Europe: +31 (0)20 311 62 22 US: (248) 233-0866 Global Offices: www.uniface.com/contact Email: ask@uniface.com