Minggu, 28 Mei 2023

Software Requirement Specification Pattern Pada Aplikasi Sistem Informasi Registrasi Akademik Siakad Teknokrat_Muhamad Rizky Andi_20311107

Software Requirement Specification Pattern Pada Aplikasi Sistem Informasi Registrasi Akademik Siakad Teknokrat

 

Disusun Oleh :

1. Sylvi Anadas (21311100)

2. Fabian Firmanda (21311116)

3. Lisyo Hileria Sarumpaet (21311121)

4. Rizky Herdian Saputra (21311125)

5. Mega Selvia (21311130)

6. M. Rizky andi (20311107)

28 Mei 2023


Table of Contents

Table of Contents

Revision History

1. Introduction

1.1 Purpose

1.2 Document Conventions

1.3 Intended Audience and Reading Suggestions

1.4 Product Scope

1.5 References

2. Overall Description

2.1 Product Perspective

2.2 Product Functions

2.3 User Classes and Characteristics

2.4 Operating Environment

2.5 Design and Implementation Constraints

2.6 User Documentation

2.7 Assumptions and Dependencies

3. External Interface Requirements

3.1 User Interfaces

3.2 Hardware Interfaces

3.3 Software Interfaces

3.4 Communications Interfaces

4. System Features

4.1 System Feature 1

4.2 System Feature 2 (and so on)

5. Other Nonfunctional Requirements

5.1 Performance Requirements

5.2 Safety Requirements

5.3 Security Requirements

5.4 Software Quality Attributes

5.5 Business Rules

6. Other Requirements

Appendix A: Glossary

Appendix B: Analysis Models

Appendix C: To Be Determined List

 

 

Revision History

Name

Date

Reason For Changes

Version

 

 

 

 

 

 

 

 

 

 


1. Introduction

1.1 Purpose 

Dokumen ini menjelaskan requitmens pengaplikasian berbasis web pada aplikasi pengolahan akademik seperti siakad

1.2 Document Conventions

Siakad memiliki peran penting untuk membantu mendukung penyelenggaraan Pendidikan agar fasilitas dan pelayanan informasi akademik dalam siakad.

1.3 Audience and Reading Suggestions

Siakad ditujukan untuk memfasilitasi dan mengelola berbagai macam proses administrative dan akademik di institusi pendidikan tingkat perguruan tinggi atau universitas.

1.4 Product Scope

Siakad adalah aplikasi berbasis web yang dirancang untuk mengelola dan memproses data akademik serta informasi terkait lainnya. Tujuan utamanya adalah menyediakan sebuah platform pada proses kegiatan akademik  di perguruan tinggi.

1.5 References

·  "Software Requirements" oleh Karl E. Wiegers: Buku ini merupakan referensi populer dalam menyusun spesifikasi kebutuhan perangkat lunak. Menyediakan panduan praktis dan contoh untuk menyusun SRS yang efektif.

·  IEEE Standard 830-1998: Standar ini dari Institute of Electrical and Electronics Engineers (IEEE) memberikan panduan tentang penyusunan SRS. Meskipun standar ini agak tua, masih relevan dan dapat digunakan sebagai referensi.

·  "Writing Effective Use Cases" oleh Alistair Cockburn: Meskipun bukan secara khusus tentang SRS, buku ini memberikan wawasan yang berguna tentang penulisan use case yang terkait dengan spesifikasi kebutuhan.

·  IEEE Explore: IEEE Xplore merupakan platform digital yang menyediakan akses ke berbagai publikasi ilmiah, termasuk artikel, konferensi, dan jurnal terkait dengan bidang perangkat lunak dan rekayasa kebutuhan. Anda dapat mencari artikel terkait dengan pola spesifikasi kebutuhan di sana.

·  Dokumentasi dan sumber daya internal: Jika Anda memiliki akses ke dokumentasi atau sumber daya internal dari pengembang atau pihak terkait di Siakad, pastikan untuk merujuk pada sumber daya tersebut. Mereka mungkin memiliki panduan atau pola spesifikasi kebutuhan yang disesuaikan dengan konteks Siakad.

 

2. Overall Description

Komponen utama dalam aplikasi Sistem Informasi Registrasi Akademik (Siakad) secara keseluruhan dapat mencakup beberapa aspek penting berikut:

 

1. Antarmuka Pengguna (User Interface):

   - Halaman Login: Memungkinkan pengguna untuk masuk ke dalam sistem dengan menggunakan kredensial yang valid.

   - Dashboard: Menampilkan informasi penting, seperti notifikasi, ringkasan data akademik, dan menu navigasi.

   - Halaman Profil: Menampilkan informasi pribadi pengguna, seperti nama, foto, dan data kontak.

   - Halaman Mahasiswa: Menampilkan informasi tentang mahasiswa, termasuk profil, transkrip nilai, jadwal kuliah, dan status registrasi.

   - Halaman Dosen: Menampilkan informasi tentang dosen, termasuk profil, jadwal mengajar, dan daftar mahasiswa yang diajar.

   - Halaman Administrasi: Menampilkan informasi dan alat administratif untuk pengelolaan data akademik, kurikulum, jadwal kuliah, dan lainnya.

 

2. Manajemen Data Mahasiswa:

   - Pendaftaran Mahasiswa Baru: Memungkinkan calon mahasiswa untuk mendaftar dan mengunggah dokumen-dokumen yang diperlukan.

   - Pengelolaan Profil Mahasiswa: Memungkinkan pengelolaan data pribadi mahasiswa, seperti identitas, kontak, dan informasi lainnya.

   - Pengelolaan Riwayat Akademik: Menyimpan dan memperbarui data riwayat akademik mahasiswa, termasuk mata kuliah yang diambil, nilai, dan prestasi lainnya.

   - Pengelolaan Program Studi: Menyimpan informasi tentang program studi yang tersedia, kurikulum, dan persyaratan kelulusan.

 

3. Penjadwalan Kuliah:

   - Penentuan Jadwal Kuliah: Memungkinkan pengaturan jadwal kuliah berdasarkan mata kuliah yang ditawarkan dan ketersediaan dosen.

   - Registrasi Mata Kuliah: Memungkinkan mahasiswa untuk memilih mata kuliah yang ingin diambil dan mendaftar sesuai dengan jadwal yang tersedia.

 

4. Penilaian dan Evaluasi:

   - Penginputan Nilai: Memungkinkan dosen untuk menginput dan menyimpan nilai mahasiswa untuk setiap mata kuliah yang diajar.

   - Perhitungan Indeks Prestasi Kumulatif (IPK): Menghitung dan menyimpan IPK mahasiswa berdasarkan nilai yang diperoleh dalam setiap mata kuliah.

   - Evaluasi dan Umpan Balik: Memungkinkan pengiriman evaluasi dan umpan balik dari mahasiswa kepada dosen terkait pengajaran dan kurikulum.

 

5. Administrasi Keuangan:

   - Pembayaran Biaya Kuliah: Memungkinkan mahasiswa untuk membayar biaya kuliah melalui sistem secara online.

   - Manajemen Tagihan: Menampilkan tagihan dan riwayat pembayaran mahasiswa.

   - Pengelolaan Beasiswa dan Bantuan Keuangan: Mengelola informasi tentang beasiswa dan bantuan keuangan yang tersedia untuk mahasiswa.

 

6. Pelaporan dan Analisis:

   - Laporan Akademik: Menyediakan laporan berbasis data tentang perkembangan akademik mahasiswa, hasil evaluasi

2.1 Product Perspective

  Komponen utama dari keseluruhan sistem Siakad teknokrat, interkoneksi subsistem, dan antarmuka eksternal dapat membantu meningkatkan fungsionalitas dan interoperabilitas aplikasi. Berikut adalah beberapa komponen utama yang relevan:

 

1. Subsistem Manajemen Mahasiswa:

   -   Registrasi Mahasiswa Baru: Mengelola proses pendaftaran mahasiswa baru dan pengumpulan data pribadi serta akademik.

   - Manajemen Profil Mahasiswa: Menyimpan dan mengelola data pribadi mahasiswa, seperti informasi kontak, riwayat pendidikan, dan data identitas.

   - Manajemen Jadwal Kuliah: Mengatur jadwal kuliah berdasarkan penawaran mata kuliah, ketersediaan dosen, dan preferensi mahasiswa.

   - Penilaian dan Evaluasi: Memfasilitasi penginputan dan pengelolaan nilai mahasiswa serta penyediaan umpan balik mengenai pengajaran dan kurikulum.

 

