Modeling Applications with JRapid
Model-Driven Development (MDD) is a methodology in which the emphasis is placed on correctly structuring the abstracted objects and their relationships in a particular application as opposed to leading with algorithms and business logic. This approach gives a consistent foundation upon which to later add business logic and expand the functionality even across many different teams.
JRapid makes use of the principles of MDD to simplify application development. The model for the application is defined in a JRapid Model Language (AML) document, and from there database tables, entity objects, and even front-end user interfaces are created automatically. JRapid’s web-based designer tool is an intuitive, point and click graphical interface linking all your modeled elements together and generating AML without coding.
JRapid provides abstraction to common application patterns that are found repeatedly when designing software. Use of easily identifiable patterns allows you to model your application with great flexibility. The following picture shows each pattern available to you in a sample application.
Entities are nouns such as company, product or employee. Entities contain properties and model the objects of your application, residing in the underlying database tables.Properties
Properties are the fields and values that make up entities. JRapid supports many different types of data from integers and strings to dates, times and telephone numbers out of the box. Properties can also be other entities which allows you to create relationships easily between your entities.Panels
Panels are HTML pages that give you the freedom to add additional patterns to a particular page and order them in a layout that makes sense for your particular needs. They are incredibly flexible as they are standard HTML pages. Column and accordion style layouts are provided for quick development.Listings Subsets
Subsets are patterns that allow you to limit the collection displayed in a listing. A collection containing all entities may be restricted to only show active records for example.Filters
Filters also restrict listings, but in addition create the UI interface and web services that allow the user to affect the listings dynamically. Filters are used to give the user the flexibility to dynamically restrict the listing themselves.Actions
JRapid provides Jasper Reports integration so that users can quickly access information in several very useful formats such as PDF, HTML and XLS. A graphical report creation tool, iRerport, is provided by JasperReports so report creation is painless.Menus
Menus allow you to organize screens and functionality in a manner that makes sense for each particular application.DefaultSets
DefaultSets allow you to create initial or default values for entity forms. If you want a data field to default to today’s date or a company field to default to the parent company you can do that with defaultsets.EnumSets
EnumSets are collections of enumerated, fixed values for a property. These can be created once and used in many places, and can be set to require a single value or allow multiple selections.