Solusi Penglihatan


Bantuan
Daftar
Login
Mulai Uji Coba Gratis

Cara Menulis Dokumen Persyaratan Sistem (SRS).

Cara Menulis Dokumen Persyaratan Sistem (SRS).

Daftar Isi

Dokumen Spesifikasi Kebutuhan Perangkat Lunak (SRS) adalah dokumen penting untuk pengembangan perangkat lunak yang memberikan deskripsi terperinci tentang kebutuhan dan persyaratan proyek tertentu. Ini menguraikan tujuan, ruang lingkup, informasi latar belakang, detail desain, rencana implementasi, dan kegiatan terkait lainnya. Dokumen SRS berfungsi sebagai kontrak antara pelanggan dan pengembang untuk memastikan bahwa kedua belah pihak memahami spesifikasi dan harapan dari produk yang dikembangkan. Selain itu, ini membantu mengurangi risiko dengan memastikan bahwa semua pemangku kepentingan memahami sepenuhnya apa yang diharapkan dari mereka selama setiap fase proyek. 

Dokumen SRS yang dibuat dengan baik harus lengkap, jelas, dan ringkas sehingga mudah dipahami baik oleh pengembang maupun pelanggan. Selain itu, memiliki SRS memastikan bahwa setiap perubahan atau pembaruan produk selama pengembangan dapat dengan mudah didokumentasikan dan dilacak. Ini membantu meminimalkan kebingungan dan memastikan bahwa produk akhir memenuhi semua persyaratan yang ditentukan dalam dokumen. Secara keseluruhan, SRS adalah alat penting untuk proyek pengembangan perangkat lunak yang sukses karena menyediakan kerangka kerja yang jelas untuk sukses. Dengan penggunaan yang tepat, ini dapat membantu tim mencapai hasil yang berkualitas dengan sedikit usaha.

Spesifikasi Kebutuhan Perangkat Lunak Vs Spesifikasi Kebutuhan Bisnis

Orang terkadang mencampuradukkan konsep perangkat lunak dan spesifikasi kebutuhan bisnis. Sebenarnya keduanya sangat berbeda.

Perbedaan utama antara spesifikasi kebutuhan perangkat lunak dan spesifikasi kebutuhan bisnis adalah bahwa yang pertama menangkap semua informasi yang terkait dengan perangkat lunak sedangkan yang kedua menangkap semua informasi yang terkait dengan bisnis.

S. No.
Spesifikasi Persyaratan Perangkat Lunak (SRS)
Spesifikasi Persyaratan Bisnis (BRS)
1.
Ini menentukan persyaratan fungsional dan non-fungsional yang ada dalam perangkat lunak.
Ini adalah dokumen formal yang menjelaskan berbagai persyaratan yang disediakan oleh klien/pemangku kepentingan.
2.
Itu berasal dari Spesifikasi Persyaratan Bisnis (BRS).
Hal ini berasal dari kebutuhan klien dan interaksi.
3.
Ini dibuat oleh analis sistem atau arsitek sistem atau analis bisnis.
Itu dibuat oleh seorang analis bisnis.
4.
Ini menjelaskan spesifikasi teknis dan fungsional perangkat lunak juga pada tingkat tinggi.
Ini menggambarkan spesifikasi fungsional perangkat lunak pada tingkat yang sangat tinggi.
5.
Ini berkaitan dengan sumber daya yang disediakan perusahaan.
Ini berkaitan dengan kebutuhan bisnis.
6.
Ini menjelaskan bagaimana fungsi bisnis saat menggunakan perangkat lunak atau aplikasi.
Ini mendefinisikan kebutuhan pelanggan. Dokumen ini digunakan dari awal hingga akhir proyek.
7.
Tabel dan kasus penggunaan disertakan.
Tabel dan kasus penggunaan tidak termasuk.

Komponen Penting SRS

