Hi Stan,
thank you very much for your reply.
It seems that my question was to general, sorry for that.
The whole system will be a web-based application using Struts and Hibernate. There are components for data loading, perisisting the data, viewing the data and something like a workflow component that should be as independent as possible from the other components (thanks for pointing me to the enterprise level patterns).
This is my first approach to apply the GoF patterns and the idea is to look initially to this workflow component. One of several problems here is that this component has to execute different software tools in a variable order. The nature of these tools is considerably variable. Either they are command line tools (written in Perl, C++, C or something else), or it could be a database that has to be queried. In the future new tools will appear whose nature is not yet known, but it should be also possible to integrate them into the system. Therefore it is necessary to mask this variable nature somehow to the system. Is it possible to use for such problem the adapter or the facade?
Until now I tried to find my way through the pattern jungle with the GoF book. But honestly I feel a little bit lost with that, specially when I want to decide which pattern to apply at which level in my system. Just recently I discovered the Head First design pattern book which looks at the first glance really great to me and seems to be the perfect approach to give me the needed understanding. But I've just started to go through.
At the same time I wanted already to gather some ideas for my system with the hope to work more goal-oriented on that field.
With best regards,
Birgit