2. Subsistem Manajemen Dosen:

   - Manajemen Profil Dosen: Menyimpan dan mengelola data pribadi dosen, informasi kontak, dan jadwal mengajar.

   - Penugasan Mengajar: Menghubungkan dosen dengan mata kuliah yang diajar, termasuk penjadwalan dan pengelolaan tugas pengajaran.

   - Evaluasi Kinerja Dosen: Memfasilitasi proses evaluasi kinerja dosen oleh mahasiswa atau pihak terkait.

 

3. Subsistem Administrasi Akademik:

   - Manajemen Kurikulum: Menyimpan dan mengelola informasi tentang program studi, rencana studi, dan persyaratan kelulusan.

   - Administrasi Keuangan: Mengelola informasi keuangan mahasiswa, termasuk pembayaran biaya kuliah, beasiswa, dan tagihan.

   - Manajemen Perpustakaan: Mengintegrasikan sistem perpustakaan dengan Siakad, memungkinkan akses ke koleksi perpustakaan dan pemesanan buku.

 

4. Subsistem Pelaporan dan Analisis:

   - Laporan Akademik: Menyediakan laporan berbasis data tentang perkembangan akademik mahasiswa, evaluasi kurikulum, dan statistik pendidikan.

   - Analisis Data: Memanfaatkan data akademik untuk analisis kebutuhan belajar, tren keberhasilan, dan perencanaan pengembangan kurikulum.

 

5. Antarmuka Eksternal:

   - Integrasi dengan Sistem Eksternal: Menyediakan antarmuka untuk berintegrasi dengan sistem lain, seperti sistem informasi keuangan, sistem perpustakaan, atau sistem manajemen pegawai.

   - Portal Mahasiswa dan Dosen: Menyediakan akses ke informasi dan layanan terkait melalui portal web atau aplikasi seluler.

 

Interkoneksi antara subsistem-subsistem ini memungkinkan pertukaran data yang mulus dan koordinasi antara berbagai entitas yang terlibat dalam proses akademik. Antarmuka eksternal dapat memperluas fungsionalitas Siakad dengan mengintegrasikan dengan sistem lain yang relevan, memberikan akses terpadu dan pengalaman pengguna yang komprehensif.

 

2.2 Product Functions

 

Diagram Aliran Data Tingkat Atas (Context Level Data Flow Diagram) adalah representasi grafis yang menunjukkan aliran data antara entitas eksternal dan komponen sistem utama dalam suatu sistem. Dalam konteks Siakad teknokrat, beberapa komponen utama dan entitas eksternal yang relevan :

 

1. Mahasiswa:

   - Entitas eksternal yang berinteraksi dengan sistem Siakad untuk mendaftar, mengakses jadwal kuliah, memilih mata kuliah, dan melihat hasil akademik.

 

2. Dosen:

   - Entitas eksternal yang berperan dalam menyampaikan materi kuliah, memberikan penilaian, dan memberikan umpan balik kepada mahasiswa.

 

3. Administrasi Akademik:

   - Komponen sistem yang mengelola proses pendaftaran mahasiswa baru, pengaturan jadwal kuliah, pengelolaan kurikulum, dan administrasi keuangan.

 

4. Sistem Eksternal (Misalnya, sistem keuangan atau perpustakaan):

   - Sistem lain yang terhubung dengan Siakad dan berinteraksi untuk mengakses informasi keuangan mahasiswa, sumber daya perpustakaan, atau sistem manajemen pegawai.

 

Dalam diagram aliran data tingkat atas, entitas eksternal ini akan diwakili oleh simbol seperti kotak persegi panjang, sementara komponen sistem akan diwakili oleh simbol seperti lingkaran. Anak panah menunjukkan arah aliran data antara entitas eksternal dan komponen sistem. Misalnya, aliran data dapat terjadi saat mahasiswa mengajukan pendaftaran baru ke sistem atau saat dosen memasukkan nilai mahasiswa.

 

Diagram aliran data tingkat atas membantu memvisualisasikan bagaimana entitas eksternal berinteraksi dengan komponen utama dalam sistem Siakad dan bagaimana aliran data menghubungkan mereka. Diagram ini juga memberikan gambaran tingkat tinggi tentang bagaimana persyaratan berhubungan dan berpotensi mempengaruhi satu sama lain. Untuk gambaran yang lebih rinci tentang persyaratan dan hubungan mereka, diagram aliran data yang lebih terperinci atau diagram kelas objek dapat digunakan.

2.3 User Classes and Characteristics

Dalam konteks Siakad terknokrat, berikut adalah perbedaan antara kelas pengguna yang paling penting untuk dipuaskan dan yang kurang penting:

 

1. Kelas Pengguna yang Paling Penting untuk Dipuaskan:

   - Mahasiswa: Kelas pengguna ini adalah yang paling penting karena mereka adalah pemangku kepentingan utama dalam aplikasi Siakad. Kepuasan mahasiswa dalam menggunakan Siakad akan mempengaruhi penggunaan aplikasi dan pengalaman mereka dalam menjalani proses akademik. Fokus utama adalah memberikan antarmuka yang mudah digunakan, informasi akademik yang akurat, serta akses yang cepat dan mudah ke fitur-fitur penting seperti jadwal kuliah, pendaftaran mata kuliah, penilaian, dan transkrip nilai.

 

 

 

2. Kelas Pengguna yang Kurang Penting untuk Dipuaskan:

   - Dosen: Dosen juga merupakan kelompok pengguna penting, tetapi peran mereka cenderung lebih fokus pada memberikan pengajaran dan menilai mahasiswa daripada menggunakan aplikasi Siakad secara luas. Kepuasan dosen dapat ditingkatkan dengan menyediakan antarmuka yang intuitif untuk memasukkan dan mengelola data nilai, mengakses profil dan jadwal mengajar, serta mengirimkan umpan balik kepada mahasiswa. Meskipun penting, tingkat interaksi mereka dengan Siakad mungkin lebih rendah dibandingkan dengan mahasiswa.

 

Dalam mengembangkan produk Siakad teknokrat, penting untuk memahami kebutuhan dan preferensi pengguna utama, yaitu mahasiswa, dan memastikan bahwa pengalaman mereka dalam menggunakan aplikasi terpenuhi secara optimal. Prioritaskan pengembangan fitur-fitur dan fungsionalitas yang mendukung kebutuhan dan kepuasan pengguna utama ini. Bagi kelompok pengguna yang kurang penting, pastikan mereka tetap dapat mengakses dan menggunakan fitur-fitur yang relevan dengan peran dan tanggung jawab mereka, tetapi tidak harus menjadi fokus utama pengembangan.

2.4 Operating Environment

Lingkungan di mana perangkat lunak Siakad teknokrat akan beroperasi mencakup beberapa komponen yang perlu berdampingan secara damai. Berikut adalah beberapa elemen penting dalam lingkungan operasional perangkat lunak Siakad teknokrat:

 

1. Platform Perangkat Keras:

   - Server: Siakad dapat dijalankan pada server fisik atau virtual yang memiliki kapasitas dan kinerja yang memadai untuk menangani jumlah pengguna dan volume data yang diharapkan.

   - Jaringan: Lingkungan jaringan yang stabil dan cepat diperlukan untuk memastikan konektivitas antara server Siakad teknokrat dan pengguna, baik melalui jaringan lokal maupun internet.

 

2. Sistem Operasi:

   - Server: Siakad dapat dijalankan di berbagai sistem operasi server seperti Windows Server, Linux (misalnya Ubuntu, CentOS, atau Red Hat Enterprise Linux), atau sistem operasi lain yang mendukung aplikasi web dan bahasa pemrograman yang digunakan dalam pengembangan Siakad.

   - Klien: Untuk akses pengguna, Siakad harus mendukung berbagai sistem operasi pada perangkat klien, seperti Windows, macOS, dan berbagai distribusi Linux, untuk memungkinkan akses melalui berbagai perangkat komputer atau perangkat seluler.

 

3. Komponen atau Aplikasi Perangkat Lunak Lainnya:

   - Basis Data: Siakad memerlukan sistem manajemen basis data seperti MySQL, PostgreSQL, atau Oracle untuk menyimpan dan mengelola data akademik, pengguna, dan konfigurasi sistem.

   - Server Web: Aplikasi Siakad dikembangkan menggunakan teknologi web, seperti Apache atau Nginx sebagai server web untuk mengakomodasi permintaan HTTP dari pengguna.

   - Bahasa Pemrograman: Siakad mungkin dikembangkan menggunakan bahasa pemrograman seperti Java, Python, PHP, atau .NET, sehingga diperlukan runtime atau lingkungan yang sesuai untuk menjalankan perangkat lunak tersebut.

 

