9
Pada pembahasan landasan teori ini akan diterangkan teori-teori yang berkaitan dengan dokumen dan aplikasi yang dibuat.
2.1
Layanan Informasi
Layanan Informasi adalah penyampaian berbagai informasi kepada sasaran layanan agar individu dapat mengolah dan memanfaatkan informasi tersebut demi kepentingan hidup dan perkembangannya. Tujuan Secara umum yaitu agar terkuasainya informasi tertentu sedangkan secara khusus terkait dengan fungsi pemahaman (paham terhadap informasi yang diberikan) dan memanfaatkan informasi dalam penyelesaian masalahnya. Layanan informasi menjadikan individu mandiri yaitu memahami dan menerima diri dan lingkungan secara positif, objektif dan dinamis, mampu mengambil keputusan, mampu mengarahkan diri sesuai dengan kebutuhannya tersebut dan akhirnyadapat mengaktualisasikan dirinya.
PEMESANAN
Menurut Adi Nugroho dalam bukunya yang berjudul “ Memahami Perdagangan Modern Di Dunia Maya” merupakan hal rutin bahwa konsumen secara elektronik mengirimkan pesanan – pesanan akan barang dan/ atau jasa ke perusahaan. Form elektronik merupakan form yang mirip dengan surat pesanan pada perdagangan tradisional. Aplikasi – aplikasi klien/server sering dirancang untuk menanganinya. Web menuntut campur tangan yang relative sedikit dari personal – personal
perusahaan. Namun karena kebanyakan system web mendukung form – form elektronik, kebanyakan perusahaan yang bergerak di bidang perdagangan elektronik saat ini menggunakan aplikasi web, dan basisdata untuk tujuan yang sama.
Fungsi Website
Website mempunyai fungsi bermacam – macam, tergantung dari tujuan dan jenis website yang dibangun, tetapi secara garis besar dapat berfungsi sebagai: A. Media Promosi
Sebagai media promosi dapat dibedakan menjadi media promosi utama, misalnya website yang berfungsi sebagai search engine atau toko online, atau sebagai penunjang promosi utama, namun website dapat berisi informasi yang lebih lengkap daripada media informasi offline seperti koran atau majalah.
B. Media Pemasaran
Pada toko online atau system afiliasi, website merupakan media pemasaran yang cukup baik, karena dibandingkan degan toko sebagaimana di dunia nyata, untuk membangun toko online diperlukan modal yang relatif kecil, dan dapat beroperasi 24 jam walaupun pemilik website tersebut sedang istirahat atau sedang tidak ditempat, serta dapat diakses darimana saja.
C. Media Informasi
Website portal dan radio atau tv online menyediakan informasi yang bersifat global karena dapat diakses dari mana saja selama dapat terhubung ke internet, sehingga dapat menjangkau lebih luas daripada media informasi kon-vensional seperti koran, majalah, radio atau televisi yang bersifat lokal.
D. Media Pendidikan
Ada komunitas yang membangun website khusus yang berisi informasi atau artikel yang sarat denagan informasi ilmiah misalnya Wikipedia.
2.2 Pengolahan Data
Pengolahan data adalah serangkaian operasi atau informasi yang diinginkan. Arti lain dari pengolahan data adalah suatu sistem yang akan mengolah masukan berupa bahan baku dan bahan-bahan yang lain menjadi keluaran berupa bahan jadi. Untuk mendapatkan informasi yang akurat, tepat waktu dan relevan dapat diperoleh dari sistem pengolahan data. Dalam sistem pengolahan data terdapat perbedaan antara data dan informasi.
Data adalah suatu bentuk informasi yang masih mentah dan belum dapat bercerita banyak, sehingga perlu diolah lebih lanjut, untuk dapat dijadikan sebagai bahan keterangan (informasi) dan mempunyai nilai bagi seseorang dalam mengambil suatu kesimpulan atau keputusan.
Sedangkan informasi adalah hasil dari pengolahan data dalam suatu bentuk yang berguna dan lebih berarti bagi sipenerima. Informasi juga menggambarkan suatu kejadian nyata yang digunakan untuk pengambilan keputusan.
Sedangkan sumber dari informasi adalah data, yang berbentuk simbol atau huruf, angka, gambar dalam data dan diolah menjadi suatu model informasi dan membuat keputusan dan melakukan tindakan yang berarti bagi sipenerima informasi maka dengan digunakannya pengolahan data manfaat yang dapat diperoleh adalah meminimalkan kebutuhan tenaga manusia , hal ini karena
beberapa pekerjaan dilakukan secara otomatis oleh peralatan bantuan seperti komputer . Keuntungan lain adalah kemampuan komputer untuk memproses data lebih besar, keakuratan yang lebih besar, kecepatan yang lebih besar, fasilitas pengendalian otomatis dan pengolahan secara serentak. Sebagai contoh :
1. Pembuatan faktur Penjualan, dengan sudah dimanfaatkannya pengolahan data komputer, maka operator hanya memasukkan jumlah barang yang dipesan, karena nama pelanggan, alamat, harga sudah ada dalam database dan perhitungan total sudah kita dapatkan dari hasil proses program.
2. Perhitungan upah dan gaji, dengan sudah dimanfaatkannya pengolahan data komputer, operator hanya menginput banyaknya jam kerja, lembur, bonus atau komisi, hari absen dan untuk kode pegawai, nama pegawai, gaji pokok, informasi perhitungan pajak pendapatan, neraca pinjaman dan informasi kumulatif lainnya sudah ada pada database dan program yang memprosesnya.
2.3 Model Proses Pengembangan
Metodologi rekayasa perangkat lunak adalah proses untuk menghasilkan perangkat lunak yang teroganisasi menggunakan teknik-teknik dan konvensi-konvensi notasi yang telah ditentukan. Metodologi biasanya dipresentasikan sebagai satu rangkaian tahap, dengan teknik-teknik dan notasi diasosiasikan pada masing-masing tahap. Tahap-tahap produksi perangkat lunak biasanya
diorganisasikan kedalam siklus hidup yang berisi beberapa fase/tahap pengembangan. [Bambang Hariyanto, 2004]
2.3.1 Kegunaan Model Proses Pengembangan
Proses „pengembangan‟ perangkat lunak memuat serangkaian langkah yang dapat diprediksi harus ditempuh untuk menciptakan produk perangkat lunak yang berkualitas tinggi serta sesuai dengan jadwal yang ditentukan. [Bambang Hariyanto, 2004]
Kegunaan model proses pengembangan adalah sebagai berikut :
a) Penuntun untuk mengorganisasikan, merencanakan, penugasan, penganggaran, dan pengelolaan kerja proyek perangkat lunak atas waktu, ruang dan lingkungan komputasi.
b) Kerangka mengenai dokumen-dokumen yang dihasilkan untuk diberikan ke client.
c) Basis untuk menentukan kakas dan metodologi rekayasa perangkat lunak yang paling cocok untuk mendukung aktivitas-aktivitas pengembangan.
d) Kerangka kerja untuk menganalisis atau estimasi pola-pola alokasi dan konsumsi sumber daya selama pengembangan.
e) Basis untuk membuat studi empiris untuk menentukan apa yang mempengaruhi produktivitas, ongkos dan kualitas keseluruhan.
2.3.2 Pengembangan Orientasi Objek
Pengembangan sistem berorientasi objek, memerlukan keterampilan untuk analisis, perancangan, pemrograman dan pengujian
berorientasi objek. Langkah pertama menuju analisis berorientasi objek adalah berkaitan dengan pembuatan model yang presisi, relevan, tegas, dapat dipahami dan benar dari dunia nyata. Maksudnya, memodelkan persoalan sehingga dapat dimengerti dan bertindak sebagai basis stabil di tahap perancangan. Tahap perancangan dimulai dari hasil tahap analisis, dan aktivitas yang dilakukan yaitu merancang model yang berbasis komputasi, jelas yang lebih baik dari model sebelumnya. Keluaran tahap perancangan yaitu cetak biru untuk implementasi dalam bahasa pemrograman berorientasi objek. [Bambang Hariyanto, 2004].
Prinsip-prinsip yang mendasari pengembangan berorientasi objek adalah: 1. Abstraksi
Abstraksi adalah kemampuan manusia untuk mengenali keserupaan diantara ojek-objek, situasi-situasi, atau proses-proses didunia nyata serta keputusan untuk berkonsentrasi pada keserupaan-keserupaan. [Bambang Hariyanto, 2004]. Terdapat berbagai cara untuk melakukan klasifikasi abstraksi, diantaranya:
a. Abstraksi fungsional untuk menyatakan fungsi-fungsi yang akan diperoleh user.
b. Abstraksi data, tipe data merupakan abstraksi data karena tidak perlu mengetahui cara implementasi tipe data tersebut.
c. Abstraksi metode merupakan wujud lain dari abstraksi fungsional/algoritmik.
d. Abstraksi perilaku merupakan abstraksi yang ditujukan untuk mengabstraksikan perilaku sistem atau sifat dinamis dari sistem.
2. Pengkapsulan
Pengkapsulan adalah memisahkan aspek-aspek eksternal objek, yang dapat diakses objek-objek lain dari rincian implementasi internal objek yang tersembunyi dari objek-objek lain. Pengkapsulan dimaksudkan agar Output terhindar dari ketergantungan sehingga menyebabkan perubahan kecil yang memiliki akibat beruntun. Keampuhan pengkapsulan adalah membantu meminimalkan kerja ulang ketika mengembangkan sistem yang baru. [Bambang Hariyanto, 2004].
3. Modularitas
Modularitas merupakan kunci penulisan Output yang bagus dimana program dipecah menjadi modul-modul kecil yang masing-masing modul tersebut saling berinteraksi. Dengan modularitas, kesalahan di satu bagian Output dapat dikoreksi tanpa perlu mempertimbangkan bagian-bagian lainnya, serta bagian Output dapat dipahami tanpa harus memahami keseluruhan. [Bambang Hariyanto, 2004].
4. Reusability (Guna Ulang)
Gunaulang adalah sarana untuk meningkatkan kualitas praktek rekayasa perangkat lunak dengan penggunaan artifak-artifak perangkat lunak yang telah ada saat pembangunan sistem perangkat lunak yang baru. Gunaulang perangkat lunak tidak terbatas pada source code, namun juga meliputi dokumentasi, spesifikasi dan struktur rancangan. [Bambang Hariyanto, 2004].
5. Pewarisan
Pewarisan merupakan sarana untuk menghilangkan penulisan ulang terhadap kode yang dapat digunakan berulang kali. Penulisan berulang membutuhkan banyak waktu, menimbulkan ketidakkonsistenan dan meningkatkan resiko kesalahan. Pewarisan memberikan fasilitas pemodelan untuk menstrukturkan kelas-kelas menjadi lebih ringkas, menangkap apa yang serupa dan apa yang berbeda diantara kelas-kelas. [Bambang Hariyanto, 2004].
6. Polymorphism
Polymorphism merupakan konsep pokok pada perancangan berorientasi objek. Dua objek atau lebih dikatakan sebagai polymorphic bila objek-objek itu memiliki antarmuka-antarmuka identik namun mempunyai perilaku berbeda. Polymorphism memungkinkan kita mengenali dan mengeksploitasi keserupaan-keserupaan diantara kelas-kelas berbeda. [Bambang Hariyanto, 2004].
2.3.3 Rational Unified Process (RUP)
RUP ( Rational Unified Process) menggunakan konsep Object Oriented dengan aktifitas yang berfokus pada pengembangan model dengan menggunakan UML (Unified Model Language). [Musnansyah, 2007].
Rational Unified Process (RUP) juga merupakan sebuah framework yang berisi proses-proses yang dapat diadaptasikan dan dikembangkan sesuai kebutuhan organisasi yang menggunakannya [Kruchten, 2000].
RUP merupakan suatu pendekatan proses pembangunan perangkat lunak yang dilakukan secara iterative dan incremental. Metode ini sanggup menjawab tantangan apabila terdapat identifikasi permasalahan yang muncul pada saat proses pembangunan perangkat lunak berlangsung dan tidak semata-mata membebankan aktivitas identifikasi resiko hanya di awal siklus pembangunan perangkat lunak. Model proses pembangunan perangkat lunak yang dilakukan secara iterative dan incremental dapat dilihat pada gambar 2.1.
Gambar 2. 1 Proses yang Dilakukan Secara Iterative dan Incremental
2.3.4 Tahapan Dalam Rational Unified Process (RUP)
Lima tahapan dalam Unified Process adalah requirement, analisa, desain, implementasi, dan test.
1. Requirements
Tahapan ini berfokus pada kegiatan yang memungkinkan prasyarat fungsional dan non-fungsional dari sistem untuk diidentifikasi. Produk utama disiplin ini adalah model use case.
2. Analisys
Tujuan analisys ini adalah untuk merestrukturisasi kebutuhan yang diidentifikasi dalam tahapan requirement dalam hal perangkat lunak yang akan dibangun. Dapat dilihat sebagai langkah pertama yaitu desain.
3. Design
Tahapan desain menghasilkan rancangan rinci yang akan dilaksanakan pada disiplin berikutnya.
4. Implementation
Tahapan ini merupakan pengkodean desain dalam bahasa pemrograman yang sesuai dan kompilasi, kemasan, penyebaran dan mendokumentasikan perangkat lunak.
5. Test
Disiplin uji menggambarkan kegiatan yang dilakukan untuk menguji perangkat lunak untuk memastikan bahwa (perangkat lunak yang dibangun) memenuhi kebutuhan user, handal dll.
Pemodelan perangkat lunak yang terdapat pada metode RUP bermanfaat dalam membantu memahami dan menggambarkan kondisi permasalahan dan solusi dari proses-proses bisnis yang mendasari spesifikasi kebutuhan yang
terdapat pada perangkat lunak. Pemodelan perangkat lunak yang terdapat pada metode RUP dapat dilihat pada gambar 2.2.
Gambar 2. 2 Pemodelan Perangkat Lunak pada Metode RUP
Pemodelan-pemodelan yang terdapat pada metode RUP adalah:
a) Model use case, dimodelkan dengan diagram use case, diagram sequence, diagram statechart, dan diagram activity.
a) Model analisis, dimodelkan dengan diagram class, diagram sequence, diagram collaboration, diagram statechart, dan diagram activity.
b) Model desain, dimodelkan dengan diagram class, diagram sequence, diagram collaboration, diagram statechart, dan diagram activity.
c) Model deployment, dimodelkan dengan diagram deployment, diagram sequence, dan diagram collaboration.
d) Model implementasi, dimodelkan dengan diagram component, diagram sequence, dan diagram collaboration.
e) Model pengujian, berkaitan dengan kelima model-model lainnya, dan menggunakan diagram-diagram yang sesuai dengan tiap-tiap model tersebut.
2.3.4 Fase-fase pada Rational Unified Process
Proses yang bersifat iterative pada metode RUP dikelola dalam bentuk fase-fase pembangunan perangkat lunak. Terdapat empat fase dalam metode RUP, yaitu fase Inception, fase Elaboration, fase Construction, dan fase Transition. Dari setiap fase tersebut, terdapat tujuan yang harus dicapai dari proses-proses pembangunan perangkat lunak yang dilakukan. Fase-fase yang terdapat pada metode RUP dapat dilihat pada gambar dibawah ini [Philippe Kruchten, 2000].
2.3.4.1 Inception
Mendeskripsikan visi dari produk yang diharapkan dan membuat business case, serta membuat definisi dari lingkup (scope) proyek pembangunan perangkat lunak. Tujuan dan aktivitas-aktivitas lebih lengkap yang dilakukan pada fase ini akan diuraikan sebagai berikut.
2.3.4.2 Elaboration
Membuat perencanaan aktivitas-aktivitas yang perlu dilakukan dan sumber daya yang dibutuhkan, serta membuat spesifikasi fitur-fitur dan membuat desain arsitektur dari perangkat lunak yang akan dibangun.
2.3.4.3 Construction
Membangun produk perangkat lunak serta mengembangkan visi, arsitektur, dan rencana hingga produk perangkat lunak tersebut siap (completed vision) diberikan kepada penggunanya.
2.3.4.4 Transition
Memindahtangankan (transitioning) produk perangkat lunak kepada penggunanya, termasuk di dalamnya proses manufaktur, mengantarkan, mengadakan pelatihan, memberikan support, dan melakukan proses perawatan produk perangkat lunak hingga pengguna perangkat lunak merasa puas.
2.4 UML (Unifed Model Langguage)
UML (Unified Model Language) adalah salah satu alat bantu yang sangat handal di dunia pengembangan sistem yang berorientasi obyek. Pemodelan dengan UML berarti menggambarkan yang ada dalam dunia nyata ke dalam bentuk yang dapat dipahami dengan menggunakan notasi standart UML. UML merupakan kesatuan dari bahasa pemodelan yang dikembangkan oleh Booch, Object Modelling Technique (OMT) dan Object Oriented Software Engineering (OOSE). Metode Booch dari Grady Booch sangat terkenal dengan nama metode Design Object Oriented. Metode ini menjadikan proses analisis dan design ke dalam empat tahapan interatif, yaitu : identifikasi kelas-kelas dan obyek-obyek, identifikasi semantik dari hubungan obyek dan kelas tersebut, perincian interface dan implementasi.
2.4.1 Konsep dasar UML
UML menyediakan beberapa notasi dan artifact standar yang bisa digunakan sebagai alat komunikasi bagi para pelaku dalam proses analisis dan desain. Konsep dasar UML dapat kita rangkum dalam tabel 2.1 dibawah ini.
Tabel 2.1 Tabel Konsep Dasar UML
Major Area View Diagram Main Concepts
Structural Static view Class diagram Class, association, generalization,
dependency, relization, interface
Use case view Use case diagram Use case, actor, association, extend, include, use case generalization
Implementation view
Deployment view
Component
diagram Component, interface, dependency, relization Deployment diagram Node, component, dependency, location Dynamic State machine view State chart diagram
State, event, transition, action
Activity view Activity diagram State, activity, compeltion transition, fork, join
Interaction view Sequence diagram Interaction, object, message, activation Collaboration diagram Collaboration, Interaction, Collaboration role, message Model management Model management view
Class diagram Package, subsystem, model
extensibility All All Constraint, stereotype,
tagged values
Tabel – table tersebut diberi nama berdasarkan sudut pandang yang berbeda-beda terhadap sistem dalam proses analisis atau rekayasa.
a. Setiap sistem yang kompleks selalu paling baik jika didekati melalui himpunan berbagai sudut pandang yang kecil yang satu sama lain hampir saling bebas (independent). Sudut pandang tunggal senantiasa tidak mencukupi untuk melihat sistem yang besar dan kompleks.
b. Diagram yang berbeda-beda tersebut dapat menyatakan tingkatan yang berbeda-beda dalam proses rekayasa.
c. Diagram-diagram tersebut dibuat agar model yang dibuat semakin mendekati realitas.
2.4.2 Tujuan UML
Terdapat tujuan utama UML diantaranya untuk :
a. Memberikan model yang siap pakai, bahasa pemodelan visual yang ekspresif untuk mengembangkan dan saling menukar model dengan mudah dan dimengerti secara umum.
b. Memberikan bahasa pemodelan yang bebas dari berbagai bahasa pemrograman dan proses rekayasa.
c. Menyatukan praktek-praktek terbaik yang terdapat dalam bahasa pemodelan.
2.4.3 Notasi UML
Terdapat beberapa notasi pada UML yang untuk menggambarkan proses dalam pembangunan sistem, diantaranya :
2.4.3.1 Actor
Simbol 2.1 Notasi Actor
Actor menggambarkan segala pengguna software (user). Actor memberikan suatu gambaran jelas tentang apa yang harus dikerjakan software. Sebagai contoh sebuah actor dapat memberikan input kedalam dan menerima informasi dari software, perlu dicatat bahwa sebuah actor berinteraksi dengan use case, tetapi tidak memiliki kontrol atas use case. Sebuah actor mungkin seorang manusia, satu device, hardware atau sistem informasi lainnya.
2.4.3.2 Use Case
Simbol 2. 2 Notasi Use Case
Use case menjelaskan urutan kegiatan yang dilakukan actor dan sistem untuk mencapai suatu tujuan tertentu. Walaupun menjelaskan kegiatan, namun use case hanya menjelaskan apa yang dilakukan oleh actor dan sistem bukan bagaimana actor dan sistem melakukan kegiatan tersebut.
Untuk menggambarkannya dalam use case model biasanya digunakan association relationship yang memiliki stereotype include, extend atau generalization relationship. Hubungan include menggambarkan bahwa suatu use case seluruhnya meliputi fungsionalitas dari use case lainnya. Hubungan extend antar use case berarti bahwa satu use case merupakan tambahan fungsionalitas dari use case yang lain jika kondisi atau syarat tertentu terpenuhi.
2.4.3.3 Interface
Simbol 2. 3 Notasi Interface
Interface merupakan kumpulan operasi tanpa implementasi dari suatu class. Implementasi operasi dalam interface dijabarkan oleh operasi didalam class. Oleh karena itu keberadaan interface selalu disertai oleh class yang mengimplementasikan operasinya. Interface ini merupakan salah satu cara mewujudkan prinsip enkapsulasi dalam obyek. 2.4.3.4 Interaction
Simbol 2. 4 Notasi Interaction
Interaction digunakan untuk menunjukkan baik aliran pesan atau informasi antar obyek maupun hubungan antar obyek. Biasanya interaction ini dilengkapi juga dengan teks bernama operation signature
yang tersusun dari nama operasi, parameter yang dikirim dan tipe parameter yang dikembalikan.
2.4.3.5 Dependency
Simbol 2. 5 Notasi Dependency
Dependency merupakan relasi yang menunjukan bahwa perubahan pada salah satu elemen memberi pengaruh pada elemen lain. Elemen yang ada dibagian tanda panah adalah elemen yang tergantung pada elemen yang ada dibagian tanpa tanda panah.
2.4.3.6 Association
Simbol 2. 6 Notasi Asociation
Association menggambarkan navigasi antar class (navigation), berapa banyak obyek lain yang bisa berhubungan dengan satu obyek (multiplicity antar class) dan apakah suatu class menjadi bagian dari class lainnya (aggregation).
2.4.3.7 Generalization
Simbol 2. 7 Notasi Generalization
Generalization menunjukkan hubungan antara elemen yang lebih umum ke elemen yang lebih spesifik. Dengan generalization, class
yang lebih spesifik (subclass) akan menurunkan atribut dan operasi dari class yang lebih umum (superclass) atau “subclass is superclass”. Dengan menggunakan notasi generalization ini, konsep inheritance dari prinsip hirarki dapat dimodelkan.
2.4.3.8 Realization
Simbol 2. 8 Notasi Realization
Realization menunjukkan hubungan bahwa elemen yang ada di bagian tanpa panah akan merealisasikan apa yang dinyatakan oleh elemen yang ada di bagian dengan panah. Misalnya class merealisasikan package, component merealisasikan class atau interface.
2.4.4 Diagram Model
2.4.4.1 Activity Diagram
Activity Diagram adalah teknik untuk mendeskripsikan logika prosedural, proses bisnis dan aliran kerja dalam banyak kasus. Activity Diagram mempunyai peran seperti halnya flowchart, akan tetapi perbedaannya dengan flowchart adalah activity diagram bisa mendukung perilaku paralel sedangkan flowchart tidak bisa. [Munawar, 2005].
Berikut adalah simbol-simbol yang sering digunakan pada saat pembuatan activity diagram [Martin Flower, 2005].
a. Activity
Simbol 2. 9 Notasi Activity
Activity menggambarkan sebuah pekerjaan/tugas dalam workflow. Pada UML, activity digambarkan dengan simbol “lozenge” (horizontal top and bottom with convex sides).
b. Start State
Start state dengan tegas menunjukkan dimulainya suatu workflow pada sebuah activity diagram. Hanya ada satu start state dalam sebuah workflow. Pada UML, start state digambarkan dengan simbol lingkaran yang solid.
Simbol 2. 10 Notasi Start State c. End State
End state menggambarkan akhir atau terminal dari sebuah activity diagram. Bisa terdapat lebih dari satu end state pada sebuah activity diagram. Pada UML, end state digambarkan dengan simbol bull‟s eye.
d. State Transitions
State transition menunjukkan kegiatan apa berikutnya setelah suatu kegiatan sebelumnya. Pada UML, state transition digambarkan oleh sebuah solid line dengan panah.
Simbol 2. 12 Notasi State Transition e. Decisions
Decision adalah suatu titik/point pada activity diagram yang mengindikasikan suatu kondisi dimana ada kemungkinan perbedaan transisi. Pada UML, decision digambarkan dengan sebuah simbol diamond.
Simbol 2. 13 Notasi Decisions 2.4.4.2 Usecase Diagram
Usecase adalah deskripsi fungsi dari sebuah sistem dari perspektif pengguna. Usecase bekerja dengan cara mendeskripsikan tipikal interaksi antara user (pengguna) sebuah sistem yang dipakai. [Munawar, 2005]
Berikut adalah simbol-simbol yang sering digunakan pada saat pembuatan activity diagram. [Martin Flower, 2005]
a. Actor
Actor menggambarkan segala pengguna software (user). Actor memberikan suatu gambaran jelas tentang apa yang harus dikerjakan
software. Sebagai contoh sebuah actor dapat memberikan input kedalam dan menerima informasi dari software, perlu dicatat bahwa sebuah actor berinteraksi dengan usecase, tetapi tidak memiliki kontrol atas usecase. Sebuah actor mungkin seorang manusia, satu device, hardware atau sistem informasi lainnya.
Simbol 2. 14 Notasi Actor
b. Usecase
Usecase menjelaskan urutan kegiatan yang dilakukan actor dan sistem untuk mencapai suatu tujuan tertentu. Walaupun menjelesakan kegiatan, namun usecase hanya menjelaskan apa yang dilakukan oleh actor dan sistem bukan bagaimana actor dan sistem melakukan kegiatan tersebut.
Simbol 2. 15 Notasi Use Case
c. Interaction
Interaction digunakan untuk menunjukkan baik aliran pesan atau informasi antar objek maupun hubungan antar objek. Biasanya interaction ini dilengkapi juga dengan teks bernama operation signature yang
tersusun dari nama operasi, parameter yang dikirim dan tipe parameter yang dikembalikan.
Simbol 2. 16 Notasi Interaction d. Association
Association menggambarkan navigasi antar class (navigation), berapa banyak objek yang bisa berhubungan dengan satu objek (multiplicity antar class) dan apakah suatu class menjadi bagian dari class lainnya (aggregation).
Simbol 2. 17 Notasi Association e. Include
Hubungan include menggambarkan suatu usecase seluruhnya meliputi kegunaan usecase lainnya. Sebuah usecase dapat meng-include fungsionalitas usecase lain sebagai bagian dari proses dalam dirinya. Secara umum diasumsikan bahwa usecase yang di-include secara normal. Sebuah usecase dapat di-include oleh lebih dari usecase lain, sehingga duplikasi fungsionalitas dapat dihindari.
Simbol 2. 18 Include
Memberikan resep obat mengambil obat
f. Extend
Hubungan extend antar usecase berarti bahwa suatu usecase merupakan tambahan kegunaan dari usecase yang lain jika kondisi atau syarat tertentu dipenuhi. Jika prosedur dari usecase merupakan alternative untuk menjelaskan usecase lain. Usecase akan dikerjakan apabila salah satu syarat terpenuhi.
Simbol 2. 19 Extend
2.4.4.3 Sequence Diagram
Interaction diagram menunjukan bagaimana kelompok-kelompok objek saling berkolaborasi dalam beberapa behaviour. UML memiliki beberapa bentuk intreraction diagram dan yang paling umum digunakan adalah sequence diagram. Sebuah sequence diagram, secara khusus, menjabarkan behavior sebuah skenario tunggal. Diagram tersebut menunjukan sebuah objek contoh dan pesan-pesan yang melewati objek-objek ini di dalam use case.
Diagram ini menjelaskan bagaimana objek berinteraksi dengan lainnya dengan cara mengirim dan menerima pesan [Martin Fowler: 2005]. a. Object
Menunjukkan objek yang terdapat di diagram Sequence.
Simbol 2. 20 Object
Pemeriksaan Kesehatan Tes laboratorium <<extend>>
b. Object Message
Menunjukkan pesan yang disampaikan ke objek lain dalam diagram Sequence.
Simbol 2. 21 Object Message
2.5. Class Diagram
Diagram kelas merupakan diagram paling umum dipakai di semua pemodelan berorientasi objek. Pemodelan kelas menunjukan kelas-kelas yang ada di sistem dan hubungan antar kelas itu, atribut-atribut dan operasi di kelas-kelas. Elemen-elemen diagram kelas sebagai berikut :
1. Kelas
Kelas merupakan elemen terpenting di sistem berorientasi objek yang mendeskripsikan satu blok pembangun sistem. Kelas yang baik yaitu:
a) Memberikan abstraksi tajam mengenai sesuatu yang diperoleh dari permasalahan dan solusi.
b) Berisi sekumpulan tanggung jawab yang terdefinisi bagus dan kecil serta dapat dilaksanakan dengan baik.
c) Menyediakan pemisah yang jelas antara spesifikasi dan implementasi abstraksi.
Simbol 2. 22 Class Diagram 2. Antarmuka (Interface)
Antarmuka (interface) merupakan koleksi operasi yang mendefinisikan layanan dari suatu kelas atau komponen. Antarmuka mendeskripsikan tampak secara eksternal dari elemen.
3. Kolaborasi
Kolaborasi merupakan pendefinisian suatu interaksi dan sekelompok peran dan elemen-elemen lain yang bekerja untuk menyediakan suatu perilaku kooperatif yang lebih besar dari penjumlahan seluruh elemen.
4. Hubungan
Hubungan antar kelas kelas beraneka ragam, diantaranya: a) Asosiasi
Asosiasi merupakan hubungan statis antar class. Umumnya menggambarkan class yang memiliki atribut berupa class lain, atau class yang harus mengetahui eksistensi class lain.
b) Pewarisan dan Generalisasi
Pewarisan, yaitu hubungan hirarkis antar class. Class dapat diturunkan dari class lain dan mewarisi semua atribut dan metoda class asalnya dan menambahkan fungsionalitas baru, sehingga ia disebut anak dari class yang diwarisinya. Kebalikan dari pewarisan adalah generalisasi.
c) Agregasi
Agregasi, yaitu bentuk khusus dari asosiasi yang menggambarkan seluruh bagian suatu obyek merupakan bagian dari obyek lainnya. Sebagai contoh, obyek tanggal dapat disusun dari obyek hari, obyek bulan dan obyek tahun.
d) Dependency
Dependency merupakan relasi yang menunjukkan bahwa perubahan pada salah satu elemen memberi pengaruh pada elemen lain. Terdapat stereotype dari dependency, yaitu Include dan Extend. Include menunjukkan bahwa suatu bagian dari elemen (yang ada digaris tanpa panah) memicu eksekusi bagian dari elemen lain (yang ada digaris dengan panah). Extend menunjukkan bahwa suatu bagian dari elemen di garis tanpa panah bisa disisipkan ke dalam elemen yang ada di garis dengan panah.
2.5.1 Collaboration Diagram
Melihat pada interaksi dan hubungan terstruktur antar obyek. Tipe diagram ini menekankan pada hubungan (relationship) antar obyek, sedangkan sequence diagram menekankan pada urutan kejadian. Collaboration diagram digunakan sebagai alat untuk menggambarkan interaksi yang mengungkapkan keputusan mengenai perilaku sistem.
2.5.2 Component Diagram
Menggambarkan alokasi semua kelas dan obyek kedalam komponen-komponen dalam desain fisik sistem software. Diagram ini mmperlihatkan pengaturan dan kebergantungan antara komponen-komponen software seperti source code, binary code dan komponen tereksekusi.
2.5.2.1 Deployment Diagram
Diagram ini memperlihatkan pemetaan software kepada hardware. Diagram ini mengambarkan detail bagaimana komponen di-deploy dalam infrastruktur sistem, dimana komponen akan terletak, bagaimana kemampuan jaringan pada lokasi tersebut dan hal lain yang bersifat fisik [Sri Dharwiyanti dan Romi Satria Wahono, 2003]
2.5.2.2 Package
Simbol 2. 23 Package
Paket adalah mekanisme pengelompokkan yang dgunakan untuk menandakan pengelompokkan elemen-elemen model. Sebuah paket dapat mengandung beberapa paket lain didalamnya. Paket digunakan untuk memudahkan mengorganisasikan elemen-elemen model.
2.6 My SQL
MySQL merupakan software yang tergolong sebagai DBMS (Database Management Sistem) yang bersifat Open Source. Open Source menyatakan bahwa ini dilengkapi dengan Source Code (kode yang dipakai untuk membuat MySQL), selain tentu saja bentuk executable-nya atau kode yang dapat dijalankan secara langsung dalam sistem operasi. (Abdul Kadir, 2009)
Untuk keperluan menampung data di server, diperlukan sebuah database. MySQL merupakan sebuah program aplikasi untuk membuat database yang
custom UC_1
umum digunakan pada webserver. MySQL banyak digunakan karena kemampuannya dalam menampung data yang cukup besar dan proses loading yang cepat dalam pemanggilan data. MySQL adalah sebuah database server buatan T.c.X Data KonsultAB, Swedia. Database server ini sedikit eksentrik karena bila digunakan di softwarenon-Microsoft, MySQL adalah gratis, sedangkan bila digunakan di MicrosoftWindows, sifatnya adalah shareware (walaupun tidak memiliki expire date). MySQL ini hadir dengan utility yang terbatas, jadi para DBA yang terbiasa dengan SQL Server akan merasa kesulitan dengan MySQL karena banyak kemampuan yang dibuang di MySQL. MySQL di desain agar dapat berjalan sampai 100 secara simultan. MySQL didesain untuk berjalan cepat, hal ini yang membuat MySQL menghilangkan kemampuan transactional processing. SQL function yang bersifat menurunkan unjuk kerja dibuang. MySQL juga mampu berjalan pada database sampai 100 GB.
MySQL adalah server multithreadered sehingga memungkinkan daemon untuk menghandle permintaan layanan secara simulasi. Model koneksi dengan protokol TCP/IP membuat akses ke server database lebih cepat dibandingkan jika menggunakan model mapping drive, semacam Novell untuk membuat program client-server.
Sebagai software DBMS, MySQL memiliki sejumlah fitur seperti yang dijelaskan dibawah ini : [Abdul Kadir, 2008].
a. Multiplatform
b. MySQL tersedia pada beberapa platform (Windows, Linux, Unix, dan lain-lain)
c. Andal, cepat, dan mudah digunakan
d. MySQL tergolong sebagai database server yang andal, dapat menangani databaseyang besar dengan kecepatan yang tinggi, mendukung banyak sekali fungsi untuk mengakses database, dan sekaligus mudah untuk digunakan. Perlu diketahui MySQL dapat menangani sebuah tabel yang berukuran dalam terabyte ( 1 terabyte = 1024 gigabyte)
e. Jaminan keamanan akses
f. MySQL mendukung pengamanan database dengan berbagai kriteria pengaksesan.
g. Dukungan SQL
h. Seperti tersirat dalam namanya MySQL mendukung perintah SQL (Structure Query Language). SQL merupakan standar dalam pengaksesan database relasional.
2.7 Basis Data
Basis data terdiri dari dua kata, yaitu basis dan data. Basis kurang lebih dapat diartikan sebagai markas atau gudang, tempat bersarang/berkumpul. Sedangkan data adalah representasi fakta dunia nyata yang mewakili suatu objek seperti manusia (pegawai, siswa, pembeli, pelanggan), barang, hewan, peristiwa, konsep, keadaan, dan sebagainya, yang direkam dalam bentuk angka, huruf, simbol, teks, gambar, bunyi, atau kombinasinya (Fatansyah, 2007).
Basis data (database) merupakan kumpulan dari data yang saling berhubungan satu dengan yang lainnya, tersimpan di perangkat keras computer dan digunakan perangkat lunak untuk memanipulasinya (Jogiyanto, 2005).
Prinsip utama dalam basis data adalah pengaturan data/arsip dan tujuan utamanya adalah kemudahan dan kecepatan dalam pengambilan kembali data/arsip yang menggunakan media penyimpanan elektronis seperti disk (disket atau harddisk).
Pemilahan/pengelompokkan/pengorganisasian ini dapat berbentuk sejumlah tabel terpisah atau dalam bentuk pendefinisian kolom-kolom/field-field data dalam setiap tabel. Operasi-operasi dasar yang dapat dilakukan berkenaan dengan basis data dapat meliputi pembuatan basis data baru (create database), penghapusan basis data (drop database), pembuatan tabel baru ke suatu basis data (create table), penghapusan tabel dari suatu basis data (drop table), penambahan data baru kesebuah tabel di sebuah basis data (insert), pengambilan data dari sebuah file/table (retrieve/search), pengubahan data dari sebuah tabel (update), dan penghapusan data dari sebuah tabel (delete).
2.7.1 Pengujian Black Box
Pengujian Black-box berfokus pada persyaratan fungsional perangkat lunak. Dengan demikian, pengujian black-box memungkinkan perekayasa peangkat lunak mendapatkan serangkaian kondisi input yang sepenuhnya semua persyaratan fungsional untuk suatu program.
Pengujian black-box berusaha menemukan kesalahan dalam kategori sebagai berikut:
1. Fungsi-fungsi yang tidak benar atau hilang. 2. Kesalahan Interface.
4. Kesalahan kinerja.