Software Requirements Specification
for
Aplikasi untuk sistem penjadwalan perkuliahan
Version 1.0 approved
Prepared by
Alifian Akbar (20312117)
Berliana (20312133)
I Ketut Gumbyar (20312130)
Laras Kusuma Sari (20312141)
Sarip Maulana (20312033)
Kelas : IF 20 AC
Prodi Informatika
<28 Mei 2022>
Table
of Contents........................................................................................................................... ii
Revision History............................................................................................................................. ii
1. Introduction.............................................................................................................................. 1
1.1 Purpose................................................................................................................................. 1
1.2 Document
Conventions........................................................................................................ 1
1.3 Intended
Audience and Reading Suggestions........................................................................ 1
1.4 Product
Scope....................................................................................................................... 1
1.5 References............................................................................................................................ 1
2. Overall Description.................................................................................................................. 2
2.1 Product
Perspective.............................................................................................................. 2
2.2 Product
Functions................................................................................................................. 2
2.3 User
Classes and Characteristics........................................................................................... 2
2.4 Operating
Environment......................................................................................................... 2
2.5 Design and
Implementation Constraints................................................................................ 2
2.6 User
Documentation............................................................................................................. 2
2.7 Assumptions
and Dependencies........................................................................................... 3
3. External Interface
Requirements........................................................................................... 3
3.1 User
Interfaces..................................................................................................................... 3
3.2 Hardware
Interfaces............................................................................................................. 3
3.3 Software
Interfaces............................................................................................................... 3
3.4 Communications
Interfaces.................................................................................................. 3
4. System Features....................................................................................................................... 4
4.1 System
Feature 1.................................................................................................................. 4
4.2 System
Feature 2 (and so on)................................................................................................ 4
5. Other Nonfunctional
Requirements....................................................................................... 4
5.1 Performance
Requirements................................................................................................... 4
5.2 Safety
Requirements............................................................................................................. 5
5.3 Security
Requirements.......................................................................................................... 5
5.4 Software
Quality Attributes.................................................................................................. 5
5.5 Business
Rules...................................................................................................................... 5
6. Other Requirements................................................................................................................ 5
Appendix A: Glossary................................................................................................................... 5
Appendix B: Analysis Models....................................................................................................... 5
Appendix C: To Be Determined List........................................................................................... 6
Name |
Date |
Reason For
Changes |
Version |
|
|
|
|
|
|
|
|
1. Introduction
1.1 Purpose
Aplikasi dapat
meningkatkan efektifitas penyampaian informasi jadi perkuliahan yang diutamakan
ditujukan kepada dosen pengajar dan mahasiswa. informasi penjadwalan
perkuliahan elektronik ini dapat mengirimkan reminder berupa sms ke
mahasiswa-mahasiswa dan dosen dan sms update jika terdapat perubahan jadwal
perkuliahan
1.2 Document
Conventions
Bab ini menguraikan dasar-dasar teori yang digunakan untuk mendukung
penelitian mengenai aplikasi
informasi penjadwalan perkuliahan elektronik, termasuk perancangannya. Ada pun pokok-pokok yang
dibahas adalah SMPP (Short Message Peer-To-Peer Protocol), dasar pemrograman Java, dan dasar SQL
(Structure Query Language).
1.3
Intended Audience and Reading Suggestions
Bab ini
mengemukakan dasar-dasar teori yang digunakan untuk melandasi penelitian
mengenai pengembangan aplikasi informasi penjadwalan perkuliahan elektronik,
serta mendukung pembuatan tugas ini membahas
mengenai perancangan dan pembuatan sistem, yaitu alur kerja sistem, detil
setiap bagian sistem, dan
pembangunan program, baik dari sisi server maupun audiens.
1.4
Product Scope
Berkembang
pesatnya teknologi komputer dan web yang ada sekarang ini memaksa kita untuk mengikuti
arus perkembangan teknologi
tersebut. Tidak dapat
dipungkiri lagi bahwa peranan komputer dan web dalam menyediakan layanan
informasi merupakan faktor penting untuk berbagai institusi maupun perorangan.
Dengan sebuah layanan yang simple dan
tidak terbatas oleh jarak, berbagai macam lembaga maupun perorangan menyediakan
dan mengambil data dan informasi melalui komputer dan web.
Salah satu aplikasi yang akan penulis
kembangkan dalam penelitian ini adalah sistem aplikasi informasi penjadwalan
perkuliahan elektronik. Dengan aplikasi informasi penjadwalan perkuliahan
elektronik ini, pengumuman pembatalan kelas atau penggantian jadwal kelas yang
masih manual (misalnya pengumuman yang hanya di tempel di dinding pengumuman,
dan berlaku jika mahasiswa/mahasiswi tersebut datang ke kampus) dapat dibuat menjadi
penjadwalan elektronik, sehingga mis-informasi dapat dihindari.
1.5
References
Salah satu aplikasi yang akan penulis kembangkan dalam penelitian ini
adalah sistem aplikasi informasi penjadwalan perkuliahan elektronik. Dengan
aplikasi informasi penjadwalan perkuliahan elektronik ini, pengumuman
pembatalan kelas atau penggantian jadwal kelas yang masih manual (misalnya
pengumuman yang hanya di tempel di dinding pengumuman, dan berlaku jika
mahasiswa/mahasiswi tersebut datang ke kampus) dapat dibuat menjadi penjadwalan
elektronik, sehingga mis-informasi dapat dihindari. Aplikasi informasi penjadwalan perkuliahan
elektronik ini dirancang untuk dapat diakses
via intranet, dan sistem dapat mengirimkan SMS reminder sebagai pengingat bahwa hari tertentu ada jadwal perkuliahan. Dengan adanya aplikasi ini, diharapkan dapat meningkatkan efektifitas dan efisiensi dari penyampaian informasi pengumuman tersebut.
2.
Overall Description
2.1 Product
Perspective
Pada umumnya sebuah Message Center akan
bertindak sebagai SMPP server, sedangkan ESME akan bertindak sebagai SMPP
klien. Message Center merupakan
sebuat entitas yang bersifat tetap, baik secara fungsi maupun secara fisik, sehingga
lebih cocok untuk menjadi server SMPP,Ada
pun pokok-pokok yang dibahas adalah SMPP (Short
Message Peer-To-Peer Protocol), dasar pemrograman Java, dan dasar SQL
(Structure Query Language). SMPP merupakan sebuah protokol standar
industri yang digunakan dalam pertukaran pesan pendek antara External Short Messaging Entity (ESME),
Routing Entity (RE), dan Message Center (MC). Message center merupakan terminology
generik untuk menyebutkan beberapa entitas seperti Short Message Service Center (SMSC), GSM Unstructured Supplementary Services Server (USSD), atau Cell Broadcast Center (CBD). ESME merupakan entitas yang berada di luar jaringan komunikasi
wireless, berfungsi sebagai terminal penyedia layanan berbasis SMS seperti
WAP Proxy Server, Email Gateway, atau Voice Mail Server.
2.2
Product Functions
berfungsi
sebagai terminal penyedia layanan berbasis SMS seperti WAP Proxy Server, Email Gateway, atau Voice Mail Server. Routing Entity merupakan nama generik yang
diberikan untuk menyebut beberapa entitas dalam system yang berfungsi melakukan
routing SMS .
Protokol SMPP merupakan sebuah protokol yang berjalan pada
lapisan aplikasi, seperti halnya protokol-protokol lain dalam konteks
komunikasi data dalam jaringan komputer seperti HTTP, FTP, Rlogin, WAP, dan
lain-lain. Satuan paket data yang dipertukarkan pada lapisan aplikasi
dalam protokol SMPP disebut dengan PDU (Protocol Data
Unit).
2.3 User
Classes and Characteristics
Secara umum, cara pengiriman data dari satu
titik ke titik lain yang dilakukan oleh protokol SMPP, menganut prinsip-prinsip
sebagai berikut :
-
Dalam komunikasi SMPP antar dua titik, salah satu titik
harus bertindak sebagai server dan
titik lainnya sebagai klien.
-
Inisiatif koneksi dan pembentukan sebuah session dilakukan oleh klien. Jenis
session yang dipilih sepenuhnya diserahkan kepada klien (otorisasi diterima
atau tidak tetap dipegang oleh server). Terdapat tiga buah sesi, yaitu penerima
(Receiver) – bila klien ingin dapat
menerima data, Pengirim (Transmitter)
– bila klien ingin dapat mengirimkan
paket data, atau Tranceiver – bila
klien ingin dapat mengirim dan
menerima paket data.
-
Bila server ingin mengirimkan paket data kepada klien
harus menggunakan format PDU deliver_sm, sedangkan bila klien
ingin mengirimkan paket data kepada server maka harus menggunakan format PDU submit_sm.
Format PDU yang dapat digunakan bersama untuk saling bertukar
data yang berisi pesan pendek adalah data_sm.
2.4
Operating Environment
Komponen operasi protokol SMPP adalah sebagai berikut :
- Status Session
Seperti
telah disebutkan sebelumnya, session hanya mungkin terbentuk setelah terbentuk
koneksi.
- Open
Status ini terjadi apabila
telah terjadi koneksi
antar ESME dan MC,
namun bind request belum
dikirimkan oleh ESME. Pada kondisi
ini belum terjadi pertukaran informasi.
- Bound_TX
Status ini terjadi apabila
antara ESME dan MC telah terbentuk koneksi dan PDU bind_transemitter telah dikirimkan oleh ESME yang kemudian dibalas oleh MC dengan mengirimkan bind_transmitter_resp dengan status OK yang menyatakan session telah disetujui untuk dibuka. Status ini memungkinkan ESME untuk mengirimkan pesan pendek pada MC
atau ESME lain. Operasi lain yang dapat dilakukan oleh ESME adalah mengirimkan
PDU replace_sm, query_sm, atau cancel_sm terhadap pesan pendek yang
telah dikirimkan sebelumnya.
- Bound_RX
Status ini terjadi apabila
antara ESME dan MC telah terbentuk koneksi dan PDU bind_receiver telah dikirimkan oleh ESME yang kemudian dibalas oleh MC dengan mengirimkan bind_receiver_resp dengan status OK yang menyatakan bahwa session telah
disetujui untuk dibuka. Status ini memungkinkan ESME untuk menerima pesan pendek dari MC atau
ESME lain.
2.5
Design and Implementation Constraints
1. Studi literatur untuk mendukung penelitian ini, meliputi pencarian
referensi serta pendalaman materi.
2. Analisa dan studi kebutuhan sistem aplikasi informasi penjadwalan
perkuliahan elektronik secara menyeluruh.
3. Perancangan
perangkat lunak aplikasi informasi penjadwalan perkuliahan elektronik.
4. Pengujian aplikasi.
2.6
User Documentation
·
Dalam komunikasi SMPP antar dua titik, salah
satu titik harus bertindak sebagai
server dan titik lainnya sebagai klien.
·
Inisiatif koneksi dan pembentukan sebuah session dilakukan oleh klien. Jenis
session yang dipilih sepenuhnya diserahkan kepada klien (otorisasi diterima
atau tidak tetap dipegang oleh server). Terdapat tiga buah sesi, yaitu penerima
(Receiver) – bila klien ingin dapat
menerima data, Pengirim (Transmitter)
– bila klien ingin dapat mengirimkan
paket data, atau Tranceiver – bila
klien ingin dapat mengirim dan
menerima paket data.
·
Bila server ingin mengirimkan paket data kepada
klien harus menggunakan format PDU deliver_sm, sedangkan bila klien
ingin mengirimkan paket data kepada server maka harus menggunakan format PDU submit_sm.
Format PDU yang dapat digunakan bersama untuk saling bertukar
data yang berisi pesan pendek adalah data_sm.
2.7
Assumptions and Dependencies
Server cenderung
bersifat pasif dan menunggu klien untuk melakukan koneksi. ESME merupakan
sebuah entitas yang berfungsi pada level aplikasi
dan tidak berkontribusi langsung pada sebuah system
layanan SMS. ESME dapat dianggap sebagai end
user dalam konfigurasi layanan SMS, sehingga keberadaannya bersifat tidak tetap. Jika ESME ada, maka layanan
konten SMS dapat diadakan. Akan tetapi
jika ESME tidak ada, layanan SMS tetap dapat berfungsi sekalipun tidak ada entitas penyedia konten SMS.
3.
External Interface Requirements
3.1 User
Interfaces
- standar GUI atau panduan gaya keluarga produk yang harus diikuti
-
Batasan
tata letak
-
tombol dan fungsi standar ( misalnya , bantuan
) yang akan muncul disetiap layar
-
Pintasan
Keyboard
-
standar
tampilan pesan kesalahan , dan segera
3.2
Hardware Interfaces
Pada implementasinya, user data
yang dipertukarkan biasanya
menggunakan buffer sebagai antarmukanya. Melalui buffer inilah aplikasi
melakukan pengiriman dan penerimaan data. Pada aplikasi berbasis protokol SMPP,
masing-masing titik yang saling berkomunikasi harus menganggap bahwa data-data
yang dipertukarkan adalah sebuah PDU dengan format yang saling disepakati. Masing-masing titik akan dapat saling berkirim PDU bila sebuah session
yang disepakati telah terbentuk Sebelum sebuah session dapat terbentuk, pertama
kali yang harus dilakukan adalah membentuk koneksi antara titik yang ingin
berkomunikasi, misalnya antara Message
Center dan ESME. Pembentukan koneksi dapat dilakukan melalui koneksi protokol
komunikasi data seperti
TCP/IP atau X.25.
3.3 Software
Interfaces
selaku SMPP server memiliki sebuah port TCP yang berstatus listening pada nomor port tertentu.
Dengan posisi ini, PC siap untuk menerima permintaan koneksi dari host lain. Permintaan koneksi dilakukan
oleh ESME dengan prosedur
3-way handshaking yang ada dalam TCP. Dalam
TCP/IP, proses-proses ini sudah diakomodasi oleh sistem secara otomatis.
Setelah taham pembentukan koneksi berhasil, emaka titik yang berhubungan sudah dapat untuk saling berkirim data
aplikasi yang berbentuk PDU.
3.4
Communications Interfaces
PDU deliver_sm merupakan
PDU yang dikhususkan untuk pengiriman pesan pendek dari SMPP server ke SMPP
klien, dalam hal ini dari MC ke ESME. Respon
yang dikirimkan kembali adalah deliver_sm_resp,
yang menyatakan satu proses pengiriman pesan pendek dari MC ke ESME selesai.
4.
System Features
Salah satu aplikasi yang akan
penulis kembangkan dalam penelitian ini adalah sistem aplikasi informasi penjadwalan
perkuliahan elektronik. Dengan aplikasi informasi penjadwalan perkuliahan
elektronik ini, pengumuman pembatalan kelas atau penggantian jadwal kelas yang
masih manual (misalnya pengumuman yang hanya di tempel di dinding pengumuman,
dan berlaku jika mahasiswa/mahasiswi tersebut datang ke kampus) dapat dibuat
menjadi penjadwalan elektronik, sehingga mis-informasi dapat dihindari.
4.1 System
Feature 1
Optimasi
fitur layanan yang ada pada system penjadwalan perkuliahan yang sudah ada.
4.1.1 Deskripsi dan
prioritas
Aplikasi informasi penjadwalan perkuliahan elektronik ini dirancang untuk
dapat diakses via intranet, dan
sistem dapat mengirimkan SMS reminder sebagai
pengingat bahwa hari tertentu ada jadwal perkuliahan. Dengan adanya aplikasi ini, diharapkan dapat meningkatkan efektifitas dan efisiensi dari penyampaian informasi pengumuman tersebut.
4.1.2 Urutan respon
stimulus
Salah
satu aplikasi yang akan penulis kembangkan dalam penelitian ini adalah sistem
aplikasi informasi penjadwalan perkuliahan elektronik. Dengan aplikasi
informasi penjadwalan perkuliahan elektronik ini, pengumuman pembatalan kelas
atau penggantian jadwal kelas yang masih manual
4.1.3 Persyaratan
Fungsional
▪
Aplikasi informasi penjadwalan perkuliahan elektronik ini dapat
mengirimkan reminder berupa sms ke
mahasiswa-mahasiswa dan dosen dan sms update jika terdapat perubahan jadwal
perkuliahan.
▪
Dosen juga dapat mengakses
aplikasi melalui intranet,
untuk memberi tahu jika dosen tersebut tidak dapat
hadir, dan aplikasi akan mengirimkan pesan ke mahasiswa berupa pesan sms.
4.2
System Feature 2 (and so on)
Pelengkap
fitur yang sebelumnya terbatas serta membantu proses layanan pendistribusian
data menjadi lebih optimal.
5. Other
Nonfunctional Requirements
5.1
Performance Requirements
Server cenderung bersifat pasif dan menunggu
klien untuk melakukan koneksi. ESME merupakan sebuah entitas yang berfungsi
pada level aplikasi
dan tidak berkontribusi langsung pada sebuah system
layanan SMS. ESME dapat dianggap sebagai end
user dalam konfigurasi layanan SMS, sehingga keberadaannya bersifat tidak tetap. Jika ESME ada, maka layanan
konten SMS dapat diadakan.
5.2 Safety
Requirements
Meliputi
operasi-operasi dalam protokol SMPP yang berfungsi dalam pembentukan session
antara ESME dan Message Center, sekaligus menangani bentuk-bentuk error
yang mungkin terjadi pada proses pembentukan
session tersebut.
5.3 Security
Requirements
Meliputi
operasi-operasi dalam protokol SMPP yang berfungsi menyediakan fungsi-fungsi
tambahan seperti pembatalan pengiriman pesan pendek, pemeriksaan kiriman, dan
penggantian pesan yang telah dikirimkan.
5.4 Software
Quality Attributes
1. Functionality
(Fungsionalitas). Kemampuan perangkat lunak untuk menyediakan fungsi sesuai
kebutuhan user dan memuaskan user.
2. Reliability
(Kehandalan). Kemampuan perangkat lunak untuk mempertahankan tingkat kinerja
tertentu/ performance dari software (ex: akurasi, konsistensi, kesederhanaan,
toleransi kesalahan).
3. Usability
(Kebergunaan). Kemampuan perangkat lunak untuk dipahami, dipelajari, digunakan,
dan menarik bagi pengguna.
4. Efficiency
(Efisiensi). Kemampuan perangkat lunak untuk memberikan kinerja yang sesuai dan
relatif terhadap jumlah sumber daya yang digunakan pada saat keadaan tersebut
(ex: efisiensi penyimpanan).
5. Maintainability
(Pemeliharaan). Kemampuan perangkat lunak untuk dimodifikasi. Modifikasi
meliputi koreksi, perbaikan atau adaptasi terhadap perubahan lingkungan,
persyaratan, dan spesifikasi fungsional (ex: konsistensi).
6. Portability
(Portabilitas). Kemampuan perangkat lunak untuk ditransfer dari satu lingkungan
ke lingkungan lain atau kemampuan software beradaptasi saat digunakan di area
tertentu (ex: self documentation, teratur).
5.5 Business
Rules
Dalam
teknologi komunikasi data, SMPP merupakan protokol yang berjalan dalam lapisan
aplikasi pada model interkoneksi OSI (Open
System Interconnection). Pada implementasinya, user data yang dipertukarkan biasanya
menggunakan buffer sebagai antarmukanya. Melalui buffer inilah aplikasi
melakukan pengiriman dan penerimaan data.
6. Other
Requirements
1. Redudansi dan Inkonsistensi data
Penyimpanan data dibeberapa tempat yang berbeda disebut
redudansi, hal ini akan menyebabkan pemborosan dan menimbulkan inkonsistensi
data (data tidak konsisten) apabila terjadi perubahan data dibeberapa tempat.
2. Pengaksesan data
Data di dalam database harus siap diakses oleh siapa saja
yang membutuhkan dan mempunyai hak untuk mengaksesnya.
3. Data terisolasi untuk standarisasi
Jika data tersebar dalam beberapa tabel dalam format yang
sama, maka akan menyulitkan dalam menulis program aplikasi, baik untuk
mengambil dan menyimpan data.
4. Masalah keamanan (security)
Setiap pemakai sistem database tidak semua bagian mengakses
semua data, misalnya, misalnya data mengenai gaji pegawai hanya boleh dibuka
oleh bagian keuangan, sedangkan bagian gudang dan bagian lain tidak
diperkenankan untuk membukanya.
5. Multiple user
Salah satu database dibangun karena nantinya data tersebut
akan digunakan oleh banyak pengguna (user), baik dalam waktu berbeda maupun
bersamaan.
Penjadwalan mata
kuliah merupakan penyusunan dan pengaturan jadwal mata kuliah pada slot waktu
yang tersedia selama satu minggu disertai dengan pembagian ruang kelasnya.
Penjadwalan tersebut harus memperhatikan beberapa hal seperti kapasitas ruang,
dosen, mahasiswa, dan jumlah SKS setiap mata kuliah. Masalah penjadwalan
meliputi optimasi beberapa kriteria termasuk batasan-batasan seperti kebijakan
kurikulum, pemilihan ruang kelas yang sesuai, dan ketersediaan dosen pengajar.
Pada pembuatan jadwal biasanya membutuhkan waktu yang lama untuk menghasilkan
jadwak yang optimal.
Appendix
B: Analysis Models
Analisis sistem bisa didefinisikan bagaikan penguraian dari sesuatu sistem data ke komponen dengan tujuan untuk mengenali serta mengetahui masalah, kesempatan, hambatan yang berlangsung serta kebutuhan sehingga bisa diusulkan perbaikannya.
1. Diagram
Konteks
Diagram Konteks ialah bagan dari proses serta penggambaran ruang lingkup sesuatu
sistem yang hendak dibangun.
Berikut ini adalah diagram konteks pada aplikasi perjadwalan perkuliahan
Diagram Konteks
aplikasi penjadwalan perkuliahan ini terdiri dari 4 aktor yaitu admin, operator, sekretaris dan dosen. Semua aktor harus memiliki data login untuk dapat mengakses aplikasi ini.
2. ERD
Perancangan
Entity Relationship Diagram (ERD) pada
aplikasi penjadwalan perkuliahan di Jurusan Teknik
Elektronika FT-UNP sebagai berikut:
Entity Relationship Diagram
Appendix C: To Be Determined List
Proses pembuatan jadwal mata kuliah dapat dilakukan dengan menggunakan Algoritma Genetika. Melalui langkah-langkah yang digunakan dalam Algoritma Genetika yaitu menentukan batasan penjadwalan, merepresentasikan nilai kromosom, menginisialisasi populasi awal, melakukan seleksi, crossover, mutasi, hingga mencapai kondisi selesai.
Referensi :
[1]
R. Hartadi, A. Hidayat, and V. G. Utomo, “Perancangan Aplikasi Penjadwalan Mata Kuliah (Studi Kasus: STMIK Provisi Semarang),” Bianglala Inform., vol. 4, no. 1, pp. 31–40, 2016.
[2]
D. Ana, R. Wati, and Y. A. Rochman, “Model Penjadwalan Matakuliah Secara Otomatis
Berbasis Algoritma Particle
Swarm Optimization (PSO),”
J. Rekayasa Sist. Ind., vol. 2, no. 1, pp. 22–31, 2013, doi: 10.26593/jrsi.v2i1.333.22-31.
[3]
A. W. Widodo and W. F. Mahmudy,
“Penerapan algoritma genetika
pada sistem rekomendasi wisata kuliner,” J. Ilm. Kursor, vol. 5, no. 4, pp. 205–211, 2010.
Komentar
Posting Komentar