Penting untuk memastikan kompatibilitas antara komponen perangkat keras, sistem operasi, dan aplikasi perangkat lunak yang digunakan dalam lingkungan operasional Siakad. Dalam pengembangan dan pengelolaan Siakad, perlu dilakukan pengujian dan pemeliharaan rutin untuk memastikan bahwa semua komponen berfungsi secara optimal dan berdampingan dengan damai, serta melakukan pembaruan perangkat keras, sistem operasi, dan perangkat lunak lainnya sesuai kebutuhan untuk menjaga keamanan dan kinerja sistem.

2.5 Design and Implementation Constraints

Dalam konteks keamanan perangkat lunak Siakad teknokrat, berikut adalah beberapa pertimbangan yang perlu dipertimbangkan:

 

1. Keamanan Aplikasi:

   - Perlindungan Data Pengguna: Memastikan data pribadi dan akademik mahasiswa terlindungi dengan baik melalui penggunaan enkripsi, kebijakan akses yang ketat, dan tindakan pencegahan lainnya.

   - Otentikasi dan Otorisasi: Menerapkan sistem otentikasi yang kuat, seperti penggunaan kata sandi yang aman atau metode otentikasi ganda, serta memastikan bahwa setiap pengguna memiliki akses yang sesuai dengan peran dan tanggung jawab mereka.

   - Penanganan Kesalahan: Mengimplementasikan mekanisme penanganan kesalahan yang baik untuk melindungi sistem dari serangan yang memanfaatkan celah keamanan, seperti serangan injeksi SQL atau serangan lintas situs.

 

2. Keamanan Infrastruktur:

   - Keamanan Server: Memastikan server yang menjalankan Siakad memiliki konfigurasi keamanan yang tepat, termasuk pembaruan sistem operasi, konfigurasi jaringan yang aman, dan langkah-langkah pencegahan lainnya.

   - Pemeliharaan dan Pembaruan: Mengupdate dan memelihara perangkat keras dan perangkat lunak yang digunakan dalam operasional Siakad, termasuk firewall, antivirus, dan patch keamanan, untuk mengatasi kerentanan yang diketahui dan menjaga sistem tetap aman.

 

3. Pelatihan Pengguna:

   - Kesadaran Keamanan: Melakukan pelatihan pengguna untuk meningkatkan kesadaran tentang ancaman keamanan seperti phishing, serangan malware, atau praktik pengamanan yang buruk, serta memberikan pedoman tentang tindakan yang harus diambil untuk menjaga keamanan akun dan data pribadi mereka.

 

Konvensi desain atau standar pemrograman yang ketat juga penting dalam pengembangan Siakad untuk memastikan keamanan perangkat lunak. Beberapa contoh termasuk:

 

- Penggunaan Parameter Terikat (Parameter Binding): Menghindari penggunaan query langsung dalam permintaan basis data dan menggunakan parameter terikat untuk mencegah serangan injeksi SQL.

- Validasi Data: Memvalidasi semua input yang diterima oleh aplikasi untuk mencegah serangan lintas situs atau serangan yang berhubungan dengan masalah validasi.

- Pembaruan Keamanan: Mengikuti praktek pemrograman yang baik dengan memperbarui perangkat lunak pihak ketiga dan kerangka kerja yang digunakan dalam pengembangan Siakad untuk mengatasi kerentanan keamanan yang diketahui.

 

Jika organisasi pelanggan bertanggung jawab untuk memelihara perangkat lunak Siakad yang dikirimkan, penting untuk memberikan dokumentasi yang jelas dan panduan pemeliharaan kepada mereka, termasuk langkah-langkah pemeliharaan rutin, pembaruan keamanan, dan pemantauan sistem untuk mendeteksi dan menangani ancaman keamanan yang mungkin timbul.

2.6 User Documentation

Berikut adalah beberapa komponen dokumentasi pengguna yang umumnya disertakan bersama perangkat lunak:

 

1. Panduan Pengguna (User Manual):

   - Dokumen yang memberikan panduan langkah demi langkah tentang cara menggunakan perangkat lunak.

   - Berisi deskripsi fitur, instruksi instalasi, konfigurasi, navigasi antarmuka, dan penjelasan tentang fungsi-fungsi utama perangkat lunak.

   - Format pengiriman: Dokumen teks, PDF, HTML.

 

2. Bantuan Online (Online Help):

   - Sistem bantuan terintegrasi yang dapat diakses langsung dari antarmuka pengguna perangkat lunak.

   - Memberikan informasi kontekstual dan instruksi lebih rinci tentang penggunaan perangkat lunak.

   - Format pengiriman: HTML, Wiki dalam aplikasi.

 

3. Tutorial:

   - Materi atau rekaman video yang memberikan panduan praktis dan langkah demi langkah tentang bagaimana menggunakan fitur atau menyelesaikan tugas tertentu dalam perangkat lunak.

   - Biasanya berfokus pada skenario penggunaan umum dan memberikan contoh konkret.

   - Format pengiriman: Video (MP4, AVI, MOV), HTML.

 

4. FAQ (Frequently Asked Questions):

   - Daftar pertanyaan yang sering diajukan oleh pengguna beserta jawaban yang relevan.

   - Memberikan solusi cepat untuk masalah umum atau kebingungan yang mungkin dialami pengguna.

   - Format pengiriman: Dokumen teks, HTML.

 

5. Knowledge Base:

   - Kumpulan artikel atau entri dalam basis pengetahuan yang berisi informasi lebih lanjut tentang fitur, konfigurasi, pemecahan masalah, dan saran penggunaan perangkat lunak.

   - Biasanya dikelola secara online dan dapat diakses oleh pengguna dengan menggunakan kata kunci pencarian.

   - Format pengiriman: HTML, Wiki dalam aplikasi.

 

6. Petunjuk Pemecahan Masalah (Troubleshooting Guide):

   - Dokumen yang memberikan langkah-langkah untuk mengidentifikasi, mendiagnosis, dan memecahkan masalah umum yang mungkin dihadapi oleh pengguna.

   - Berisi daftar masalah umum dan solusi yang terkait.

   - Format pengiriman: Dokumen teks, PDF, HTML.

 

Format atau standar pengiriman dokumentasi pengguna yang diketahui termasuk teks, PDF, HTML, video (MP4, AVI, MOV), dan wiki dalam aplikasi. Pilihan format tergantung pada kebutuhan perusahaan, preferensi pengguna, dan kebutuhan aksesibilitas serta kemudahan pemeliharaan dan distribusi.

2.7 Assumptions and Dependenciesa

1. Sistem Operasi: Jika Siakad dikembangkan untuk berjalan di atas sistem operasi tertentu, seperti Windows, Linux, atau macOS, maka proyek ini akan memiliki ketergantungan terhadap keberadaan dan kompatibilitas sistem operasi yang dipilih.

2. Basis Data: Jika proyek Siakad menggunakan sistem manajemen basis data (DBMS) tertentu, seperti MySQL, PostgreSQL, atau Oracle, maka proyek ini akan memiliki ketergantungan terhadap keberadaan dan kompatibilitas DBMS tersebut.

3. Kerangka Kerja (Framework) dan Perpustakaan: Jika Siakad memanfaatkan kerangka kerja atau perpustakaan perangkat lunak pihak ketiga, seperti Laravel, Django, atau Spring, maka proyek ini akan memiliki ketergantungan terhadap keberadaan dan kompatibilitas kerangka kerja atau perpustakaan tersebut.

4.  Integrasi Sistem Eksternal: Jika Siakad diintegrasikan dengan sistem eksternal, seperti sistem keuangan, sistem kepegawaian, atau sistem perpustakaan, maka proyek ini akan memiliki ketergantungan terhadap keberadaan dan interoperabilitas dengan sistem-sistem eksternal tersebut. Infrastruktur Jaringan: Jika Siakad bergantung pada infrastruktur jaringan tertentu, seperti ketersediaan jaringan yang andal, kecepatan jaringan yang cukup, atau keamanan jaringan yang memadai, maka proyek ini akan memiliki ketergantungan terhadap infrastruktur jaringan yang memadai.

5.  Kebijakan dan Standar Organisasi: Jika proyek Siakad harus mematuhi kebijakan dan standar keamanan, privasi, atau pengembangan perangkat lunak yang ditetapkan oleh organisasi atau lembaga tertentu, maka proyek ini akan memiliki ketergantungan terhadap kepatuhan terhadap kebijakan dan standar tersebut.

6. Lisensi dan Perizinan: Jika proyek Siakad menggunakan komponen perangkat lunak pihak ketiga yang memiliki lisensi atau perizinan tertentu, maka proyek ini akan memiliki ketergantungan terhadap ketersediaan, kompatibilitas, dan kepatuhan terhadap lisensi dan perizinan tersebut.

