BAB II LANDASAN TEORI 2.1 Pengertian Data dan Informasi Menurut George Reynolds (2010;p5) Data terdiri dari fakta-fakta mentah, seperti nomor karyawan, jumlah jam kerja dalam seminggu, nomor inventaris bagian, atau penjualan orders. Ketika data tersebut diatur dengan cara yang bermanfaat, mereka menjadi informasi. Informasi adalah kumpulan fakta terorganisir sehingga mereka memiliki nilai tambah melampaui nilai fakta. Ciri – ciri informasi yaitu terbaru, tepat waktu, relevan, konsisten dan penyajian dalam bentuk yang sederhana. Jadi dapat disimpulkan bahwa informasi adalah data yang telah diorganisasi dan diproses serta memiliki arti. 2.2 Sistem Menurut George Reynolds (2010;p8) Sistem adalah suatu set elemen atau komponen yang berinteraksi untuk mencapai tujuan. Hubungan diantara unsur – unsur yang terdapat dalam sistem menentukan bagaimana sistem trsebut dapat bekerja. 2.3 Karakteristik Sistem Model umum sebuah sistem adalah input, proses, dan output. Hal ini merupakan konsep sebuah sistem yang sangat sederhana sebab sebuah sistem dapat mempunyai beberapa masukan dan keluaran.Selain itu, sebuah sistem mempunyai karakteristik atau sifat-sifat tertentu yang mencirikan bahwa hal tersebut bisa dikatakan sebagai suatu sistem. Adapun karakteristik yang dimaksud adalah sebagai berikut : 1. Komponen Sistem (Component) Komponen-komponen sistem tersebut dapat berupa suatu bentuk subsistem. Setiap subsistem memiliki sifat dari sistem yang menjalankan suatu fungsi tertentu dan mempengaruhi proses sistem secara keseluruhan 2. Batasan Sistem (Boundary) Ruang lingkup sistem merupakan daerah yang membatasi antara sistem dengan sistem yang lain atau sistem dengan lingkungan luarnya. Batasan sistem ini memungkinkan suatu sistem dipandang sebagai satu kesatuan yang tidak dapat dipisahkan. 6 3. Lingkungan Luar Sistem (Environment) Bentuk apapun yang ada diluar ruang lingkup atau batasan sistem yang mempengaruhi operasi sistem tersebut disebut lingkungan luar sistem.Lingkungan luar sistem ini dapat bersifat menguntungkan dan dapat juga bersifat merugikan sistem tersebut. 4. Penghubung (Interface) Media yang menghubungkan sistem dengan subsistem yang lain disebut penghubung sistem atau interface. Penghubung ini memungkinkan sumber-sumber daya mengalir dari satu subsistem ke subsistem lain. Bentuk keluaran dari satu subsistem akan menjadi masukan untuk subsitem lain melalui penghubung tersebut. Dengan demikian, dapat terjadi suatu integrasi sistem yang membentuk satu kesatuan. 5. Masukan Sistem (Input) Energi yang dimasukkan ke dalam sistem disebut masukan sistem, yang dapat berupa pemeliharaan (maintenance input) dan sinyal (signal input). 6. Keluaran Sistem (Output) Hasil energi yang diolah dan diklasifikasikan menjadi keluaran yang berguna. Keluaran ini dapat mennjadi masukan bagi subsistem yang lain seperti sistem informasi. Keluaran yang dihasilkan adalah informasi. Informasi ini dapat digunakan sebagai masukan untuk pengambilan keputusan atau hal-hal lain yang menjadi input bagi subsitem lain. 7. Pengolah Sistem (Process) Suatu sistem dapat mempunyai suatu proses yang akan mengubah masukan menjadi keluaran. 8. Sasaran (Objectives) dan Tujuan (Goal) Suatu sistem mempunyai tujuan dan sasaran yang pasti dan bersifat deterministik. Jika suatu sistem tidak memiliki sasaran maka operasi sistem tidak ada gunanya.Suatu sistem dikatakan berhasil bila mengenai sasaran atau tujuan yang telah direncanakan. Suatu sistem dikatakan berhasil apabila mengenai sasaran atau tujuannya. Jika suatu sistem tidak mempunyai sasaran, maka operasi sistem tidak akan ada gunanya. 2.4 Pengertian Sistem Informasi Menurut George Reynolds (2010;p10) Sistem Informasi adalah seperangkat unsur atau komponen yang saling terkait yang mengumpulkan (input), memanipulasi (proses), menyimpan, dan menyebarkan (output) data yang memberikan reaksi korektif (mekanisme umpan balik) untuk memenuhi tujuan. 8 2.5 Komponen Sistem Informasi Menurut George Reynolds (2010;p10) suatu system memiliki empat komponen dasar,yaitu: 1. Input: Kegiatan pengumpulan data mentah agar dapat diproses 2. Processing: Pengolahan berarti mengubah data menjadi outputyang berguna. Pengolahan dapat melibatkan perhitungan, perbandingan data dan pengambilan alternatif. 3. Output:Dalam sistem informasi, output menghasilkan informasi yang berguna, biasanya dalam bentuk dokumen dan laporan 4. Feedback :Dalam sistem informasi, feedback digunakan untuk melakukan perubahan inputan atau perubahan tahapan pemprosesan data 2.6 Analisa Berorientasi Object Dalam pengembangan sistem yang akan penulis kembangkan penulis akan mengembangkan sistem dengan pendekatan berorientasi object dimana perancangan sistem didasarkan pada objek – objek untuk mendefinisikan sistem sampai pada bentuk yang paling sederhana. Analisis berorientasi objek atau Object Oriented Analysis (OOA) adalah tahapan untuk menganalisis spesifikasi atau kebutuhan akan sistem yang akan dibangun dengan konsep berorientasi objek Adapun keuntungan menggunakan OOP dalam pembuatan aplikasi website adalah: 1. Maintainbility Mudah dikelola karena kita dengan mudah menemukan sumber kesalahan untuk kemudian diperbaiki. Misalnya yang rusak adalah penglihatan, tentu yang diperbaiki adalah mata bukan object yang lain (dianalogikan dengan tubuh manusia, dimana setiap bagian tubuh adalah object). Hal ini karena setiap object memiliki fungsi/kegunaan yang berbeda dengan object lainya. 2. Extensibility Kemampuan untuk dapat diperluas, setiap object dapat ditambah kemampuanya (tentu kode-kode di dalamnya) tanpa mengganggu object yang lain. 3. Reusability Kemampuan untuk dapat digunakan kembali. Setiap object dapat dipakai dalam project yang lain jika diperlukan tanpa perlu penyesuaian yang berarti. 9 2.7 Unified Modeling Languange (UML) UML singkatan dari Unified Modeling Languange adalah bahasa standar untuk penulisan cetak biru perangkat lunak (Pressman, 2012:p987). UML dapat digunakan untuk memvisualisasikan, menentukan, mengontruksikan, dan mendokumentasikan artifak – artifak suatu sistem software – intensive. Dengan kata lain sama seperti arsitek bangunan membuat cetak biru untuk digunakan oleh perusahaan konstruksi, arsitek perangkat lunak membuat digram UML untuk membantu pengembang perangkat lunak membangun perangkat lunak. Beberapa jenis diagram yang terdapat dalam UML yaitu : a. Use case diagram Use case diagram menjelaskan tentang relasi dan dependensi antara grup use cases (kasus) dan aktor yang berpartisipasi dalam proses. Sebagai sebuah bahasa, UML dapat digunakan untuk menggambarkan software yang dibangun dengan menggunakan paradigma tradisional maupun paradigma berorientasi objek (Stephen R. Schach, 2011 : 571). Berikut adalah simbol-simbol yang ada pada diagram use case: Tabel 1 Simbol Simbol Pemodelan Use Case Diagram GAMBAR NAMA KETERANGAN Aktor adalah orang atau sistem yang berasal dari manfaat dan eksternal untuk subjek. 1. Digambarkan sebagai salah satu tongkat (default) atau jika aktor non-manusia yang terlibat, sebagai persegi panjang dengan aktor Actor <<>> di dalamnya (alternatif). 2. label dengan perannya. 3. Dapat dikaitkan dengan aktor-aktor lain menggunakan spesialisasi / asosiasi superclass, dilambangkan dengan panah dengan panah berongga. Ditempatkan di luar batas subjek. 10 Termasuk nama subjek di dalam atau di atas. Subject Boundary Merupakan lingkup subjek, misalnya, sistem atau individu proses bisnis. Merupakan kasus penggunaan khusus ke yang lebih umum. Generalization Memiliki panah yang diambil dari kasus penggunaan khusus untuk kasus penggunaan dasar. Merupakan dimasukkannya fungsi satu kasus penggunaan dalam yang lain. Include Memiliki panah yang diambil dari kasus penggunaan dasar untuk kasus penggunaan digunakan. Merupakan perpanjangan dari kasus penggunaan untuk memasukkan perilaku opsional. Extend Memiliki panah yang diambil dari kasus penggunaan ekstensi untuk kasus penggunaan dasar. Link aktor dengan use case (s) dengan yang Association berinteraksi. Use Case: 1. Merupakan bagian utama dari fungsi sistem. 2. Dapat memperpanjang kasus penggunaan lain. Use case 3. Dapat mencakup use case lain. 4. Apakah ditempatkan di dalam batas sistem. Apakah label dengan frase kata kerja-kata benda deskriptif. 11 Gambar 1 Use case diagram (Willey,2012) Use Case dapat mempunyai relasi dengan Use Case lain - Include : Menspesifikasikan sebuah Use Case yang berada di dalam use case lain - Extends : Menspesifikasikan bahwa dalam situasi tertentu (disebut sebagai titik ekstensi), sebuah Use Case akan diperluas olehyang lain - Generalisasi (Use case Generalization) : Menspesifikasikan sebuah use case yang mewarisi karakteristik dari Use Case ’Super’, menggunakan kembali perilaku yang sama untuk beberapa Use Case b. Activity Diagram Activity Diagram menjelaskan tentang urutan aktivitas dalam sistem. Activity Diagram selalu terasosiasi ke sebuah class,sebuah Operator dan sebuah use case Tabel 2 Simbol - simbol Activity Diagram SIMBOL NAMA Activity KETERANGAN merupakan sebuah gambaran aktivitas yang terjadi. 12 memisahkan organisasi bisnis Swimlane yang bertanggung jawab terhadap aktifitas yang terjadi. Initial Node Actifity Final Node Decision Node merupakan tanda awal dari sebuah aktivitas. merupakan tanda berakhirnya sebuah aktivitas. Pilihan untuk pengambilan keputusan Digunakan untuk menunjukkan kegiatan – kegiatan yang Fork dilakukan secara paralel atau untuk menggabungkan dua kegiatan paralel menjadi satu Control Flow Menunjukkan urutan eksekusi Menunjukkan aliran objek dari Object Flow satu kegiatan (atau tindakan) untuk kegiatan lain (atau tindakan).. 13 Gambar 2 Contoh Activity Diagram (Willey,2010) c. Sequence Diagram Diagram sequence menggambarkan kelakuan objek pada use case dengan mendeskripsikan waktu hidup objek dan message yang dikirimkan dan diterima antar objek. Oleh karena itu untuk menggambar diagram sekuen maka harus diketahui objek-objek yang terlibat dalam sebuah use case beserta metode-metode yang dimiliki kelas yang diinstansiasi menjadi objek itu. Banyaknya diagram sekuen yang harus digambar adalah minimal sebanyak pendefinisian use case yang memiliki proses sendiri atau yang penting semua use case yang didefinisikan maka diagram sekuen yang harus dibuat juga semakin banyak. (Wiley, 2012) Tabel 3 Simbol - simbol Sequnce Diagram SIMBOL NAMA KETERANGAN orang atau sistem yang berasal dari manfaat Actor dan eksternal ke sistem yang berpartisipasi secara berurutan dengan mengirim dan / atau menerima pesan 14 LifeLine Menyatakan kehidupan suatu objek. Execcution Menyatakan objek dalam keadaan aktif dan Occurrence berinteraksi pesan. Message Pesan yang mengambarkan komunikasi yang terjadi antar objek. Message Pesan yang dikirim untuk diri sendiri secara (return) langsung. Message (return) Pesan yang dikirim untuk diri sendiri. Gambar 3 Contoh Sequnce Diagram (Willey,2012) 15 d. Class Diagram Diagram kelas atau class diagram menggambarkan struktur sistem dari segi pendefinisian kelas-kelas yang akan dibuat untuk membangun sistem. Kelas memiliki apa yang disebut atribut dan metode atau operasi. (Wiley, 2010) Kelas-kelas yang ada pada struktur sistem harus dapat melakukan fungsi-fungsi sesuai dengan kebutuhan sistem sehingga pembuat perangkat lunak atau programmer dapat membuat kelas-kelas di dalam program perangkat lunak sesuai dengan perancangan diagram kelas. Susunan struktur kelas yang baik pada diagram kelas sebaknya memiliki jenis-jenis kelas berikut: 1. Kelas main Kelas yang memiliki fungsi awal dieksekusi ketika sistem dijalankan. 2. Kelas yang menangani tampilan sistem (view) Kelas yang mendefinisikan dan mengatur tampilan ke pemakai. 3. Kelas yang diambil dari pendefinisian use case (controller) Kelas yang menangani fungsi-fungsi yang harus ada diambil dari pendefinisian use case, kelas ini biasanya disebut dengan kelas proses yang menangani proses bisnis pada perangkat lunak. 4. Kelas yang diambil dari pendefinisian data (model) Kelas yang digunakan untuk memegang atau membungkus data menjadi sebuah kesatuan yang diambil maupun akan disimpan ke basis data. Semua tabel yang dibuat di basis data dapat dijadikan kelas, namun untuk tabel dari hasil relasi atau atribut mutivalue pada ERD dapat dijadikan kelas tersendiri dapat juga tidak asalkan pengaksesannya dapat dipertanggungjawabkan atau tetap ada di dalam perancangan. (Wiley, 2010) Tabel 4 Simbol - simbol class diagram SIMBOL Object1 NAMA KETERANGAN Kelas Kelas pada struktur sistem Antarmuka interface / Sama dengan konsep interface dalam pemrogrman berorientasi objek 16 Asosiasi berarah / Relasi antar kelas dengan makna kelas yang satu digunakan oleh directed kelas yang lain, asosiasi association biasanya juga disertai dengan multiplicity. Relasi antar kelas dengan makna Generalisasi generalisasi-spesialisasi (umum khusus) Agregasi / aggregation Relasi antar kelas dengan makna semua-bagian (whole-part) Kebergantungan / dependency Relasi antar kelas dengan makna Kebergantungan antar kelas Association Relasi antar kelas dengan makna umum, asosiasi biasanya juga disertai dengan multiplicity. Gambar 4 Contoh Class Diagram (Willey,2012) 17 2.7 Manajemen Proyek a. Pengertian Proyek Proyek adalah usaha sementara yang dilakukan untuk menciptakan produk, layanan, dan hasil yang unik. Sifat sementara proyek menunjukkan bahwa sebuah proyek pasti memiliki awal dan akhir. Proyek berakhir jika tujuan proyek telah tercapai, atau jika proyek dihentikan karena tujuannya tidak dapat terpenuhi atau dihentikan oleh klien, atau jika kebutuhan untuk proyek tersebut sudah tidak ada lagi. Setiap proyek menciptakan produk, layanan, dan hasil yang uni. Hasik proyek ini bisa berwujud atau tidak berwujud. Keberlangsungan upaya kerja pada umumnya merupakan pengulangan proses karena mengikuti prosedur organisasi yang berlaku. Disamping itu, karena proyek bersifat unik, maka mungkin saja ada ketidakpastian atau perbedaan dalam produk, layanan, dan hasil yang dibuat dari suatu proyek. Sebuah proyek dapat melibatkan satu individu atau beberapa individu, satu unit organisasi atau beberapa unit organisasi dari berbagai organisasi. Sebuah proyek dapat membuat : Produk yang dibuat dari komponen lain atau dari produk itu sendiri. Kemampuan untuk memberikan sebuah layanan, misalnya fungsi bisnis yang mendukung produksi atau distribusi. Produk berupa output atau dokumen, misalnya proyek penelitian yang mengembangkan pengetahuan yang dapat digunakan untuk menentukan apakah tren tersebut ada atau merupakan sebuah proses baru yang dapat menghasilkan keuntungan. Contoh dari proyek dapat meliputi, tetapi tidak dibatasi oleh hal-hal berikut ini Pengembangan produk atau layanan baru. Mengakibatkan perubahan pada struktur, sistem staf, atau gaya dari suatu organisasi. Membangun atau memperoleh sebuah sistem informasi yang baru atau memodifikasinya. Melakukan upaya penelitian yang hasilnya akan tepat direkam. Membangun sebuah bangunan, pabrik industri, atau infrastruktur. Mengimplementasikan, memperbaiki, atau meningkatkan proses bisnis dan prosedur 18 b. Pengertian Manajemen Proyek Manajemen proyek adalah pengaplikasian dari pengetahuan, keterampilan, peralatan, dan teknik pada aktifitas proyek untuk memenuhi kebutuhan proyek. Manajemen proyek diselesaikan melaluiaplikasi yang sesuai dan integrasi dari 47 proses manajemen proyek yang dikelompokkan menjadi 5 kelompok, yaitu : 1. Initiating (Pengajuan), 2. Planning (Perencanaan), 3. Executing (Pelaksanaan), 4. Monitoring and Controlling (Pemantauan dan Pengawasan), 5. Closing (Penutupan). Mengelola sebuah proyek tidak terbatas pada : Mengidentifikasi persyaratan Mengatasi berbagai kebutuhan, kepentingan, dan harapan para stakeholder dalam perencanaan dan pelaksanaan proyek; Menyiapkan, memelihara, dan melaksanakan komunikasi antara para stakeholder yang aktif, efektif, dan kolaboratif; Mengelola para stakeholder dalam memenuhi kebutuhan proyek dan membuat penyampaian proyek; Menyeimbangkan kendala proyek yang tidak terbatas pada : ruang lingkup, kualitas, jadwal, anggaran, sumber daya, dan resiko. Karakteristik dan keadaan proyek tertentu dapat mempengaruhi kendala dimana tim manajemen proyek perlu untuk fokus. Keterkaitan terjadi pada semua faktor proyek, misalnya jika faktor berubah maka sedikitnya ada satu faktor lain yang terpengaruh. Perubahan kebutuhan dari proyek dapat menimbulkan resiko tambahan. Tim proyek harus bisa memperkirakan situasi dan menyeimbangkan permintaan untuk menghasilkan kesuksesan proyek. Karena adanya potensi perubahan, maka rencana manajemen proyek harus menyeluruh dan melewati elaborasi progresif terhadap siklus proyek. 2.8 Manajemen Jadwal Proyek (Project Time Management) Tidak jarang ditemui proyek teknologi informasi yang gagal dalam menyatukan rencana mengenai ruang lingkup, waktu dan biaya. Para manajer menyebutkan bahwa menyelesaikan proyek tepat waktu merupakan tantangan besar bagi mereka. Para manajer juga menyebutkan isu mengenai jadwal yang merupakan alas an utama sehingga terjadi konflik dalam proyek pada keseluruhan Proses. Tim proyek sering 19 membandingkan waktu penyelesaian yang terencana dengan yang nyata terjadi tanpa meminta persetujuan perubahan rencana proyek padahal waktu merupakan satu variable yang memiliki fleksibilitas paling sedikit. Karena waktu terus berlalu tanpa memperdulikan apa yang terjadi pada proyek. Berdasarkan penjelasan tersebut, hal apakah yang harus ada pada manajemen jadwal proyek, dan bagaimana manajer proyek meningkatkan performa pada area ini? Manajemen waktu proyek, meliputi aktivitas-aktivitas yang diperlukan untuk memastikan penyelesaian proyek tepat pada waktunya. Aktivitas-aktivitas utama yang merupakan bagian dari manajemen jadwal proyek adalah : a. Pendefinisian aktivitas, mengidentifikasikan aktivitas-aktivitas secara spesifik yang harus dilakukan oleh anggota tim proyek dan para Stakeholder sehingga menghasilkan produk-produk proyek. b. Rangkaian aktivitas, mengidentifikasikan dan mendokumentasikan hubungan antara aktivitas-aktivitas proyek. c. Perkiraan durasi aktivitas, memperkirakan jumlah periode kerja yang dibutuhkan untuk menyelesaikan aktivitas individu atau tunggal. d.Pengembangan jadwal, menganalisis rangkaian aktivitas, memperkirakan durasi aktivitas, dan kebutuhan-kebutuhan sumber daya untuk membentuk jadwal proyek. e. Pengendalian jadwal, mengendalikan dan mengatur perubahan-perubahan pada jadwal proyek 2.8.1 Penjadwalan Penjadwalan merupakan kumpulan kebijaksanaan dan mekanisme di sistem operasi yang berkaitan dengan urutan kerja yang dilakukan sistem komputer.Penjadwalan proyek meliputi pengurutan dan pembagian waktu untuk seluruh kegiatan proyek. Penjadwalan proyek juga merupakan sesuatu yang lebih spesifik dan menjadi bagian dari perencanaan proyek. Penjadwalan memiliki dua tugas penting, yaitu (Prawirosentono, 2007): 1. Memutuskan proses yang harus berjalan, dan 2. Memutuskan kapan dan selama berapa lama proses itu berjalan Sasaran utama penjadwalan adalah optimasi kinerja menurut kriteria tertentu, yaitu : a. Adil b. Efisiensi c. Waktu tanggap (response time) d. Turn arround time e. Throughput 20 Terdapat dua strategi penjadwalan, yaitu : 1. Penjadwalan nonpreemptive → Proses yang sedang berjalan tidak dapat disela. Proses diberi jatah waktu oleh pemroses, maka pemroses tidak dapat diambil alih oleh proses lain sampai proses itu selesai. 2. Penjadwalan preemptive Proses diberi jatah waktu oleh pemroses, maka pemroses dapat diambil alih proses lain, sehingga proses disela sebelum selesai dan harus dilanjutkan menunggu jatah waktu pemroses tiba kembali pada proses itu. Berguna pada sistem dimana prosesproses yang mendapat perhatian/ tanggapan pemroses secara cepat, misalnya : a. Pada sistem realtime, kehilangan interupsi (tidak dilayani segera) dapat berakibat fatal. b. Pada sistem interaktif, agar dapat menjamin waktu tanggap yang memadai. Penjadwalan secara preemptive baik, tetapi harus dibayar mahal. Peralihan proses memerlukan overhead (banyak tabel yang dikelola). Supaya efektif, banyak proses harus berada di memori utama sehingga proses-proses tersebut dapat segera running begitu diperlukan. Menyimpan banyak proses tak running di memori utama merupakan suatu overhead tersendiri. Penjadwalan suatu proyek dapat membantu dalam beberapa hal, diantaranya (Heizer, Jay dan Render, Barry, 2006) : 1. Menunujukkan hubungan tiap kegiatan dengan kegiatan lainnya dan terhadap keseluruhan proyek 2. Mengidentifikasikan hubungan yang harus didahulukan di antara kegiatan 3. Menunjukkan perkiraan biaya dan waktu yang realistis untuk tiap kegiatan 4. Membantu mengetahui hal-hal yang mungkin menghambat suatu proyek 2.8.2 Teknik Penjadwalan Banyak teknik penjadwalan yang dapat dipilih sesuai dengan keadaan proyek. Model matematis dengan menggunakan pendekatan “teori probabilitas” dan “teori jaringan kerja”, dapat dipilih untuk penjadwalan suatu proyek yang menggunkan jumlah masukan yang banyak variasi serta kegiatan yang banyak sekali. Penjadwalan yang sering digunakan untuk analisis proyek (sebagai pedoman pengarahan dan pengawasan kemajuan pelaksanaan proyek) adalah model-model. 21 Secara garis besar, ada dua jenis teknik penjadwalan proyek, yaitu Gantt Chart dan metode Network (jaringan). Penulis hanya membahas mengenai gant chart pada dokumen ini, sesuai dengan teknik penjadwalan yang digunakan oleh PT.Simian Solutions. 2.8.2.1 Gant Chart Gantt chart adalah diagram batang yang menunjukkan waktu yang digunakan untuk perencanaan dan penjadwalan sumber daya dan alokasi waktu. Disebut Gantt karena ditemukan oleh Henry Gantt Gantt Chart adalah contoh teknik non-matematis yang banyak digunakan dan sangat popular di kalangan para manajer karena sederhana dan mudah dibaca. Gantt Chart dapat membantu penggunanya untuk memastikan bahwa : a. Semua kegiatan telah direncakan b. Urutan kinerja telah diperhitungkan c. Perkiraan waktu kegiatan telah tercatat, dan d. Keseluruhan waktu proyek telah dibuat Gantt Chart sangat mudah dipahami, balok horizontal (horizontal bar) dibuat pada tiap kegiatan proyek sepanjang garis waktu. Gantt Chart juga dapat digunakan untuk penjadwalan operasi yang berulang. Gantt chart digunakan untuk penjadwalan sederhana atau proyek-proyek yang kegiatannya tidak terlalu berkaitan atau proyek kecil, sedangkan network untuk penjadwalan proyek yang rumit. Gantt chart tidak bisa secara eksplisit menunjukkan keterkaitan antara aktivitas dan bagaimana satu aktivitas berakibat pada aktivitas lain bila waktunya terlambat atau dipercepat, sehingga perlu dilakukan modifikasi terhadap Gantt chart. Untuk mengatasi kekurangan-kekurangan yang ada pada Gantt chart maka dikembangkan sebuah teknik baru yaitu jaringan (network). Melalui gantt chart, seorang project manager dapat melihat task-task yang berurutan (sequential), task-task yang dikerjakan pada waktu yang sama dan task-task yang tumpang tindih (overlap). 22 Gambar 5 Contoh Gantt Chart (Willey,2012) Kelebihan penggunaan Gantt Chart, diantaranya : 1. Dapat menunjukkan waktu, kegiatan dan urutan kegiatan 2. Jika jumlah kegiatan tidak terlalu banyak atau hanya sekedar jadwal induk, maka metode Gantt Chart menjadi pilihan pertama dalam proses perencanaan dan pengendalian kegiatan, karena mudah dipahami oleh semua lapisan pelaksana proyek. Dari kelebihan diatas Gantt Chart juga memiliki kelemahan, antara lain (Murahartawaty): 1. Tidak memperlihatkan saling ketergantungan dan hubungan antar kegiatan sehingga sulit diantisipasi jika terjadi keterlambatan suatu kegiatan terhadap jadwal keseluruhan proyek. 2. Tidak mudah dilakukan perbaikan dan pembaharuan (updating) disebabkan Gantt Chart baru harus dibuat kembali (tidak efesien), padahal pembuatan ulang akan 23 memakan waktu dan jika tidak dilakukan segera maka peta tersebut akan menurun daya gunanya. 3. Untuk proyek yang berukuran sedang dan besar serta kompleks, maka Gantt Chart tidak mampu menyajikan jadwal secara sistematis dan mengalami kesulitan dalam menentukan keterkaitan antar kegiatan. 2.9 SQL (Structured Query Languange) SQL (Structured Query Language) adalah konstruksi bahasa yang digunakan untuk mengolah objek dan isi dari sistem database relasional (RDBMS). Dengan SQL, RDBMS akan mengerti maksud kita dan mengolah dan mengirimkan data yang kita inginkan. Semua perintah SQL dibagi dalam 2 kategori besar sesuai fungsinya, yaitu : DDL - Data Definition Language merupakan kumpulan perintah SQL yang digunakan untuk membuat, mengubah dan menghapus struktur dan definisimetadata dari objek-objek database.Perintah dasar untuk membangun kerangka nya database, seperti: CREATE: Perintah ini digunakan untuk membuat. Membuat database baru, view baru, kolom, dll. ALTER: Perintah ini digunakan untuk mengubah strukturnya tabel yang sudah jadi sebelumnya.Seperti mengganti nama tabel, menambah kolom, mengubah kolom, menghapus DROP: kolom,bisa juga untuk memberikan atribut pada kolom. Perintah ini digunakan untuk menghapus database dan tabel. DML - Data Manipulation Language merupakan kumpulan perintah SQL yang digunakan untuk proses pengolahan isi data di dalam table seperti memasukkan, merubah dan menghapus isi data - dan tidak terkait dengan perubahan struktur dan definisi tipe data dari objek database.Ini adalah perintah untuk memanipulasi data dalam database yang sudah dibuat. Perintahperintahnya seperti: INSERT: Perintah ini digunakan untuk menyisipkan atau memasukan databaru ke dalam tabel. SELECT: Perintah ini digunakan untuk mengambil data atau menampilkan data dari suatu tabel.Data yang kita ambil bisa kita tampilkan dalam layar prompt MySQL secara langsung atau melalui tampilan aplikasi. UPDATE: Perintah ini digunakan untuk memperbarui data lama menjadi databaru. DELETE: Perintah ini digunakan untuk menghapus data dari tabel 24 2.10 MySQL MySQL merupakan database server open source yang cukup popular keberadaanya. Dengan berbagai keunggulan yang dimiliki, membuat software database ini banyak digunakan oleh para praktisi untuk membangun suatu project. Adanya fasilitas API(Application Programming Interface) yang dimiliki oleh MySQL, memungkinkan bermacam-macam aplikasi komputer yang ditulis dengan berbagai bahasa pemrograman dapat mengaksis basis data MySQL MySQL is called a relational database management Sistem because is tables store not only data but the relathionship among the data. There are three categories of relationships. (Robin Nixon, 211-213). 2.11 PHP Setelah mengumpulkan data – data dan mengamati proses bisnis yang terdapat didalamnya, penulis akan mulai menganalisis dan membuat Desaign – Desaign yang sesuai dengan bisnis yang terdapat didalamnya dan mulai melakukan pengembangan sistem dengan perangkat software yang telah ditentukan. Dalam pengembangan sistem menggunakan halaman Web maka penulis menggunakan format yang dinamakan HTML. Dalam mentransferkan dokumen – dokumen web yang ditulis atau berformat HTML diperlukan protokol yang diberinama HTTP. HTTP (Hypertext Transfer Protocol) merupakan protokol yang digunakan untuk mentransfer data antara web server ke web browser. Untuk pengembangan Sistem monitoring project ini penulis meggunakan bahasa pemrograman PHP adapun penjelasan mengenai PHP adalah sebagai berikut : PHP adalah bahasa scripting yang menyatu dengan HTML (kode dasar website) dan dijalankan pada server side. Artinya, semua sintaks PHP yang diberikan akan sepenuhnya 25 dijalankan pada server, sedangkan yang dikirimkan ke browser hanya hasilnya saja.(Wardana:7). Website adalah PHP (akronimnya:Hypertext Preprocessor), denganya website menjadi dinamis(karena kandunganya website tersebut dapat berbasis database). Salah satu keunggulan PHP dibanding bahasa pemrograman lainya adalah PHP dapat diperoleh secara gratis, meskipun bukan berarti karena gratis kemampuanya menjadi pas-pasan. PHP sangat powerfull. Terbukti dengan banyaknya website yang dibangun menggunakan PHP. PHP juga terkenal lebih aman daripada bahasa pemrograman website yang lain. PHP juga sudah mendukung OOP (Object Oriented Programming) sehingga maintenance kode menjadi jauh lebih mudah dibandingkan procedural. 2.12 Code Igniter Dalam pembangunan sistem , penulis menggunakan CodeIgniter sebagai framework nya. Adapun penjelasanya mengenai Framework Code Igniter tersebut adalah sebagai berikut : CodeIgniter is an Application Development Framework - a toolkit - for people who build web sites using PHP. Its goal is to enable you to develop projects much faster than you could if you were writing code from scratch, by providing a rich set of libraries for commonly needed tasks, as well as a simple interface and logical structure to access these libraries. CodeIgniter lets you creatively focus on your project by minimizing the amount of code needed for a given task. (CodeIgniter:Introduction). Berdasarkan kutipan dari CodeIgniter Introduction, CodeIgniter adalah sebuah Aplikasi kerangka Pengembangan (Development Framework) yang digunakan untuk membangun situs Web menggunakan PHP. Tujuan pengembangan menggunakan CodeIgniter adalah untuk mengembangkan setiap proyek lebih cepat daripada pengembangan proyek dengan pengkodean dari awal, dengan menyediakan berbagai library tugas yang umumnya dibutuhkan, maupun interface yang sederhana dan struktur logis untuk mengakses library tersebut. CodeIgniter memungkinkan setiap pengguna untuk Fokus dan lebih kreatif pada proyek dengan meminimalkan jumlah kode yang digunakan. Penggunaan FrameworkCodeIgniter ini bermaksud untuk membantu dalam membuat pengkodean dengan menggunakan bahasa pemrograman PHP lebih terstruktur dan sistem yang akan dikembangkan diharapkan memiliki waktu yang lebih singkat dalam proses pengembanganya. 26 Adapun pengoperasian framework codeigniter adalah sebagai berikut : Codeigniter dapat dioperasikan dalam PHP 4.3.2 + maupun 5 sehingga jika kita membuat aplikasi website pada sebuah server yang masih belum support PHP 5, ini tidak akan menjadi masalah, karena masih tetap dapat bekerja. Menurut Wardana (2010:4)