Bagikan melalui


Mengkustomisasi proses XML yang Dihosting

Layanan Azure DevOps

Azure DevOps mendukung penambahan dan pembaruan proses melalui pengalaman administratif yang merupakan proses impor berbasis web. Setelah menambahkan proses, Anda dapat membuat satu atau beberapa proyek darinya. Anda dapat memperbarui proses kapan saja dengan mengimpornya lagi. Perubahan yang dilakukan pada templat proses kemudian diterapkan ke semua proyek yang menggunakan proses.

Penting

Dengan model proses XML yang dihosting, Anda menyesuaikan pelacakan kerja dengan memperbarui file definisi XML tertentu dari templat proses. Fitur ini hanya tersedia saat data dimigrasikan ke Azure DevOps Services dengan menggunakan Alat Migrasi Data Azure DevOps. Jika Anda menggunakan model proses Warisan, Anda dapat menyesuaikan pelacakan kerja Anda melalui antarmuka pengguna dengan membuat proses Warisan. Jika Anda menggunakan model proses XML lokal, Anda bisa mengkustomisasi templat proses, lihat Mengunggah atau mengunduh templat proses dan Menyesuaikan templat proses

Untuk informasi selengkapnya tentang kustomisasi dan model proses, lihat Menyesuaikan pelacakan kerja.

Proses adalah file zip yang berisi sekumpulan file yang saling bergantung. File-file ini menentukan blok penyusun sistem pelacakan item kerja dan subsistem lainnya di Azure DevOps. Sebagian blok penyusun memperbarui proyek yang ada, sementara yang lain hanya berlaku untuk proyek baru. Lihat tabel berikut untuk daftar lengkap blok penyusun:

Digunakan saat mengimpor/memperbarui proses Digunakan saat membuat proyek baru Digantikan oleh default sistem Diabaikan
Pelacakan Item Kerja Area dan Perulangan Bangun Pemetaan Proyek Microsoft
Jenis item kerja (WIT) Manajemen Pengujian Manajemen Lab Laporan
Kategori Tugas Kerja Pengendalian Versi Portal (Produk SharePoint)
Konfigurasi Proses Kueri Item Kerja

Prasyarat

Untuk panduan tentang menyesuaikan Azure Boards agar selaras dengan persyaratan bisnis spesifik Anda, lihat Tentang mengonfigurasi dan menyesuaikan Azure Boards.

Kategori Persyaratan
Izin - Untuk membuat, menghapus, atau mengedit proses: Anggota grup Administrator Koleksi Proyek atau izin tingkat koleksi tertentu Buat proses, Hapus proses, Edit proses, atau Hapus bidang dari organisasi yang diatur ke Izinkan. Untuk informasi selengkapnya, lihat Mengatur izin dan akses untuk pelacakan kerja, Menyesuaikan proses yang diwariskan.
- Untuk memperbarui papan: Administrator Tim atau anggota kelompok Administrator Proyek.
Akses - Bahkan jika Anda memiliki Dasar atau akses yang lebih rendah, Anda masih dapat mengubah proses jika seseorang memberi Anda izin untuk melakukannya.
- Untuk memperbarui dan mengganti jenis item pekerjaan yang ada, Anda harus menjadi anggota proyek.
Model proses proyek - Gunakan model proses pewarisan untuk koleksi proyek yang berisi proyek.
- Jika memigrasikan data ke Layanan Azure DevOps, gunakan Team Foundation Server Database Import Service.
Pengetahuan Keakraban dengan kustomisasi dan model proses.

Mengkustomisasi proses

Menyesuaikan proses lebih efisien ketika Anda memulai dengan proses yang terdefinisi dengan baik daripada membuatnya dari awal.

Jika Anda memperbarui proses yang sudah ada yang sebelumnya digunakan dengan Azure DevOps Server, pastikan proses tersebut mematuhi batasan yang diperlukan untuk impor templat untuk menghindari kesalahan validasi selama proses impor.

Ekspor dan impor sebuah proses

