Supporting the Uniface 10 community
Uniface 10.3, containing the new Uniface development environment (IDE), was publicly released in August 2018, offering customers a stable platform for creating new applications and for migrating existing applications from earlier Uniface versions. Since its release, we have regularly updated the IDE, improving functionality and enhancing usability. Uniface 10 is the recommended development platform for creating new applications and maintaining existing customer applications. We will continue updating the Uniface 10 development environment (IDE) based on customer feedback, internal use, and the evolving world around us. Our focus areas are:
The Uniface 10 development environment offers developers an intuitive low code method of creating and maintaining enterprise-scale, distributed and cross-platform applications. As the development environment is the cornerstone of enhancing developer productivity, we shall continue enhancing the experience to further improve the overall return on investment.
The main focus for enhancing developer productivity is Navigation and Usability - especially when maintaining large applications containing many thousands of components and other development objects. To help with managing large repositories, the IDE is being enhanced to reduce the number of objects presented to the developer by adding Smart Suggestion functionality. This initiative is ongoing with several parts already delivered.
- Regular expression find/replace - Complete
- Navigate to code container - Complete
- Smart Suggestions - Complete
- Fast Form/Load Fields - Backlog
- Code editor functionality and productivity enhancements - Backlog
- 64 Bit development environment - Backlog
- Work Area Support - Backlog
Allowing customers the freedom to initiate new projects in Uniface, or to maintain existing applications, requires the availability of knowledgeable and experienced Uniface developers. E-Learning will deliver a free learning resource that offers on-demand and self-paced learning paths, designed to give new developers a jump start in mastering Uniface. These courses are complemented with formal certifications. Experienced developers will also be able to catch up with the latest enhancements in Uniface 10. E-Learning will be a cross-platform Learning Management System (LMS) and available to the Uniface community 24/7.
- Create and brand E-Learning infrastructure - Complete
- Concept Modules - Complete
- Help tutorials modules - Complete
- Create core learning modules - In-Progress
- Enable self-registration by prospective students - Complete
- Create web development learning modules - Backlog
- Create desktop development learning modules - Backlog
- Create mobile development learning modules - Backlog
- Create environment management learning modules - Backlog
- Create certification paths - Backlog
Developers should be able to develop small-scale applications using Uniface without the need for an enterprise development license. Creating a free-to-use version of the Uniface development environment (IDE) will enable community and hobby developers to access Uniface and promote the development of new applications. Allowing experienced Uniface developers access to a community edition will allow them to experience the new or improved features added to the latest version of Uniface.
- Replace Distributed License Manager - In-Progress
- Installer and product branding - In-Progress
- Improve installation experience - In-Progress
- Limit scalability through licensing - Backlog
Web applications continue to gain popularity as the preferred deployment option for Uniface applications. Benefits of Web applications over traditional client-server deployments include improved security (using service-oriented architecture), ease of deployment, and scalability. Uniface's Dynamic Server Pages (DSP) architecture enables an end-to-end solution for creating dynamic web applications including:
- Out-of-the-box synchronization of data and context between browser and server
- Validation for both client and server
- Reuse of existing business logic
- Flexible GUI for personalized standards and presentation layer
- Multiple views for a single Uniface component
- Business objects with clear APIs for reuse and isolation
We plan to continue simplifying the development of robust dynamic web applications by enhancing the Uniface DSP solution. We intend to concentrate our efforts on error handling and improving the end-user experience with enhanced data entry and formatting.
- Flexible date and time entry with NLS - Complete
- Client-side DSP trigger for server-side validation errors - In-progress
- NLS number entry and formatting - In-progress
- Remove DOJO from the installation - Complete
Scalability and ease of deployment are essential to reduce costs and boost customer experience. To achieve these gains, the industry is looking towards microservices and containerized deployment. Uniface's component-based development, combined with its runtime partitioning, is ideally suited to offer this deployment paradigm - especially for web applications.
- Support for Linux based Cloud machines - Complete
- Support for Windows-based Cloud machines - Complete
- Docker support - Backlog
- Uniface Docker containers made available in public repositories - Backlog
Applications need to be secured from intrusion and protect customer data. Through its architecture, Uniface offers protection against standard methods of attack. We are continuously enhancing customer security.
- Client-Server - Complete
- Web (WRD) - Complete
- PostMessage - Complete
Internal testing framework
Delivering a high-quality product to our customer base is a requirement that underpins all activity within the development labs. Every product change results in Uniface being thoroughly tested using a large test environment spanning all supported platforms and databases. As the release schedule for Uniface has increased in frequency, we are enhancing our environment to allow the parallel execution of tests to reduce the duration of each testing cycle. To achieve the scalability needed to test multiple versions of Uniface simultaneously, we are porting our test framework to the cloud. When a test run is executing, each test suite is isolated to the platform, database, product feature, and Uniface version. This project allows us to test Uniface more often, reducing the scope of each change we make to the product. Smaller incremental changes to the product are resulting in higher quality software and a quicker time to market.
Enabling customers the freedom to deploy their applications over a variety of platforms and databases continues to be core functionality for the Uniface platform. Based on user requests and how common a platform or database is within our customer base and the wider industry, we will continue to add new items to our product availability matrix.
- OpenJDK 8/11 - Complete
- Windows server 2019 - Complete
- iSeries (AS/400) 7.3 - Complete
- PostgreSQL v10 & v11 - Complete
- Oracle 18c - Complete
- Informix CSDK 4.1 on AIX 7.1 - Complete
- Oracle 19c - Complete
- RedHat Linux 8 - Complete
- Sybase 16 on SUSE Linux 12 - Complete
- Oracle 19c on AIX 7.1 - Complete
- Support AZURE SQL managed instance/MSS2014 on CentOS and RedHat - Complete
- Oracle 18c/19c on Solaris 11.3 - Complete
- SQL Server 2019 on Windows - Complete
- SQL Server 2019 on Linux - Backlog
- Sybase ASE 16 on Windows Server 2016 - Complete
- CentOS 8.0 - In-Progress
- SQL Server 2016 on RedHat/CentOS 7 - Backlog
- Informix CSDK 4.5 on Windows 2016 - Backlog
- IBM AIX 7.2 with Informix CSDK 5.4 - Backlog