.NET Web Service Best Practice per più sviluppatori

voti
1

Abbiamo un grande progetto ASP.NET composto da diverse centinaia di rapporti. Siamo nel processo di spostamento tutte le query SQL (in esecuzione in un database Oracle) in tre servizi web. I servizi web sono classificati per ordine, selezioni e query di report. Dobbiamo distribuire un sottoinsieme del nostro progetto con un back-end di SQL * Server per diverse località che sono disconnessi da Internet. Pertanto, avendo tutte le connessioni al database e le query nei servizi web rende l'applicazione gestibile e si può tirare il sub-set di report e non dover modificare il codice. Il progetto è sotto il controllo di origine utilizzando il software di Serena ChangeMan.

Il problema è che abbiamo diversi programmatori e tutti hanno bisogno di controllare i file dei servizi di Internet per lavorare sui loro oggetti. Abbiamo appena implementato ramificazione, ma sta diventando lentamente un incubo. Abbiamo consegne di produzione mensili e talvolta gli oggetti che dovrebbero andare nella compilazione mensile ottenere retto fino al mese prossimo. La fusione è diventata un processo manuale.

Ho condotta Internet Ricerche e sono sorpreso che non sono stato in grado di trovare le pagine bianche buoni “best practice” servizi web di architettura. Ci sono molte grandi aziende che devono hanno affrontato questi problemi.

Non più grandi gruppi di sviluppo usano ramificazione? Ho letto che Visual Studio Team System Database Edition potrebbe fornire codice standard che permetterà l'applicazione di connettersi a diversi database. Sarebbe acquisto Team System è il metodo migliore? O qualcuno sa dove posso trovare la documentazione che ci aiuteranno a risolvere questi problemi?

Grazie, Lorie

È pubblicato 09/12/2008 alle 19:20
fonte dall'utente
In altre lingue...                            


3 risposte

voti
2

Questo problema sembra essere del tutto indipendente dal scopo del software. Il problema qui è che avete un piccolo numero finito di file che più sviluppatori lavoreranno con su base giornaliera. Non ho esperienza con il software di Serena ChangeMan né TFS altri che giocare intorno con esso. Io ho esperienza con un paio di sistemi di controllo versione che utilizza un merge / commit modello CVS e Subversion . Questi sono entrambi eccellenti, liberi sistemi di controllo versione che sono ampiamente utilizzati.

Se si ha familiarità con l'unione / commit modello, l'idea è che nessun singolo sviluppatore può "cassa" e bloccare un file per le modifiche. Tutti possono scaricare e modificare qualsiasi file. Quando è il momento di commettere tali modifiche al database del codice sorgente, il software repository impedirà un commit se sono state apportate altre modifiche al file da un altro sviluppatore. La nuova versione viene scaricato, e nella maggior parte dei casi le modifiche vengono automaticamente fuse con le modifiche. Si ri-prova, quindi si impegnano quella versione. Questo modello è un grande successo e molto scalabile.

Detto tutto questo, anche l'unione / commit modello non può risolvere il dolore di avere un piccolo numero di file con un sacco di sviluppatori di apportare modifiche al file detto. Suggerirei dividere la funzionalità in più servizi web. Forse invece di tre, servizi web monolitici si potrebbe creare tre gruppi di servizi web correlati. Credo che questo, insieme con l'utilizzo di un sistema di controllo di versione con merge / commit risolverà i vostri problemi.

server CVS e Subversion funzionano su Windows, Mac e Linux. Ci sono un certo numero di clienti per ogni, disponibile su un certo numero di sistemi operativi. Questi includono i client stand-lungo, Studio plugin visivi, e plugin shell. Un altro vantaggio è che sia CVS e Subversion sono disponibili dalla riga di comando che rende lo scripting (si pensi di compilazione automatica) abbastanza facile.

Risposto il 09/12/2008 a 19:34
fonte dall'utente

voti
1

Perché non segmentare la logica in singoli file di classi che possono essere controllati da ogni sviluppatore?

Risposto il 09/12/2008 a 22:05
fonte dall'utente

voti
0

Usiamo SOA, ma usiamo anche SVN che è più orientato merging. Forse prendere in considerazione un sistema di controllo del codice sorgente di diverso?

Risposto il 09/12/2008 a 19:27
fonte dall'utente

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more