SOFTWARE REQUIREMENTS SPECIFICATION (SRS)
Dokumen Kebutuhan Perangkat Lunak
Aplikasi DiTenun
Dipersiapkan Untuk:
Institut Teknologi Del
Jl. Sisingamangaraja, Sitoluama, Laguboti, Sumatera Utara 22381
Dipersiapkan Oleh:
[Kelompok Praktikum]
Teknik Informatika – RPL Semester Genap 2025/2026
15 Mei 2026 | Versi 1.0
Persetujuan Dokumen
Pihak yang menandatangani dokumen ini menyatakan sudah mereview Dokumen Kebutuhan Perangkat Lunak (SRS) ini dan mengotorisasi berjalannya proyek Aplikasi DiTenun. Perubahan dapat dilakukan terhadap dokumen ini dengan koordinasi dan persetujuan kembali dari pihak yang menandatangani.
Revision History
1. Pembukaan
1.1 Tujuan Penulisan Dokumen
Dokumen Software Requirements Specification (SRS) ini ditulis untuk mendeskripsikan secara lengkap dan terperinci semua kebutuhan fungsional dan non-fungsional dari Aplikasi DiTenun. Dokumen ini ditujukan untuk:
Tim pengembang (programmer dan desainer) sebagai panduan implementasi. Dosen pengampu dan penguji sebagai acuan evaluasi. Stakeholder (penenun, admin, pembeli) untuk verifikasi kebutuhan. Tim QA untuk menyusun skenario pengujian.
1.2 Ruang Lingkup Produk / Sistem yang Akan Dibangun
Aplikasi DiTenun adalah aplikasi web yang memiliki dua fungsi utama: (1) membantu penenun menghasilkan variasi motif tenun baru secara digital, dan (2) menyediakan platform jual beli kain Ulos secara daring. Sistem ini juga mencakup fitur UlosPedia untuk mendokumentasikan dan menyebarkan informasi budaya Ulos kepada masyarakat luas. Pengguna sistem terdiri dari tiga kelompok: Admin, Penenun, dan Pembeli.
1.3 Definisi dan Singkatan
1.4 Referensi
Materi Praktikum RPL Minggu 14, Institut Teknologi Del, Semester Genap 2025/2026. Template SRS 2019_Ind.doc – Institut Teknologi Del. IEEE Std 830-1998, IEEE Recommended Practice for Software Requirements Specifications. Diagram UML Aplikasi DiTenun dari praktikum minggu-minggu sebelumnya. Link proyek CODA: [masukkan link CODA di sini] 2. Deskripsi Umum
2.1 Deskripsi Umum Sistem yang Akan Dibangun
Aplikasi DiTenun adalah sistem baru yang dibangun dari awal (greenfield development) sebagai produk mandiri. Sistem ini berbasis web dan dapat diakses melalui browser standar. Aplikasi ini terdiri dari tiga subsistem utama yang saling terintegrasi:
2.2 Fungsi Utama
Fungsi utama Aplikasi DiTenun berdasarkan kelompok pengguna:
2.3 Kelompok dan Karakteristik Pengguna
2.4 Lingkungan
2.4.1 Pengembangan
Localhost / 127.0.0.1:8000
2.4.2 Pengujian
Testing server / staging environment
2.4.3 Pengoperasian / Produksi
VPS/Cloud Server (misal: AWS, DigitalOcean, atau Niagahoster)
2.5 Batasan Desain dan Implementasi
Aplikasi hanya berbasis web (bukan mobile native); dapat diakses via browser modern (Chrome, Firefox, Edge, Safari). Bahasa pemrograman yang digunakan: PHP/Laravel untuk backend, React.js untuk frontend. Fitur generasi motif menggunakan pendekatan image processing (misal: variasi warna, rotasi, refleksi) atau integrasi API AI pihak ketiga. Sistem hanya mendukung bahasa Indonesia pada antarmuka pengguna. Pembayaran tidak terintegrasi pada versi pertama ini; konfirmasi pembayaran dilakukan secara manual. Kapasitas upload gambar dibatasi maksimal 5 MB per file dengan format PNG, JPG, atau JPEG.
2.6 Dokumentasi Pengguna
Panduan pengguna (User Manual) dalam format PDF untuk setiap kelompok pengguna (Admin, Penenun, Pembeli). Bantuan online (help tooltip) pada setiap fitur utama di dalam aplikasi. Video tutorial singkat untuk fitur kreasi motif (upload, generate, kertas kerja, pewarnaan).
2.7 Asumsi dan Kebergantungan
Semua pengguna memiliki akses internet yang stabil. Penenun memiliki gambar motif asal dalam format digital (PNG/JPG) yang dapat diunggah. Layanan SMS Gateway (misal: Twilio atau Nexmo) tersedia dan dapat diintegrasikan. Layanan email SMTP (misal: Gmail SMTP atau Mailgun) tersedia untuk notifikasi transaksi. Konten UlosPedia (sejarah, profil penenun) disediakan oleh pihak Institut Teknologi Del atau penenun mitra. Browser pengguna mendukung JavaScript ES6+ dan CSS3.
3. Kebutuhan Rinci
3.1 Kebutuhan Antarmuka
3.1.1 Antarmuka Sistem
SMS Gateway API: Sistem DiTenun terhubung dengan layanan SMS Gateway untuk mengirimkan notifikasi kepada pembeli. Data yang keluar berupa nomor HP penerima, pesan teks status pesanan. Email SMTP Server: Sistem terhubung dengan SMTP server untuk pengiriman email notifikasi pembelian dan konfirmasi pengiriman kepada pembeli. AI/Image Processing Service (opsional): Sistem dapat terhubung dengan layanan image processing untuk fitur generasi variasi motif baru dari motif asal yang diunggah penenun.
3.1.2 Antarmuka Pengguna
Antarmuka menggunakan desain responsif yang dapat diakses dari desktop maupun perangkat mobile. Navigasi utama terdiri dari: Beranda, Galeri Ulos, UlosPedia, Login/Register, dan Dashboard (untuk pengguna yang sudah login). Fitur kertas kerja menggunakan interaksi drag-and-drop yang intuitif. Fitur pewarnaan menggunakan color picker berbasis web. Semua pesan kesalahan (error) ditampilkan dalam bahasa Indonesia yang mudah dipahami. Tombol dan elemen UI mengikuti prinsip aksesibilitas (kontras warna, ukuran tombol minimal 44x44px).
3.2 Spesifikasi Kebutuhan Fungsional
3.2.1 Modul Autentikasi
Deskripsi: Modul yang mengelola proses login, registrasi, dan manajemen sesi pengguna untuk Admin, Penenun, dan Pembeli. | Prioritas: Tinggi (9)
3.2.2 Modul Kreasi Motif Tenun (Penenun)
Deskripsi: Modul yang memungkinkan penenun menghasilkan variasi motif baru secara digital. | Prioritas: Tinggi (9)
Urutan Stimulus/Respon – F2.2 (Generate Variasi Motif)
Stimulus: Penenun mengklik tombol 'Generate Variasi' setelah mengunggah motif asal.
Respon: Sistem memproses gambar motif asal dan menampilkan minimal 3 variasi motif baru dalam tampilan grid. Penenun dapat memilih salah satu untuk dikembangkan lebih lanjut.
3.2.3 Modul Manajemen Admin
Deskripsi: Modul yang memungkinkan admin mengelola semua konten platform DiTenun. | Prioritas: Tinggi (8)
3.2.4 Modul Galeri Ulos (Akses Publik dan Pembeli)
Deskripsi: Modul untuk menampilkan katalog Ulos yang dijual di aplikasi DiTenun. | Prioritas: Tinggi (8)
3.2.5 Modul Pembelian Ulos
Deskripsi: Modul transaksi jual beli Ulos di aplikasi DiTenun. | Prioritas: Tinggi (8)
3.2.6 Modul UlosPedia
Deskripsi: Modul ensiklopedia digital yang dapat diakses oleh siapapun tanpa login. | Prioritas: Sedang (6)
3.3 Kebutuhan Non-Fungsional
3.3.1 Kebutuhan akan Performansi
Halaman beranda dan galeri Ulos harus dapat dimuat dalam waktu maksimal 3 detik pada koneksi internet standar (10 Mbps). Fitur generate variasi motif harus selesai memproses dalam waktu maksimal 10 detik. Sistem harus dapat melayani minimal 100 pengguna secara bersamaan tanpa penurunan performa yang signifikan. Proses upload gambar maksimal 5 MB harus selesai dalam waktu kurang dari 5 detik pada koneksi 10 Mbps.
3.3.2 Kebutuhan akan Keselamatan
Sistem harus melakukan backup database secara otomatis setiap 24 jam untuk mencegah kehilangan data. Gambar yang diunggah harus divalidasi untuk mencegah upload file berbahaya (hanya menerima PNG/JPG). Sistem harus memiliki mekanisme recovery jika terjadi kegagalan server.
3.3.3 Kebutuhan akan Keamanan
Semua password pengguna harus di-hash menggunakan algoritma bcrypt sebelum disimpan di database. Sistem harus menggunakan HTTPS untuk semua komunikasi data. Input dari pengguna harus divalidasi dan disanitasi untuk mencegah serangan SQL Injection dan XSS. Akses ke halaman dashboard admin dan penenun harus dilindungi oleh autentikasi berbasis session/token. Data pembeli (nama, alamat, nomor HP) harus disimpan secara terenkripsi di database.
3.3.4 Atribut Kualitas Perangkat Lunak Lainnya
Usability: Antarmuka pengguna harus intuitif sehingga penenun dengan tingkat literasi digital rendah pun dapat menggunakan fitur kreasi motif tanpa pelatihan khusus. Maintainability: Kode sumber harus mengikuti standar coding Laravel/React.js dan terdokumentasi dengan komentar yang memadai. Portability: Sistem harus berjalan dengan baik di browser Chrome, Firefox, Edge, dan Safari versi terbaru. Reliability: Tingkat availabilitas sistem ditargetkan minimal 99% (downtime maksimal ~3.65 jam/tahun). Scalability: Arsitektur sistem harus memungkinkan penambahan fitur baru tanpa harus merombak keseluruhan sistem.