Bagian utama dari spesifikasi kebutuhan perangkat lunak adalah:

  • Penggerak Bisnis – Alasan mengapa pelanggan ingin membangun sistem dijelaskan di bagian ini. Bagian ini lebih lanjut mencakup masalah yang dihadapi pelanggan dengan sistem saat ini dan peluang yang akan disediakan sistem baru.
  • Model Bisnis – Model bisnis yang didukung oleh sistem dibahas di bagian ini. Lebih lanjut mencakup berbagai detail lain seperti konteks organisasi dan bisnis, fungsi bisnis utama, dan diagram alur proses sistem.
  • Persyaratan Fungsional dan Sistem – Bagian ini biasanya merinci persyaratan yang diatur dalam struktur hierarkis. Persyaratan fungsional berada di tingkat atas dan persyaratan sistem terperinci terdaftar sebagai sub-item.
  • Kasus Penggunaan Sistem – Bagian ini terdiri dari diagram use case Unified Modeling Language (UML) yang menjelaskan semua entitas eksternal utama yang akan berinteraksi dengan sistem dan berbagai use case yang harus mereka lakukan.
  • Persyaratan Teknis – Bagian ini membahas semua persyaratan non-fungsional yang membentuk lingkungan teknis dan batasan teknis di mana perangkat lunak akan beroperasi.  
  • Kualitas Sistem – Pada bagian ini, berbagai kualitas sistem didefinisikan seperti keandalan, kemudahan servis, keamanan, skalabilitas, ketersediaan, dan perawatan.
  • Keterbatasan dan Asumsi – Semua batasan yang dikenakan pada desain sistem dari sudut pandang pelanggan dijelaskan di bagian ini. Berbagai asumsi oleh tim teknik tentang apa yang diharapkan selama pengembangan juga dibahas di sini.
  • Kriteria Penerimaan – Rincian tentang semua kondisi yang harus dipenuhi sebelum sistem diserahkan kepada pelanggan akhir dibahas di bagian ini.

Struktur SRS

1. Perkenalan -

Pendahuluan menjelaskan arti SRS secara umum, cakupannya untuk tim Anda, dan strukturnya.

1.1. Tujuan

Di sini, jelaskan tujuan dan struktur dokumentasi perangkat lunak SRS: jenis persyaratan yang akan ditangani, serta personel yang akan menggunakannya.

Buat bagian ini singkat: 1-2 paragraf sudah cukup.

1.2. Audiens yang dituju

Anda dapat membahas secara mendalam dan menjelaskan bagaimana pemangku kepentingan dan tim akan bekerja dengan SRS, serta berpartisipasi dalam pengembangannya. Ini biasanya pemilik produk, investor, analis bisnis, pengembang, terkadang penguji, dan staf operasi. Seluruh struktur ditentukan oleh pendekatan pengembangan perangkat lunak Anda dan pengaturan organisasi tim.

1.3. Penggunaan yang Dimaksudkan

Jelaskan dalam situasi apa tim Anda akan menggunakan SRS. Biasanya, ini digunakan dalam kasus berikut:

  • merancang dan bertukar pikiran tentang fitur-fitur baru
  • merencanakan durasi proyek, sprint, memperkirakan biaya
  • mengevaluasi risiko
  • memantau dan mengukur keberhasilan tim
  • situasi yang saling bertentangan ketika pihak-pihak yang terlibat memiliki visi yang berbeda dari produk yang dijalankan dengan baik.

1.4. Lingkup

Bagian ini mencakup ruang lingkup produk, jadi Anda harus memberikan gambaran singkat tentang sistem – tujuan, fungsi, dan posisinya yang utama. Ini sebanding dengan bagaimana Anda menjelaskan suatu produk pada pertemuan pemangku kepentingan kecuali bahwa itu diizinkan untuk mempelajari lebih dalam spesifikasi teknis.

Bagian ini harus menjelaskan:

  • Semua jenis pengguna diharapkan untuk terlibat dengan sistem
  • Semua bagian penting dari arsitektur

1.5 Definisi dan Akronim