3. External Interface Requirements

3.1 User Interfaces

Dalam Siakad, beberapa komponen perangkat lunak yang memerlukan antarmuka pengguna adalah sebagai berikut:

 

1. Halaman Login:

 

Antarmuka pengguna untuk masuk ke sistem dengan menggunakan akun pengguna yang valid.

Biasanya berisi formulir untuk memasukkan nama pengguna dan kata sandi.

 

2.Dashboard atau Beranda:

 

Antarmuka pengguna utama setelah masuk ke sistem.

Menampilkan informasi umum dan ringkasan terkait data akademik, seperti jadwal kuliah, informasi mahasiswa, pemberitahuan, dan tugas terkini.

 

3. Manajemen Mahasiswa:

 

Antarmuka untuk mengelola data mahasiswa, termasuk pendaftaran, pembaruan informasi pribadi, dan penugasan program studi atau mata kuliah.

Biasanya mencakup formulir pengisian data mahasiswa, pencarian, pengelolaan kelompok, dan proses pengajuan.

 

4.Jadwal Kuliah:

 

Antarmuka untuk melihat dan mengelola jadwal kuliah, termasuk penambahan atau penghapusan mata kuliah, pengaturan waktu dan tempat kuliah, dan tampilan jadwal per minggu atau per semester.

 

5.Transkrip Akademik:

 

Antarmuka untuk melihat transkrip akademik mahasiswa, termasuk catatan nilai, prestasi akademik, dan informasi mengenai kredit yang diperoleh.

 

6. Pendaftaran Mata Kuliah:

 

Antarmuka untuk pendaftaran mata kuliah, termasuk pencarian mata kuliah yang tersedia, penambahan atau penghapusan mata kuliah, dan verifikasi persyaratan kursus.

 

7.Administrasi Akademik:

 

Antarmuka untuk administrasi akademik, seperti manajemen program studi, penjadwalan ujian, pengelolaan kurikulum, dan pengaturan persyaratan kelulusan.

 

8. Pengelolaan Pengumuman:

 

Antarmuka untuk mengelola pengumuman dan pemberitahuan penting, termasuk penambahan, pengeditan, dan penghapusan pengumuman.

 

9.Laporan dan Analisis:

 

Antarmuka untuk menghasilkan laporan dan analisis data akademik, seperti laporan kehadiran, prestasi akademik, atau statistik mahasiswa.

 

10.Pengaturan Pengguna:

 

Antarmuka untuk mengelola pengaturan pengguna, seperti pengaturan preferensi, pengaturan keamanan, dan pengelolaan hak akses.

3.2 Hardware Interfaces

Hardware interface pada Siakad mengacu pada koneksi dan interaksi perangkat keras dengan sistem. Beberapa komponen perangkat keras yang mungkin terlibat dalam antarmuka perangkat keras Siakad dapat mencakup:

 

1. Server:

 

Siakad dapat dijalankan di server fisik atau virtual yang memenuhi persyaratan sistem operasi dan perangkat keras yang telah ditentukan.

Spesifikasi server, seperti kapasitas penyimpanan, memori, prosesor, dan kecepatan jaringan, harus memadai untuk menangani beban kerja Siakad.

 

2. Klien:

 

Klien dalam konteks Siakad dapat berupa komputer desktop, laptop, tablet, atau smartphone yang digunakan oleh pengguna untuk mengakses aplikasi Siakad.

Klien harus memiliki konektivitas jaringan yang memadai dan mendukung sistem operasi dan perangkat keras yang kompatibel dengan Siakad.

 

3. Jaringan:

 

Siakad membutuhkan koneksi jaringan yang andal untuk memungkinkan pengguna mengakses sistem secara remote.

Infrastruktur jaringan harus mendukung kecepatan transfer data yang cukup agar respons aplikasi tetap optimal.

 

4. Periferal:

 

Dalam beberapa kasus, Siakad mungkin berinteraksi dengan perangkat keras periferal seperti printer, pemindai, atau perangkat keras lainnya untuk keperluan cetak atau pemrosesan data tertentu.

3.3 Software Interfaces

Software interfaces pada Siakad merujuk pada koneksi dan interaksi perangkat lunak dengan komponen atau sistem lainnya. Berikut adalah beberapa contoh software interfaces yang mungkin terdapat dalam Siakad:

 

1. Database Management System (DBMS):

 

Siakad membutuhkan koneksi dengan DBMS untuk menyimpan dan mengelola data akademik, seperti data mahasiswa, jadwal kuliah, dan catatan nilai.

DBMS yang umum digunakan dalam Siakad antara lain MySQL, PostgreSQL, atau Oracle.

 

2. Sistem Operasi:

 

Siakad dapat dijalankan di sistem operasi tertentu, seperti Windows, Linux, atau macOS.

Antarmuka perangkat lunak harus kompatibel dengan sistem operasi yang digunakan untuk memastikan fungsionalitas yang tepat.

 

3. Web Server:

 

Siakad bisa berjalan di atas web server seperti Apache atau Nginx.

Web server ini digunakan untuk melayani aplikasi web Siakad kepada pengguna.

 

4. API atau Web Services:

 

Siakad dapat berinteraksi dengan sistem lain melalui API (Application Programming Interface) atau layanan web.

Contohnya, Siakad bisa berintegrasi dengan sistem keuangan, sistem perpustakaan, atau sistem kepegawaian melalui API atau layanan web yang disediakan oleh sistem tersebut.

 

5. Messaging Services:

 

Siakad mungkin menggunakan layanan pesan (messaging services) untuk mengirim pemberitahuan atau komunikasi penting kepada pengguna, seperti pengingat pembayaran atau perubahan jadwal.

 

6. File System:

 

Siakad dapat berinteraksi dengan sistem file untuk menyimpan dan mengelola dokumen terkait akademik, seperti pengumuman, silabus, atau tugas.

 

7. Integrasi dengan Aplikasi Pihak Ketiga:

 

Siakad mungkin perlu berintegrasi dengan aplikasi pihak ketiga, seperti sistem pembayaran online atau aplikasi email, untuk memfasilitasi proses pembayaran atau komunikasi dengan pengguna.

3.4 Communications Interfaces

Sistem Informasi Registrasi Akademik, Siakad Teknokrat dapat memiliki beberapa Communications Interfaces yang digunakan untuk berkomunikasi dengan pengguna atau sistem lainnya. Berikut adalah beberapa contoh Communications Interfaces yang ada dalam Siakad Teknokrat:

 

1. Antarmuka Pengguna (User Interface):

 

Antarmuka pengguna adalah komponen yang memungkinkan interaksi langsung antara pengguna dan aplikasi Siakad.

Antarmuka ini dapat berupa antarmuka web yang diakses melalui browser atau aplikasi mobile yang diinstal di perangkat pengguna.

 

2. Protokol Jaringan:

 

Siakad Teknokrat menggunakan protokol jaringan seperti HTTP (Hypertext Transfer Protocol) atau HTTPS (HTTP Secure) untuk komunikasi antara klien (pengguna) dan server Siakad.

Protokol ini digunakan untuk permintaan dan pengiriman data antara klien dan server.

 

3. Layanan Email:

 

Siakad Teknokrat mungkin menggunakan layanan email untuk mengirim pemberitahuan, konfirmasi, atau pesan lainnya kepada pengguna.

Integrasi dengan layanan email dapat memungkinkan pengiriman dan penerimaan pesan melalui protokol email standar seperti SMTP (Simple Mail Transfer Protocol) atau POP (Post Office Protocol).

 

4. SMS Gateway:

 

Siakad Teknokrat dapat menggunakan SMS Gateway untuk mengirimkan pemberitahuan atau pesan teks kepada pengguna melalui layanan SMS.

Integrasi dengan SMS Gateway memungkinkan pengiriman pesan langsung ke ponsel pengguna melalui protokol yang disediakan oleh gateway tersebut.

 

5. Protokol Integrasi dengan Sistem Eksternal:

 

Siakad Teknokrat mungkin perlu berintegrasi dengan sistem eksternal, seperti sistem keuangan atau sistem perpustakaan perguruan tinggi.

Protokol integrasi seperti SOAP (Simple Object Access Protocol), REST (Representational State Transfer), atau XML-RPC dapat digunakan untuk pertukaran data antara Siakad dan sistem eksternal.

4. System Features

Sebagai aplikasi Sistem Informasi Registrasi Akademik, Siakad memiliki berbagai fitur yang dirancang untuk memenuhi kebutuhan manajemen data akademik dan administrasi di lingkungan perguruan tinggi. Berikut adalah beberapa fitur umum yang mungkin ada dalam sistem Siakad:

 

