Desain Berbasis Domain – Pemrograman DDD

Waktu baca 5 menit
Desain Berbasis Domain – Pemrograman DDD
Gambar: Dragoscondrea | Dreamstime
Membagikan

Seiring kemajuan teknologi informasi dan perangkat lunak baru dikembangkan, perusahaan mencari lebih banyak cara untuk secara relatif cepat membuat aplikasi dan sistem aman yang mencakup semua kondisi dan mudah untuk diuji dan dikembangkan. Melalui trial and error, pendekatan telah dibuat yang dilihat oleh banyak organisasi sebagai cara ideal untuk membangun perangkat lunak.

Ini tentang Desain Berbasis Domain. Apa sebenarnya pendekatan pengembangan perangkat lunak ini di perusahaan?

Desain Berbasis Domain (nama disingkat DDD) – apa pendekatan ini?

Pada awalnya, ada baiknya mendefinisikan apa sebenarnya pendekatan DDD itu. Ini adalah cara membangun aplikasi dan sistem yang pada dasarnya harus mencerminkan kebutuhan bisnis – asumsi bisnis yang sekaligus menjadi prasyarat yang disertakan dalam perangkat lunak.

Desain Berbasis Domain adalah teknik pengembangan perangkat lunak yang digunakan dalam sistem informasi bisnis terbesar.

Apa input yang mendukung metode DDD? Pertama-tama, desain perangkat lunak apa pun harus didasarkan pada kerja sama yang setara antara pemrogram dan orang-orang yang terkait langsung dengan bisnis, yang pada saat yang sama merupakan konsumen sasaran dari solusi tersebut. Syarat kedua untuk membuat sistem menggunakan metode DDD adalah perancangan logika proyek dalam bentuk domain.

Domain Driven Design
Gambar: Juthamat Yamuangmorn | Dreamstime

Apa itu domain? Singkatnya, ini adalah area bisnis tertentu yang perlu diterapkan. Area yang perlu ditingkatkan dengan perangkat lunak yang baru dibuat atau dikembangkan. Bergantung pada pentingnya dan esensi dari konsep dan fungsionalitas tertentu, kami dapat membagi domain menjadi:

  • Domain utama, yang merupakan bagian terpenting dari sistem dan bertanggung jawab atas fungsionalitas terpenting.
  • Domain dukungan, yang merupakan ekstensi dari domain utama – tanpanya, domain dukungan tidak ada artinya.
  • Domain umum, yang penting tetapi fitur opsional.

Terdiri dari apa DDD?

Proses pembuatan perangkat lunak baru berdasarkan prinsip-prinsip Desain Berbasis Domain agak berbeda dari pendekatan tradisional untuk pengembangan perangkat lunak, yang mencakup sejumlah masalah teknis yang berkaitan dengan pemrosesan mekanik, input dan output data, komunikasi dengan server, database dan integrasi dengan alat lain, yang digunakan oleh organisasi.

Desain UX – Desain Pengalaman Pengguna
Desain UX – Desain Pengalaman Pengguna
Waktu baca 4 menit
Ratmir Belov
Journalist-writer

Pemrograman DDD sebagian besar terdiri dari model domain (domain root, sub dan umum) yang berisi implementasi yang sangat mendasar dari parameter bisnis yang harus disertakan dalam perangkat lunak. Sangat penting bahwa programmer yang bertanggung jawab untuk mengembangkan kode benar-benar memahami tujuan pembuatan perangkat lunak baru dan memahami nilai yang dibawa oleh domain. DDD tidak dapat melakukannya tanpa mendefinisikan bahasa yang memungkinkan pakar domain dan pemrogram untuk dengan mudah memahami bahasa itu. Untuk pendekatan ini, bahasa ini disebut bahasa Ubiquitous.

Kesulitan apa yang dapat muncul saat menggunakan pendekatan Desain Berbasis Domain?

Apa masalah terbesar dengan menggunakan metode DDD? Pertama-tama, ini adalah komunikasi antara bisnis dan sisi teknis. Sebagai aturan umum, harus selalu ada ruang dalam pendekatan DDD untuk pakar domain yang memiliki pengetahuan mendalam tentang pendekatan tersebut dan akan bertindak sebagai “kompiler” dalam komunikasi bisnis dan TI dengan hak mereka sendiri.

Domain Driven Design
Gambar: Seventyfourimages | Dreamstime

Karena persentase proyek yang dibuat menggunakan metode DDD relatif kecil, sangat sulit untuk menemukan orang yang dapat mengambil peran seperti itu dengan dedikasi penuh. Kurangnya pengalaman programmer dalam membuat menggunakan metodologi DDD juga dapat menyebabkan kesulitan tambahan.

Keuntungan dan kerugian dari pendekatan DDD

Mari kita mulai dengan manfaat menggunakan pendekatan Desain Berbasis Domain saat membuat perangkat lunak baru. Pertama-tama, ini adalah solusi hebat untuk proyek kompleks di mana jumlah fitur, tujuan implementasi, dan tingkat yang berbeda begitu besar sehingga sulit untuk menangkapnya secara konseptual dalam desain aplikasi tradisional. Pendekatan DDD memenuhi kebutuhan nyata bisnis – tidak ada ruang untuk setengah-setengah – jika domain diinterpretasikan dengan benar oleh programmer, itu akan diimplementasikan sepenuhnya sesuai dengan kebutuhan pengguna akhir. Perlu juga dicatat biaya pengembangan aplikasi yang relatif rendah, yang dibuat sesuai dengan pendekatan DDD sejak awal.

Infografis – seni menyajikan informasi
Infografis – seni menyajikan informasi
Waktu baca 6 menit
Ratmir Belov
Journalist-writer

Apa kerugian menggunakan teknik ini? Kerugian utama adalah sedikit latihan dalam menggunakan cara ini untuk mengembangkan perangkat lunak baru. Karena itu, awal penggunaan strategi baru, dari sudut pandang tim proyek, membawa risiko kesalahpahaman konsep dan, sebagai akibatnya, kegagalan.

Biaya produksi awal untuk merancang dan membangun aplikasi menggunakan metodologi DDD lebih tinggi, yang tentunya berdampak pada kecilnya persentase proyek yang diimplementasikan dengan cara ini.

Bagaimana cara menggunakan DDD di proyek saya sendiri?

Agar DDD praktis dalam proyek kita, kita harus benar-benar memulai dari awal. Tidak mungkin mengadopsi sebagian konsep Desain Berbasis Domain di mana model lainnya akan dirancang dengan cara tradisional. Dalam hal ini, kepuasan terhadap produk akhir akan rendah baik dari tim TI maupun dari pengguna akhir.

Sangat penting untuk menemukan pakar domain sebelum mulai bekerja yang mengetahui secara spesifik bisnis, kebutuhannya, dan dapat menerjemahkannya ke dalam instruksi yang jelas untuk pengembang. Pilihan teknologi pengembangan aplikasi dalam hal bekerja dengan DDD benar-benar memudar ke latar belakang.
Peringkat artikel
0,0
0 Penilaian
Nilai artikel ini
Ratmir Belov
Silakan tulis pendapat Anda tentang topik ini:
avatar
  Pemberitahuan komentar  
Beritahu tentang
Ratmir Belov
Baca artikel saya yang lain:
Isi Menilai itu Komentar
Membagikan

Anda mungkin juga menyukai

Desain UX – Desain Pengalaman Pengguna
Waktu baca 4 menit
Ratmir Belov
Journalist-writer
ERP – perencanaan sumber daya perusahaan
Waktu baca 6 menit
Svetlana Gatsakova
Svetlana Gatsakova
Director of Corporate Information Systems Department

Pilihan Editor

Berapa lama panel surya bertahan – ulasan para ahli
Waktu baca 6 menit
5.0
(1)
Nikolay Babinov
Renewable Energy Expert
Apa itu asisten virtual – apa fungsi utamanya dan di bidang apa ia digunakan?
Waktu baca 5 menit
5.0
(1)
Roman Mikhailov
Expert in the implementation of AI technologies