Di seluruh dokumen Anda, tim sering menggunakan kata-kata tertentu. Menghilangkan potensi kesalahpahaman, memungkinkan pengembang baru untuk bergabung, dan menyelesaikan situasi yang saling bertentangan akan lebih mudah jika Anda menjernihkan arti kata-kata ini.

Komponen yang disebutkan di atas merupakan definisi. Definisi memberikan informasi tentang fungsi, teknologi yang mendasari, persona target, entitas bisnis (pengguna, klien, perantara), dan pemangku kepentingan. Anda dapat menggunakan akronim untuk menulis SRS Anda lebih cepat jika Anda memilih untuk melakukannya. Dokumen akan dapat dibaca selama tabel definisi menyertakannya.

2. Deskripsi Keseluruhan

Di bagian kedua, Anda menjelaskan fitur utama produk, pengguna target, dan cakupan sistem kepada pembaca. Deskripsi ini hanya berkonsentrasi pada fitur utama dan arsitektur perangkat lunak tanpa membahas secara spesifik tentang add-on dan koneksi.

2.1 Kebutuhan Pengguna

Bagian ini adalah masalah pilihan, sehingga beberapa organisasi memilih untuk tidak memasukkannya ke dalam dokumentasi teknik SRS mereka. Kami percaya lebih baik untuk membuat daftar masalah yang ingin Anda selesaikan dengan fungsionalitas Anda sekarang. Ini akan berguna nanti saat melakukan brainstorming dan fungsi pemantauan. Anda dapat kembali ke bagian ini kapan saja selama proses pengembangan produk dan melihat apakah tim pengalaman pengguna tidak menyimpang dari jalur yang diinginkan.

Kebutuhan mengacu pada masalah yang dapat diselesaikan pengguna dengan sistem. Anda dapat membagi kebutuhan ini ke dalam subkategori jika Anda berurusan dengan audiens yang sangat tersegmentasi. Cobalah untuk tidak masuk ke detail tentang kebutuhan setiap pengguna. Anda perlu meninggalkan ruang untuk interpretasi, untuk berjaga-jaga jika suatu masalah ternyata lebih signifikan daripada yang Anda pikirkan sebelumnya.

2.2 Asumsi dan Ketergantungan

Asumsi adalah asumsi tim tentang produk dan kemampuannya yang akan benar dalam 99% situasi. Wajar untuk berasumsi, misalnya, bahwa platform yang membantu pengemudi bernavigasi di malam hari akan digunakan sebagian besar dalam mode malam hari.

Apa pentingnya asumsi? Mereka memungkinkan Anda untuk berkonsentrasi pada fitur aplikasi yang paling penting terlebih dahulu. Asumsi ini membantu dalam pemahaman bahwa desainer harus mengembangkan antarmuka yang cocok untuk penglihatan dalam gelap untuk asisten pengemudi malam. Beberapa pengguna mungkin membuka aplikasi di siang hari, tetapi itu adalah waktu yang lama, jadi Anda tidak perlu memasukkan elemen terkait dalam prototipe segera.

3. Fitur dan Persyaratan Sistem

Bagian ini mencakup fitur produk dan kriteria eksekusi secara rinci. Karena dua bagian sebelumnya membahas produk secara keseluruhan, Anda akan menemukan deskripsi yang lebih komprehensif di sini.

3.1 Persyaratan Fungsional

dinyatakan dalam daftar fungsi-fungsi yang akan dilakukan dalam suatu sistem. Kriteria ini berkaitan dengan "apa yang akan dibuat?" daripada "bagaimana", dan "kapan".

Persyaratan fungsional dimulai dengan menggambarkan fungsionalitas yang diperlukan berdasarkan seberapa penting itu untuk aplikasi. Jika Anda ingin mengerjakannya terlebih dahulu, Anda bisa mulai dengan desain, tetapi kemudian Anda harus masuk ke pengembangan. Persyaratan fungsional tidak terlalu detail tentang tumpukan teknologi karena dapat berubah seiring kemajuan proyek. Alih-alih berkonsentrasi pada logika internal, persyaratan fungsional fokus pada fungsionalitas pengguna akhir.