1. Manajemen Mahasiswa:

 

Pendaftaran mahasiswa baru. Pembaruan dan pengelolaan data mahasiswa seperti informasi pribadi, kontak, dan riwayat pendidikan. Penugasan program studi atau mata kuliah.

 

2. Pendaftaran Mata Kuliah:

 

Pencarian dan pemilihan mata kuliah yang tersedia. Proses pendaftaran, penambahan, penghapusan, dan pengubahan mata kuliah. Verifikasi persyaratan kursus.

 

3. Jadwal Kuliah:

 

Penjadwalan dan pengelolaan jadwal kuliah mahasiswa. Tampilan jadwal per minggu atau per semester. Penyesuaian jadwal dan lokasi kuliah jika diperlukan.

 

4. Transkrip Akademik:

 

Penyimpanan dan penampilan transkrip akademik mahasiswa. Catatan nilai, prestasi akademik, dan informasi kredit yang diperoleh.

 

5. Administrasi Akademik:

 

Manajemen program studi, kurikulum, dan persyaratan kelulusan. Penjadwalan ujian dan pengelolaan hasil ujian. Pengaturan periode akademik dan kalender akademik.

 

6. Pengelolaan Pengumuman:

 

Penambahan, pengeditan, dan penghapusan pengumuman dan pemberitahuan penting. Pengaturan pengumuman berdasarkan kategori atau kelompok pengguna.

 

7. Manajemen Dosen:

 

Pencatatan dan pengelolaan data dosen, termasuk informasi pribadi dan kualifikasi akademik.

Penugasan pengajaran dan pemantauan kinerja dosen.

 

8. Laporan dan Analisis:

 

Generasi laporan dan analisis data akademik, seperti laporan kehadiran, prestasi akademik, atau statistik mahasiswa. Analisis data untuk pengambilan keputusan dan perencanaan strategis.

 

9. Manajemen Keuangan:

 

Pengelolaan biaya kuliah, pembayaran, dan tagihan mahasiswa. Integrasi dengan sistem pembayaran online atau sistem keuangan perguruan tinggi.

 

10. Pengaturan Pengguna:

 

Pengelolaan pengguna dan hak akses, termasuk administrasi akun pengguna. Pengaturan preferensi pengguna dan pengaturan keamanan.

4.1 System Feature 1

4.1.1 Description and Priority

prioritasnya berdasarkan manfaat, penalti, biaya, dan risiko relatif:

 

1. Peningkatan Keamanan Sistem (Prioritas: Tinggi) Deskripsi: Fitur ini melibatkan penguatan keamanan sistem untuk melindungi data sensitif dan mencegah serangan cyber. Ini dapat meliputi penerapan otentikasi ganda, enkripsi data, pemantauan keamanan yang lebih baik, dan pengujian keamanan yang teratur. Manfaat: Meningkatkan perlindungan terhadap ancaman keamanan dan melindungi data pelanggan atau pengguna. Penalti: Potensi serangan keamanan dan kehilangan data pelanggan atau pengguna jika langkah keamanan tidak memadai. Biaya: Mungkin membutuhkan investasi dalam perangkat lunak, infrastruktur, dan sumber daya manusia yang berkualifikasi. Risiko: Risiko serangan keamanan dan reputasi yang dapat berdampak negatif jika langkah keamanan tidak memadai.

 

2. Peningkatan Kinerja Aplikasi (Prioritas: Sedang) Deskripsi: Fitur ini fokus pada meningkatkan kinerja aplikasi, seperti waktu respons yang lebih cepat, peningkatan skalabilitas, dan pengoptimalan sumber daya. Hal ini dapat mencakup pembaruan arsitektur, pengkodean yang lebih efisien, dan penggunaan teknologi terbaru. Manfaat: Pengalaman pengguna yang lebih baik, peningkatan efisiensi operasional, dan kemampuan untuk menangani lebih banyak pengguna atau data. Penalti: Performa aplikasi yang buruk dapat menyebabkan kehilangan pelanggan, pengurangan produktivitas, dan ketidakpuasan pengguna. Biaya: Mungkin membutuhkan pengembangan perangkat lunak tambahan, peningkatan infrastruktur, dan waktu pengembangan. Risiko: Risiko mengalami masalah teknis atau kompatibilitas saat melakukan pembaruan atau perubahan yang signifikan pada aplikasi.

 

 

3. Peningkatan Antarmuka Pengguna (Prioritas: Rendah) Deskripsi: Fitur ini melibatkan perbaikan dan penyesuaian antarmuka pengguna, seperti perubahan tata letak, peningkatan navigasi, dan peningkatan kegunaan. Hal ini bertujuan untuk meningkatkan pengalaman pengguna dan membuat aplikasi lebih mudah digunakan. Manfaat: Meningkatkan kepuasan pengguna, mengurangi kesalahan pengguna, dan mempermudah adopsi aplikasi. Penalti: Jika antarmuka pengguna yang buruk atau sulit digunakan dapat menyebabkan frustrasi pengguna dan kemungkinan pengurangan pengguna. Biaya: Membutuhkan waktu dan upaya untuk merancang ulang antarmuka pengguna, melakukan pengujian pengguna, dan menerapkan perubahan. Risiko: Risiko mengalami masalah kompatibilitas atau perlawanan pengguna terhadap perubahan pada antarmuka pengguna yang telah ada.

 

4.1.2 Stimulus/Response Sequences

perilaku yang ditentukan untuk fitur ini:

Tindakan Pengguna:

1. Pengguna membuka aplikasi.

2. Pengguna memasukkan nama pengguna dan kata sandi.

3. Pengguna mengklik tombol "Masuk".

Respons Sistem:

1. Sistem memverifikasi kecocokan nama pengguna dan kata sandi.

2. Jika verifikasi berhasil, sistem menampilkan halaman beranda aplikasi.

3. Jika verifikasi gagal, sistem menampilkan pesan kesalahan dan meminta pengguna untuk memasukkan kredensial yang valid.

Tindakan Pengguna:

1. Pengguna memilih opsi "Pengaturan" dalam menu aplikasi.

2. Pengguna mengklik opsi "Keamanan".

Respons Sistem:

1. Sistem menampilkan halaman pengaturan keamanan.

2. Pengguna melihat opsi yang tersedia untuk meningkatkan keamanan sistem, seperti otentikasi ganda atau enkripsi data.

Tindakan Pengguna:

1. Pengguna memilih opsi "Otentikasi Ganda".

2. Pengguna mengikuti langkah-langkah untuk mengatur otentikasi ganda, seperti memasang aplikasi otentikasi pada perangkat seluler mereka dan menghubungkannya dengan akun mereka.

Respons Sistem:

1. Sistem memvalidasi langkah-langkah yang diambil oleh pengguna.

2. Jika proses konfigurasi otentikasi ganda berhasil, sistem mengonfirmasi pengaturan yang sukses dan mengaktifkan lapisan keamanan tambahan.

3. Jika terjadi kesalahan selama proses konfigurasi, sistem menampilkan pesan kesalahan dan memberikan petunjuk untuk mengatasi masalah tersebut.

Tindakan Pengguna:

1. Pengguna menavigasi ke halaman "Pengguna" dalam pengaturan aplikasi.

2. Pengguna mengklik opsi "Ubah Kata Sandi".

Respons Sistem:

1. Sistem menampilkan formulir pengubahan kata sandi.

2. Pengguna memasukkan kata sandi lama dan kata sandi baru.

3. Sistem memvalidasi kata sandi lama dan memperbarui kata sandi baru jika semua persyaratan terpenuhi.

4. Sistem memberikan konfirmasi bahwa kata sandi berhasil diubah.

Urutan ini menggambarkan beberapa interaksi yang mungkin terjadi antara pengguna dan sistem terkait dengan fitur peningkatan keamanan sistem.

4.1.3 Functional Requirements

1. Sistem harus menyediakan opsi otentikasi ganda untuk pengguna.

· Pengguna harus dapat mengaktifkan dan menonaktifkan otentikasi ganda.

· Sistem harus mendukung metode otentikasi ganda, seperti menggunakan aplikasi otentikasi atau mengirimkan kode verifikasi melalui SMS atau email.

· Sistem harus memvalidasi kode verifikasi yang dimasukkan oleh pengguna.

· Jika pengguna gagal memasukkan kode verifikasi yang valid, sistem harus memberikan pesan kesalahan yang tepat dan memungkinkan pengguna untuk mencoba lagi.

 

2. Sistem harus menerapkan enkripsi data untuk melindungi informasi sensitif.

· Data harus dienkripsi saat disimpan di database atau saat ditransmisikan melalui jaringan.

