Saya pikir salah satu titik sakit terbesar dalam bekerja dengan layanan microsoft adalah memastikan bahwa API didokumentasikan dengan baik dan API tidak mengubah perilaku mereka tanpa mempengaruhi aplikasi hilir. Masalah ini menjadi bertambah ketika Anda memiliki banyak layanan yang saling bergantung satu sama lain. Mungkin pada saat itu Anda melakukan kesalahan layanan mikro, tetapi saya ngelantur.
Katakanlah kita telah mewarisi 20 layanan mikro yang dimiliki oleh tim yang berbeda dan tidak ada dokumentasi yang jelas tentang aplikasi mana yang menggunakan titik akhir API aplikasi lain. Apakah ada cara yang ditentukan untuk mendokumentasikan ini? Pada awalnya saya berpikir untuk menganalisis titik akhir setiap aplikasi dan menambahkannya ke tabel database, kemudian membuat hubungan FK antara setiap aplikasi dan rute aplikasi pada tabel banyak-ke-banyak (hampir semua ini adalah aplikasi rel). Tetapi saya tidak yakin apakah ini cara yang baik untuk menangani ini, atau apakah saya menciptakan kembali roda di sini.
Dalam retrospeksi, ini mungkin bukan cara yang tidak terlalu buruk untuk mendokumentasikan interaksi aplikasi jika Anda memulai dengan layanan Microsoft dari awal. Ini hanya akan menegakkan bahwa satu sumber kebenaran dipertahankan melalui penggunaan basis data dan setiap perubahan pada titik akhir akan dilakukan dalam aplikasi bersamaan dengan perubahan dalam basis data. Pikiran?
Saya pikir ide yang bagus adalah membuat diagram integrasi dan memasukkannya ke dalam repositori Anda. Pilih beberapa alat gratis (seperti draw.io) yang dapat mengekspor diagram dalam file XML atau JSON dan melakukan file ini di repositori Anda. Jika Anda menggunakan Github atau Gitlab, hasilkan gambar dari diagram ini dan sertakan dalam Wiki atau bahkan dalam file README.md, sehingga gambar akan terlihat setiap kali pengembang memvisualisasikan repositori dari browser.
Strategi yang sama dapat digunakan untuk database.
Tentang dokumentasi sumber daya API, Swagger adalah pilihan yang baik.
Ini masalah, pasti.
sumber