Lakukan langkah-langkah berikut untuk mengimpor atau mengekspor proses:

  1. Masuk ke organisasi Anda (https://dev.azure.com/{Your_Organization}).

  2. Pilih Pengaturan organisasi.

    Cuplikan layar memperlihatkan tombol Pengaturan organisasi yang disorot.

  3. Pilih Proses.

    Cuplikan layar memperlihatkan pengaturan Organisasi, halaman Proses.

    Penting

    Jika Anda tidak melihat Proses, maka Anda bekerja dari versi sebelumnya di mana halaman Proses tidak didukung. Gunakan fitur yang didukung untuk model proses XML lokal.

  4. Pilih elipsis (...) untuk membuka menu pintasan untuk proses XML yang Dihosting yang ingin Anda ekspor. Anda hanya dapat mengekspor proses XML yang dihosting.

    Proses halaman > Opsi menu Proses Ekspor XML yang Dihosting

    Simpan file zip dan ekstrak semua file darinya.

  5. Ganti nama proses dalam file ProcessTemplate.xml yang terletak di direktori akar.

    Beri nama proses untuk membedakannya dari yang sudah ada.

    <name>MyCompany Agile Process </name>

    Ubah jenis versi, dan ubah angka mayor dan minor. Berikan GUID yang berbeda untuk jenis seperti dalam contoh ini:

    <version type="F50EFC58-C2FC-4C66-9814-E395D90778A3" major="1" minor="1"/>

  6. Terapkan kustomisasi yang didukung.

  7. Buat file zip semua file dan folder di direktori akar.

  8. Impor file zip dari proses kustom Anda.

Penyesuaian yang didukung

Anda dapat menerapkan kustomisasi berikut ke proses Anda:

Perbedaan

Azure DevOps Services dan Azure DevOps Server menggunakan model yang berbeda untuk berkaitan dengan proyek dan proses:

  • Di Azure DevOps Server, templat proses berfungsi sebagai titik awal untuk proyek, dan kustomisasi dicakup ke proyek individual.
  • Di Azure DevOps Services, proses dapat digunakan bersama di beberapa proyek dan berfungsi sebagai ruang lingkup untuk penyesuaian.

Struktur dan sintaks untuk menentukan templat proses sebagian besar konsisten, dengan hanya perbedaan kecil antara templat yang dirancang untuk Azure DevOps Services dan Azure DevOps Server.

Nota

Migrasi dari XML yang Dihosting ke model yang diwariskan hanya didukung di Azure DevOps Services, bukan di Azure DevOps Server.

Batasan

Anda dapat mengimpor hingga 32 proses ke Azure DevOps Services. Proses kustom Anda harus sesuai dengan semua aturan ringkasan berikut. Jika tidak, pesan kesalahan validasi mungkin muncul saat impor.

Kustomisasi yang tidak didukung dan file plug-in yang tidak direferensikan

Referensi apa pun ke objek berikut dalam salah satu file definisi XML mengakibatkan kesalahan validasi saat mengimpor:

  • Kontrol kustom pada formulir item kerja
  • Jenis tautan kustom
  • Alur kerja global
  • Dukungan lapangan tim
  • Untuk dan Bukan aturan
  • Dukungan aturan pencocokan

Plug-in berikut dan file terkaitnya tidak digunakan dalam menentukan proses, atau digunakan untuk memperbarui proyek yang ada: Namun, mereka digunakan untuk membuat objek atau artefak saat Anda membuat proyek baru.

  • Klasifikasi
  • Kueri item kerja, yang ditentukan menggunakan sintaks Bahasa Kueri Item Kerja (WIQL)
  • Manajemen Pengujian
  • Tugas kerja

Nota

Panjang WIQL tidak boleh melebihi karakter 32-K. Sistem tidak mengizinkan Anda membuat atau menjalankan kueri yang melebihi panjang tersebut.

Plug-in berikut dan file terkait digantikan oleh default sistem:

  • Bangun
  • Grup dan Izin
  • Laboratorium
  • Pengendalian Versi

Plug-in berikut dan file terkait diabaikan:

  • Pemetaan Proyek Microsoft
  • Laporan
  • Layanan Windows SharePoint

Plug-in kustom tidak didukung.

Batas objek

Saat menyesuaikan templat proses untuk diimpor, batasi jumlah objek yang Anda tentukan seperti yang ditentukan dalam Batas objek pelacakan kerja.

Templat proses

File ProcessTemplate.xml Anda harus sesuai dengan sintaks dan aturan yang dijelaskan dalam referensi elemen XML ProcessTemplate. Selain itu, itu harus memenuhi kondisi berikut:

  • Membatasi jumlah WIT yang ditentukan hingga 64
  • Hanya berisi satu file definisi Categories.xml
  • Hanya berisi satu file definisi ProcessConfiguration.xml
  • Menggunakan nama ramah unik di semua bidang dan definisi WIT

Selain itu, proses Anda harus melewati pemeriksaan validasi berikut:

  • Nama proses unik dan berisi paling banyak 155 karakter Unicode.
    • Templat dengan nama dan GUID versi yang sama dengan proses yang ada akan menimpa proses tersebut.
    • Templat dengan nama yang sama tetapi GUID versi yang berbeda menghasilkan kesalahan.
    • Nama proses tidak boleh berisi karakter khusus berikut: . , ; ' ` : / \ * | ? " & % $ ! + = ( ) [ ] { } < >.
      Lihat Pembatasan penamaan untuk batasan lainnya.
  • Folder proses tidak berisi file .exe. Bahkan jika Anda dapat mengimpor proses yang berisi file .exe, pembuatan proyek gagal.
  • Ukuran total proses paling banyak 2 GB. Jika tidak, pembuatan proyek gagal.

Konfigurasi proses

File definisi ProcessConfiguration.xml harus sesuai dengan sintaks dan aturan yang dijelaskan dalam referensi elemen XML ProcessConfiguration. Selain itu, itu harus memenuhi kondisi berikut:

  • Menentukan semua elemen TypeFields
  • Terbatas pada lima backlog portofolio
  • Hanya berisi satu backlog portofolio yang tidak memiliki induk
  • Menentukan hanya satu backlog portofolio induk untuk setiap backlog portofolio bawahan
  • Berisi pemetaan status-ke-metastate alur kerja yang diperlukan dan tidak mengacu pada metastate yang tidak didukung

Kategori

File definisi Categories.xml harus sesuai dengan sintaks dan aturan yang dijelaskan dalam referensi elemen Xml Kategori. Selain itu, itu harus memenuhi kondisi berikut:

  • Dibatasi hingga 32 kategori
  • Menentukan semua kategori yang dirujuk dalam file definisi ProcessConfiguration.xml

Jenis item pekerjaan

WITD Elemen dan elemen turunannya harus sesuai dengan sintaks dan aturan yang dijelaskan dalam referensi elemen XML WITD. Selain itu, itu harus memenuhi kondisi berikut:

  • Paling banyak ada 1.024 field dalam satu WIT dan 1.024 field di semua WIT.
  • Nama ramah dan atribut yang diperlukan refname yang ditetapkan ke sebuah WIT adalah unik di dalam kumpulan file definisi WIT.
  • Nilai atribut yang diperlukan refname tidak berisi karakter atau menggunakan namespace System.Name dan Microsoft.Name yang tidak diizinkan.
  • Nama referensi berisi setidaknya satu titik (.), dan semua karakter lainnya adalah huruf tanpa spasi.
  • Elemen WITD mengandung elemen FORM yang mendefinisikan elemen WebLayout yang sesuai dengan sintaks yang ditentukan dalam elemen WebLayout dan Control.

Bidang item kerja

FIELDS Elemen dan elemen turunannya harus sesuai dengan sintaks dan aturan yang dijelaskan dalam referensi elemen FIELD XML. Selain itu, itu harus memenuhi kondisi berikut:

  • Nama ramah dan atribut yang diperlukan refname yang ditetapkan ke sebuah WIT adalah unik di dalam kumpulan file definisi WIT.
  • Nilai atribut yang diperlukan refname tidak berisi karakter atau menggunakan namespace System.Name dan Microsoft.Name yang tidak diizinkan.
  • Nama referensi berisi setidaknya satu titik (.), dan semua karakter lainnya adalah huruf tanpa spasi.

Elemen FIELD dan elemen anak-anaknya dapat berisi elemen GLOBALLIST.

Pembatasan terbatas

  • Elemen FIELDS dibatasi hingga 1.024 bidang.
  • Jenis item kerja dibatasi hingga 64 bidang nama orang. Bidang nama orang adalah bidang dengan atribut dan nilai syncnamechanges=true.
  • Elemen ALLOWEDVALUES atau SUGGESTEDVALUES dibatasi hingga 512 LISTITEM elemen.
  • Bidang dibatasi hingga 1.024 aturan.

Bidang yang wajib diisi

Kategori Bidang yang akan ditentukan
Tumpukan tugas konfigurasi proses Bidang yang digunakan untuk atribut dan nilai type=Team dan type=Order
Backlog reguler atau backlog portofolio Bidang yang digunakan untuk type=Effort
TaskBacklog - Bidang yang dipakai untuk type=RemainingWork
- Bidang ini juga dipakai dalam aturan type=Activity
- ALLOWEDVALUES untuk bidang yang digunakan type=Activity

Pembatasan aturan

Pembatasan Detail lebih lanjut
Elemen aturan bidang tidak dapat menetapkan atribut untuk dan bukan. Atribut ini tidak diizinkan dalam elemen aturan bidang.
FIELD elemen tidak dapat berisi elemen aturan turunan CANNOTLOSEVALUE, NOTSAMEAS, MATCH, dan PROHIBITEDVALUES. Elemen aturan turunan ini tidak didukung dalam elemen FIELD.
FIELD definisi untuk System.Name bidang tidak boleh berisi aturan bidang, kecuali untuk bidang tertentu. Hanya bidang tertentu yang dapat berisi aturan tertentu, seperti yang diuraikan dalam artikel ini.
System.Title Dapat berisi aturan REQUIRED dan DEFAULT.
System.Description Dapat berisi aturan REQUIRED dan DEFAULT.
System.AssignedTo Dapat berisi aturan REQUIRED, , DEFAULTALLOWEXISTINGVALUE, dan VALIDUSER.
System.ChangedBy Dapat berisi aturan REQUIRED, , DEFAULTALLOWEXISTINGVALUE, dan VALIDUSER.

Nama dan atribut yang konsisten

Dalam sebuah proses atau koleksi proyek, name, type, dan atribut lain yang ditentukan oleh elemen FIELD harus sama di semua definisi WIT.

Bidang identitas

Bidang identitas sesuai dengan bidang yang digunakan untuk berisi nama akun, pengguna, atau grup. Bidang sistem inti berikut dikodekan secara permanen sebagai bidang identitas:

Nama Bidang Nama Referensi
Ditetapkan Ke System.AssignedTo
Diotorisasi Sebagai System.AuthorizedAs
Diubah Oleh System.ChangedBy
Dibuat Oleh System.CreatedBy
Diaktifkan Oleh Microsoft.AzureDevOps.Common.ActivatedBy
Ditutup Oleh Microsoft.AzureDevOps.Common.ClosedBy
Diselesaikan oleh Microsoft.AzureDevOps.Common.ResolvedBy
Menambahkan bidang identitas kustom

Bidang string dikenali sebagai bidang identitas saat Anda menentukan atribut syncnamechanges sebagai True.

Pembatasan aturan pada bidang identitas

Untuk rilis impor proses saat ini, jangan tentukan satu pun dari aturan berikut pada definisi FIELD.

  • SUGGESTEDVALUES
  • Aturan yang berisi nilai nonidentitas.
Contoh yang benar

Untuk membatasi nama akun yang valid dalam bidang identitas, tentukan VALIDUSER elemen dengan atribut nama grup.

    <FIELD name="Project Manager" refname="Fabrikam.ProgramManager" type="String" reportable="dimension" syncnamechanges="true">
        <ALLOWEXISTINGVALUE />
        <VALIDUSER group="[PROJECT]\Program Manager Group" />
        <HELPTEXT>The program manager responsible for signing off on the user story.</HELPTEXT>
    </FIELD>

Sebelum mengimpor proses, pastikan Anda telah membuat grup dalam proyek yang akan diperbarui oleh proses tersebut.

Contoh yang salah

Contoh berikut tidak valid karena menentukan:

  • Sebuah ALLOWEDVALUES elemen.
  • Elemen DEFAULT yang menentukan string nonidentitas value="Not Assigned".
    <FIELD name="Project Manager" refname="Fabrikam.ProgramManager" type="String" reportable="dimension" syncnamechanges="true">
        <ALLOWEXISTINGVALUE />
        <ALLOWEDVALUES>
          <LISTITEM value="[PROJECT]\Program Manager Group" />
          <LISTITEM value="Not Assigned" />
        </ALLOWEDVALUES>
        <DEFAULT from="value" value="Not Assigned" />
        <VALIDUSER />
        <HELPTEXT>The program manager responsible for signing off on the user story.</HELPTEXT>
    </FIELD>

Alur kerja

WORKFLOW Elemen dan elemen turunannya harus sesuai dengan sintaks dan aturan yang dijelaskan dalam referensi elemen WORKFLOW XML. Selain itu, itu harus memenuhi kondisi berikut:

  • Membatasi setiap WIT hingga 16 status alur kerja
  • Menentukan semua status alur kerja yang dipetakan ke metastate dalam file definisi ProcessConfiguration.xml
  • Menentukan transisi antara semua status alur kerja yang dipetakan ke kategori "Diusulkan" dan yang dipetakan ke dalam kategori "Sedang Berlangsung".
  • Menentukan transisi antara semua status alur kerja yang dipetakan ke kategori status "InProgress" dan status alur kerja yang dipetakan ke kategori status "Selesai"

Untuk deskripsi kategori dan pemetaan status, lihat Status alur kerja dan kategori status.

Daftar global

Untuk model proses XML yang dihosting, batas berikut ditempatkan pada impor daftar global:

  • Paling banyak ada 64 daftar global
  • Paling banyak ada 1.024 item per daftar
  • Sekitar 10.000 item dapat ditentukan secara keseluruhan di antara semua daftar global yang ditetapkan di semua WIT

Tata letak formulir

FORM Elemen dan elemen turunannya harus sesuai dengan sintaks dan aturan yang dijelaskan dalam referensi elemen FORM XML.

Elemen Control tidak dapat menentukan kontrol kustom. Kontrol kustom tidak didukung.