BAB II LANDASAN TEORI 2.1. Definisi Perancangan Sistem Informasi Perancangan sistem informasi atau sering disebut dengan program design, merupakan bagian dari fase desainpada SDLC. Perancangan sistem berguna untuk menganalisa dalam menentukan program apa yang akan ditulis, membuat instruksiinstruksi untuk programmer tentang bagaimana kode program seharusnya ditulis serta mengidentifikasi tentang bagaimana bagian-bagian dari kode akan digabungkan bersama dalam membuat sebuah program. (Alan Dennis, Barbara Haley Wixom, dan Roberta M. Roth, 2012:260)
2.1.1. Definisi Sistem Informasi Sistem informasi adalah seperangkat unsur yang saling terkait atau komponen yang mengumpulkan (input ) , memanipulasi ( proses ) , menyimpan , dan menyebarkan (output ) data dan informasi, dan memberikan reaksi korektif ( mekanisme umpan balik ) untuk memenuhi tujuan. Mekanisme umpan balik merupakan komponen yang membantu organisasi mencapai tujuan mereka, seperti meningkatkan keuntungan atau meningkatkan layanan pelanggan. Dengan menilik pada definisi di atas, suatu sistem dapat terdiri dari sistem-sistem yang lain ataupun juga dapat menjadi bagian dari sistem yang lebih besar. Sistem mempunyai 4 fungsi dasar yaitu :
Gambar 2.1 Fungsi Dasar Sistem Informasi 1. Input, melibatkan tentang penerimaan dan penggabungan elemen-elemen yang akan diproses dalam sebuah sistem. 2. Processing, melibatkan tentang proses transformasi yang merubah input menjadi output. 3. Output,melibatkan pendistribusian elemen-elemen yang telahdihasilkan melalui proses transformasi kepada tujuan.
6 http://digilib.mercubuana.ac.id/
4. Dalam sistem informasi , Feedback adalah informasi dari sistem yang digunakan untuk membuat perubahan pada kegiatan masukan atau pengolahan. (Ralph M. Stair, George W. Reynolds, 2012:10).
2.2. Definisi Sistem Informasi Pemeliharaan Perangkat IT Infrastruktur 2.3.1. Definisi Pemeliharaan Maintenance atau pemeliharaan adalah suatu kegiatan yang dilakukan secara berulang-ulang dengan tujuan agar peralatan selalu memiliki kondisi yang sama dengan keadaan awalnya. Maintenance juga dilakukan untuk menjaga peralatan tetap berada dalam kondisi yang dapat diterima oleh penggunanya. (Maintenance Enginering Handbook, Eighth Edition, McGraw-Hill, 2014)
2.3.2. Definisi IT Infrastruktur Infrastruktur TI didefinisikan sebagai sumber daya teknologi bersama yang menyediakan
platform
untuk
aplikasi
system
informasi
perusahaan
yang
terperinci.Infrastruktur TI meliputi investasi dalam peranti keras, peranti lunak, dan layanan-seperti konsultasi, pendidikan, dan pelatihan-yang terbesar di seluruh perusahaan atau tersebar diseluruh unit bisnis dalam perusahaan. Infrastruktur TI terdiri atas sekumpulan perangkat dan aplikasi peranti lunak yang dibutuhkan untuk menjalankan suatu perusahaan besar secara keseluruhan.Namun infrastruktur TI juga merupakansekumpulan layanan firewide (mencakup seluruh perusahaan) yang dianggarkan oleh pihak manajemen dan terdiri atas kapabilitas manusia dan kapabilitas teknis.Layanan yang dapat disediakan oleh perusahaan untuk para pelanggan, pemasok dan para pekerjanya adalah kegunaan langsung dari infrastruktur TI perusahaan tersebut.Idealnya, infrastruktur ini mendukung bisnis perusahaan dan strategi sistim informasinya.Teknologi informasi yang baru mempunyai dampak besar terhadap bisnis perusahaan dan strategi system informasinya. Teknologi informasi yang baru mempunyai dampak besar terhadap bisnis dan strategi TI, sama seperti layanan yang dapat disediakan bagi para pelanggan. (ITIL For Dummies, Peter Farenden, 2012)
2.3.3. Definisi Sistem Informasi Pemeliharaan Perangkat IT Infrastruktur Sistem informasi pemeliharaan perangkat IT infrastruktur menyediakan sebuah sistem integrasi untuk memproses permintaan pemeliharaan perangkat IT infrastruktur secara efisien dan efektif. Karakteristik dari Sistem informasi pemeliharaan perangkat IT infrastruktur, sebagai berikut: 7 http://digilib.mercubuana.ac.id/
1. Layar entry data master. 2. Disposisi work control untuk mendistribusikan pemeliharaan perangkat IT infratruktur. 3. Informasi untuk pengguna berupa status pekerjaan yang sedang dilakukan oleh divisi Technical Support dan divisi Network Presales. 4. Output berupa laporan harga pemeliharaan perangkat dan laporan-laporan yang berkaitan dengan proses pemeliharaan perangkat IT infrastruktur ini. 5. Link kepada pengguna dan sistem kontrol.
2.3. Definisi Unified Modeling Language Tujuan dari Unified Modeling Languageadalah untuk menyediakan istilah dalam hal teknik berbasis objek dan teknik menskemakan diagram yang cukup banyak untuk menggambarkan bermacam proyek pengembangan sistem mulai dari analisa sampai desain. (Alan Dennis, Barbara Haley Wixom dan Roberta M. Roth, 2012:513) Diagram-diagram pada Unified Modeling Language (UML) dibagi menjadi 2 jenis yaitu structure diagrams, yakni diagram yang digunakan untuk menggambarkan data dan relasi paten yang terdapat pada sistem informasi. Jenis yang lain yaitu behavior diagrams yang menyediakan analisa dengan cara menggambarkan relasi yang dinamis antar objek yang mewakili sistem informasi dalam hal bisnis. Berikut adalah UML diagram yang digunakan penulis dalam mengerjakan tugas akhir : Tabel 2.1 Daftar Diagram UML Nama Diagram
Digunakan Untuk
Fase Utama
Mengambil kebutuhan
Analisa
Behavior Diagram Use Case Diagram
bisnis untuk sistem dan menggambarkan interaksi antara sistem dengan lingkungannya Activity Diagram
Menggambarkan alur kerja
Analisa, Desain
bisnis pada masing-masing class, Alur dari aktivitas pada use case, atau dapat digunakan untuk memperjelas metode perancangan
8 http://digilib.mercubuana.ac.id/
Nama Diagram
Digunakan Untuk
Fase Utama
Sequence Diagram
Menampilakn perilaku
Analisa, Desain
objek dalam use case. Berfokus pada urutan kegiatan berbasis waktu Structure Diagram Class Diagram
Menggambarkan relasi
Analisa, Desain
antar class modeled dalam sebuah sistem
2.4.1. Definisi Use Case Diagram Use case diagram digunakan oleh para analis untuk mengetahui lebih baik lagi mengenai fungsionalitas sistem dari tingkatan yang sangat tinggi (Alan Dennis, Barbara Haley Wixom dan Roberta M. Roth, 2012:517). Secara umum, use case diagram digambarkan terlebih dahulu dalam SDLC pada saat analis mengumpulkan dan mendefinisikan kebutuhan untuk sistem, karena use case diagram menyediakan cara yang mudah dan akurat dalam berkomunikasi dengan pengguna mengenai apa yang sebenarnya dilakukan oleh sistem. Berikut ini adalah elemen-elemen dari use case diagram : Tabel 2.2 Elemen Use Case Diagram No.
Nama Elemen
1
Aktor
Simbol
Definisi Aktor adalah orang atau sistem yang memperoleh manfaat dari dan /atau di luar sistem. Aktor harus diberikan label sesuai dengan peranannya Aktor dapat dikaitkan dengan aktor-aktor lain oleh spesialisasi atau asosiasi superclass yang dilambangkan dengan anak panah dengan panah berongga Aktor ditempatkan di luar batas sistem
9 http://digilib.mercubuana.ac.id/
No.
Nama Elemen
2
Use Case
Simbol
Definisi Use
case
merupakan
bagian
utama dari fungsionalitas sistem Use case dapat memperpanjang use case lain (extend) Use case depat menggunakan use case lain Use case ditempatkan di dalam batas sistem Use case diberi label dengan penjelasan kata kerja atau kata benda 3
Batasan Sistem
Batasan sistem terdiri dari nama sistem yang terdapat di dalam atau di atas simbol Batasan sistem merupakan ruang lingkup sistem
4
Relasi Asosiasi
Relasi asosiasi menghubungkan aktor dengan use case yang berinteraksi
2.4.2. Definisi Activity Diagram Activity diagram adalah notasi UML yang menjelaskan tentang perilaku sebuah sistem yang dilihat dari terminologi kegiatan-kegiatan. (Bernd Bruegge dan Allen h. Dutoit, 2010:33).Maksud dari kegiatan-kegiatan adalah elemen-elemen pemodelan yang menggambarkan pelaksanaan sekumpulan operasi. Pelaksanaan dari sebuah aktivitas dapat didasari baik oleh penyelesaian pelaksanaan pada aktivitas yang lain, oleh ketersediaan object atau oleh event eksternal. Activity diagramsama dengan flowchart diagram dalam hal penggambaran pengaturan alur (dalam hal operasi apa yang dilakukan) dan alur data (dalam hal object yang saling bertukar selama operasi dilakukan). Berikut adalah elemen-elemen UML dalam bentuk Activity diagram :
10 http://digilib.mercubuana.ac.id/
Tabel 2.3 Elemen Activity Diagram No.
Nama Elemen
1
Activity
Simbol
Definisi Menggambarkan aksi atau aktivitas, .
activity dapat dilakukan hanya setelah semua predecessor activty atau aktivitas yang sebelumnya telah selesai dilakukan
2
Control Flow
Arah aliran dari dan ke masingmasing activity
3
Control node –
Adalah cabang dari control flow.
Decision
Yang memberikan alternatif Decision
berbasis kondisi pada suatu object atau sekumpulan object
4
5
Control node –
Membagi flow control ke dalam
Fork nodes
banyak activity (thread)
Control node –
Melakukan sinkroniasi dari banyak
Join nodes
activity (thread) ke dalam satu activity paralel
2.4.3. Definisi Sequence Diagram Sequence diagram menggambarkan objek-objek yang berperan serta dalam use case dan pesan-pesan yang dilewati oleh objek dari waktu ke waktu untuk sebuah use case. (Alan Dennis, Barbara Haley Wixom dan Roberta M. Roth, 2012:530). Sequence diagram merupakan model dinamis yang mendukung dynamic view untuk pengembangan sistem. Sequnce diagram menunjukkan urutan yang eksplisit yang dilewati antar objek dalam suatu interaksi yang didefinisikan. Dikarenakan sequence diagram menekankan pada urutan kegiatan berbasis waktu, maka dapat sangat membantu dalam memahami
11 http://digilib.mercubuana.ac.id/
spesifikasi secara real-time dan dapat digunakan untuk membantu memahami use case yang kompleks. Berikut ini adalah elemen-elemen dari sequence diagram : Tabel 2.4 Elemen Sequence Diagram No.
Nama Elemen
1
Aktor
Simbol
Definisi Aktor adalah orang atau sistem yang memperoleh manfaat dari dan di luar sistem Aktor berpartisipasi secara berurutan dengan mengirimkan atau menerima pesan Aktor ditempatkan di bagian atas diagram
2
Object
Objek berpartisipasi secara Object
berurutan dengan mengirimkan atau menerima message Objek ditempatkan di bagian atas diagram
3
Lifeline
Lifeline menunjukkan masa dari sebuah objek dalam sebuah urutan Lifeline berisi X pada suatu poin dimana kelas atau objek tidak lagi berinteraksi
4
Focus of control
Focusof control berupa persegi panjang yang tipis ditempatkan di atas lifeline Focus of control ditunjuk ketika sebuah objek sedang mengirim atau menerima message
5
Message
Message menyampaikan informasi dari satu object ke object lain
6
Object destruction
X
Objectdestruction berupa simbol X ditempatkan pada akhir dari suatu object’s lifeline untuk menunjukkan bahwa lifeline akan berakhir
12 http://digilib.mercubuana.ac.id/
2.4.4. Definisi Class Diagram Class diagram merupakan model statis yang mendukung static view pada pengembangan sistem.Class diagram menampilkan kelas-kelasdan relasi kelas yang terdapat dalam sebuah sistem dalam waktu ke waktu, secara konstan (Alan Dennis, Barbara Haley Wixom dan Roberta M. Roth, 2012:521). Berikut ini adalah elemenelemen dari class diagram : Tabel 2.5 Elemen Class Diagram No.
Nama Elemen
1
Class
Simbol
Definisi Class dapat berupa jenis orang, class
+Attribute1 +Operation1()
tempat atau mengenai suatu hal yang harus didapatkan sistem dan disimpan informasinya. Class mempunyai nama class yang ditulis dengan huruf tebal dan berada di atas bagiannya (kompartemen). Class mempunyai daftar atribut di tengah bagiannya Class mempunyai daftar operasi di bagian paling bawah Class tidak secara eksplisit menunjukkan operasi yang tersedia untuk semua class
2
Atribut
Nama Atribut
Atribut menggambarkan properties yang menggambarkan kondisi dari suatu objek. Atribut dapat berasal dari atribut lain, ditunjukkan dengan menempatkan garis miring sebelum nama atribut itu
13 http://digilib.mercubuana.ac.id/
No.
Nama Elemen
Simbol
Definisi
3
Metode
Operation name ()
Metode menggambarkan tindakan atau fungsi yang dapat dilakukan sebuah class Metode dapat diklasifikasikan sebagai konstruktor, query atau operasi update Metode terdiri dari tanda kurung yang dapat mengandung parameter khusus atau informasi yang dibutuhkan untuk melakukan operasi
4
Asosiasi
Asosiasi menggambarkan hubungan antara beberapa class, atau class dengan dirinya sendiri. Asosiasi diberi label kata kerja atau nama peran, tergantung yang mana yang lebih baik yang menggambarkan relasi Asosiasi terdapat di antara satu class atau lebih Asosiasi berisi simbol multiplicity, yang mewakili jumlah minimum dan maksimum suatu class instance dapat dikaitkan dengan class intance yang lain
2.4. Definisi Basis Data Basisdata merupakan kumpulan data yang mendeskripsikan tentang aktifitas dari satu atau lebih organisasi data.Dalam pengembangan sebuah sistem, desain basisdata sangat berperan penting.Desain basisdata yang baik dapat mempengaruhi kinerja dari suatu sistem. Basis data merupakan sebuah kumpulan dari elemen-elemen data yang terintegrasi dan berelasi secara logis. Sebuah basis data menggabungkan baris-baris yang sebelumnya
14 http://digilib.mercubuana.ac.id/
telah disimpan di file terpisah, basis data membuat sebuah wadah dari data-data, untuk melayani berbagai aplikasi. (George M. Marakas dan James A. O’Brien:684) Basis data yang populer saat ini adalah basis data relasional.Basisdata relasional dapat dikembangkan dengan perangkat lunak yang disebut RBDMS (Relasional Data Base
Management
System).RDBMS
digunakan
untuk
mengembangkanbasisdata
relasional hingga melakukan pemeliharaan data yang ada di dalamnya. Beberapa contoh software RDBMS adalah : MySQL , Oracle , SQL server, Postgredan lain lain. Istilah penting dalam basisdata relasional : 1. Relasi, dapat disebut dengan tabel yang terdiri dari baris dan kolom. 2. Atribut, merupakan kolom yang terdapat pada sebuah relasi. 3. Kardinalitas, merupakan jumlah baris dalam relasi. 4. Kunci Kandidat atau candidate key, adalah sebuah atribut atau gabungan beberapa atribut yang digunakan untuk membedakan antara satu baris dengan baris yang lain 5. Kunci Primer atau primary key, adalah kunci kandidat yang dipilih sebagai identitas untuk membedakan satu baris dengan baris lain dalam suatu relasi. 6. Kunci Asing atau foreign key, adalah sebuah atribut (atau gabungan beberapa atribut) dalam suatu relasi yang merujuk kek kunci primer relasi lain.
2.5. Definisi MySQL MySQL mudah dan cepat digunakan RDBMS pada banyak situs web.Kecepatan adalah fokus utama pengembang dari awal.Dalam kepentingan kecepatan, MySQL membuat keputusan untuk menawarkan fitur yang lebih sedikit daripada pesaing utamanya (seperti Oracle dan Sybase). Namun, meskipun MySQL kurang fitur lengkap dibandingkan pesaingnya yang komersial, ia memiliki semua fitur yang dibutuhkan oleh mayoritas pengembang database. Lebih mudah untuk menginstal dan digunakan dibandingkan kompetitornya komersial, dan perbedaan harga yang sangat mendukung. MySQL awalnya dikembangkan oleh sebuah perusahaan Swedia tetapi sekarang dikembangkan, dipasarkan, dan didukung oleh Sun Microsystems.Ada 2 license yang dimiliki perusahaan yaitu :
MySQL Community Server: Sebuah penawaran diberikan untuk pengguna melakukan download secara gratis. Edisi open source MySQL, dirilis pertama kali dengan fitur yang paling canggih. Siapa pun yang dapat memenuhi persyaratan GPL dapat menggunakan perangkat lunak gratis.
MySQL
Enterprise Subscription:Sebuah penawaran yang
komprehensif
dukungan produksi, alat monitor, dan perangkat lunak database MySQL. Untuk
15 http://digilib.mercubuana.ac.id/
biaya berlangganan yang dibayar per tahun per server, pembaruan perangkat lunak bulanan, jasa konsultasi, dukungan teknis, dan layanan lain yang tersedia.Sebuah penawaran yang komprehensif dukungan produksi, alat monitor, dan perangkat lunak database MySQL. Untuk biaya berlangganan yang dibayar per tahun per server, pembaruan perangkat lunak bulanan, jasa konsultasi, dukungan teknis, dan layanan lain yang tersedia. (Janet Valade, 2010:13)
2.6. Definisi PHP (Hypertext Preprocessor) PHP , bahasa scripting yang dirancang khusus untuk digunakan di Web, bahasa PHP ini dapat digunakan untuk membuat halaman Web dinamis . Seperti fitur yang membuat desain Web dan pemrograman menjadi lebih mudah , PHP digunakan pada lebih dari 20 juta domain (menurut survei Netcraft di www.php.net/usage.php) . Popularitasnya terus berkembang , sehingga harus memenuhi fungsinya yang cukup baik. PHP adalah singkatan dari PHP: HyperText Preprocessor. Dalam perkembangan awal oleh seorang pria bernama Rasmus Lerdorf, itu disebut alat Personal Home Page.Ketika berkembang menjadi bahasa full-blown, namanya berubah menjadi lebih sesuai dengan fungsinya diperluas. (Janet Valade, 2010:12)
2.7. Definisi Framework Framework
secara
sederhana
dapat
diartikan
kumpulan
dari
fungsi-
fungsi/prosedur-prosedur dan class-class untuk tujuan tertentu yang sudah siap digunakan sehingga bisa lebih mempermudah dan mempercepat pekerjaan seorang programer, tanpa harus membuat fungsi atau class dari awal. Ada beberapa alasan mengapa menggunakan Framework:
Mempercepat dan mempermudah pembangunan sebuah aplikasi web.
Relatif memudahkan dalam proses maintenance karena sudah ada pola tertentu dalam sebuah framework (dengan syarat programmer mengikuti pola standar yang ada)
Umumnya framework menyediakan fasilitas-fasilitas yang umum dipakai sehingga kita tidak perlu membangun dari awal (misalnya validasi, ORM, pagination, multiple database, scaffolding, pengaturan session, error handling, dll
2.8.
Lebih bebas dalam pengembangan jika dibandingkan CMS
Definisi CodeIgniter CodeIgniter merupakan aplikasi sumber terbuka yang berupa framework PHP
dengan model MVC (Model, View, Controller) untuk membangun website dinamis
16 http://digilib.mercubuana.ac.id/
dengan menggunakan PHP.CodeIgniter memudahkan developer untuk membuat aplikasi web dengan cepat mudah dibandingkan dengan membuatnya dari awal.CodeIgniter dirilis pertama kali pada 28 Februari 2006.Versi stabil terakhir adalah versi 3.0.3.
2.9.
Definisi Model View Controller Model View Controller merupakan suatu konsep yang cukup populer dalam
pembangunan aplikasi web, berawal pada bahasa pemrograman Small Talk, MVC memisahkan pengembangan aplikasi berdasarkan komponen utama yang membangun sebuah aplikasi seperti manipulasi data, user interface, dan bagian yang menjadi kontrol aplikasi. Terdapat 3 jenis komponen yang membangun suatu MVC pattern dalam suatu aplikasi yaitu :
View, merupakan bagian yang menangani presentation logic. Pada suatu aplikasi web bagian ini biasanya berupa file template HTML, yang diatur oleh controller. View berfungsi untuk menerima dan merepresentasikan data kepada user. Bagian ini tidak memiliki akses langsung terhadap bagian model.
Model, biasanya berhubungan langsung dengan database untuk memanipulasi data (insert, update, delete, search), menangani validasi dari bagian controller, namun tidak dapat berhubungan langsung dengan bagian view.
Controller, merupakan bagian yang mengatur hubungan antara bagian model dan bagian view, controller berfungsi untuk menerima request dan data dari user kemudian menentukan apa yang akan diproses oleh aplikasi. Dengan menggunakan prinsip MVC suatu aplikasi dapat dikembangkan sesuai
dengan kemampuan developernya, yaitu programmer yang menangani bagian model dan controller, sedangkan designer yang menangani bagian view, sehingga penggunaan arsitektur MVC dapat meningkatkan maintanability dan organisasi kode. Walaupun demikian dibutuhkan komunikasi yang baik antara programmer dan designer dalam menangani variabel-variabel yang akan ditampilkan.
2.10. Definisi XAMPP XAMPP adalah perangkat lunak bebas, yang mendukung banyak sistem operasi, merupakan kompilasi dari beberapa program.Fungsinya adalah sebagai server yang berdiri sendiri (localhost), yang terdiri atas program Apache HTTP Server, MySQL database, dan penerjemah bahasa yang ditulis dengan bahasa pemrograman PHP dan Perl. Nama XAMPP merupakan singkatan dari X (empat sistem operasi apapun), Apache, MySQL, PHP dan Perl.Program ini tersedia dalam GNU General Public License dan bebas, merupakan web server yang mudah digunakan yang dapat melayani tampilan 17 http://digilib.mercubuana.ac.id/
halaman web yang dinamis.Untuk mendapatkanya dapat mendownload langsung dari web resminya.
18 http://digilib.mercubuana.ac.id/