· Sistem harus menggunakan algoritma enkripsi yang aman dan standar industri.

· Sistem harus memiliki mekanisme untuk mengelola dan memperbarui kunci enkripsi.

· Jika terjadi kesalahan saat mengenkripsi atau mendekripsi data, sistem harus memberikan pesan kesalahan yang jelas dan mengambil tindakan pemulihan yang sesuai.

 

3. Sistem harus memiliki mekanisme pemantauan keamanan yang efektif.

· Sistem harus mampu mendeteksi aktivitas mencurigakan atau serangan yang mencoba mengakses data yang tidak sah.

· Sistem harus mempertahankan catatan log kegiatan pengguna dan peristiwa keamanan.

· Sistem harus memiliki fitur peringatan atau notifikasi untuk menginformasikan administrator sistem tentang potensi ancaman keamanan.

· Sistem harus memiliki mekanisme untuk menganalisis dan melaporkan kejadian keamanan yang terjadi.

 

4. Sistem harus menyediakan mekanisme pengaturan kebijakan keamanan.

· Pengguna harus dapat mengonfigurasi kebijakan keamanan, seperti persyaratan kata sandi yang kuat atau periode kadaluarsa sesi.

· Sistem harus memvalidasi kebijakan keamanan yang ditetapkan oleh pengguna dan memberikan umpan balik jika ada kebijakan yang tidak memenuhi persyaratan.

 

5. Sistem harus memiliki proses pengujian keamanan yang teratur.

· Sistem harus menjalankan pengujian keamanan secara berkala untuk mengidentifikasi kerentanan dan kelemahan potensial.

· Sistem harus melaporkan hasil pengujian keamanan dan mengambil tindakan yang sesuai untuk memperbaiki masalah yang ditemukan.

 

6. Sistem harus memiliki mekanisme pemulihan keadaan darurat.

· Sistem harus memiliki rencana pemulihan bencana yang terdefinisi dengan jelas untuk mengatasi kejadian yang mengancam keberlangsungan operasional sistem.

· Sistem harus mampu memulihkan data dan konfigurasi keadaan terakhir yang diketahui yang aman.

 

5. Other Nonfunctional Requirements

5.1 Performance Requirements

Persyaratan Kinerja untuk Produk dalam Berbagai Keadaan:

 

1. Waktu Respons Sistem:

 

Persyaratan: Sistem harus memberikan respons dalam waktu kurang dari 100 milidetik dalam semua keadaan operasional.

Alasan: Waktu respons yang cepat penting untuk memberikan pengalaman pengguna yang responsif dan menyenangkan. Dalam beberapa kasus, seperti aplikasi real-time atau sistem kontrol, waktu respons yang lambat dapat menyebabkan kerugian yang signifikan.

 

2. Kapasitas Beban:

 

Persyaratan: Sistem harus mampu menangani beban maksimum sebesar 1000 transaksi per detik.

Alasan: Dalam situasi di mana terjadi lonjakan aktivitas atau permintaan tinggi, sistem harus tetap dapat beroperasi secara efisien dan mampu menangani beban yang meningkat. Jika kapasitas beban terlampaui, sistem dapat menjadi lambat, tidak responsif, atau bahkan mengalami kegagalan.

 

3. Ketersediaan Sistem:

 

Persyaratan: Sistem harus memiliki tingkat ketersediaan 99,99%, dengan waktu pemulihan setelah kegagalan kurang dari 1 menit.

Alasan: Ketersediaan sistem yang tinggi penting untuk memastikan bahwa pengguna dapat mengakses produk dan layanan dengan minimal gangguan. Downtime yang berkepanjangan dapat menyebabkan kerugian finansial dan kerugian reputasi yang signifikan.

 

4. Skalabilitas:

 

Persyaratan: Sistem harus dapat diskalakan secara horizontal untuk menangani pertumbuhan pengguna yang signifikan.

Alasan: Dalam situasi di mana jumlah pengguna meningkat dengan cepat, sistem harus dapat dengan mudah diperluas untuk menjaga kinerja yang baik. Skalabilitas yang baik memungkinkan penggunaan sumber daya yang efisien dan mencegah penurunan kualitas layanan saat sistem dihadapkan pada beban yang lebih besar.

 

5. Hubungan dengan Sistem Waktu Nyata:

 

Sistem waktu nyata adalah jenis sistem di mana tindakan harus dilakukan dalam batas waktu yang ditentukan agar memberikan respons yang benar atau efektif. Dalam konteks ini, beberapa persyaratan kinerja yang terkait dengan sistem waktu nyata adalah:

 

6. Ketepatan Waktu:

 

Persyaratan: Sistem harus memberikan respons dalam waktu kurang dari 10 milidetik dalam semua situasi waktu nyata.

Alasan: Ketepatan waktu adalah kunci dalam sistem waktu nyata. Jika respons terlambat, sistem tidak dapat memberikan hasil yang diharapkan atau mengambil tindakan yang diperlukan tepat waktu.

 

7. Prediktabilitas:

 

Persyaratan: Sistem harus memiliki latensi yang konsisten dalam menjalankan tugas-tugas waktu nyata.

Alasan: Dalam sistem waktu nyata, penting untuk memiliki prediktabilitas yang tinggi dalam latensi. Hal ini memastikan bahwa tindakan dapat diambil dengan kepastian dan menghindari keadaan yang tidak diinginkan akibat ketidaktepatan waktu atau jitter yang tinggi.

Keandalan:

 

Persyaratan: Sistem harus memiliki tingkat keandal

5.2 Safety Requirements

Kestabilan dan Ketahanan Fisik:

 

Persyaratan: Produk harus dirancang dan dibangun sedemikian rupa sehingga tahan terhadap guncangan, getaran, atau tekanan fisik yang mungkin terjadi selama penggunaan normal.

Tindakan yang harus diambil: Penggunaan bahan yang kuat dan tahan lama, perancangan yang kokoh, serta pengujian kualitas yang memadai untuk memastikan kestabilan dan ketahanan fisik produk.

Tindakan yang harus dicegah: Menghindari penggunaan bahan yang rapuh atau rentan terhadap kerusakan fisik, serta memastikan bahwa perancangan produk tidak memiliki titik lemah yang rentan patah atau rusak.

 

Keamanan Listrik:

 

Persyaratan: Produk harus memenuhi standar keamanan listrik yang relevan, seperti sertifikasi keselamatan UL (Underwriters Laboratories) atau sertifikasi setara yang berlaku di wilayah penggunaan.

Tindakan yang harus diambil: Menerapkan sistem perlindungan terhadap kejutan listrik, isolasi yang memadai, penggunaan kabel dan konektor yang sesuai, serta pengujian untuk memastikan bahwa produk memenuhi persyaratan keamanan listrik.

Tindakan yang harus dicegah: Menghindari penggunaan komponen listrik yang tidak memenuhi standar keamanan yang berlaku, serta memastikan bahwa produk tidak memiliki risiko kebocoran listrik atau kejutan yang dapat membahayakan pengguna.

 

Bahaya Termal:

 

Persyaratan: Produk harus dirancang untuk mengurangi risiko kebakaran, overheat, atau paparan panas berlebih yang dapat membahayakan pengguna.

Tindakan yang harus diambil: Penggunaan material tahan api, pengendalian suhu yang efektif, dan pemasangan perangkat perlindungan termal seperti sensor suhu dan pengatur suhu otomatis.

Tindakan yang harus dicegah: Menghindari penggunaan material yang mudah terbakar atau rentan terhadap overheat, serta memastikan ventilasi yang memadai untuk mendinginkan komponen yang memancarkan panas.

 

Kepatuhan terhadap Kebijakan atau Peraturan Eksternal:

 

Persyaratan: Produk harus mematuhi semua kebijakan atau peraturan eksternal yang relevan yang terkait dengan keselamatan produk, misalnya ISO 9001, ISO 14001, atau standar industri yang berlaku.

Tindakan yang harus diambil: Memahami dan menerapkan persyaratan yang tercantum dalam kebijakan atau peraturan eksternal yang berlaku, serta menjalankan pengujian dan prosedur verifikasi untuk memastikan kepatuhan produk.

Tindakan yang harus dicegah: Menghindari mengabaikan atau melanggar kebijakan atau peraturan eksternal yang berlaku, serta memastikan bahwa produk tidak menimbulkan risiko atau bahaya yang melanggar

5.3 Security Requirements

Perlindungan Data Pribadi:

 

Persyaratan: Produk harus mematuhi semua kebijakan privasi yang berlaku, seperti GDPR (General Data Protection Regulation) di Uni Eropa atau regulasi privasi lainnya yang relevan di wilayah penggunaan.

