La nostra organizzazione utilizza IBM ClearCase per gestire i suoi controlli di versioning (nel bene o nel male). Abbiamo lavorato alla nostra applicazione per diversi anni e un gran numero di attività hanno iniziato ad accumularsi come "dipendenze" per il nostro lavoro di costruzione esistente.
La mia comprensione dalla lettura del PDF su Dipendenze da IBM è che queste dipendenze sono una parte "naturale" del mantenimento degli artefatti lasciati dalle vecchie attività. Per citare il PDF:
In actuality, dependencies are created on purpose to avoid the possible destruction of data.
Sebbene ciò sembri ragionevole, in alcuni casi la distruzione dei dati è esattamente ciò che vogliamo: un'attività di cambiamento è diventata obsoleta e non vogliamo che sia inclusa nella build - o per lo meno , non vogliamo che sia incluso quando cambierà funzionalmente l'oggetto di classe che stiamo cercando di aggiornare.
Questa letteratura suggerisce anche che l'attività potrebbe includere una dipendenza se due attività includono una modifica nello stesso elemento, nonostante anche che afferma che l'erogazione finale dell'attività deve essere basata sulla versione più recente in precedenza nella stessa pagina.
La mia domanda allora è - dovrei essere preoccupato se un'attività ha un gran numero di attività di dipendenza, che quelle attività potrebbero introdurre cambiamenti che abbiamo volutamente evitato o sovrascritto le modifiche che non sono desiderate per questa applicazione? O è sicuro includere attività di dipendenza, perché il risultato finale sarà una versione della classe basata sulla modifica più recente a quella classe?