Organizzazione delle attività di programmazione

3

Io e il mio amico abbiamo deciso di creare un grande progetto di programmazione insieme. Prima di allora, non ho mai lavorato in coppia (ho avuto molti progetti per conto mio e al lavoro il capo ha definito il compito per me). Ma ora abbiamo un'idea di che tipo di app faremo, come programmarla ... ma come possiamo dividere la responsabilità per il codice nel progetto in modo che non facciamo il lavoro l'uno dell'altro ed è non così strettamente correlati che dobbiamo sovrapporre il codice degli altri?

Come divideresti i compiti, qual è il modo originale per farlo? Come divideresti i compiti nei moduli se rappresentano un'applicazione e sono strettamente correlati?

    
posta John 09.05.2013 - 14:08
fonte

3 risposte

8

Prima di tutto, hai bisogno di una sorta di controllo del codice sorgente. La mia azienda utilizza Team Foundation Server, ma ci sono alcuni software gratuiti là fuori (non so quale sia il migliore, quindi non posso raccomandare). Quindi, è necessario disporre di una sorta di elenco di attività condivise, in modo da poter tenere traccia di ciò che deve essere fatto e chi ha fatto cosa. Ci sono anche alcuni siti, ma non li ho provati. Detto questo, l'organizzazione dei moduli dipende interamente da te. Vorrei sottolineare che è davvero necessario pianificare il progetto, cioè scrivere una sorta di specifica tecnica o almeno avere storie di utenti. Se ci sono alcuni metodi comuni (ad esempio, convertire un DateTime in una stringa), devi sapere chi lo sta scrivendo e chi lo sta modificando ...

In realtà, non c'è una regola d'oro da applicare, specialmente se non stai implementando attraverso una metodologia (scrum, kanban). Basta applicare il buon senso.

    
risposta data 09.05.2013 - 14:24
fonte
3

Prima di tutto, usa un qualche tipo di strumento di gestione dei progetti o di tracciamento dei bug per le tue attività. (ad esempio Trello, Redmine ecc.). In questo modo puoi vedere le attività aperte e le attività su cui stai lavorando. Se decidi che devi aggiungere più persone al progetto, possono facilmente vedere tutte le attività.

Dividere le attività è la parte difficile. Ma un modo logico è quello di separare i compiti ad es. progettazione di interfaccia utente, programmazione lato client / server, database ecc. Così puoi lavorare su design / UI, mentre il tuo amico costruisce database e back-end; oppure puoi costruire alcune cose insieme e altri moduli separatamente. Puoi scegliere di costruire parte del sistema perché sai come farlo, oppure puoi scegliere di costruirlo perché è divertente e vuoi imparare qualcosa di nuovo.

Se quello è il tuo progetto personale hai tutta la libertà di fare quello che vuoi e come lo vuoi.

    
risposta data 09.05.2013 - 14:43
fonte
2

Nella mia esperienza, di solito non è più difficile fare una lista di tutto ciò che deve essere fatto, quindi ogni membro della squadra sceglie qualcosa dalla lista. Se entrambi ritenete che lo stesso compito debba essere svolto per primo, allora lavorate insieme o suddividetelo ulteriormente. Se si stima che un'attività richiede più di 20 ore, è probabilmente troppo grande, quindi scomporla.

Come hanno già detto altre risposte, hai bisogno del controllo del codice sorgente e di un posto centrale per mantenere il tuo elenco di attività. Consiglierei di metterli entrambi in un posto. Servizi come Bitbucket o GitHub sono eccellenti per questo genere di cose.

    
risposta data 09.05.2013 - 16:39
fonte

Leggi altre domande sui tag