Framework to build a pure Information Architecture layer easily
If you can introduce a (new, revised..) base architecture for your company you should start by drawing a high level architecture overview with two main parts: one part to hold all functional related logic, and a second part to hold all information related logic.
The first part should hold all "functional" logic, which can be business processes, workflow, batches, use case controlers and related. The second part holding all logic to handle your business information such as all "CRUD" logic, queries, but also all business rules, invariance constraints.... everything that is purely working on the data.
It is obvious that the process part has dependencies on the information part, but you should address the information part only through interfaces (or SOA services if you are into that). DO NOT MIX ANY IMPLEMENTATION of business logic with the pure information logic part!
If we focus on the second part -the one with the pure information logic- then my way to start this up is elaborating through the requirements (what information? which dependencies and contraints? how to build up the model?) using Domain Driven Design techniques (see DDD and the book by Eric Evans elsewhere on my blog).
To build up the executable architecture, I would use the Naked Objects framework. This is speeding your development up, and gives you your information layer with all "CRUD" functionality generated as an HTML interface at a glimpse.
Naked Objects is an open-source Java-based framework that takes a POJO domain object model and turns it into a complete, executable application. It auto-creates a user interface that is a direct reflection of the domain model, offering the option of either a rich-client interface or a pure HTML interface as shown below (you can view both on our online demonstration application); and it auto-creates a persistence layer using Hibernate.
Find more on the NakedObjects Blog or the discussion on theserverside.com
0 comments:
Post a Comment