Per prima cosa, come libro di testo ti consiglio di scaricare "mattone dopo mattone" è disponibile free in rete, se sei alle prime armi è molto utile in quanto ti spiega tutti i meccanismi base (e non) di java.

Secondo, per creare progetti java io uso jBuilder, ti consente di creare grafica senza dover implementare manualmente il codice e ovviamente di creare classi ecc...

Per quanto riguarda la progettazione è buona norma prima di tutto prendere carta e penna e vedere quello che veramente si vuole dal progetto, ad esempio se devi gestire un servizio di trasporti devi pensare a che tipo di trasporti trattare(merci, passeggeri o tutti e due), se tenere conto o meno delle capacità dei mezzi, progettare i vari tragitti possibili ecc...

Dovrai anche pensare a come strutturare la progettazione delle classi; se devi considerare la capienza del mezzo dovrai crearti una classe "capienza" che implementerà vari metodi a seconda dei mezzi che hai a disposizione; se vuoi considerare i tragitti, creerai una classe "tragitti" e così via, insomma una classe o più per ogni situazione che dovrai gestire.

Dal mio punto di vista è sempre consigliabile separare la trattazione dati dalla grafica, cioè per la gestione dei mezzi avrai una schermata grafica in cui inserisci e visualizzi dati e prelevi dati, poi questi dati dovranno essere inviati alla classe associata per trattare i dati.

Sicuramente progettare così è un pò più dispendioso in termini di tempo, ma alla fine il tutto risulterà più ordinato e leggibile...

Sperando di esserti stato di aiuto ti auguro un buon lavoro