DESKRIPSI PERANCANGAN PERANGKAT LUNAK
Aplikasi Bogor Line
untuk:
Institut Pertanian Bogor
Dipersiapkan oleh:
Kelompok 9
1.
Larasati(G64140005)
2.
Respati Widrantara Putra(G64140028)
3.
Bagus Ali Mashar Dwiyanto(G64140052)
4.
Arief Maulidy Nugroho(G64120075)
Departemen Ilmu Komputer
Fakultas Matematika dan Ilmu Pengetahuan Alam
Institut Pertanian Bogor
Departemen Ilmu Komputer
Institut Pertanian Bogor
Nomor Dokumen
Halaman
DPPL – Aplikasi Bogor
Line
1/34
Revisi
C
Tgl: 27/04/16
DAFTAR PERUBAHAN
Revisi
Deskripsi
A
Dihilangan fungsi statistik tingkat kemacetan dan kecelakaan di
kota Bogor
B
Dihilangkan entitas calculate
C
D
E
F
G
INDEX TGL A B C D E F G Ditulis oleh Diperiksa oleh Disetujui olehDaftar Isi
Daftar Isi ... 4
Daftar Tabel ... 5
Daftar Gambar ... 6
1. Pendahuluan ... 7
1.1 Tujuan Penulisan Dokumen ... 7
1.2 Lingkup Masalah ... 7
1.3 Definisi dan Istilah ... 7
1.4 Aturan Penamaan dan Penomoran ... 8
1.5 Referensi ... 8
1.6 Ikhtisar Dokumen ... 8
2 Deskripsi Perancangan Global... 9
2.1 Rancangan Lingkungan Implementasi... 9
2.2 Deskripsi Data ... 9
2.2.1 Definisi Domain/Type ... 10
2.2.2 Physical Data Model ... 11
2.2.3 Daftar Tabel Aplikasi ... 11
2.3 Deskripsi Modul ... 12
3 Deskripsi Perancangan Rinci ... 12
3.1 Deskripsi Rinci Modul... 17
3.1.1 Modul Sign-up ... 17
3.1.2 Modul Sign-in ... 19
3.1.3 Modul Home ... 20
3.1.4 Modul Menu Event/Timeline ... 21
Daftar Tabel
Tabel 1 definisi & akronim ... 7
Tabel 2 tabel definisi domain type ... 10
Tabel 3 dafar tabel aplikasi ... 11
Tabel 4 modul pada aplikasi BogorLine ... 12
Tabel 5 user ... 13
Tabel 6 artikel ... 14
Tabel 7 info angkot ... 14
Tabel 8 perhitungan ... 15
Tabel 9 recent updates ... 16
Tabel 10 event ... 16
Tabel 11 konten ... 16
Tabel 12 spesifikasi field data layar fungsi sign up ... 18
Tabel 13 spesifikasi objek pada layar sign up ... 18
Tabel 14 speisifikasi field data layar fungsi ... 19
Tabel 15 spesifikasi objek pada layar ... 20
Tabel 16 speisifikasi field data layar fungsi home ... 21
Tabel 17 spesifikasi objek pada layar fungsi home ... 21
Tabel 18 spesifikasi field data layar fungsi calculate ... 22
Tabel 19 spesifikasi objek layar fungsi calculate ... 22
Daftar Gambar
Gambar 1 Physical data model ... 11
Gambar 2 Tampilan sign up ... 18
Gambar 3 Tampilan sign-in ... 19
Gambar 4 Tampilan Home ... 21
Gambar 5 Tampilan layar recent updates ... 22
1. Pendahuluan
Dokumen ini adalah Deskripsi Perancangan Perangkat Lunak (DPPL) atau Software
Design Description (SDD) untuk Aplikasi Bogor Line.Istilah yang akan digunakan untuk
merujuk dokumen ini adalah DPPL. Isi dari dokumen ini sebagian besar adalahterjemahan
dari dokumen IEEE Std 1016.1-1993.
1.1 Tujuan Penulisan Dokumen
Dokumen DPPL merupakan dokumen deskripsi dari perancangan perangkat lunak yang
akan dikembangkan dan bertujuan untuk memberikan landasan yang diperlukan dalam proses
pengembangan perangkat lunak Aplikasi Bogor Line. Dokumen ini digunakan oleh
pengembangperangkat lunak sebagai acuan teknis pengembangan perangkat lunak pada tahap
selanjutnya.
1.2 Lingkup Masalah
Kota Bogor memiliki masalah yang sama dengan kota – kota besar lainya, yaitu
kemacetan lalu lintas. Kemacetan disebebabkan volume kendaraan bermotor baik pribadi
maupun angkutan umum yang begitu besar, khususnya angkutan kota. Angkutan kota tidak
bisa dipungkiri menjadi sarana transportasi yang paling gampang ditemukan. Hampir setiap
menit lewat.
Angkutan kota yang berjumlah banyak ini seharusnya dapat mengurangi tingkat
penggunaan kendaraan pribadi, sehingga kemacetan dapat terurai. Masih banyaknya
masyarakat memillih menggunakan kendaraan pribadi tidak terlepas dari masalah informasi
angkutan kota itu sendiri. Seperti tarif angkot itu berapa, tujuannya dari mana ke mana, dan
melalui trayek apa saja.
1.3 Definisi dan Istilah
Definisi, Istilah, dan singkatan yang digunakan dalam pembuatan dokumen DPPL ini
adalah:
Tabel 1 Definisi singkat dan akronim
NO ISTILAH, SINGKATAN, AKRONIM KETERANGAN
1.
SKPL
Spesifikasi kebutuhan perangkat lunak atau Software Requirement
Specification (SRS), merupakan dokumentasi kebutuhan perangkat
lunak
2.
SKPL-
Aplikasi
Bogor
Line.P-xxxx
SKPL- Aplikasi BogorLine.P-xxxx adalah kode yang digunakan
untuk merepresentasikan kebutuhan (requirement) pada Bogor Line,
dengan Bogor Line merupakan kode perangkat lunak, BogorLine.P
adalah kode fase, dan xxxx adalah digit/nomor kebutuhan
(requirement).
3.
Data Flow
Diagram
Data Flow Diagram (DFD) adalah diagram dan notasi yang
digunakan untuk menunjukkan aliran data pada perangkat lunak.
4.
Entity
Entity Relarionship Diagram (ERD) adalahsuatu diagram yang
Relationship
Diagram
menunjukkan keterhubungan antar entitas yang ada pada sistem
tempat perangkat lunak ini akan diterapkan
5.
DPPL
Deskripsi Perancangan Perangkat Lunak, atau dalam bahasa Inggris-nya
sering juga disebut sebagai Software Design Description (SDD), dan
merupakan deskripsi dari perangkat lunak yang akan dikembangkan.
6.
DPPL-
Aplikasi
Bogor
Line.P-xxxx
DPPL- Aplikasi BogorLine.P-xxxx adalah kode yang digunakan
untuk merepresentasikan fungsi atau modul pada Bogor Line, dengan
Bogor Line merupakan kode perangkat lunak, BogorLine.P adalah
kode fase, dan xxxx adalah digit/nomor kebutuhan (requirement).
7.
SQLite
Relational Database Management Server (RDBMS)
1.4 Aturan Penamaan dan Penomoran
Aturan penamaan dan penomoran pada perangkat lunak ini adalah:
● BogorLine_[xxxx], adalah kode yang digunakan untuk aturan penamaan bagi
nama-nama tabel yang terdapat pada Bogor Line, dengan xxxx adalah serangkaian huruf
dari nama tabel yang bersangkutan.
1.5 Referensi
Tim BogorLine. 2016. Spesifikasi Kebutuhan Perangkat Lunak: Aplikasi Bogor
Line. SKPL. Jurusan Ilmu Komputer FMIPA. IPB. Bogor
1.6 Ikhtisar Dokumen
Dokumen DPPL ini dibagi menjadi tiga bagian utama. Bagian pertama berisi penjelasan
tentang dokumen DPPL yang mencakup tujuan pembuatan dokumen ini, lingkup masalah
yang diselesaikan oleh perangkat lunak yang dikembangkan, definisi, referensi dan deskripsi
umum.
Bagian kedua berisi diagram dan spesifikasi kelas, komponen sistem dan arsitektur
sistem dari BOGOR LINEyang telah dispesifikasikan pada dokumen SKPL. Bagian ketiga
berisi deskripsi rinci masing-masing kelas.
2 Deskripsi Perancangan Global
2.1 Rancangan Lingkungan Implementasi
Aplikasi Bogor Line akan dikembangkan pada lingkungan dengan spesifikasi sebagai
berikut :
Sistem Operasi
: Windows
Bahasa Pemrograman
: PHP, HTML
DBMS
: MySQL
Tools
: Macromedia Dreamweaver, Notepad++, Sublime Text
2.2 Deskripsi Data
● Nama table
: admin
Volume
: -
Primary key
:id_admin
Constraint integrity :
-Tabel admin adalah tabel basis data yang berisi data dari admin yang mengelola sstem.
● Nama table
: artikel
Volume
: -
Primary key
:id_artikel
Constraint integrity : id_admin merupakan foreign key dari id_admin pada tabel
admin dan id_user merupakan foreign key dari id_user pada tabel user.
Tabel artikel adalah tabel basis data yang berisi artikel.
● Nama table
: info_angkot
Volume
: -
Primary key
: id_angkot
Constraint integrity : id_user merupakan foreign key dari id_user pada tabel user.
Tabel info_angkot berisi biaya dan rute angkot.
.
● Nama table
: statistik
Volume
: -
Primary key
:id_updates
Constraint integrity : -
Tabel statistik berisi perhitungan jumlah kemacetan dan jumlah kecelakaan yang
terjadi.
● Nama table
: user
Volume
: -
Primary key
:id_user
Constraint integrity : -
Tabel user berisi identitas user yang sudah melakukan log in.
● Nama table
: perhitungan
Volume
: -
Primary key
:
-Constraint integrity : id_lokasi foreign key dari id_lokasi pada tabel lokasi_awal,
id_kantor foreign key dari id_kantor pada tabel kantor_pemerintah, id_angkot foreign
key dari id_angkot pada tabel info_angkot.
Tabel perhitungan berisi total biaya dari lokasi awal dan angkot yang dinaiki.
● Nama table
: event
Volume
: -
Primary key
:id_event
Constraint integrity : -
Tabel event berisi info acara yang ada di Kota Bogor.
● Nama table
: kantor_pemerintah
Volume
: -
Primary key
: id_kantor
Constraint integrity : id_user foreign key dari id_user pada tabel user.
● Nama table
: lokasi_awal
Volume
: -
Primary key
: id_lokasi
Constraint integrity : -
Tabel lokasi_awal berisi lokasi awal yang ditentukan user ketika ingin mencari
informasi angkot yang dinaiki, tarif angkot, dan lokasi kantor pemerintahan yang
dilalui.
● Nama table
: recent_updates
Volume
: -
Primary key
: id_updates
Constraint integrity : id_user foreign key dari id_user pada tabel user, id_event
foreign key dari id_event pada tabel event.
2.2.1 Definisi Domain/Type
Tabel 2 Definisi Domain/Type
2.2.2 Physical Data Model
Gambar 1 Physical Data Model
2.2.3 Daftar Tabel Aplikasi
.
Tabel 3 Daftar Tabel Aplikasi
Nama Tabel
Primary key
Data
Store
E/R
Deskripsi isi
Admin Id_admin artikel Id_artikel Info_angkot Id_Angkot statistik Id_updates user Id_user perhitungan
event
Id_event
Kantor_pemerintah Id_kantor
Lokasi_awal
Id_lokasi
Recent_updates
Id_updates
2.3 Deskripsi Modul
Tabel 4 Modul pada Aplikasi Bogor Line
No.
Fungsi/
Proses
Data Input
Data Output
Keterangan
3 Deskripsi Perancangan Rinci
Nama Tabel : user
Deskripsi isi : tabel basis data yang berisi data pengguna BogorLine yang melakukan
registrasi
Volume : -
Laju : -
Primary Key : id_user
Tabel 5. User
ID_FIELD
DESKRIPSI
TIPE
& LENGTH
BOLEH
NULL
KETERANGAN
Id_user
Merupakan
key
dari
tabel user
Int
No
Primary
Key
yang unik setiap
usernya, contoh :
9
Username
Menyatakan
username
Varchar(15)
No
Username
yang
akan digunakan
oleh seorang user
sebagai informasi
login.
Contoh:
iresputra
Password
Menyatakan
kata sandi
Varchar(15)
No
Kata sandi yang
digunakan untuk
login, login akan
berhasil
jika
sesuai
dengan
username
dan
password
yang
terdapat
didatabase.
Contoh : rplasik
Gender
Menyatakan
jenis kelamin
Varchar(255) No
Jenis
Kelamin
pengguna
Tanggal_lahir Menyatakan
tanggal lahir
user
DATE
No
Contoh : 5 April,
2016
Address
Menyatakan
alamat dari
user
Varchar(45)
No
Alamat
pengguna,
contoh: Jakarta
Nama tabel : artikel
Deskripsi isi : tabel yang berisikan data sebuah artikel yang dikirim oleh pengguna
BogorLine
Jenis : tabel referensi
Volume : -
Laju : -
Tabel 6. Artikel
ID_FIELD
DESKRIPSI
TIPE
&
LENGTH
BOLEH
NULL
KETERANGAN
Id_artikel
Merupakan
key
dari
tabel artikel
Int
No
Primary
key
artikel. Contoh :
2
Id_user
Menyatakan
FK dari tabel
artikel
Int
No
Foreign key dari
user
Tanggal_post Menyatakan
tangal
ditambahkan
Varchar
No
Contoh: 23 April,
2016
Id_admin
Menyatakan
FK dari tabel
artikel
Varchar
No
Contohnya :
Nama tabel : info_angkot
Deskripsi isi : tabel yang berisikan informasi angkot yang melewati suatu rute
Jenis : tabel referensi
Volume : -
Laju : -
Primary key : id_angkot
Tabel 7. Info Angkot
ID_FIELD
DESKRIPSI
TIPE
&
LENGTH
BOLEH
NULL
KETERANGAN
Id_angkot
Merupakan
key dari tabel
info angkot
Varchar
No
Contoh : 03, 05
Id_user
Menyatakan
FK dari tabel
artikel
Int
No
Contoh : 1, 2,3
biaya
Menyatakan
biaya
dari
lokasi awal ke
tujuan
Int
No
Biaya yang harus
dikeluarkan.
Contoh
:
Rp.
3000
rute
Menyatakan
rute
yang
dilalui
oleh
angkutan
Varchar
No
Contoh : Warung
Jambu
umum
Nama tabel : perhitungan
Deskripsi isi : tabel yang akan melakukan perhitungan untuk mencapai suatu tujuan
kantor pemerintahan
Jenis : tabel transaksi
Volume : -
Laju : -
Primary key : -
Tabel 8. Perhitungan
ID_FIELD
DESKRIPSI
TIPE
&
LENGTH
BOLEH
NULL
KETERANGAN
Id_lokasi
Merupakan
foreign
key
dari
tabel
perhitungan
Varchar
No
Contoh: 1,2,3
Id_kantor
Menyatakan
FK dari tabel
perhitungan
Varchar
No
Contoh : 1,2,3
Id_angkot
Menyatakan
Fk dari tabel
perhitungan
Varchar
No
Contoh : 1,2,3
Total_biaya Menyatakan
total
biaya
untuk
ke
lokasi tujuan
Int
No
Perhitungan akhir
untuk mencapai
tujuan
contoh
Rp.7000
Nama tabel : recent updates
Deskripsi isi : tabel yang berisikan informasi pembaharuan suatu kejadi yang
dilakukan oleh seorang user
Primary key : id_updates
Jenis : tabel referensi
Volume : -
Laju : -
Tabel 9 Recent updates
ID_FIELD
DESKRIPSI
TIPE
&
LENGTH
BOLEH
NULL
KETERANGAN
Id_updates
Merupakan
key dari tabel
recent updates
Varchar
No
Contoh : 1,2,3
isi
artikel
yang
dimasukan
oleh user
sangat menarik,
karena
terdapat
banyak wisata
Id_user
Menyatakan
Fk dari tabel
recent updates
Int
No
Contoh : 1,2,3
Id_event
Menyatakan
FK dari tabel
event
Boolean
No
Contoh : 1,2,3
Nama tabel : event
Deskripsi isi : tabel yang berisikan jenis event yang akan diperbaharui oleh user,
terdapat 2 jenis event yaitu kecelakaan dan kemacetan
Primary key : id_event
Jenis : tabel referensi
Volume : -
Laju : -
Tabel 10. Event
ID_FIELD
DESKRIPSI
TIPE
&
LENGTH
BOLEH
NULL
KETERANGAN
Jenis_event menyatakan
deskripsi
kejadian
Varchar
No
Contoh
:
Kecelakaan dan
Kemacetan
Id_event
Menyatakan
PK dari tabel
event.
Kemacetan
atau
kecelakaan
Boolean
No
Contoh : 1,2,3
Nama tabel : admin
Deskripsi isi : tabel yang berisikan informasi admin
Primary key : id_admin
Jenis : tabel referensi
Volume : -
Laju : -
Tabel 11. Kantor Pemerintahan
ID_FIELD
DESKRIPSI
TIPE
&
BOLEH
LENGTH
Id_kantor
Merupakan
key dari tabel
kantor
pemerintahan
Varchar
No
Contoh : 4,5,6
Id_user
FK
Int
No
Contoh : 15,6,12
Nama_kantor
Menyatakan
nama kantor
berdasarkan
id_kantor
Varchar
No
Contoh : Kantor
Walikota Bogor
Lokasi_kantor
Menyatakan
letak lokasi
kantor
Varchar
No
Contoh : Warung
Jambu Blok O5
3.1 Deskripsi Rinci Modul
3.1.1 Modul Sign-up
3.1.1.1 Spesifikasi Fungsi Sign-up
Identifikasi nama : Menampilkan Halaman Sign-up
Deskripsi isi
: Fungsi ini menampilkan halaman sign-up, yang berisi field nama dan
password yang akan diisi oleh pengguna dari aplikasi Carbonator.
Jenis
: link image
3.1.1.2 Spesifikasi Query Fungsi Sign-up
3.1.1.3 Spesifikasi Layar Utama
Gambar 2 Tampilan Sign-up
3.1.1.4 Spesifikasi Field Data Layar Fungsi Sign-up
Tabel 52 Spesifikasi Field Data Layar Fungsi Sign-up
Label Field Tabel/
Query
Validasi Keterangan
1 Field Username - - Berisi : input nama user
2 Field Password - - Berisi : input passworduser
3 Field Fullname - - Berisi : input nama lengkap
4 Field email - - Berisi : input email
5 Field Gender - - Berisi : pilihan jenis kelamin
6 Field Birthdate - - Berisi : format tanggal lahir
7 Field Address - - Berisi : alamat user
8 Field Agree - - Berisi : kotak persetujuan
3.1.1.5 Spesifikasi Objek-Objek pada Layar
Tabel 13 Spesifikasi Objek-Objek pada Layar Sign-up
Id_Objek Jenis Keterangan
3.1.2
Modul Sign-in
3.1.2.1 Spesifikasi Fungsi Sign-in
Identifikasi nama : Menampilkan Halaman Sign-in
Deskripsi isi
: Fungsi ini menampilkan halaman sign-up, yang berisi fieldnama
danpassword yang akan diisi oleh pengguna dari aplikasi Carbonator.
Jenis
: link image
3.1.2.2 Spesifikasi Query Fungsi Sign-in
$username= $_POST['username'];
$password= $_POST ['password'];
$result= mysqli_query ($connect, "SELECT * FROM user WHERE
username='$username' and password='$password' ");
$row = mysqli_fetch_array($result, MYSQLI_ASSOC);
3.1.2.3 Spesifikasi Layar Utama
Gambar 3 Tampilan Sign-in
3.1.2.4 Spesifikasi Field Data Layar Fungsi Sign-in
Tabel 14 Spesifikasi Field Data Layar Fungsi Sign-in
Label Field Tabel/
Query
Validasi Keterangan
1 FieldUserna
me
- - Berisi : input nama user
2 FieldPasswor d
3.1.2.5 Spesifikasi Objek-Objek pada Layar
Tabel 15 Spesifikasi Objek-Objek pada Layar Sign-in
Id_Objek Jenis Keterangan
ButtonSignin Button Jika diklik, akan berpindah ke menu home sebagai user
Button Sign up Button Jika diklik, akan berpindah ke menu sign up
3.1.3 Modul Home
3.1.3.1 Spesifikasi Fungsi Home
Identifikasi nama : Menampilkan Halaman Home
Deskripsi isi
: Fungsi ini menampilkan halaman home, yang berisi pilihan government
office, angkot route, timeline, login, dan postingan
Jenis
: link image
3.1.3.2 Spesifikasi Query Fungsi Home
<?php require 'header.php';
?>
3.1.3.3 Spesifikasi Layar Utama
Gambar 4 Tampilan Home
3.1.3.4 Spesifikasi Field Data Layar Fungsi Home
Query
- - - - -
3.1.3.5 Spesifikasi Objek-Objek pada Layar
Tabel 17
Spesifikasi Objek-Objek pada Layar Fungsi Home
Id_Objek Jenis Keterangan
Button Home Button Jika diklik, akan kembali ke page home
Button Angkot Route
Button Jika diklik, akan berpindah ke halaman rute angkot
Button
Government Office
Button Jika diklik akan berpindah ke halaman akses kantor pemerintahan
Button Timeline Button Jika diklik, akan berpindah ke halaman timeline
Button Login Button Jika diklik, akan berpindah ke halaman login
Button Statistics Button Jika diklik, akan berpindah ke halaman statistik kemacetan dan kecelakaan di kota bogor
3.1.4 Modul Menu Event/Timeline
3.1.4.1 Spesifikasi Fungsi Menu Event
Identifikasi nama: Menampilkan Halaman Calculate
Deskripsi isi
: Fungsi ini menampilkan update dari berbagai user berdasarkan jenis event
yang terjadi
Jenis
: link image
3.1.4.2 Spesifikasi Query Fungsi Event
3.1.4.3 Spesifikasi Layar Utama
3.1.4.4 Spesifikasi Field Data Layar Fungsi Event
Tabel 18
Spesifikasi Field Data Layar Fungsi Calculate
Label Field Tabel/
Query
Validasi Keterangan
1 FieldKid of
event
- - Berisi : jenis event yang bisa diupdate
2 Field Isi
event
- Berisi : keterangan dari
jenis event
3.1.4.5 Spesifikasi Objek-Objek pada Layar
Tabel 19
Spesifikasi Objek-Objek pada Layar FungsiCalculate
Id_Objek Jenis Keterangan
Button Update Button Jika diklik, update yang dilakukan akan muncul di recent updates dan bisa
dilihat oleh user lain.
3.1.5 Modul Menu Profile
3.1.5.1 Spesifikasi Fungsi Menu Event
Identifikasi nama: Menampilkan halaman profile
Deskripsi isi
: Fungsi ini berfungsi untuk merubah isi atau identitas user
Jenis
: link image
3.1.5.1 Spesifikasi Query Fungsi Event
3.1.5.2 Spesifikasi Layar Utama
3.1.5.3 Spesifikasi Field Data Layar Fungsi Profile
Tabel 2
0Fungsi profile
Label Field Tabel/
Query
Validasi Keterangan
1 - - - -
2 - - -
3.1.5.4 Spesifikasi Objek-Objek pada Layar
Tabel 24 Spesifikasi Objek
Id_Objek Jenis Keterangan
Button Change Button Jika di klik, maka user bisa mengubah kembali identitasnya jika ada perubahan yang diinginkan.