Benefits and Use Cases

Benefits of Application Code Generation

Some level of code generation is typically used in most of the application/product development to automate mundane and repetitive programming. App Conceiver generates all of the required code to make a working application the first time itself. It probably generates more code than you may need for your requirement. It is easier to delete unwanted code than write new code. You can focus on the customization of the User Interface (GUI) and functional issues rather than fighting with multitude of human and technology issue to get the project moving forward.

Layered Architecture

The application generated from this tool uses a layered architecture as explained in the next chapter. Each layer has it own specific role and it helps replacing a layer with a better technology, if needed, in future.

Restful interface

A REST interface using Jersey implementation comes with the application. This helps the customer if they want to interface their existing systems to the application or write a brand new GUI for the application. The server side components and the GUI are decoupled components of the generated application. The GUI communicates with backend using only REST services.

Security Module

The application has a built in security for authentication and authorization. This is an optional feature. The customers can use this security module or write their own security code. There are rest services for authentication (login, logout, change password, forgot password) and authorization. The authorization uses a role-based model. The service authorization is not enabled by default. Once the services are assigned to a role or user the security is enabled for that service. Through the security maintenance page of the application, a user with 'admin' role can setup security.

Admin Application

Code is generated for maintaining every entity of the application. Generally in most of the human programmed projects, people focus on the important entities to get the project ready. Some of the entity maintenance pages gets postponed and may never be implemented. Data maintenance for these entities will be done though SQLs by the DBA(s) later in the maintenance of phase of the application.

Since you get the UI and code for every entity, you can move the code for maintenance of entities, that are not updated by the end user, to admin application. Every data element in the project can thus be maintained with out too much of effort.

The search screens generated uses a query built at runtime using the user inputs, which will help the end user find what they really looking for. The fields to be used for the search are all specified you in the configuration time. Depending on the data type of the fields, the options of the search varies. You can choose the search page for any/all of the entities in the project. Please the Search Page screenshot for details.

Other features

The generated application comes with a lot other features like

  • The application can send email notification. There are placeholders and example code that will help customize the emails with minimal effort.
  • The generated code has built in loggers, exception handling, transaction handling, user input validation.
  • There are many util methods for validations (e.g., credit card number, email id etc)
  • Servlet filter for authentication check
  • Background process place holder code (No action is done in the default generated application. Customer can write the code for any background processing, if required)
  • There is no generator specific code in the generated application (i.e., the generated code has no dependency on the tool that generates it).

Use Cases

There are multiple use cases for an application generator. Some of the common ones are listed below.

Protoype

You can use application generator even during requirement gathering. If you have partial requirements, you can generate the application and use the application to refine the requirement. A generated application can help as a visual guide for the end user to describe their needs.

Working Application on Day 1

The application generator helps the development team to have a working application before they start the programming to customize the application. No more struggle to get a working application and tremendous cost saving on troubleshooting, research, POC, human errors etc. You implement the project with less number of programmers than needed otherwise. This will help the team focus on what is important than getting distracted by numerous typical issues.

Admin Application

An admin application for a project is usually gets low priority due to cost, time and resource constraints. In the application generation world, since code is generated, admin application can be built with very little effort. It is just a matter of creating a project and copying appropriate code from the generated code to the admin project.

results matching ""

    No results matching ""