BAB II LANDASAN TEORI 2.1 Pengertian Monitoring “Pengertian Monitoring Menurut (WHO) adalah suatu proses pengumpulan dan menganalisis informasi dari penerapan suatu program termasuk mengecek secara reguler untuk melihat apakah kegiatan/program itu berjalan sesuai rencana sehingga masalah yang dilihat /ditemui dapat diatasi”. “Sedangkan Menurut (Oxfam 1995) Monitoring adalah mekanisme yang sudah menyatu untuk memeriksa yang sudah untuk memeriksan bahwa semua berjalan untuk direncanakan dan memberi kesempatan agar penyesuaian dapat dilakukan secara metodologis. Jadi beberapa teori diatas dapat disimpulkan bahwa monitoring adalah kegiatan mengamati/meninjau kembali mempelajari secara terus menerus atau berkala dan kegiatan mengawasi, yang dilakukan oleh salah satu pihak disetiap tingkatan pelaksanaan kegiatan, untuk memastikan bahwa pengadaan dan penggunaan input, jadwal kerja, hasil yang ditargetkan dan tindakan lainnya yang diperlukan berjalan sesuai rencana. 2.2 Proyek Konstruksi Proyek Konstruksi adalah suatu rangkaian kegiatan yang berkaitan dengan upaya pembangunan sesuatu bangunan, mencakup pekerjaan pokok dalam bidang teknik sipil dan arsitektur, meskipun tidak jarang juga melibatkan disiplin lain seperti teknik industri, mesin, elektro, geoteknik, maupun lansekap.
7
http://digilib.mercubuana.ac.id/
2.3 Tipe dan Jenis Monitoring 1. Aspek masukan (input) proyek antara lain mencakup : tenaga manusia, dana, bahan, peralatan, jam kerja, data, kebijakan, managemen dsb, yang dibutuhkan untuk melaksanakan kegiatan proyek. 2. Aspek proses / aktifitas yaitu aspek dari proyek yang mencerminkan suatu proses kegiatan, seperti penelitian, pelatihan, proses produksi, pemberian bantuan dsb. 3. Aspek keluaran (output), yaitu aspek yang mencakup hasil dari proses yang terutama berkaitan dengan kuantitas (jumlah)
2.4
UML (Unified Modelling Language) Menurut Alan Dennis (2012), “UML is a standard set of diagramming
techniques that provide a graphical representation rich enough to model any systems development project, from analysis through implementation”. Jadi, UML merupakan suatu set standar teknik yang menyediakan representasi grafis yang cukup kaya untuk model setiap proyek pengembangan sistem, dari analisis melalui implementasi diagram. UML diaplikasikan untuk maksud tertentu, biasanya antara lain : a. Merancang perangkat lunak. b. Sarana komunikasi antara perangkat lunak dengan proses bisnis. c. Menjabarkan sistem secara rinci untuk analisa dan mencari apa yang diperlukan sistem. d. Mendokumentasikan sistem yang ada, proses-proses dan organisasinya.
2.4.1
Use Case Diagram Use case diagram ini bersifat statis dan merupakan penggambaran yang
sederhana dari pengoperasian fungsi sistem yang dilakukan oleh user yang berbeda kemudian saling berinteraksi. Berikut notasi yang ada dalam use case diagram.
8
http://digilib.mercubuana.ac.id/
Tabel 2.1 Notasi dalam Use Case Diagram [Alan Dennis, 2012] Nama
Deskripsi
Notasi
Orang pengguna sistem atau sistem
Actor
Berisi kata kerja atau kata benda menjelaskan fungsi
UseCase
dari sistem. Batas antara sistem dan Subject
pengguna sistem dan berisi
Boundary
nama
subjek
sistem
di
dalam ataupun diatas. Menghubungkan
actor
Association
dengan use case yang saling
Relationship
berinteraksi. Relasi usecase tambahan
Include
kesebuah usecase dimana
Relationship
use case yang ditambahkan memerlukanusecase untuk
ini
menjalankan
fungsinya Menspesifikasikan Extend
bahwa
usecase target memperluas
Relationship
perilaku
dari
usecase
sumber pada suatu titik yang diberikan. Untuk satu usecase yang Generalization
dapat mewarisi fungsinya
Relationship
ke usecase turunannya yang diwarisi.
9
http://digilib.mercubuana.ac.id/
Gambar 2.1 Contoh Use Case Diagram ( Alan Dennis, 2012 ) 2.4.2
Activity Diagram Activity Diagram digunakan untuk menganalisis behavior dengan use case
yang lebih kompleks dan menunjukkan interaksi di antara satu usecase dengan use case yang lainnya. Tabel 2.2 Notasi dalam Activity Diagram [Alan Dennis, 2012] Nama
Notasi
Deskripsi Tindakan atau kegiatan
Action Node
tidak
dapat dipecah. Digunakan untuk mewakili
Activity Node
serangkaian tindakan. Kegiatan bisa dipecah lebih lanjut. Objek yang dapat dihubungkan ke
Object Node
sebuah set alur objek.
10
http://digilib.mercubuana.ac.id/
Lanjutan Tabel 2.2 Notasi dalam Activity Diagram [Alan Dennis, 2012] Menunjukkan sequence yang
Control Flow
dieksekusi. Menunjukkan alur objek dari satu
Object Flow
aktifitas atau satu aksi ke aktifitas/aksi yang lainnya Titik awal dalam memulai suatu
Initial Node
aktifitas. Mengakhiri satu aktifitas kegiatan
Final Activity Node
Akhir dari semua alur kegiatan
Final Flow Node
Percabangan pilihan jalur eksekusi
Decision Node
ke dua atau lebih jalur eksekusi alternative. Digunakandalam penggabungan
Merge Node
dari 2 jalureksekusi ke satu jalur eksekusi. Digunakan untuk membagi perilaku
Fork Node
menjadi serangkaian parallel secara bersamaan dari aktifitas atau aksi. Digunakan untuk membawa
Join Node
kembali bersama-sama sekumpulan mengalir sejajar atau bersamaan aktifitas atau aksi. Digunakan untuk memecah diagram
Swimlane
aktifitas ke dalam baris dan kolom untuk menetapkan aktvitas seseorang atau tindakan untuk individu atau objek yang bertanggung jawab untuk melaksanakan aktifitas dan aksi
11
http://digilib.mercubuana.ac.id/
Gambar 2.2 Contoh Activity Diagram ( Alan Dennis, 2012 )
2.4.3
SequenceDiagram Sequence diagram merupakan suatu diagram interaksi yang menggambarkan
objek-objek berpartisipasi dalam bagian interaksi (particular interaction) dan pesan yang ditukar dalam urutan waktu.
12
http://digilib.mercubuana.ac.id/
Tabel 2.3 Notasi dalam Sequence Diagram [Alan Dennis, 2012] Nama
Notasi
Deskripsi Mengindikasikan keberadaansebuah object dalam
Lifeline
basis waktu. Notasiuntuk Lifeline adalah garis putus-putusvertikal yang ditarik dari sebuah object. Menggambarkan actor yang terlibat.
Actor Berpartisipasi dengan
Object
dalam
mengirimdan
sequence atau
menerima pesan. Menggambarkan hubungan antara object dengan message.
Execution Occurrence
Menggambarkan alur message yang merupakan kejadian dari objek
Message (call)
pengirim lifeline ke objek penerima lifeline.
and
Menggambarkan alur pengembalian message ke objek pemanggil dan tanda bahwa objek penerima telah
Message (return)
menyelesaikan prosesnya.
13
http://digilib.mercubuana.ac.id/
Lanjutan Tabel 2.3 Notasi dalam Sequence Diagram (Alan Dennis, 2012) Mewakili sebuah tes yang harus Guard Condition
dipenuhi untuk pesan yang dikirim. X ditempatkan pada akhir lifeline suatu objek
Object Destruction
untukmenunjukkanakan keluareksistensi. Menunjukkan konteks sequencediagram.
Frame
Gambar 2.3 Contoh Sequence Diagram ( Alan Dennis, 2012 ) 2.4.4
Class Diagram Class diagrammenunjukkan kelas dan hubungan antara kelas yang tetap konstan
dalam sistem dari waktu ke waktu.
14
http://digilib.mercubuana.ac.id/
Tabel 2.4 Notasi dalam Class Diagram [Alan Dennis, 2012] Nama
Notasi
Deskripsi Deskripsi
Class
struktur
dari
perilaku dari satu set objek. Mendefinisikan
Attribute
property atau atribut class. Menjelaskan
tindakan
atau
aksi dari fungsi yang dapat
Operation
dijalankan. Relasi antar kelasGaris ini bisa melambangkan tipe-tipe relasi
Association
dan
juga
dapat
menampilkan
hukum-hukum
multiplisitas
pada
relatsi.(Contoh:
sebuah
One-to-one,
one-to-many, many-to-many). Eksistensi bergantung pada bagian – seluruh hubungan (A
Strong Aggregation
adalah bagian dari B, jika B
Composition
dihapus, keterkaitan dengan A juga terhapus). Bagian – Seluruh hubungan (A adalah bagian dari B; jika
Shared Aggregation
B dihapus, keterkaitan dengan A tidak perlu dihapus). Hubungan warisan (A mewarisi dari B).
Generalization
15
http://digilib.mercubuana.ac.id/
Gambar 2.4 Contoh Class Diagram ( Alan Dennis, 2012)
2.5
Rekayasa Perangkat Lunak
2.5.1
Metode Waterfall Menurut Alan Dennis 2012, Waterfall adalah model original struktur sebuah
metodologi yang mengansumsikan bahwa anda telah menyelesaikan setiap langkah lengkap dan menyeluruh sebelum melanjutkan ke langkah berikutnya.
Gambar 2.5 Model Waterfall ( Alan Dennis, 2012 ) Dengan metodologi berbasis pengembangan air terjun, para analis dan penggu na melanjutkan secara berurutan dari satu tahap ke tahap berikutnya. Ada banyak
16
http://digilib.mercubuana.ac.id/
perdebatan yang harus didahulukan, prosesatau data karena keduanya penting untuk sistem. Akibatnya, beberapa berbeda terstrukturmetodologi desain telah berevolusi yang mengikuti langkah-langkah dasar dari model air terjuntetapi menggunakan pendekatan pemodelan yang berbeda pada waktu yang berbeda. Model Waterfall dapat bekerja cukup baik jika semua asumsi berikut dipenuhi : a. Persyaratan diketahui dengan tepat terlebih dahulu. b. Persyaratan termasuk item resiko tinggi yang belum terselesaikan. c. Persyaratan tidak akan diubah banyak selama pengembangan. d. Tim memiliki pengalaman sebelumnya dengan proyek serupa jadi mereka tahu apa yang terlibat dalam membuat aplikasi apa. e. Terdapat waktu yang cukup untuk melakukan semuanya secara bertahap. User dapat menambahkan langkah tambahan atau membagi langkah untuk memberikan detail lebih jika User suka. Misalnya, User bisa memecahkan langkah verifikasi kedalam pengujian dan validasi, atau User dapat memecahkan desain kedalam desain tingkat tinggi dan desain tingkat rendah. User juga bisa menguraikan langkah. Misalnya Userdapat memecahkan desain kedalam desain antarmuka pengguna, desain level tinggi, desain level rendah, dan kemungkinan langkah lainnya. Beberapa pengembang menggunakan model waterfall murni hari ini, tapi beberapa variasinya cukup berguna.
2.6
Pengujian Perangkat Lunak
2.6.1
Metode Black-Box Dalam pengujian black-box, User berpura-pura bahwa metode ini adalah
black-boxyang User tidak dapat melihat kedalam. User tahu apa yang seharusnya dilakukan, tapi User tidak tahu bagaimana ini bekerja. User dapat mencoba segala macam masukan untuk melihat apa yang akan dilakukannya. User dapat memulai pengujian black-boxdengan mengirim sekelompok masukan acak. Ingat bahwa User
17
http://digilib.mercubuana.ac.id/
perlu untuk melakukan tes ini hanya beberapa kali, tidak setiap kali program berjalan, jadi User bisa menguji banyak nilai acak. Contohnya, User bisa mencoba untuk menebak nilai yang mungkin mengacaukannya. Biasanya, itu melibatkan nilai special seperti 0 untuk angka dan kosong untuk string. Mereka juga boleh termasuk nilai terbesar dan terkecil yang memungkinkan. Untuk string yang mungkin maksudnya adalah string yang semuanya kosong atau semua karakter. Misalnya, biasanya quicksort adalah salah satu algoritma pengurutan tercepat, tapi ia memberikan kinerja yang buruk jika item yang diurutkan memiliki nilai yang sama. Jika metode mengambil angka yang sangat besar untuk masukan. Jika dibutuhkan sebuah array atau daftar parameter, lihat apakah ia lakukan jika array atau daftar parameter kosong atau hilang. Akhirnya, lihat pada batasan nilai. Jika metode menerapkan parameter float antara 0.0 dan 1.0, maka pastikan User dapat menangani kedua nilai ini. 2.7. Pengertian Web Website ( situs web ) adalah merupakan alamat ( URL ) yang berfungsi sebagai tempat penyimpanan data dan informasi dengan berdasarkan topik tertentu. Sutarman ( 2003:6 ) Web Page ( halaman web ) merupakan halaman khusus dari situs web tertentu yang tersimpan dalam bentuk file. Dalam web page tersimpan berbagai informasi dan link yang menghubungkan suatu informasi ke informasi lain baik itu dalam page yang sama ataupun web page lain pada website yang berbeda. 2.7.1. Pengertian Web Database Web database merupakan sistem penyimpanan data yang dapat diakses oleh bahasa pemrograman tertentu. Web database dapat diakses oleh aplikasiaplikasi web yang dikembangkan dengan HTML tag, kontrol active X dan pemrograman yang bersifat server side melalui CGI, Microsoft IIS ( Internet Information Server ). Web atau disebut sebagai World Wide Web ( WWW ) adalah fasilitas yang menyediakan interface yang saling keterkaitan dan berinteraksi antar jaringan yang
18
http://digilib.mercubuana.ac.id/
sederhana ke sumber daya internet yang sangat besar. World Wide Web ( WWW ) bukan sekedar jaringan tetapi didalamnya terdapat suatu sel aplikasi komunikasi dan sistem perangkat lunak yang memiliki karakteristik tertentu diantaranya yaitu : 1. Umumnya tertetak pada internet host dan client 2. Umumnya menggunakan protocol TCP/IP 3. Mengerti HTML 4. Mengikuti model client/server untuk komunikasi data dua arah 5. Memungkinkan client untuk mengakses server dengan protocol seperti HTTP, FTP, Telne, dan Gopher 6. Memungkinkan client untuk mengakses informasi dalam berbagai media seperti teks, audio, video 7. Menggunakan model alamat Unifor Resource Locators ( URL ) Sekarang kita dapat menyimpulkan bahwa web adalah fasilitas hypertext yang mengorganisasi semua informasi dalam internet, meskipun ini tidak masuk akal web memberi kesempatan kita mengakses semua sumber daya internet secara cepat dan mudah. 2.7.2. HTML ( Hyper Text Markup Language ) Hypertext Markup Language (HTML) adalah bahasa yang digunakan untuk menulis halaman web. HTML merupakan pengembangan dari standart pemformatan dokumen text yaitu Standart Generalized Markup Language (SGML). HTML sebenarnya adalah dokumen atau text biasa, yang dirancang untuk tidak tergantung pada suatu sistem operasi tertentu. Perintah-perintah HTML diletakkan dalam file berekstensi *.html dan ditandai dengan mempergunakan tag ( tanda ) berupa karakter “ < “ dan “ > “. Tidak seperti bahasa pemrograman berstruktur seperti pascal atau C, HTML tidak mengenal jumping atau looping. Kode-kode HTML dibaca oleh browser dari atas kebawah tanpa adanya lompatan-lompatan.
19
http://digilib.mercubuana.ac.id/
2.8. Perangkat lunak pendukung Perangkat lunak yang digunakan dalam pembuatan sistem yang baru adalah perangkat lunak yang mendukung aplikasi web beserta bahasa pemogramannya. 2.8.1. PHP ( Personal Home Page ) PHP (PHP : Hypertext PreeProcessor) merupakan bahasa pemograman scripting yang bersifat open source. PHP adalah salah satu bahasa Server-side yang didesain khusus untuk aplikasi web. PHP dapat disisipkan diantara bahasa HTML dan karena bahasa Server side, maka bahasa PHP akan dieksekusi di server, sehingga yang dikirimkan ke browser adalah “hasil jadi” dalam bentuk HTML, dan kode PHP anda tidak akan terlihat. Keunggulan PHP adalah: 1. PHP memiliki tingkat akses yang lebih cepat 2. PHP memiliki tingkat lifecycle yang cepat sehingga selalu mengikuti perkembangan teknologi internet 3. PHP mampu berjalan di beberapa server web, seperti Apache, Microsoft IIS, PWS, phttpd, fhttpd, AOLServer dan Xitami 4. PHP mampu berjalan di Linux sebagai platform Sistem Operasi yang utama, juga dapat berjalan di FreeBSD, Unix, Solaris, dan Windows 5. PHP mendukung akses ke beberapa database baik yang bersifat gratis atau komersial, seperti mSQL, MySQL, Informix, dan MicrosoftSQL Server f. PHP bersifat Open Source
2.8.2. Database MYSQL Mysql
merupakan
sofware
sistem
manajemen
database
(Database
Management System - DBMS) yang sangat populer di kalangan pemrograman. MySQL merupakan database yang paling populer digunakan untuk membangun aplikasi web yang menggunakan database sebagai sumber dan pengelola data.
20
http://digilib.mercubuana.ac.id/
Kepopuleran MySQL dimungkinkan karena kemudahannya untuk digunakan , cepat secara kinerja query, dan mencukupi untuk kebutuhan database perusahaanperusahaan skala menengah kecil. Keistimewaan MySQL yaitu : 1. Portability MySQL dapat berjalan stabil pada berbagai sistem operasi seperti Windows, Unix, Free BSD, Mac OS X Server dan lain-lain. 2. Open Source MySQL di distribusikan secara Open Source sehingga dapat digunakan secara bebas. 3. Multi User MySQL dapat digunakan oleh beberapa user dalam waktu yang bersamaan tanpa mengalami masalah. 4. Performance Tuning MySQL memiliki kecepatan yang tinggi dalam menangani Query, dengan kata lain dapat memproses lebih banyak SQL per satuan waktu. 5. Column Types MySQL memiliki tipe kolom yang sangat kompleks, seperti Signed/Unsigned integer, float, double, char, varchar, text, blob, date, time, times stamp, year, set dan enum. 6. Command dan Function MySQL memiliki operator dan fungsi secara penuh yang mendukung perintah Select dan Where dalam Query. 7. Security MySQL memiliki lapisan-lapisan sekuritas seperti level Subnetmask, nama host, dan ijin akses user dengan system, perijinan yang mendetail seperti password terenkripsi. 8. Scalability dan Limits MySQL mampu menangani database dengan skala besar, dengan jumlah records lebih dari 50 juta dan 60 juta tabel serta 5 miliar baris. Selain itu, batas indeks yang dapat ditampung mencapai 32 indeks pada setiap tabelnya. 9. Connectivity MySQL dapat melakukan koneksi dengan client menggunakan protocol TCP/IP, Unix Socet (Unix), atau Named Pipe (NT). 10. Localitation Deteksi pesan kesalahan pada Client dengan menggunakan lebih dari 20 bahasa. 11. Interface Interface terhadap berbagai palikasi dan bahasa pemrograman dengan menggunakan fungsi API ( Application Programming Interface ).
21
http://digilib.mercubuana.ac.id/
12. Client dan Tools Dilengkapi dengan berbagai tools yang dapat digunakan sebagai administrasi database, dan pada setiap tool yang ada di sertakan petunjuk online. 13. Struktur Table Struktur tabel yang lebih fleksibel dalam menangani ALTER TABLE, di banding database lainnya semacam postgre SQL ataupun oracle.
2.9. Literatur Review 1.
Aprisa, Sitti Monalisa, “Rancang Bangun Sistem Informasi Monitoring
Perkembangan Proyek Berbasis Web (Studi Kasus :PT. Inti Pratama Semesta”, Tujuan : Merancang proses monitoring proyek konstruksi agar mengetahui apakah pelaksanaan proyek mengalami keterlambatan atau tidak, Pengunaan system ini agar memungkinkan pelaporan kemajuan pekerjaan pada sebuah proyek dilaporkan langsung oleh pelaksana proyek. Perancangan : Aplikasi ini menggunakan software requirement specification (SRS). Kesimpulan : Memudahkan user untuk melaporkan dan memonitoring pelaksanaan proyek secara langsung dengan pelaksana proyek. 2. Eva S.H, Reza El Akbar, Acep I.G “Aplikasi E-Monitoring Proyek Berbasis Web di Dinas Tata Ruang dan Pemukiman Kabupaten Tasikmalaya”. Tujuan : Membangun model aplikasi e-monitoring yang dapat memantau kemajuan proyek dan pembuatan laporan kemajuan proyek sehingga menfasilitasi pengguna jasa dalam memonitoring proyek. Perancangan : Aplikasi ini dibangun menggunakan perancangan diagram context, data flow diagram (DFD) dan ER-diagram.
22
http://digilib.mercubuana.ac.id/
system
seperti:
Kesimpulan : Aplikasi E- monitoring Proyek Berbasis Web ini sebagai suatu layanan yang mampu menjembatani dan memfasilitasi pihak pengguna jasa dan penyedia jasa dalam memonitoring selama pelaksanaan proyek berlangsung. 3. Sumardi “Implementasi Sistem Monitoring Proyek di CV. Infokomunikasi Kudus Berbasis Web”. Tujuan : Membangun sebuah system yang dapat membantu pengawasan proses pengajuan proyek dan membantu user menemukan spesifikasi kelayakan proyek sehingga dapat direalisasikan. Perancangan : Aplikasi ini dibangun menggunakan perancangan
system
seperti:
diagram context, data flow diagram (DFD) dan ER-diagram. Kesimpulan : Spesifikasi kelayakan proyek agar dapat direalisasikan beracuan pada data teknis dan anggaran biaya yang diajukan. Berdasarkan jurnal yang saya cantumkan tersebut maka saya membuat perbedaan dengan aplikasi sebelumnya. Disini saya menambahkan yaitu dengan menggunakan model UML (Unified Modelling Language) dan untuk perancangannya menggunakan metode waterfall sehingga menjadikan aplikasi ini lebih baik dan terintegrasi yang nantinya mudah dalam pengoperasiannya dan sesuai dengan kebutuhan user yang diinginkan.
23
http://digilib.mercubuana.ac.id/