Il motivo per cui lo trovi così difficile è che hai un'idea, ma non hai un'idea completa di ciò che vuoi che faccia. Se stai facendo il tuo progetto e non hai un cliente che ti dica cosa vogliono, allora spetta a te essere il tuo cliente. Mettiti nei panni del cliente e inizia a costruire una lista dei desideri impossibile.
In altre parole, quando inizi Non progettare NULLA !!! .
Una volta che hai una grande lista di cose che vuoi che il sistema faccia, dai la priorità a tutto e decidi quale sarà la minima funzionalità per far funzionare un sistema base. Potrebbe trattarsi di una singola funzione di base o di uno schermo intero, ma deve essere qualcosa che senti, dal momento che il cliente sarà abbastanza utile da testare.
Quindi, lista dei desideri delle caratteristiche + priorità di base = Requisiti .
Una volta che hai tutto ciò, fai un disegno di altissimo livello. Basta sedersi e riflettere su ciò che il tuo sistema avrà bisogno per far funzionare le prime priorità. Cambia idea se lo desideri, ma qui è dove potresti voler aumentare il codice o una configurazione di sistema per saperne di più su ciò che è possibile. Vai solo abbastanza lontano per convalidare la tua idea di base di un design.
I .: ORA ottieni indulgere i tuoi designer .
Una volta terminato, inizi a implementare le tue funzionalità. Crea per ciascuna funzionalità una specifica funzionale di base. Questo potrebbe essere semplice come una raccolta di dichiarazioni di caratteristiche. Story card se ti piace. Ciò ti consente di sviluppare la tua idea nella tua mente un po 'e di creare una serie di affermazioni che diventeranno la specifica che testerai e svilupperai la tua implementazione.
Cry Havoc, lascia scivolare i cani di ... Codice !!
Da lì, implementa i tuoi test in modo che corrispondano alle tue specifiche, quindi per ogni test, scrivi il tuo codice. Costruisci, "rilascia", quindi ripeti con la funzione successiva finché non decidi che il progetto è abbastanza completo.
Si tratta davvero di esperienza, ma questo approccio che ho trovato è una semplice formula per aiutarti a focalizzare la tua mente su ciò che deve essere fatto, piuttosto che rimanere bloccato in un ciclo infinito di procrastinazione dovuto al tentativo di fare anche tu molto in una volta.