Sieben Geisslein is a platform for implementing
othogonal persistent applications and/or services.
For you as a developer that means that you don't have to care about
persistence any more. No ORM, No RDBMS, just objects. Modify them as
you like and after restarting the application they will still be there.
Sieben Geisslein also does not use Checkpointing like
PJama , but full featured transactions. When a large volume of
transactions needs to be processed (like in event driven GUI
applications, where each event is handled in a separate transaction)
optimistic transactions are used.
It also includes a vastly improved support for class evolution.
A problem in many existing approaches to class (or in the RDMBMS world:
table) evolution is, that much of the information about changes is
lost in the development process. Migration scripts have to be
created and much effort is put into keeping existing application data
and the code using it synchronized. Updating an application to a newer
version can become a major hurdle.
Sieben Geisslein solves this by capturing all refactoring information during
development. Renaming a field is transparently handled as well as
simple type changes.
Of course some changes still require writing migration code
(e.g. splitting a field ``name'' into ``forename'' and
``lastname''). This is supported in Feder and all migration logic is
included in the generated application. No scripts have to be run on
installation, but all upgrades are still handled transparently.
Another domain that is almost completely ignored by existing IDEs is
application data. Sieben Geisslein allows defining much of the data within in the
IDE (Feder).
This allows referencing this data from the application code in a
way that can be validated during compile time.
Especially in GUI design the lack of support for creating data in
existing IDEs has led GUI designers to persist the GUI as generated
source code. Feder persists the GUI structure as it is, without the
need to convert it to source code and back again.
By providing solutions to these existing issues in development tools,
I hope Sieben Geisslein helps to improve developer productivity and removes some
tedious and error prone tasks.
The basic functionality is working, current development focus lies on
the IDE (for features see the Roadmap).
Since Sieben Geisslein is in alpha stage, it is currently probably only of interest to developers.
Don't expect it to be stable. Database file format and API will still change
in future releases.
Download
The newest version of Sieben Geisslein can be downloaded
here.
Documentation
Introduction - What is Sieben Geisslein and were is it going.
Developers
Architecture
(pdf) - Describes the
architecture of Sieben Geisslein
JavaDoc - API Documentation
Users
Feder
(pdf)- Development in Feder
FAQ - Frequently Asked Questions
Known problems - Things that need to be fixed
Roadmap - What will change in the next
releases?
Users (outdated)
Userguide
(pdf)- Introduction to using
Sieben Geisslein
Building
Sieben Geisslein requires jdk 1.6.
Invoking ant in the Sieben Geisslein directory will build the source.
"ant test" will run the unit tests.
After running "ant dist" you will find some examples in the distribution directory.
Contributing
If you would like to contribute please contact me . There is
still much work to do ;)
Niklas
Hosted by: