Konfigurasi dan Pengaturan Planning Poker

Konfigurasi dan Pengaturan Planning Poker

Dalam aplikasi Planning Poker, terdapat beberapa konfigurasi dan pengaturan yang dapat diatur untuk memungkinkan penggunaan aplikasi secara efektif. Berikut adalah beberapa contoh konfigurasi dan pengaturan tersebut:

UseServerSide

Konfigurasi UseServerSide memiliki opsi berikut:

  • Always: Blazor berjalan pada sisi server dan HTML disinkronisasi dengan browser menggunakan SignalR.
  • Never: Blazor berjalan dalam WebAssembly di client.
  • Mobile: Blazor berjalan pada sisi server untuk perangkat mobile dan di client lainnya. Pembukaan Blazor dapat lambat pada perangkat mobile, sehingga opsi ini mengembalikan ke sisi server untuk mulai lebih cepat.

RepositoryFolder

Konfigurasi RepositoryFolder memiliki nilai default kosong. Path to folder, di mana data disimpan antara aplikasi restart. Path relatif terhadap folder aplikasi. Ketika konfigurasi ini kosong, tidak ada data yang disimpan dan semua hilang pada aplikasi restart.

RepositoryTeamExpiration

Konfigurasi RepositoryTeamExpiration memiliki nilai default 1200. Tim akan dihapus setelah waktu yang ditentukan dengan tidak ada kegiatan user.

ClientInactivityTimeout

Konfigurasi ClientInactivityTimeout memiliki nilai default 900. Pengguna akan terputus dari tim setelah waktu yang ditentukan dengan tidak ada koneksi dari pengguna.

ClientInactivityCheckInterval

Konfigurasi ClientInactivityCheckInterval memiliki nilai default 60. Interval waktu untuk menjalankan pekerjaan periodic yang memutuskan pengguna tidak aktif.

WaitForMessageTimeout

Konfigurasi WaitForMessageTimeout memiliki nilai default 60. Masing-masing client mengajukan secara teratur status updates. Ketika tidak ada perubahan dalam waktu tertentu, client menerima tanggapan bahwa tidak ada perubahan dan meminta update lagi. Dengan demikian, client memberitahukan agar koneksi tetap hidup.

ServiceBusConnectionString

Konfigurasi ServiceBusConnectionString memiliki nilai default kosong. String koneksi untuk Azure Service Bus yang digunakan untuk sinkronisasi data antara server di web-farm. Contoh: Endpoint=myEndpoint;SharedSecretIssuer=mySecret;SharedSecretValue=myPassword;

ServiceBusTopic

Konfigurasi ServiceBusTopic memiliki nilai default PlanningPoker. Node menggunakan topik Service Bus yang ditentukan untuk komunikasi.

InitializationTimeout

Konfigurasi InitializationTimeout memiliki nilai default 60. Waktu setelah fase inisialisasi dibatalkan dan server menganggap bahwa itu sendiri. Timeout ini tidak seharusnya tercapai, karena waktu inisialisasi lebih pendek.

InitializationMessageTimeout

Konfigurasi InitializationMessageTimeout memiliki nilai default 5. Timeout untuk menunggu pesan dari node lain selama fase inisialisasi. Ketika timeout tercapai, server menghubungi node lain atau menganggap bahwa itu sendiri di web-farm.

SubscriptionMaintenanceInterval

Konfigurasi SubscriptionMaintenanceInterval memiliki nilai default 300. Interval waktu untuk melakukan pengecekan periodic yang memastikan node-node dalam web-farm masih responsif.

SubscriptionInactivityTimeout

Konfigurasi SubscriptionInactivityTimeout memiliki nilai default 300. Subskripsi Service Bus akan dihapus untuk node-node yang tidak respond dalam waktu yang ditentukan.

Buat dan Test

Untuk membuat dan menjalankan aplikasi, dapat dilakukan dengan menjalankan skrip PowerShell BuildAndRun.ps1.

Penggunaan Selenium (optional)

Dapat juga dilakukan pengujian end-to-end menggunakan Selenium dengan menambahkan parameter -E2ETest:$true pada skrip PowerShell BuildAndRun.ps1.

Run di Visual Studio

Proyek PlanningPoker.sln dapat dibuka, dibuat, dan di-debugkan dalam Visual Studio 2022. Selain itu, dapat juga dilakukan pengujian unit dengan menambahkan proyek Testing.

Proyek-proyek

Solusi PlanningPoker berisi beberapa proyek:

  • PlanningPoker.Domain: Mengandung kelas domain aplikasi.
  • PlanningPoker: Menjelaskan host objek-objek domain, JSON web service dan file-system repository.
  • PlanningPoker.Service: Mengimplementasikan DTOs yang digunakan antara server dan client.
  • PlanningPoker.Web: Merupakan host aplikasi. Membuat ASP.NET Core hosting, dependency injection dan memuat konfigurasi.
  • PlanningPoker.Client: Merupakan Blazor SPA client. Mengandung kelas-kelas untuk berkomunikasi dengan server.
  • PlanningPoker.Testing: Proyek pengujian unit dan end-to-end.

Lisensi

Aplikasi Planning Poker diizinkan oleh lisensi CC BY-NC-SA 4.0.

Kesimpulan

Dalam artikel ini, kita telah membahas beberapa konfigurasi dan pengaturan yang dapat digunakan dalam aplikasi Planning Poker. Dengan memahami konfigurasi-konfigurasi tersebut, Anda dapat meningkatkan kinerja aplikasi dan membuatnya lebih efektif.