3.2 Persyaratan Antarmuka Eksternal

Persyaratan fungsional adalah bagian penting dari spesifikasi persyaratan sistem. Untuk mencakup semua fitur sistem yang diperlukan, Anda memerlukan 4-5 halaman informasi. Beberapa tim membaginya berdasarkan tema untuk membuat dokumen lebih mudah dibaca.

Biasanya, komponen desain SRS disebut terpisah dari backend dan logika bisnis. Ini masuk akal karena desainer bukan pengembang menangani sebagian besar area ini, tetapi juga karena di situlah proses pengembangan produk akan dimulai.

Tergantung pada proyeknya, persyaratan antarmuka eksternal dapat terdiri dari empat jenis:

  • User interface
  • Antarmuka perangkat lunak
  • Antarmuka perangkat keras
  • Antarmuka komunikasi

Persyaratan antarmuka eksternal menjelaskan elemen halaman yang akan terlihat oleh klien akhir. Mereka dapat menyertakan daftar halaman, elemen desain, tema gaya utama, bahkan elemen artistik, dan banyak lagi jika itu penting untuk produk.

3.3 Persyaratan Sistem

Persyaratan sistem produk menyatakan kondisi di mana produk dapat digunakan. Mereka biasanya berkaitan dengan spesifikasi dan fitur perangkat keras. Persyaratan perangkat keras SRS sering ditentukan oleh rentang minimal dan maksimal, serta ambang batas kinerja produk yang optimal.

Membuat persyaratan sistem sebelum mulai membuat produk mungkin tampak sulit, tetapi ini penting. Pengembang harus mematuhi persyaratan perangkat keras sehingga mereka tidak perlu memulai ulang proyek nanti. Aplikasi seluler (dengan banyak variabel untuk dipertimbangkan) dan aplikasi yang membutuhkan reaktivitas tinggi (game, produk apa pun dengan VR/AR, atau IoT) sangat rentan.

3.4 Persyaratan Non-Fungsional 

Bagi banyak organisasi, bagian SRS ini adalah yang paling sulit. Jika persyaratan fungsional menjawab pertanyaan tentang apa yang harus dibuat, standar non-fungsional menentukan caranya. Mereka menetapkan kriteria sesuai dengan seberapa efektif sistem harus beroperasi. Ambang batas untuk kinerja, keamanan, dan kegunaan semuanya termasuk dalam area ini.

Nilai sebenarnya adalah apa yang membuat sulit untuk mendefinisikan persyaratan non-fungsional. Mendefinisikan frase seperti "konkurensi" atau "portabilitas" sulit karena mereka mungkin memiliki berbagai interpretasi untuk semua pihak yang terlibat. Akibatnya, kami menganjurkan untuk memberikan skor pada setiap persyaratan non-fungsional. Anda dapat mengunjungi kembali persyaratan proyek Anda kapan saja untuk melihat apakah sistem saat ini memenuhi harapan awal.

Kesalahan Apa yang Harus Dihindari Saat Membuat Spesifikasi Persyaratan Sistem?

