Confrontare Azure DevOps Services con Azure DevOps Server

Azure DevOps Services | Azure DevOps Server 2022 - Azure DevOps Server 2019

L'offerta cloud, Azure DevOps Services, offre un servizio ospitato scalabile, affidabile e disponibile a livello globale. Il team operativo 24/7 monitora l'offerta cloud, supportata da un contratto di servizio del 99,9% e disponibile nei data center locali in tutto il mondo.

L'offerta locale, Azure DevOps Server, è basata su un back-end di SQL Server. I clienti scelgono in genere la versione locale quando hanno bisogno dei dati per rimanere all'interno della rete. In alternativa, quando vogliono accedere a SQL Server Reporting Services che si integrano con i dati e gli strumenti di Azure DevOps Server.

Entrambe le offerte offrono le stesse funzionalità e servizi essenziali, ma Azure DevOps Services offre maggiori vantaggi:

  • Semplifica la gestione dei server
  • Fornisce l'accesso immediato alle funzionalità più recenti
  • Migliora la connettività con i siti remoti
  • Transizioni dalle spese in conto capitale (server e hardware) alle spese operative (sottoscrizioni)

Per decidere se il cloud o l'offerta locale soddisfano al meglio le proprie esigenze, prendere in considerazione le differenze principali seguenti.

Differenze principali tra Azure DevOps Services e Azure DevOps Server

Azure DevOps Services e Azure DevOps Server offrono funzionalità di base simili, ma l'elenco seguente mostra le differenze principali in aree di funzionalità specifiche:

  • Distribuzione: Azure DevOps Services: basato sul cloud, ospitato e gestito da Microsoft. Azure DevOps Server: soluzione locale, gestita dall'organizzazione.
  • Scalabilità: Azure DevOps Services: altamente scalabile, accessibile da qualsiasi posizione con una connessione Internet. Azure DevOps Server: la scalabilità è limitata all'infrastruttura dell'organizzazione e alla capacità del server.
  • Autenticazione: Azure DevOps Services: usa gli account Microsoft o l'ID Microsoft Entra. Azure DevOps Server: usa l'autenticazione di Windows e le credenziali di dominio di Active Directory (AD).
  • Controllo dei dati: Azure DevOps Services: i dati vengono archiviati in data center di Azure sicuri. Azure DevOps Server: le organizzazioni hanno il controllo completo sui dati e sull'infrastruttura.
  • Gestione utenti: Azure DevOps Services: supporta l'aggiunta di gruppi di Microsoft Entra ai gruppi di Azure DevOps Services. Azure DevOps Server: l'accesso viene concesso tramite l'aggiunta di gruppi di AD a vari gruppi di Azure DevOps.
  • Personalizzazione del processo: Azure DevOps Services: modello di processo di ereditarietà con opzioni di personalizzazione dell'interfaccia utente Web e dell'endpoint REST. Azure DevOps Server: offre modelli di processo XML locali e ereditarietà per la personalizzazione.
  • Analisi e creazione di report: Azure DevOps Services: fornisce dashboard, servizio analisi, integrazione di Power BI e supporto OData. Azure DevOps Server: offre dashboard, report SSRS e grafici leggeri configurabili.
  • Integrazione con SQL Server: Azure DevOps Services: non supporta l'integrazione con SQL Server Analysis Services per la creazione di report. Azure DevOps Server: supporta l'integrazione con SQL Server Analysis Services.

Queste differenze consentono di decidere la piattaforma più adatta alle esigenze dell'organizzazione. Se si usa Azure DevOps Server e si prende in considerazione il passaggio ad Azure DevOps Services, vedere la panoramica della migrazione.

Scalabilità

Man mano che l'azienda cresce, potrebbe essere necessario aumentare le prestazioni dell'istanza di Azure DevOps. Questa scalabilità può comportare l'aggiunta di più utenti, l'aumento della capacità di archiviazione o il miglioramento delle prestazioni per gestire carichi di lavoro più grandi. Potrebbe anche essere necessario integrare altri strumenti e servizi per supportare flussi di lavoro più complessi e garantire una collaborazione trasparente tra team di grandi dimensioni. Azure DevOps offre diverse opzioni e configurazioni che consentono di ridimensionare in modo efficiente, sia che si usi Azure DevOps Services nel cloud o in Azure DevOps Server in locale.

Servizi di Azure DevOps

Azure DevOps Services offre due opzioni per definire l'ambito e ridimensionare i dati: organizzazioni e progetti. Le organizzazioni in Azure DevOps Services ottengono i propri URL ,ad esempio https://dev.azure.com/fabrikamfiber, e hanno sempre una raccolta di progetti. Le organizzazioni possono avere molti progetti all'interno di una raccolta.

Creare organizzazioni in Azure DevOps Services ovunque si creino raccolte in Azure DevOps Server. Si considerino gli scenari seguenti:

  • Acquistare utenti per organizzazione: gli utenti a pagamento possono accedere solo all'organizzazione in cui viene effettuato il pagamento. Per gli utenti che necessitano dell'accesso a più organizzazioni, le sottoscrizioni di Visual Studio sono un'opzione interessante. I sottoscrittori di Visual Studio possono essere aggiunti a un numero qualsiasi di organizzazioni senza costi aggiuntivi. Verranno inoltre esplorati altri modi per fornire l'accesso a più organizzazioni raggruppate in una singola entità.
  • Amministrare le organizzazioni singolarmente: attualmente, è necessario amministrare le organizzazioni una alla volta, che può essere complessa se si dispone di molte organizzazioni.

Per altre informazioni, vedere Pianificare la struttura organizzativa in Azure DevOps.

Azure DevOps Server

Azure DevOps Server offre tre opzioni per definire l'ambito e ridimensionare i dati: distribuzioni, raccolte di progetti e progetti.

  • Distribuzioni: nel caso più semplice, le distribuzioni sono server. Tuttavia, possono essere più complessi, ad esempio:

    • Distribuzioni a due server in cui SQL si trova in un computer separato
    • Farm a disponibilità elevata con più server
  • Raccolte di progetti: funge da contenitori per i limiti di sicurezza, amministrazione e database fisico. Vengono usati anche per raggruppare i progetti correlati.

  • Progetti: incapsulare gli asset di singoli progetti software, tra cui codice sorgente, elementi di lavoro e altro ancora.

Per altre informazioni, vedere Pianificare la struttura organizzativa in Azure DevOps.

Autenticazione

Quando si confronta Azure DevOps Services e Azure DevOps Server, è importante comprendere le differenze nella gestione dell'autenticazione per ogni piattaforma.

Servizi di Azure DevOps

Con Azure DevOps Services, ci si connette tramite la rete Internet pubblica , ad esempio https://contoso.visualstudio.com. È possibile eseguire l'autenticazione usando le credenziali dell'account Microsoft o microsoft Entra ID , a seconda della configurazione dell'organizzazione. Microsoft Entra ID consente anche di abilitare funzionalità come l'autenticazione a più fattori, le restrizioni degli indirizzi IP e altro ancora.

È consigliabile configurare le organizzazioni per usare Microsoft Entra anziché gli account Microsoft. Questo approccio offre un'esperienza migliore in molti scenari e offre più opzioni per la sicurezza avanzata.

Per altre informazioni, vedere Informazioni sull'accesso ad Azure DevOps Services con Microsoft Entra ID.

Azure DevOps Server

Con Azure DevOps Server, ci si connette a un server Intranet , ad esempio https://tfs.corp.contoso.com:8080/tfs. Eseguire l'autenticazione usando l'autenticazione di Windows e le credenziali di dominio di Active Directory (AD). Questo processo è facile e non viene mai visualizzata un'esperienza di accesso.

Controllo dati

Molte entità cercano informazioni sulla protezione dei dati quando si prende in considerazione lo spostamento nel cloud. Ci impegniamo a mantenere sicuri e sicuri i progetti di Azure DevOps Services. Abbiamo funzionalità tecniche e processi aziendali per rispettare questo impegno. È anche possibile adottare misure per proteggere i dati. Per altre informazioni, vedere Panoramica sulla protezione dei dati.

Gestione utente

Quando si gestiscono utenti e gruppi in Azure DevOps Services e Azure DevOps Server, sono disponibili metodi e strumenti distinti per ogni piattaforma per garantire l'accesso e l'organizzazione appropriati.

Servizi di Azure DevOps

In Azure DevOps Services è possibile fornire l'accesso a gruppi di utenti aggiungendo gruppi di Microsoft Entra ai gruppi di Azure DevOps Services. Se si usano account Microsoft invece di Microsoft Entra ID, è necessario aggiungere utenti singolarmente.

È anche necessario assegnare un livello di accesso a ogni utente dell'organizzazione. Azure DevOps Services convalida i sottoscrittori di Visual Studio durante l'accesso. È possibile assegnare gratuitamente l'accesso Basic a cinque utenti senza sottoscrizioni di Visual Studio.

Per concedere l'accesso basic o superiore a più utenti, configurare la fatturazione e pagare per più utenti. In caso contrario, tutti gli altri utenti ricevono l'accesso agli stakeholder.

I gruppi di Microsoft Entra forniscono l'accesso a gruppi di utenti, con livelli di accesso assegnati automaticamente al primo accesso. Per le organizzazioni che usano gli account Microsoft per l'accesso, è necessario assegnare in modo esplicito i livelli di accesso a ogni utente.

Azure DevOps Server

In Azure DevOps Server si concede agli utenti l'accesso alle distribuzioni aggiungendo gruppi di Active Directory (AD) a vari gruppi di Azure DevOps, ad esempio il gruppo Collaboratori per un singolo progetto. Le appartenenze ai gruppi di Active Directory rimangono sincronizzate, in modo che gli utenti vengano aggiunti o rimossi in AD, ottengano o perdono automaticamente l'accesso ad Azure DevOps Server.

Tutto l'uso è sul sistema d'onore. Per impostare i livelli di accesso per gli utenti in base alle licenze, specificare i livelli di accesso nella pagina di amministrazione. Ad esempio, assegnare solo l'accesso degli stakeholder agli utenti senza licenza.

Gli utenti con una licenza CAL (Client Access License) di Azure DevOps Server possono avere accesso Basic. I sottoscrittori di Visual Studio possono avere accesso basic o avanzato, a seconda delle sottoscrizioni. Azure DevOps Server non verifica queste licenze o applica la conformità.

Sia In Azure DevOps Services che in Azure DevOps Server l'accesso alle funzionalità viene gestito assegnando agli utenti un livello di accesso. Tutti gli utenti devono essere assegnati a un singolo livello di accesso. Sia nel cloud che nelle offerte locali, è possibile concedere l'accesso gratuito alle funzionalità degli elementi di lavoro a un numero illimitato di stakeholder. Inoltre, un numero illimitato di sottoscrittori di Visual Studio può avere accesso a tutte le funzionalità basic senza costi aggiuntivi. Si paga solo per altri utenti che necessitano dell'accesso.

Personalizzazione dei processi

È possibile personalizzare l'esperienza di rilevamento del lavoro in modi diversi, a seconda del modello di processo supportato:

Servizi di Azure DevOps

Azure DevOps Services usa il modello di processo di ereditarietà, che supporta la personalizzazione WYSIWYG (Cosa si ottiene). Questo modello consente di personalizzare facilmente tipi di elementi di lavoro, stati e campi direttamente tramite l'interfaccia utente senza dover modificare i file XML. È possibile creare e modificare processi in base al flusso di lavoro del team, assicurandosi che gli strumenti siano allineati ai requisiti specifici del progetto. Questa flessibilità semplifica la gestione e l'adattamento alle modifiche nel processo di sviluppo.

Azure DevOps Server

Con Azure DevOps Server è possibile scegliere tra il modello processo di ereditarietà e il modello di processo XML locale.

  • Modello di processo di ereditarietà: questo modello supporta la personalizzazione WYSIWYG (What You See Is What You Get), consentendo di personalizzare facilmente i tipi, gli stati e i campi degli elementi di lavoro direttamente tramite l'interfaccia utente. Questo approccio semplifica il processo di personalizzazione e garantisce che le modifiche vengano riflesse immediatamente nei progetti.

  • Modello di processo XML locale: questo modello supporta la personalizzazione tramite l'importazione o l'esportazione di file di definizione XML per oggetti di rilevamento del lavoro. Offre un modo potente e flessibile per definire e gestire i processi. Tuttavia, può causare diversi problemi, ad esempio:

    • I processi per i progetti esistenti non vengono aggiornati automaticamente, richiedendo l'intervento manuale per applicare le modifiche.
    • La complessità della gestione dei file XML può causare errori e incoerenze.
    • Potrebbe essere difficile gestire e risolvere i problemi relativi alle personalizzazioni, in particolare in ambienti di grandi dimensioni o complessi.

Per evitare problemi, i modelli di processo personalizzati e lo strumento di witadmin.exe sono sempre disabilitati. Questo approccio garantisce che tutti i progetti vengano aggiornati automaticamente con ogni aggiornamento di Azure DevOps Services. Il team del prodotto sta lavorando per semplificare e rendere più sostenibile la personalizzazione dei processi.

Con la funzionalità di personalizzazione del processo, è possibile apportare modifiche direttamente all'interno dell'interfaccia utente Web. Se si preferisce personalizzare i processi a livello di codice, è possibile usare gli endpoint REST. La personalizzazione dei progetti in questo modo garantisce che vengano aggiornate automaticamente quando vengono rilasciate nuove versioni dei processi di base con gli aggiornamenti di Azure DevOps Services.

Per altre informazioni, vedere Personalizzare l'esperienza di rilevamento del lavoro.

Analisi e report

Azure DevOps Services e Azure DevOps Server offrono vari strumenti per fornire informazioni dettagliate sullo stato di avanzamento e sulla qualità dei progetti software. Questi strumenti includono:

  • Dashboard e grafici leggeri: disponibili sia nelle piattaforme cloud che locali, questi strumenti sono facili da configurare e usare. I dashboard offrono una panoramica personalizzabile dello stato del progetto, mentre i grafici offrono rappresentazioni visive delle metriche e delle tendenze chiave.

  • Il servizio Analisi e i widget di Analisi: ottimizzati per l'accesso in lettura veloce e le aggregazioni basate su server, il servizio Analisi consente di ottenere informazioni più approfondite sui dati del progetto. I widget di analisi possono essere aggiunti ai dashboard per visualizzare dati e tendenze in tempo reale.

  • Integrazione di Microsoft Power BI: questa integrazione consente di inserire i dati di Analisi nei report di Power BI, combinando semplicità e potenza. Con Power BI è possibile creare report interattivi e visivamente accattivanti che offrono una visualizzazione completa delle prestazioni del progetto.

  • Supporto di OData: il supporto di OData consente di eseguire direttamente query sul servizio Analytics da un browser supportato e di usare i dati JSON restituiti in base alle esigenze. È possibile generare query che si estendono su più progetti o sull'intera organizzazione, offrendo flessibilità nel modo in cui si analizzano e usano i dati. Per altre informazioni sul servizio Analisi, vedere la roadmap per la creazione di report.

Questi strumenti offrono funzionalità solide per il monitoraggio, l'analisi e la creazione di report sullo stato di avanzamento e sulla qualità dei progetti software, consentendo di prendere decisioni informate e favorire il miglioramento continuo.