Tindakan yang harus diambil: Mengumpulkan, mengelola, dan menyimpan data pribadi pengguna dengan memperhatikan prinsip-prinsip privasi, mengimplementasikan langkah-langkah keamanan teknis dan organisasi yang sesuai, serta memberikan pengaturan privasi yang transparan kepada pengguna.

Tindakan yang harus dicegah: Menghindari penggunaan data pribadi pengguna untuk tujuan yang tidak sah atau tanpa persetujuan mereka, serta memastikan bahwa data pribadi dijaga kerahasiaannya dan dilindungi dari akses yang tidak sah.

Keamanan Sistem dan Jaringan:

 

Persyaratan: Produk harus memiliki langkah-langkah keamanan yang memadai untuk melindungi sistem dan jaringan terhadap ancaman keamanan seperti serangan siber atau akses yang tidak sah.

Tindakan yang harus diambil: Menerapkan enkripsi data yang sensitif, penggunaan protokol keamanan yang kuat, pengaturan akses yang tepat berdasarkan peran pengguna, pemantauan aktif terhadap serangan atau anomali, serta melakukan pembaruan keamanan secara teratur.

Tindakan yang harus dicegah: Menghindari penggunaan teknologi atau komponen yang rentan terhadap serangan atau eksploitasi keamanan, serta memastikan bahwa akses ke sistem dan jaringan dibatasi hanya pada pihak yang berwenang.

Autentikasi Identitas Pengguna:

 

Persyaratan: Produk harus memiliki mekanisme autentikasi yang kuat untuk memastikan identitas pengguna sebelum memberikan akses ke fitur atau data yang sensitif.

Tindakan yang harus diambil: Mengimplementasikan metode autentikasi yang andal, seperti kata sandi yang kuat, otentikasi dua faktor, atau pemindaian biometrik, serta memastikan kebijakan kata sandi yang baik dan pengaturan sesuai tingkat akses.

Tindakan yang harus dicegah: Menghindari penggunaan metode autentikasi yang lemah atau mudah ditebak, serta memastikan bahwa tidak ada celah keamanan yang memungkinkan akses tidak sah ke akun pengguna.

Kepatuhan terhadap Kebijakan atau Peraturan Eksternal:

 

Persyaratan: Produk harus mematuhi semua kebijakan atau peraturan eksternal yang berlaku terkait dengan keamanan atau privasi, seperti ISO 27001 atau NIST Cybersecurity Framework.

Tindakan yang harus diambil: Memahami dan menerapkan persyaratan yang tercantum dalam kebijakan atau peraturan eksternal, mengadopsi praktik-praktik keamanan terbaik yang relevan, serta melakukan audit keamanan secara berkala untuk memastikan kepatuhan

5.4 Software Quality Attributes

Ketersediaan:

 

Persyaratan: Sistem harus memiliki tingkat ketersediaan minimal 99,9% dalam periode waktu 1 tahun.

Alasan: Ketersediaan yang tinggi penting bagi pengguna yang mengandalkan produk untuk tugas-tugas sehari-hari. Downtime yang berkepanjangan dapat mengganggu produktivitas dan menyebabkan kerugian finansial.

Kebenaran:

 

Persyaratan: Produk harus memberikan hasil yang akurat dengan tingkat kesalahan kurang dari 1%.

Alasan: Kebenaran data atau hasil yang dihasilkan oleh produk adalah faktor penting dalam pengambilan keputusan yang tepat. Kesalahan yang signifikan dapat mengarah pada konsekuensi serius, terutama dalam konteks sistem kritis.

Interoperabilitas:

 

Persyaratan: Produk harus dapat berintegrasi dengan sistem atau perangkat lain yang umum digunakan dalam lingkungan yang relevan.

Alasan: Interoperabilitas memungkinkan penggunaan produk secara efisien dengan infrastruktur yang ada. Kemampuan untuk berkomunikasi dan berinteraksi dengan sistem lain mengurangi hambatan dalam penggunaan dan meningkatkan nilai produk.

Pemeliharaan:

 

Persyaratan: Produk harus dapat diperbaiki atau diperbarui dengan mudah dengan waktu pemulihan kurang dari 1 jam.

Alasan: Kemampuan untuk memelihara dan memperbaiki produk dengan cepat dan efisien mengurangi dampak downtime dan biaya pemeliharaan. Hal ini penting untuk memastikan ketersediaan dan kinerja yang optimal.

Kegunaan:

 

Persyaratan: Produk harus memenuhi 90% persentil skor kepuasan pengguna dalam hal kemudahan penggunaan dan kepuasan pengguna.

Alasan: Kegunaan yang baik meningkatkan pengalaman pengguna, mengurangi waktu belajar yang diperlukan untuk menguasai produk, dan mengurangi kesalahan pengguna. Produk yang mudah digunakan lebih disukai oleh pengguna dan mengurangi kebutuhan pelatihan yang intensif.

Ketahanan:

 

Persyaratan: Produk harus dapat beroperasi tanpa kegagalan dalam kondisi lingkungan yang keras, seperti suhu ekstrem, kelembaban tinggi, atau getaran kuat.

Alasan: Ketahanan fisik produk penting dalam situasi di mana penggunaan produk dapat terjadi di lingkungan yang tidak terkendali. Kemampuan produk untuk bertahan dalam kondisi ekstrem memastikan keandalan dan kinerja yang konsisten.

Penting untuk dicatat bahwa preferensi relatif tergantung pada pengguna dan konteks penggunaan produk. Dalam beberapa kasus, kemudahan penggunaan mungkin menjadi preferensi utama, sementara dalam kasus lain, ketersediaan atau ketahanan mungkin lebih diutamakan.

5.5 Business Rules

Otorisasi Pengguna:

 

Prinsip: Hanya pengguna yang memiliki hak akses yang tepat yang dapat menjalankan fungsi atau mengakses fitur tertentu dalam produk.

Implikasi Fungsional: Diperlukan sistem otorisasi yang memvalidasi identitas pengguna dan memberikan izin akses berdasarkan peran atau hak pengguna. Fitur-fitur produk harus dikendalikan sesuai dengan izin yang diberikan.

Pemisahan Tugas (Separation of Duties):

 

Prinsip: Fungsi yang kritis atau berisiko tinggi harus dibagi di antara beberapa individu atau peran pengguna untuk mengurangi risiko penyalahgunaan kekuasaan atau pelanggaran keamanan.

Implikasi Fungsional: Produk harus mendukung pengaturan yang memungkinkan pemisahan tugas dengan mengatur ketergantungan dan pembatasan akses terhadap fungsi-fungsi tertentu. Misalnya, penggunaan tanda tangan digital ganda atau persetujuan dari pihak yang berbeda sebelum menjalankan tindakan kritis.

Mode Administrasi atau Konfigurasi:

 

Prinsip: Fungsi administrasi atau konfigurasi yang mengatur perilaku atau pengaturan produk harus diperuntukkan hanya bagi individu atau peran yang berwenang.

Implikasi Fungsional: Produk harus memiliki mode khusus atau akses terbatas yang hanya diberikan kepada pengguna atau administrator yang berwenang untuk melakukan tugas administratif atau konfigurasi. Fitur ini melindungi pengaturan produk dari manipulasi yang tidak sah atau tidak sengaja oleh pengguna biasa.

Prinsip Keamanan Default:

 

Prinsip: Produk harus memiliki konfigurasi awal yang aman dan sesuai dengan standar keamanan terbaik.

Implikasi Fungsional: Produk harus dikonfigurasi dengan pengaturan keamanan default yang memadai dan meminta pengguna untuk mengubah kata sandi awal, mengaktifkan fitur keamanan, atau melengkapi langkah-langkah keamanan tambahan saat pertama kali digunakan.

Mekanisme Pelaporan dan Audit:

 

Prinsip: Produk harus memiliki mekanisme yang memungkinkan pengguna atau administrator untuk melacak aktivitas sistem dan menghasilkan laporan audit yang relevan.

Implikasi Fungsional: Produk harus memiliki fitur pencatatan aktivitas (logging) yang memadai dan kemampuan menghasilkan laporan audit yang mencakup kegiatan pengguna, perubahan konfigurasi, dan kejadian keamanan penting lainnya.

Penerapan prinsip-prinsip pengoperasian ini mungkin menyiratkan persyaratan fungsional spesifik, seperti fitur autentikasi yang kuat, pengaturan akses berbasis peran, atau log aktivitas yang terperinci. Tujuannya adalah untuk menegakkan aturan dan memastikan operasional produk yang aman dan sesuai dengan kebutuhan pengguna.

6. Other Requirements

