Bagikan melalui


Mengkustomisasi proses XML yang Dihosting

Azure DevOps

Layanan 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 Layanan Azure DevOps dengan menggunakan Team Foundation Server Database Import Service.

Untuk mempelajari 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 Services. Beberapa 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

Kecerdikan

Kategori

Konfigurasi Proses

Area dan Perulangan

Manajemen Pengujian

Item Pekerjaan

Kueri Item Kerja

Build

Manajemen Lab

Kontrol Versi

Pemetaan Proyek Microsoft

Laporan

Portal (Produk SharePoint)

Plug-in dan objek proses yang didukung untuk impor proses

Ada perbedaan antara apa yang didukung Azure DevOps Services dan apa yang didukung Oleh Team Foundation Server lokal. Untuk ringkasan perbedaan ini, lihat Perbedaan kustomisasi templat proses.

Cara menyesuaikan proses

Saat Anda menyesuaikan proses, memulai dengan proses yang terdefinisi dengan baik lebih mudah daripada membangun yang baru.

Jika Anda memperbarui proses yang sudah ada yang telah Anda gunakan dengan Team Foundation Server lokal, pastikan proses tersebut sesuai dengan batasan yang ditempatkan pada templat untuk diimpor.

Buka Proses Pengaturan>

Anda membuat, mengelola, dan membuat kustomisasi untuk diproses dari Proses pengaturan>Organisasi.

  1. Pilih logo Azure DevOps untuk membuka Proyek. Lalu pilih Pengaturan organisasi.

    Buka pengaturan Organisasi

  2. Kemudian, pilih Proses.

    Pengaturan Organisasi, halaman Proses

    Penting

    Jika Anda tidak melihat Proses, maka Anda bekerja dari TFS-2018 atau versi yang lebih lama. Halaman Proses tidak didukung. Anda harus menggunakan fitur yang didukung untuk model proses XML lokal.

Mengekspor dan mengimpor proses

  1. Dari tab Proses , pilih elipsis (...) untuk membuka menu pintasan untuk proses XML yang dihosting yang ingin Anda ekspor. Anda hanya dapat mengekspor proses XML yang dihosting.

    Opsi menu proses Proses halaman > Ekspor XML yang Dihosting

    Simpan file zip dan ekstrak semua file darinya.

  2. 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 utama dan minor. Berikan GUID yang berbeda untuk jenis seperti dalam contoh ini:

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

  3. Terapkan kustomisasi yang didukung.

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

  5. Impor file zip dari proses kustom Anda.

Penyesuaian yang didukung

Anda dapat menerapkan kustomisasi berikut ke proses Anda:

Bagian berikut mencantumkan batasan yang diberlakukan sistem.

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.

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 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 tambahan.
  • 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
  • Dibatasi hingga lima backlog portofolio
  • Hanya berisi satu backlog portofolio yang tidak dipisahkan
  • Menentukan hanya satu backlog portofolio induk untuk setiap backlog portofolio bawahan
  • Berisi pemetaan status-ke-metastate alur kerja yang diperlukan dan tidak mereferensikan 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 ProcessConfiguration.xml

Jenis item pekerjaan

Elemen WITD 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 512 bidang dalam satu bidang WIT dan 512 di semua WIT.
  • Nama yang mudah diingat dan atribut refname yang diperlukan yang ditetapkan ke WIT unik dalam kumpulan file definisi WIT.
  • Nilai atribut refname yang diperlukan tidak berisi karakter yang tidak diizinkan atau menggunakan Sistem namespace yang tidak diizinkan.Nama dan Microsoft.Nama.
  • Nama referensi berisi setidaknya satu titik (.), dan semua karakter lainnya adalah huruf tanpa spasi.
  • Elemen WITD berisi elemen FORM yang menentukan elemen WebLayout yang sesuai dengan sintaks yang ditentukan dalam elemen WebLayout dan Control.

Bidang item kerja

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

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

Elemen FIELD dan elemen turunannya dapat berisi elemen GLOBALLIST.

Batasi pembatasan

  • Elemen FIELDS dibatasi hingga 512 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 elemen LISTITEM .
  • Bidang dibatasi hingga 1.024 aturan.

Bidang yang wajib diisi

Bidang berikut ditentukan dalam file ProcessConfiguration.xml:

  • Untuk semua WIT dalam kategori yang menentukan backlog konfigurasi proses, tentukan bidang yang digunakan untuk atribut dan nilai type=Team dan type=Order.
  • Untuk semua WIT dalam kategori yang menentukan backlog reguler atau backlog portofolio, tentukan bidang yang digunakan untuk type=Effort.
  • Untuk semua WIT dalam kategori yang menentukan elemen TaskBacklog , tentukan:
    • Bidang yang digunakan untuk type=RemainingWork.
    • Bidang yang digunakan untuk type=Activity.
    • Aturan ALLOWEDVALUES untuk bidang yang digunakan untuk type=Activity.

Pembatasan aturan

Selain pembatasan aturan bidang standar, pembatasan berikut diberlakukan:

  • Elemen aturan bidang tidak dapat menentukan untuk dan bukan atribut.
  • Elemen FIELD tidak dapat berisi elemen aturan turunan CANNOTLOSEVALUE, NOTSAMEAS, MATCH, dan PROHIBITEDVALUES.
  • Kecuali untuk bidang berikut, definisi FIELD untuk Sistem.Bidang nama tidak boleh berisi aturan bidang.
    • System.Title dapat berisi aturan YANG DIPERLUKAN dan DEFAULT.
    • System.Description dapat berisi aturan YANG DIPERLUKAN dan DEFAULT.
    • System.AssignedTo dapat berisi aturan REQUIRED, DEFAULT, ALLOWEXISTINGVALUE, dan VALIDUSER.
    • System.ChangedBy dapat berisi aturan REQUIRED, DEFAULT, ALLOWEXISTINGVALUE, dan VALIDUSER.

Nama dan atribut yang konsisten

Dalam proses atau koleksi proyek, nama, jenis, dan atribut lain yang ditentukan 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:

  • Ditetapkan Ke (System.AssignedTo)
  • Diotorisasi Sebagai (System.AuthorizedAs)
  • Diubah oleh (System.ChangedBy)
  • Dibuat oleh (System.CreatedBy)
  • Diaktifkan Oleh (Microsoft.VSTS.Common.ActivatedBy)
  • Ditutup oleh (Microsoft.VSTS.Common.ClosedBy)
  • Diselesaikan Oleh (Microsoft.VSTS.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 salah satu aturan berikut dalam 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 diperbarui proses.

Contoh yang salah

Contoh berikut tidak valid karena menentukan:

  • Sebuah ALLOWEDVALUES elemen.
  • DEFAULT Elemen yang menentukan string value="Not Assigned"nonidentitas .
    <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

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

  • Membatasi setiap STATUS WIT hingga 16 alur kerja
  • Menentukan semua status alur kerja yang dipetakan ke metastate dalam file definisi ProcessConfiguration
  • Menentukan transisi antara semua status alur kerja yang dipetakan ke kategori status "Diusulkan" dan status alur kerja yang dipetakan ke kategori status "InProgress"
  • 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 total di antara semua daftar global yang ditentukan di semua WIT.

Tata letak formulir

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

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