ApacheCon Europe 2012

Rhein-Neckar-Arena, Sinsheim, Germany

5–8 November 2012

Domain-driven apps with Apache Isis

Mohammad Nour

Audience level:
Beginner
Track:
ApacheEE

Wednesday noon–12:45 p.m. in Rhein-Neckar

Description

Apache Isis is a framework for building enterprise webapps using domain-driven design. It infers the structure and behaviour of the domain model and provides a runtime which supports persistence, security and - most notably - the user interface and a REST API. In this talk we'll explain the use cases supported by Isis, outline its architecture, and shows the framework in action.

Abstract

Apache Isis is a Java framework for building enterprise webapps to allow you to put most of your effort into the most important part of your app: the domain model.

It works by defining a set of pojo-based programming conventions from which it infers both the structure and the behaviour of your domain objects. From this, Isis takes care of the other architectural concerns: persistence, security and (most notably) the user interface and a REST API.

Because you don’t have to write presentation or persistence layers, you spend most of your time focussing on the domain. And by focussing just on the domain, you'll find that you start to develop your ubiquitous language, giving the entire team (business and technologists alike) a deep, shared understanding of the domain.

Since you are writing less code, that extra time spent on the domain is likely to lead to deeper insights into your domain. More subtly, because you aren’t writing code for the other layers, you are forced to think things through (and not “bodge” or “fudge” concepts in other layers).

Isis pluggable architecture means that it supports several different use cases: you can use it just for a prototyping environment, you can use it just to build the pojo domain objects but hosted on some other framework, or you can use it as a full runtime environment.

This talk explains some of the use cases supported by Isis, outlines its pluggable architecture, and demos how Isis can be used to develop webapps with astonishing speed.