Saat keterampilan Anda dalam pengembangan SRS meningkat, prosesnya akan dipercepat. Meskipun demikian, ketika Anda baru memulai, sebaiknya Anda memiliki daftar kesalahan umum yang berguna sebagai referensi. Untuk itu, pertimbangkan ini:  

  • Mengabaikan untuk Memasukkan Glosarium Komprehensif: Apakah SRS Anda mengandung jargon yang hanya diketahui oleh orang-orang dalam industri tersebut? Jika demikian, buat bagian kamus yang mudah dipahami, dan sertakan definisi kata atau ungkapan apa pun yang tidak dikenal luas. Ini akan membantu memastikan semua pengguna dapat memahami tujuan dan terminologi dokumen.
  • Menghasilkan Kekacauan dengan Menggabungkan Ide: Susun dokumen Anda secara teratur, dan pastikan untuk menyampaikan informasi kepada pembaca dalam perkembangan yang logis. Untuk mencegah kesalahpahaman atau kebingungan, jangan mengacaukan konsep bersama di seluruh teks.
  • Ketidaktahuan tentang Kebutuhan dan Keinginan Audiens Sasaran: Untuk memahami output yang diantisipasi dari perangkat lunak, penting untuk membedakan siapa yang akan menggunakannya serta hasil apa yang diharapkan. Misalnya, katakanlah sebuah aplikasi dibuat untuk pembuatan laporan. Beberapa persyaratannya harus mencakup bagaimana pengguna dapat menekan tombol tertentu untuk mendapatkan dokumen yang berbeda. Untuk benar-benar memahami apa yang diperlukan dari program pelaporan ini dan juga mengenali siapa yang akan menggunakannya, Anda harus memiliki wawasan tentang pengguna dan ekspektasi mereka terkait fungsionalitas.  
  • Menjadi Ambigu: Pastikan bahwa kebutuhan Anda tidak ambigu. SRS dirumuskan untuk menghindari kesalahpahaman dan karenanya, sangat penting untuk memastikan dokumen tidak menimbulkan kebingungan. Untuk setiap deskripsi fitur atau ketentuan, pastikan Anda tidak menyertakan fungsionalitas yang belum ditentukan.

Praktik Terbaik untuk Menulis Dokumen SRS

