- As a Developer, I want to only have to extend the base class:
public class BookCRUD extends CRUD<T> {}
- As a Developer, I want to use vanilla Java EE 6, so that the controller is portable
- As a Developer, I want database accesses to be executed transactionally
- As a Developer, I want the controller to not contain any view logic, so that business logic and view logic are decoupled
- As a Developer, I want the controller to support any navigation pattern ou-of-the-box, so that changes in the view logic don’t require changes in the controller code
- As a Developer, I want the controller to support entities of any kind and complexity
- As a Developer, I want supporting entities with collections to require minimal code change
- As a Developer, I do not want to use
f:viewParam
orf:event
, so that views don’t contain controller logic - As a Developer, I do not want the controller to interfere with my app, so that it can be added to existing projects without side effects