Apa itu "Domain Masalah"

12

Saya harus mendokumentasikan program saya untuk proyek sekolah dan kami memiliki bagian yang disebut "domain masalah" tetapi saya tidak tahu apa yang harus dibahas di bagian ini.

Jadi pertanyaannya adalah: Apa yang harus didiskusikan dalam domain masalah?

Samantha Catania
sumber
2
Masalah domain = Topik / tema / subjek program
Ivan Crojach Karačić
Mengingat cara Anda merumuskan pertanyaan Anda, jawaban @ pertanyaan yang disediakan cukup banyak menutupnya. Jika Anda menginginkan saran yang lebih spesifik, Anda perlu memberikan beberapa perincian tentang program Anda.
Mike Nakis
Karena jika Anda tidak dapat memberi tahu kami tentang program Anda, Anda tidak tahu domain masalahnya.
JeffO

Jawaban:

24

Saya menulis perangkat lunak tertanam untuk peralatan telekomunikasi. Domain masalah saya adalah protokol ethernet, suara, dan video. Dengan kata lain, semua hal yang tidak ada hubungannya dengan bahasa saya pemrograman, tetapi saya masih harus mengerti untuk menulis perangkat lunak. Jika Anda membuat situs web untuk menjual layanan fotografi, domain masalahnya adalah fotografi dan e-niaga. Jika Anda menulis firmware untuk pesawat militer, domain masalahnya adalah senjata, sensor, dan sistem kontrol. Dapatkan fotonya?

Karl Bielefeldt
sumber
6
Tepat sekali. Dan dalam bisnis perangkat lunak komersial, orang-orang yang mengetahui domain masalah sering disebut sebagai Subjek Ahli (UKM), daripada programmer, karena nilai dan peran mereka dalam organisasi berbeda dari (dan seringkali lebih tinggi dari) programmer.
Ross Patterson
@ Karl Bielefeldt, terima kasih. Anda adalah penyelamat hari ini.
William Francis Gomes
10

Dari artikel Wikipedia di domain masalah :

Sebuah domain masalah adalah bidang keahlian atau aplikasi yang perlu diperiksa untuk memecahkan masalah. Domain masalah hanya melihat hanya topik yang Anda minati, dan mengecualikan yang lainnya.

Ini adalah area di mana masalah aplikasi Anda dimaksudkan untuk dipecahkan, milik.

quentin-starin
sumber
@Murph, suntingan selama 5 menit pertama dari sebuah posting tidak direkam secara eksplisit.
Péter Török
Bisakah Anda memberikan contoh, tolong?
Samantha Catania
@ PéterTörök tidak pernah menjadi hari yang buruk (seluruhnya) ketika Anda mempelajari sesuatu yang baru (-:
Murph
1
@ SamanthaCatania, dalam kasus proyek yang sedang saya kerjakan, domain masalahnya adalah penyewaan mobil . Area sentral dalam hal ini adalah checkout kendaraan & checkin itu sendiri, tetapi terlepas dari ini, ada banyak subdomain lainnya, seperti: manajemen armada , manajemen pendapatan , tarif dll.
Péter Török
Perhatikan bahwa domain masalah bisa sangat spesifik, misalnya manajemen inventaris, seperti yang dilakukan oleh wilayah negara bagian New York perusahaan kami . Tapi mungkin tidak lebih spesifik dari ini; "domain" yang lebih kecil biasanya dianggap sebagai satu masalah.
Paul Brinkley
4

Tidak semua orang menulis kompiler, pelacak bug, kerangka kerja, atau paket perangkat lunak komputer langsung lainnya.

Beberapa orang menulis perangkat lunak untuk industri pasir dan kerikil. Beberapa orang menulis perangkat lunak untuk memantau menara refraksi kilang. Beberapa orang menulis perangkat lunak untuk mengontrol pembuatan tas belanjaan plastik. Beberapa orang menulis perangkat lunak untuk mengisi paket kecap.

Itu semua adalah domain bermasalah, di mana untuk menulis perangkat lunak yang baik, Anda perlu tahu sedikit tentang domain, misalnya beton siap pakai.

Apa namanya
sumber
1
Seorang penulis kompiler juga memiliki domain masalah, antara lain; Arsitektur CPU.
Kontrak Prof. Falken dilanggar
1

Ian K. Bray dalam bukunya An Introduction to Requirements Engineering (p9) mendefinisikan domain masalah sebagai berikut:

Itu bagian dari alam semesta di mana masalah itu ada .

Misalnya, dalam hal sistem kontrol lift, ini akan mencakup perangkat keras apa pun yang ada (lift, motor, tombol, indikator, sensor, dll.), Karakteristik bangunan (jumlah lantai dan poros angkat), pola antisipasi dari penggunaan, karakteristik pengguna, kebijakan penggunaan lift dari klien (mis. apakah pengguna harus berkecil dari menggunakan lift untuk perjalanan singkat?) dan sebagainya.

Dalam domain masalah kontrol lift, masalahnya, seperti yang dinyatakan di atas, adalah, 'sistem kontrol diperlukan yang akan membuat penggunaan lift yang lebih efisien di gedung ini'. Dalam praktiknya, kami biasanya memperbaiki masalah menjadi satu set seluruh sub-masalah, tetapi, untuk saat ini, hanya perlu dicatat bahwa untuk menyelesaikan masalah, jelas diperlukan sistem solusi untuk menghasilkan beberapa efek dalam domain masalah . Efek yang diinginkan inilah yang merupakan persyaratan.

Jadi, domain masalah dapat juga dianggap sebagai bagian dari dunia di mana sistem solusi baru (kadang-kadang disingkat SS) akan beroperasi dan akan menghasilkan efek yang diperlukan. Karena sistem solusi berbasis perangkat lunak sering disebut aplikasi, domain masalah dapat disebut domain aplikasi.

Jules Randolph
sumber
0

Saya melihatnya seperti ini:

Domain masalah: Alasan perangkat lunak perlu dibangun dan lingkungan serta industri tempat sistem yang dibangun perlu digunakan.

Andrew S
sumber