Menulis dokumen Spesifikasi Kebutuhan Sistem (SRS) adalah aspek penting dalam pengembangan perangkat lunak, dan mengikuti praktik terbaik dapat meningkatkan kualitas dan efektivitas dokumen secara signifikan. Berikut adalah beberapa praktik terbaik untuk menulis dokumen SRS:

  • Gunakan Bahasa yang Jelas dan Ringkas:
    • Hindari jargon teknis dan akronim yang mungkin tidak dipahami secara universal. Gunakan bahasa yang jelas dan lugas, pastikan semua pemangku kepentingan dapat dengan mudah memahami isinya.
  • Sertakan Alat Bantu Visual:
    • Tingkatkan pemahaman dengan menggabungkan diagram, diagram alur, dan mock-up di samping deskripsi tekstual tentang persyaratan. Alat bantu visual dapat memberikan representasi yang lebih intuitif tentang konsep kompleks dan perilaku sistem.
  • Memprioritaskan Persyaratan:
    • Tentukan dengan jelas prioritas setiap kebutuhan. Gunakan label seperti “must-have”, “should-have”, dan “bagus untuk dimiliki” untuk menunjukkan kepentingan relatif dari berbagai fitur. Prioritas membantu tim pengembangan fokus pada fungsi penting terlebih dahulu.
  • Tetap Perbarui:
    • Pertahankan kontrol versi untuk dokumen SRS. Perbarui dokumen secara berkala untuk mencerminkan perubahan apa pun dalam persyaratan proyek, ruang lingkup, atau masukan dari pemangku kepentingan. Simpan log perubahan yang jelas untuk melacak perubahan dari waktu ke waktu.
  • Libatkan Pemangku Kepentingan:
    • Berkolaborasi erat dengan seluruh pemangku kepentingan terkait selama proses pengembangan SRS. Terlibat dalam diskusi, kumpulkan umpan balik, dan pastikan bahwa kebutuhan dan harapan mereka tercantum secara akurat dalam dokumen. Keterlibatan ini menumbuhkan pemahaman bersama tentang tujuan proyek.
  • Jadilah Komprehensif:
    • Jangan berikan ruang untuk interpretasi atau asumsi. Memberikan uraian rinci dan menyeluruh terhadap setiap kebutuhan, termasuk aspek fungsional dan non-fungsional. Ambiguitas dalam persyaratan dapat menyebabkan kesalahpahaman dan penundaan proyek.
  • Gunakan Format Terstruktur:
    • Atur dokumen SRS ke dalam bagian-bagian yang terdefinisi dengan baik, seperti Pendahuluan, Persyaratan Pemangku Kepentingan, Arsitektur Sistem, Persyaratan Fungsional, Persyaratan Non-Fungsional, Kendala, Asumsi, Ketergantungan, dan Matriks Ketertelusuran. Format yang terstruktur memudahkan pembaca menemukan informasi spesifik.
  • Pastikan Testabilitas:
    • Tulis persyaratan sedemikian rupa sehingga memfasilitasi pengujian dan validasi. Setiap persyaratan harus dapat diverifikasi, memungkinkan penguji membuat kasus uji yang memvalidasi apakah sistem memenuhi kriteria yang ditentukan. Kriteria penerimaan yang jelas untuk setiap persyaratan sangatlah penting.
  • Hindari Ambiguitas:
    • Berhati-hatilah dalam menghilangkan ambiguitas dalam persyaratan. Gunakan bahasa yang tepat, hindari istilah yang tidak jelas, dan pastikan tidak ada ruang untuk interpretasi ganda terhadap suatu persyaratan. Ambiguitas dapat menyebabkan kesalahpahaman dan pengerjaan ulang proyek.
  • Pertimbangkan Skalabilitas Masa Depan:
    • Pikirkan tentang skalabilitas jangka panjang dari sistem perangkat lunak. Antisipasi potensi kebutuhan di masa depan dan pastikan dokumen SRS dapat mengakomodasi kebutuhan tersebut. Pendekatan proaktif ini dapat menghemat waktu dan sumber daya di masa depan.
  • Tinjau dan Validasi:
    • Melakukan tinjauan menyeluruh terhadap dokumen SRS dengan pemangku kepentingan, termasuk klien, tim pengembangan, dan pakar di bidangnya. Atasi setiap perbedaan, inkonsistensi, atau ambiguitas yang muncul selama proses peninjauan. Validasi memastikan bahwa dokumen tersebut secara akurat mewakili tujuan proyek.
  • Dapatkan Persetujuan Resmi:
    • Setelah menyelesaikan dokumen SRS, dapatkan persetujuan formal dan penandatanganan dari klien atau sponsor proyek. Hal ini meresmikan kesepakatan mengenai ruang lingkup dan persyaratan proyek, memberikan dasar yang jelas untuk pengembangan.

Memasukkan praktik terbaik ini ke dalam proses penulisan dokumen SRS dapat berkontribusi pada keberhasilan proyek pengembangan perangkat lunak. Dokumen SRS yang dibuat dengan baik berfungsi sebagai panduan yang andal bagi tim pengembangan dan pemangku kepentingan, membantu memastikan bahwa sistem perangkat lunak akhir selaras dengan harapan dan persyaratan.

Kesimpulan

Menulis dokumen Spesifikasi Kebutuhan Sistem (SRS) yang efektif merupakan langkah penting dalam proses pengembangan perangkat lunak. Ini berfungsi sebagai landasan untuk perencanaan, pengembangan, pengujian, dan validasi proyek yang sukses. Dengan mengikuti langkah-langkah yang diuraikan dalam artikel ini dan mengikuti praktik terbaik, Anda dapat membuat dokumen SRS yang berfungsi sebagai panduan andal untuk membangun sistem perangkat lunak yang memenuhi kebutuhan dan harapan pemangku kepentingan.

Jangan lupa untuk membagikan postingan ini!

Atasan

Tingginya Biaya Manajemen Persyaratan yang Buruk

Juni 06th, 2024

11 pagi EST | 5 WIB | 8 PST

Louis Arduino

Pembicara Utama

Dampak & Solusi untuk Manajemen Persyaratan yang Tidak Efisien

Jelajahi dampak signifikan dari praktik manajemen persyaratan yang tidak efisien terhadap biaya dan jadwal proyek.