Faktor-IPS provides tool support for the development process of insurance-related IT systems. It is a modeling tool for model-driven software development with a user-friendly product system. Due to its high flexibility and extensibility there are hardly no limits to the diversity of possible applications.
For a brief introduction, take a look at the two short videos that we produced. You will get an overview of Faktor-IPS and how it works.
As an Eclipse plugin, Faktor-IPS is seamlessly integrated in the established development environment. We also offer a simplified version of Faktor-IPS, which makes it easy for business departments to define products. A basic Eclipse installation is best suited for exploring Faktor-IPS. It allows you to define the models with Faktor-IPS and also to directly generate and edit the Java code. A manual for the installation is available under Download.
Upon successful installation of Faktor-IPS, we recommend watching our Faktor-IPS introductory video tutorials.
- Introduction Tutorial (part 1): Modeling and Product Configuration (PDF)
- Introduction Tutorial (part 2): Using Tables and Formulas (PDF)
- Sample Solution for the Tutorials as Eclipse Projects (ZIP)
You can import the sample solution via the import wizard “Existing Projects into Workspace.” If the projects do not yet correspond with the current Faktor-IPS version, you can trigger a migration by selecting “Faktor-IPS” from the drop-down list of the context menu.
Modeling Business Classes
Since Faktor-IPS is based on the approach of model-driven software development, it is easy to create and maintain business models. The user interface offers numerous tools that will make you quickly feel at home—even with large and complex models. By offering multilingual labels and descriptions along with user-defined icons in the model, Faktor-IPS makes it easier for business departments to define products.
In the Faktor-IPS introduction tutorials, we designed the model for a “simplified” home insurance. In practice, the business models are of course more complex, especially if more than one line of business is mapped. For this reason, we would like to address here the partitioning of models. By model partitioning we mean the division of a complex complete model into smaller submodels.
- Tutorial: Model Partitioning (PDF) – german only
- Faktor-IPS Projects as OSGi Bundles – german only
- Faktor-IPS Projekts as Maven Dependencies – german only
- Multilingual Models in Faktor-IPS (PDF) – german only
For more information we recommend the article below, in which we explain how to define new data types that are not part of the Faktor-IPS standard version. You will also find detailed information on the different options you have for defining enumerations.
Generating Java Code
Upon saving a model class, Java code is generated incrementally. It is possible at any time to modify the Java code or modify and enhance the model. The generated artefacts are merged with the manual code. The uniform generation of the generated code increases the quality of the code.
- Documentation for Modifying Generated Code – german only
Business users create and maintain insurance products in user-friendly editors. The predefined models serve as basis.
Faktor-IPS offers test support for the product definition, which comprises both defining and executing test cases. This tutorial illustrates the fundamental concepts. By way of an example, we will show you the features of the Faktor-IPS test tools and how you can use them.
Faktor-IPS is very flexible and easy to enhance thanks to the Eclipse-plugin mechanism. Various add-ons are already available for a number of different activities.
In addition to developing your own, project-specific enhancements, you can use various helpful enhancements provided by Faktor Zehn.
- Tutorial for Using the Faktor-IPS/UML2 Integration (PDF) – german only
To learn more about developing your own enhancements see:
- Building an Own Project Migration for Faktor-IPS – german only
Integrating with Applications
The Java code of the generated and enhanced business model can be integrated in any Java SE or Java EE application.
This tutorial builds on the introduction tutorials. It shows how to build an application based on the business class models generated by Faktor-IPS and how to access the product data. In designing the application, we put special emphasis on ensuring that the application responds dynamically to product changes. Any product changes made by the business department in the context of the defined business model can be done while in productive use without having to modify the application. Furthermore, you will see how to ensure that the application responds flexibly to model changes. For purposes of illustration, we use a sample application, that is, a quotation system for calculating home insurances. It goes without saying that this is not a complete system. A partial view of the system suffices to explain the concepts. The system is a web application based on the RAP framework.
- Tutorial for Developing an Application (PDF) – german only
- Packaged RAP Application (ZIP) for RAP 1.4/Eclipse 3.6 (requires the projects from the introduction tutorials (ZIP))
With Faktor-IPS you can also choose to have the product data deployed separately from the program code of the application. See the following document for how that works and which challenges have to be tackled:
- Separate Deployment of Product Data (PDF) – german only
- Sample Projects for Separate Deployment of Product Data (ZIP)
For more information on designing the interface of a product server, see the following article: