İş öğelerini bir ekipten diğerine taşıma

Azure DevOps Services | Azure DevOps Server | Azure DevOps Server 2022

Bir ekip eklediğinizde veya mevcut ekipleri yeniden düzenlediğinizde, alan yollarını güncelleştirerek iş öğelerini bir ekipten diğerine aktarmanız gerekir. Azure DevOps'deki her iş öğesi, ekip sahipliğini belirleyen ve iş öğelerinin iş listelerinde ve panolarda nasıl görüneceğini etkileyen bir Alan Yolu'na atanır.

Gereksinimler kategorisi altında sınıflandırılan iş öğeleri, ekip Alan Yolu'na atanmalarına bağlı olarak ekip birikim listesinde görünür. Benzer şekilde, bir ekibin Alan Yolu'na başka iş öğeleri atamak, ekip sahipliğini temel alan sorguları ve raporlamayı destekler.

Tavsiye

Bu makalenin devamında AI kullanarak bu göreve yardımcı olabilirsiniz veya başlamak için Azure DevOps MCP Server ile yapay zeka yardımı sağlama konusuna bakın.

İş öğelerini neden ekipler arasında taşımalı?

İş öğelerini taşımaya yönelik yaygın senaryolar şunlardır:

  • Ekip yeniden düzenlemesi: Kuruluşunuz ekipleri yeniden yapılandırdığında veya sorumlulukları yeniden dağıttığında
  • İş yükü dengeleme: Ekipler arasında kapasiteyi dengelemek için iş öğelerini yeniden dağıtma
  • Beceri uyumluluğu: Öğeleri uygun uzmanlıkla ekiplere taşıma
  • Özellik sahipliği aktarımı: Özellikler el değiştirdiğinde sahipliği aktarma
  • Proje birleştirme: Birden çok ekipten gelen çalışmaları tek bir ekipte birleştirme

Önkoşullar

Kategori Gereksinimler
İzinler - İş öğelerini görüntülemek, izlemek ve düzenlemek için: Bu düğümdeki iş öğelerini görüntüleme izinleri ve bu düğümdeki iş öğelerini düzenleme izinleri İzin Verolarak ayarlanmış. Varsayılan olarak Katkıda Bulunanlar grubu bu izinlere sahiptir. Daha fazla bilgi için bkz . İş izleme izinlerini ayarlama.
- İş öğelerine etiket eklemek için: Proje düzeyinde Yeni etiket tanımı oluştur izin İzin verolarak ayarlanır. Varsayılan olarak Katkıda Bulunanlar grubu bu izne sahiptir.
Erişim düzeyleri - Proje üyesi.
- İş öğelerine yeni etiketler eklemek veya çekme isteklerini görüntülemek veya izlemek için: En az Temel erişim.
- İş öğelerini görüntülemek veya izlemek için: En az Paydaş erişimi. Daha fazla bilgi için bkz . Erişim düzeyleri hakkında.
- Okuyucular grubundaki üyeler de dahil olmak üzere tüm proje üyeleri iş öğelerini içeren e-postalar gönderebilir.
Alan Yolu izinleri Alan Yolu düğümleri altındaki iş öğelerini görüntüleyin ve düzenleyin. Daha fazla bilgi için Bir bölge veya iterasyon yolu altındaki iş öğelerini değiştirme bölümüne bakın.
Yapılandırılmış alan yolları Hedef ekip Alan Yollarını doğru yapılandırdı. Aksi takdirde, iş öğelerini aktarmadan önce gerekli Alan Yollarını ayarlayın.
Tutarlı işlem modeli Ekibiniz, iş öğelerinin sorunsuz bir şekilde taşınması için uyumlu bir işlem modeli (Devralınan, Barındırılan XML veya Şirket İçi XML) kullanıyor.
Yedeklenen iş öğeleri Hata oluşması durumunda veri kaybını önlemek için toplu taşımalar gerçekleştirmeden önce iş öğelerini yedeklemenizi veya dışarı aktarmanızı öneririz.
Araçlar Azure CLI komutları kullanmak için: Azure DevOps CLI.
Kategori Gereksinimler
İzinler - İş öğelerini görüntülemek, izlemek ve düzenlemek için: Bu düğümdeki iş öğelerini görüntüleme izinleri ve bu düğümdeki iş öğelerini düzenleme izinleri İzin Verolarak ayarlanmış. Varsayılan olarak Katkıda Bulunanlar grubu bu izinlere sahiptir. Daha fazla bilgi için bkz . İş izleme izinlerini ayarlama.
- İş öğelerine etiket eklemek için: Proje düzeyinde Yeni etiket tanımı oluştur izin İzin verolarak ayarlanır. Varsayılan olarak Katkıda Bulunanlar grubu bu izne sahiptir.
Erişim düzeyleri - Proje üyesi.
- İş öğelerine yeni etiketler eklemek veya çekme isteklerini görüntülemek veya izlemek için: En az Temel erişim.
- İş öğelerini görüntülemek veya izlemek için: En az Paydaş erişimi. Daha fazla bilgi için bkz . Erişim düzeyleri hakkında.
- Okuyucular grubundaki üyeler de dahil olmak üzere tüm proje üyeleri iş öğelerini içeren e-postalar gönderebilir.
Alan Yolu izinleri iş öğelerini görüntüle ve iş öğelerini düzenle, Alan Yolu düğümleri altında. Daha fazla bilgi için Bir bölge veya iterasyon yolu altındaki iş öğelerini değiştirme bölümüne bakın.

Web portalını kullanarak iş öğelerini taşıma

Birden çok iş öğesini ekipler arasında taşımanın en verimli yolu, web portalında toplu düzenleme yapmaktır.

1. Adım: İş öğelerini tanımlamak için sorgu oluşturma

Yeni takıma taşımak istediğiniz tüm iş öğelerini bulmak için bir sorgu oluşturun:

  1. Boards>Queries>Yeni sorguya gidin
  2. İş öğelerini tanımlamak için sorgu ölçütlerini tanımlayın, örneğin:
    • Alan Yolu = Mevcut ekibin alan yolu
    • İş Öğesi Türü = Kullanıcı Hikayesi (veya diğer ilgili türler)
    • Durum = Etkin (veya diğer ilgili durumlar)
  3. Doğru iş öğelerini döndürdüğünden emin olmak için sorguyu çalıştırın
  4. Sorguyu daha sonra başvurmak üzere kaydetme

2. Adım: Alan Yolunu toplu düzenleme

İş öğelerini yeni takıma taşımak için:

  1. Yeniden atamak istediğiniz tüm iş öğelerinin sorgusunu oluşturun.

  2. Her takıma ait olan öğeleri birden çok kez seçin ve alan yolunu toplu olarak düzenleyin.

    Web portalı, Sorgular sayfası, Seçme iş öğelerini toplu değiştirme ekran görüntüsü.

  3. Toplu düzenleme iletişim kutusunda:

    • Alan açılan listesinden Alan Yolu'nu seçin
    • Hedef ekibin Alan Yolunu seçin
    • İsteğe bağlı olarak Atanan veya Yineleme Yolu gibi diğer alanları güncelleştirin
  4. Öğeleri toplu olarak değiştirdikten sonra toplu olarak kaydedin.

    Düzenlenen iş öğelerini toplu kaydetme ekran görüntüsü.

3. Adım: Taşımayı doğrulama

Kaydettikten sonra, iş öğelerinin artık hedef ekibin iş listesinde göründüğünü doğrulayın.

  1. Hedef takımın backloguna git
  2. Taşınan iş öğelerinin doğru yığılma listesinde göründüğünü onaylayın
  3. Alan Yolu alanının yeni ekip atamasını yansıttığını denetleyin

Azure CLI kullanarak iş öğesini taşıma

Tek bir iş öğesini Alan Yolunu güncelleyerek taşımak için az boards work-item update komutunu kullanabilirsiniz.

az boards work-item update --id
                           [--area]
                           [--assigned-to]
                           [--description]
                           [--discussion]
                           [--fields]
                           [--iteration]
                           [--open]
                           [--reason]
                           [--state]
                           [--title]

Parametreler

  • kimlik: Gerekli. Güncelleştirilecek iş öğesinin kimliği.
  • alan: İsteğe bağlı. Bir alanın mutlak yolu. Örnek: --area "\ProjectName\Area\AreaName".
  • atama yapılan kişi: İsteğe bağlı. İş öğesinin atay olduğu kişinin adı( örneğin, "Jamal").
  • description: İsteğe bağlı. İş öğesinin açıklaması.
  • tartışma: İsteğe bağlı. İş öğesindeki bir tartışmaya eklemek için açıklama.
  • fields: İsteğe bağlı. Ayarlamak istediğiniz özel alanlar için boşlukla ayrılmış "field=value" çiftleri.
  • yineleme: İsteğe bağlı. Yinelemenin mutlak yolu. Örnek: "\ProjectName\Iteration\IterationName".
  • open: İsteğe bağlı. İş öğesini varsayılan web tarayıcısında açın.
  • neden: İsteğe bağlı. İş öğesinin durumunun nedeni.
  • durum: İsteğe bağlı. İş öğesinin durumu; örneğin, "Etkin".
  • title: İsteğe bağlı. İş öğesinin başlığı.

Örnek

Azure DevOps CLI kullanarak aynı anda yalnızca bir iş öğesini taşıyabilirsiniz. Bu örnekte, ID=148 olan iş öğesini Fabrikam Fiber\Üretim Planlama alan yolunun altına taşırız.

az boards work-item update --id 148 --area "Fabrikam Fiber\Production Planning" --output yaml

Aşağıdaki YAML çıkışı, iş öğesi için tanımlanan alanların her biri hakkında bilgi sağlar.

fields:
  Microsoft.VSTS.Common.Priority: 2
  Microsoft.VSTS.Common.StackRank: 1500000001.0
  Microsoft.VSTS.Common.StateChangeDate: '2021-11-23T22:26:28.27Z'
  Microsoft.VSTS.Common.ValueArea: Business
  System.AreaPath: Fabrikam Fiber\Production Planning
  System.AssignedTo:
    _links:
      avatar:
        href: https://fabrikamprime.visualstudio.com/_apis/GraphProfile/MemberAvatars/aad.NDEwY2FkMDQtOWQyOS03NDFlLTk2MmEtNGZlYmU2NGE1NTM4
    descriptor: aad.NDEwY2FkMDQtOWQyOS03NDFlLTk2MmEtNGZlYmU2NGE1NTM4
    displayName: Jamal Hartnett
    id: d291b0c4-a05c-4ea6-8df1-4b41d5f39eff
    imageUrl: https://fabrikamprime.visualstudio.com/_apis/GraphProfile/MemberAvatars/aad.NDEwY2FkMDQtOWQyOS03NDFlLTk2MmEtNGZlYmU2NGE1NTM4
    uniqueName: fabrikamfiber4@hotmail.com
    url: https://spsprodeus27.vssps.visualstudio.com/A5d5b8da6-3db7-4829-baf9-1e500c21cc12/_apis/Identities/d291b0c4-a05c-4ea6-8df1-4b41d5f39eff
  System.BoardColumn: Backlog
  System.ChangedBy:
   _links:
      avatar:
        href: https://fabrikamprime.visualstudio.com/_apis/GraphProfile/MemberAvatars/aad.NDEwY2FkMDQtOWQyOS03NDFlLTk2MmEtNGZlYmU2NGE1NTM4
    descriptor: aad.NDEwY2FkMDQtOWQyOS03NDFlLTk2MmEtNGZlYmU2NGE1NTM4
    displayName: Jamal Hartnett
    id: d291b0c4-a05c-4ea6-8df1-4b41d5f39eff
    imageUrl: https://fabrikamprime.visualstudio.com/_apis/GraphProfile/MemberAvatars/aad.NDEwY2FkMDQtOWQyOS03NDFlLTk2MmEtNGZlYmU2NGE1NTM4
    uniqueName: fabrikamfiber4@hotmail.com
    url: https://spsprodeus27.vssps.visualstudio.com/A5d5b8da6-3db7-4829-baf9-1e500c21cc12/_apis/Identities/d291b0c4-a05c-4ea6-8df1-4b41d5f39eff
  System.ChangedDate: '2022-05-19T22:58:52.93Z'
  System.CommentCount: 0
  System.CreatedBy:
   _links:
      avatar:
        href: https://fabrikamprime.visualstudio.com/_apis/GraphProfile/MemberAvatars/aad.NDEwY2FkMDQtOWQyOS03NDFlLTk2MmEtNGZlYmU2NGE1NTM4
    descriptor: aad.NDEwY2FkMDQtOWQyOS03NDFlLTk2MmEtNGZlYmU2NGE1NTM4
    displayName: Jamal Hartnett
    id: d291b0c4-a05c-4ea6-8df1-4b41d5f39eff
    imageUrl: https://fabrikamprime.visualstudio.com/_apis/GraphProfile/MemberAvatars/aad.NDEwY2FkMDQtOWQyOS03NDFlLTk2MmEtNGZlYmU2NGE1NTM4
    uniqueName: fabrikamfiber4@hotmail.com
    url: https://spsprodeus27.vssps.visualstudio.com/A5d5b8da6-3db7-4829-baf9-1e500c21cc12/_apis/Identities/d291b0c4-a05c-4ea6-8df1-4b41d5f39eff
  System.CreatedDate: '2021-11-23T22:26:28.27Z'
  System.Description: <div>This user story is for documentation purposes.&nbsp; </div>
  System.IterationPath: Fabrikam Fiber\Release 2\Sprint 1
  System.Reason: New
  System.State: New
  System.TeamProject: Fabrikam Fiber
  System.Title: Test the Request feedback functionality
  System.WorkItemType: User Story
  WEF_10182DA5BCCD4CE2A43629FFBD290EF2_Kanban.Column: Backlog
id: 148
relations:
- attributes:
    isLocked: false
    name: Child
  rel: System.LinkTypes.Hierarchy-Forward
  url: https://fabrikamprime.visualstudio.com/854a3f67-9962-43d1-a968-2e5f2eb66c99/_apis/wit/workItems/152
- attributes:
    isLocked: false
    name: Child
  rel: System.LinkTypes.Hierarchy-Forward
  url: https://fabrikamprime.visualstudio.com/854a3f67-9962-43d1-a968-2e5f2eb66c99/_apis/wit/workItems/153
- attributes:
    isLocked: false
    name: Child
  rel: System.LinkTypes.Hierarchy-Forward
  url: https://fabrikamprime.visualstudio.com/854a3f67-9962-43d1-a968-2e5f2eb66c99/_apis/wit/workItems/151
- attributes:
    isLocked: false
    name: Child
  rel: System.LinkTypes.Hierarchy-Forward
  url: https://fabrikamprime.visualstudio.com/854a3f67-9962-43d1-a968-2e5f2eb66c99/_apis/wit/workItems/149
rev: 5
url: https://fabrikamprime.visualstudio.com/854a3f67-9962-43d1-a968-2e5f2eb66c99/_apis/wit/workItems/148

Azure CLI ile toplu işlemler

Azure CLI kullanarak birden çok iş öğesini taşımak için birden çok ayrı güncelleştirme betiği oluşturmanız gerekir. Aşağıda örnek bir PowerShell betiği deseni verilmiştir:

# Example: Move multiple work items to a new area path
$workItemIds = @(148, 149, 150, 151)
$newAreaPath = "Fabrikam Fiber\Production Planning"

foreach ($id in $workItemIds) {
    az boards work-item update --id $id --area $newAreaPath
    Write-Host "Moved work item $id to $newAreaPath"
}

İş öğelerini taşımaya yönelik en iyi yöntemler

İş öğelerini ekipler arasında taşırken şu yönergeleri göz önünde bulundurun:

Taşımayı planlama

  • İletişim: İş öğelerini taşımadan önce etkilenen ekip üyelerini bilgilendirin
  • Zamanlama: Kesintiyi en aza indirmek için sprint sınırları sırasında öğeleri taşıma
  • Bağımlılıklar: Taşımadan önce iş öğeleri arasındaki bağımlılıkları denetleyin
  • Kapasite: Hedef ekibin ek çalışma için kapasiteye sahip olduğundan emin olun

Taşıma sırasında

  • Toplu işleme: Bağlamı korumak için ilgili iş öğelerini birlikte taşıma
  • Geçmişi koru: Öğeleri taşıma, geçmişlerini ve ilişkilerini korur
  • Atamaları güncelleştirme: İş öğelerini hedef ekibin üyelerine yeniden atamayı göz önünde bulundurun
  • Yinelemeleri gözden geçirme: Ekipler farklı sprint zamanlamaları kullanıyorsa Yineleme Yollarını Güncelleştir

Taşımadan sonra

  • Görünürlüğü teyit etme: İş öğelerinin doğru ekip geri bildirim listelerinde göründüğünü onaylayın
  • Belgeleri güncelleştirme: Taşınan öğelere başvuran tüm ekip belgelerini güncelleştirin
  • Raporları gözden geçirme: Ekip raporlarının ve panolarının değişiklikleri yansıtıp yansıtmadığını denetleyin
  • İzleme: Ekip üyelerinin aktarılan çalışma hakkında bilgi edindiğinden emin olun

Sorun giderme ve doğrulama

İş öğelerini bir ekipten diğerine taşıdıktan sonra, iş öğelerini görmüyorsanız şu adımları izleyin:

Yaygın sorunlar ve çözümler

Sorun Çözüm
İş öğeleri iş listesinde görünmüyor Alan Yolunun ekibin yapılandırılan alan yollarıyla eşleştigini doğrulayın
Taşıma sırasında izin hataları Hem kaynak hem de hedef Alan Yolları için Düzenleme izinlerinizin olup olmadığını denetleyin
Sprint'ten eksik iş öğeleri Yineleme Yolunu hedef takımın sprint zamanlaması ile eşleşecek şekilde güncelleştirin
İş öğelerini gizleyen filtreler Backlog filtrelerini ve iş öğesi türü ayarlarını gözden geçirin

Doğrulama adımları

  • Yenile: Yeni eklenen iş öğeleri görünmüyorsa panoyu yenileyin veya Daha fazla öğe göster seçin.
  • Ekibi Doğrula: Öğelerin iş listesinde göründüğünden emin olmak için doğru ekibi seçtiğinizden emin olun ki.
  • Alan Yolunu Doğrula: Taşınan iş öğelerinin ekibin kapsamına karşılık gelen doğru Alan Yoluna atandığını doğrulayın. Her ekibin, hangi iş öğelerinin geri loglarında görüneceğini belirleyen belirli Alan Yolları vardır. Bu doğrulama, bekleyen işler listesindeki görünürlüğü sağlamak için çok önemlidir.
  • Yineleme Yolunu Doğrulama: Sprint için Yineleme Yolunu denetleyin. Sprint birikim listesi yalnızca seçili sprint'in Yineleme Yolu'na atanan iş öğelerini görüntüler.
  • İş öğesi türlerini ve filtrelerini doğrulama: Kapsam filtrelerinizi gözden geçirin ve iş öğesi türlerinin tüm ilgili öğeleri görüntülemek için doğru kategorilere sahip olduğundan emin olun.

Daha fazla bilgi için bkz Backlog oluşturma.

Büyük ölçekli taşımalar için dikkat edilmesi gerekenler

Birçok iş öğesini taşırken veya birden çok ekibi yeniden düzenlerken:

Planlama konuları

  • Etki değerlendirmesi: Hangi raporların, panoların ve sorguların etkileneceğini analiz etme
  • Değişiklik yönetimi: Etkilenen paydaşlar için iletişim planı geliştirme
  • Geri alma planı: Sorunlar ortaya çıktığında değişiklikleri tersine çevirmek için bir plan hazırlama
  • Test: Taşıma işlemini önce iş öğelerinin küçük bir alt kümesiyle test edin

Yürütme stratejileri

  • Aşamalı yaklaşım: İş öğelerini tek seferde değil, aşamalar halinde taşıma
  • Çalışma saatleri dışında yürütme: Düşük etkinlik dönemlerinde büyük taşımalar gerçekleştirme
  • İzleme: Toplu işlemler sırasında performans etkilerini izleyin
  • Doğrulama: Sonraki aşamaya geçmeden önce her aşamayı doğrulayın

Alternatif yaklaşımlar

İş öğeleri yerine ekipleri taşıma

Bazen tek tek iş öğelerini taşımak yerine ekip Alanı Yollarını yeniden yapılandırmak daha verimli olabilir:

  • Bir ekibin iş öğelerinin çoğunun taşınması gerektiğinde
  • Alan yollarını yeniden düzenlerken organizasyonel olarak daha mantıklı olur.
  • İş öğelerinin hacmi çok büyük olduğunda

Aşamalı geçişler için sorguları kullanma

İş öğelerini aşamalı olarak geçiş yapmak için sorgular oluşturun:

  • Önce yeni öğeleri taşımak için oluşturma tarihine göre filtrele
  • Tamamlanan öğeleri ayrı olarak taşımak için iş öğesi durumlarını kullanma
  • Sistematik geçişler için iş öğesi türüne göre gruplandırma

İş öğelerini ekipler arasında taşımak için yapay zekayı kullanma

Azure DevOps MCP Server yapılandırıyorsanız, alan yollarını el ile güncelleştirmek yerine doğal dil kullanarak iş öğelerini ekipler arasında taşıyabilirsiniz.

Görev Örnek komut
Öğeleri başka bir takıma taşıma Move all active user stories in area path <Contoso\\TeamAlpha> to <Contoso\\TeamBeta>
İş öğesi türüne göre yeniden atama Change the area path for all bugs assigned to <Jamal> from <Contoso\\Frontend> to <Contoso\\Backend>
Taşınacak öğeleri bulma List all work items in area path <Contoso\\OldTeam> grouped by work item type
Taşımadan sonra doğrulama Show all work items moved to area path <Contoso\\NewTeam> in the last 7 days
Taşımanın etkisini önizleme How many work items are currently under area path <Contoso\\TeamAlpha> and what are their states? I'm planning to move them to <Contoso\\TeamBeta>
Taşıma ve yeniden atama Move all active tasks under <Contoso\\Platform> to <Contoso\\Infrastructure> and reassign them from <Raisa> to <Christie>
Yeniden düzenleme sonrası sahipsiz öğeleri bul List work items whose area path doesn't match any active team's configured area paths in project <Contoso>
Sprint'e göre toplu taşıma Move all incomplete work items from Sprint 11 in area path <Contoso\\TeamAlpha> to area path <Contoso\\TeamBeta> and assign to Sprint 12
Takımlar arası taşımaları denetle Show all work items that changed area path in the last 30 days in project <Contoso>, grouped by source and destination team
Alt öğelerle birlikte taşıma Move feature #4500 and all its child user stories and tasks from <Contoso\\Frontend> to <Contoso\\FullStack>

Uyarı

Visual Studio Code kullanıyorsanız agent modu ekipler arasında toplu geçişler için özellikle faydalıdır.