DBA owns the database - he's a janitor and takes care about the database. Nurses it, cures when it is ill, performs regular backups etc. After setting it up, DBA gives the database into designer's and developer's hands, gives each of them required privileges (but not always all that they would probably want to have).
Designer designs an application from scratch - there's an empty schema which should be populated with Oracle objects - tables, views, stored procedures, database triggers, packages, ... - designer's job is to combine all of them in order to enable applying business rules to the IT solution. He will have to carefully design primary keys, enforce referential integrity, etc.
Developer may, but doesn't have to know business rules (of course, it would be better if he does). However, developer must know tools he uses - SQL, PL/SQL on the lower level, Forms and Reports Builders, Designer, maybe even one of the GUI tools (SQL Developer or TOAD, for example) which would help him develop all the designer designed and make it usable by an end user.
Hm, now it sounds as if it was a Cynicderella story.
Littlefoot, you forgot the bit about the Designer being responsible for not listening to the end-user, the Developer being responsible for not developing what the Designer asked for (not that the end-user wanted it anyway), and the DBA being responsible for not allowing the end-user to access what he didn't want in the first place
90% of users' problems can be resolved by punching them - the other 10% by switching off their PCs.