Persyaratan Basis Data:

 

Persyaratan: Produk harus menggunakan basis data yang aman, handal, dan skalabel untuk menyimpan dan mengelola data.

Alasan: Basis data yang baik adalah kunci untuk menyediakan kinerja yang baik, keamanan data, dan kemampuan untuk mengakses dan memanipulasi data dengan efisien.

Persyaratan Internasionalisasi:

 

Persyaratan: Produk harus mendukung lokalitas dan internasionalisasi dengan menyediakan dukungan untuk bahasa, format tanggal dan waktu, mata uang, serta perbedaan budaya dan kebiasaan.

Alasan: Dalam lingkungan global yang semakin terhubung, kemampuan produk untuk beradaptasi dengan kebutuhan pengguna dari berbagai negara dan budaya menjadi penting untuk mencapai daya saing dan penerimaan yang lebih luas.

Persyaratan Hukum dan Regulasi:

 

Persyaratan: Produk harus mematuhi semua peraturan, hukum, dan standar industri yang berlaku terkait dengan penggunaan, perlindungan data, keamanan, atau persyaratan khusus lainnya.

Alasan: Keberhasilan produk tergantung pada kemampuannya untuk beroperasi dalam batas hukum dan memenuhi persyaratan peraturan yang relevan. Kepatuhan terhadap hukum dan regulasi juga membantu melindungi pengembang dan pengguna dari potensi masalah hukum.

Tujuan Penggunaan Kembali:

 

Persyaratan: Produk harus dirancang dengan prinsip-prinsip penggunaan kembali yang memungkinkan komponen atau fungsi tertentu dapat digunakan kembali di proyek lain atau dalam pengembangan masa depan.

Alasan: Dengan memiliki komponen yang dapat digunakan kembali, pengembang dapat mengurangi waktu dan biaya pengembangan, meningkatkan konsistensi, dan mempercepat inovasi dalam proyek-proyek selanjutnya.

Persyaratan Performa:

 

Persyaratan: Produk harus memiliki kinerja yang responsif dan dapat diandalkan dalam menghadapi beban kerja yang diantisipasi, termasuk waktu respons, kecepatan pemrosesan, dan waktu pemuatan data.

Alasan: Kinerja yang baik menjadi kunci untuk memberikan pengalaman pengguna yang memuaskan dan meningkatkan efisiensi penggunaan produk. Persyaratan kinerja yang jelas membantu pengembang dalam merancang dan menguji produktivitas produk.

Persyaratan Kebijakan Privasi:

 

Persyaratan: Produk harus mematuhi kebijakan privasi yang ditetapkan oleh perusahaan atau standar industri yang berlaku, termasuk pengumpulan, penggunaan, penyimpanan, dan penghapusan data pribadi.

Alasan: Keamanan dan perlindungan privasi data pengguna menjadi perhatian utama di era digital. Mematuhi kebijakan privasi membantu membangun kepercayaan dengan pengguna dan melindungi privasi mereka.

Appendix A: Glossary

API - Application Programming Interface (Antarmuka Pemrograman Aplikasi)

UI - User Interface (Antarmuka Pengguna)

UX - User Experience (Pengalaman Pengguna)

DBMS - Database Management System (Sistem Manajemen Basis Data)

LDAP - Lightweight Directory Access Protocol (Protokol Akses Direktori Ringan)

GUI - Graphical User Interface (Antarmuka Pengguna Grafis)

HTTP - Hypertext Transfer Protocol (Protokol Transfer Hiperteks)

HTTPS - Hypertext Transfer Protocol Secure (Protokol Transfer Hiperteks Aman)

CRM - Customer Relationship Management (Manajemen Hubungan Pelanggan)

ERP - Enterprise Resource Planning (Perencanaan Sumber Daya Perusahaan)

QA - Quality Assurance (Jaminan Kualitas)

API - Application Programming Interface (Antarmuka Pemrograman Aplikasi)

SDK - Software Development Kit (Paket Pengembangan Perangkat Lunak)

UI/UX Design - User Interface/User Experience Design (Desain Antarmuka Pengguna/Pengalaman Pengguna)

KPI - Key Performance Indicator (Indikator Kinerja Utama)

SLA - Service Level Agreement (Perjanjian Tingkat Layanan)

MVP - Minimum Viable Product (Produk Minimum yang Layak)

CI/CD - Continuous Integration/Continuous Deployment (Integrasi Berkelanjutan/Implementasi Berkelanjutan)

ROI - Return on Investment (Pengembalian Investasi)

GDPR - General Data Protection Regulation (Regulasi Perlindungan Data Umum)

PCI DSS - Payment Card Industry Data Security Standard (Standar Keamanan Data Industri Kartu Pembayaran)

UAT - User Acceptance Testing (Pengujian Penerimaan Pengguna)

UI/UX Wireframe - User Interface/User Experience Wireframe (Denah Antarmuka Pengguna/Pengalaman Pengguna)

IoT - Internet of Things (Internet Segala Hal)

MVP - Most Valuable Player (Pemain Terpenting)

 

Appendix B: Analysis Models

Diagram Aliran Data (Data Flow Diagram):

Diagram Aliran Data adalah representasi grafis dari aliran data di dalam sistem. Ini menunjukkan bagaimana data masuk ke sistem, diproses, dan keluar dari sistem. Diagram ini terdiri dari proses, entitas eksternal, dan aliran data antara mereka. Hal ini membantu dalam pemodelan proses bisnis dan mengidentifikasi kebutuhan data.

 

Diagram Kelas (Class Diagram):

Diagram Kelas adalah model yang menggambarkan struktur statis dari sistem dalam hal kelas, atribut, dan hubungan antara mereka. Ini digunakan untuk memodelkan entitas, atribut, dan metode dalam sistem. Diagram Kelas membantu dalam pemodelan objek dan hubungan antara mereka.

 

Diagram Transisi Keadaan (State Transition Diagram):

Diagram Transisi Keadaan adalah model yang menggambarkan transisi antara keadaan yang berbeda dari suatu objek atau sistem. Ini terdiri dari keadaan, peristiwa, dan tindakan yang terjadi saat transisi keadaan. Diagram ini membantu dalam memahami perilaku dinamis sistem.

 

Diagram Hubungan Entitas (Entity Relationship Diagram):

Diagram Hubungan Entitas adalah model yang menggambarkan hubungan antara entitas dalam basis data. Ini menunjukkan entitas, atribut, dan hubungan antara mereka, seperti hubungan satu-ke-banyak atau banyak-ke-banyak. Diagram ini digunakan untuk memodelkan struktur basis data dan ketergantungan antara entitas.

Appendix C: To Be Determined List

 

1. "Building a Web Application with PHP and MySQL" oleh O'Reilly: https://www.oreilly.com/library/view/building-a-web/9781491906958/ Buku ini memberikan panduan langkah-demi-langkah tentang pengembangan aplikasi web dengan menggunakan PHP dan MySQL.

2. "Learning PHP, MySQL & JavaScript: With jQuery, CSS & HTML5" oleh Robin Nixon: https://www.amazon.com/Learning-PHP-MySQL-JavaScript-Javascript/dp/1491978910 Buku ini memberikan pengenalan yang komprehensif tentang PHP, MySQL, JavaScript, jQuery, CSS, dan HTML5, yang merupakan teknologi yang sering digunakan dalam pengembangan aplikasi web.

3. "PHP and MySQL Web Development" oleh Luke Welling dan Laura Thomson: https://www.amazon.com/PHP-MySQL-Web-Development-4th/dp/0672329166 Buku ini memberikan tutorial terperinci tentang pengembangan aplikasi web menggunakan PHP dan MySQL.

4. "Database Systems: Design, Implementation, & Management" oleh Carlos Coronel, Steven Morris, dan Peter Rob: https://www.amazon.com/Database-Systems-Design-Implementation-Management/dp/1337627902 Buku ini fokus pada desain, implementasi, dan manajemen sistem basis data, yang menjadi komponen penting dalam pengembangan aplikasi SIakad.

5. "Web Database Applications with PHP and MySQL" oleh Hugh E. Williams dan David Lane: https://www.amazon.com/Web-Database-Applications-PHP-MySQL/dp/0596000413 Buku ini menyajikan konsep-konsep penting dalam membangun aplikasi web dengan menggunakan PHP dan MySQL.

 

Software Requirement Specification Pattern Pada Aplikasi Sistem Informasi Registrasi Akademik Siakad Teknokrat_Muhamad Rizky Andi_20311107

Software Requirement Specification Pattern Pada Aplikasi Sistem Informasi Registrasi Akademik Siakad Teknokrat   Disusun Oleh : 1.  Sylvi An...