BAB II LANDASAN TEORI Pada Bab ini akan dijelaskan mengenai teori penunjang yang mendukung dalam penyusunan tugas akhir ini. 2.1 Konsep Dasar Aplikasi Web Menurut Hidayat, (2010:2), Website atau situs dapat diartikan sebagai kumpulan halaman-halaman yang digunakan untuk menampilkan informasi teks, gambar diam atau gerak, animasi, suara, dan atau gabungan dari semuanya, baik yang bersifat statis maupun dinamis yang membentuk satu rangkaian bangunan yang saling terkait, yang masing-masing dihubungkan dengan jaringan-jaringan halaman. Menurut Simarmata, (2010:51), “Web dapat diartikan sebagai alat untuk menciptakan sistem informasi global yang mudah berdasarkan pada hiperteks”. Dapat disimpulkan Website adalah sebuah tempat di Internet, yang menyajikan informasi dengan berbagai macam format data seperti text, image, bahkan video dan dapat diakses menggunakan berbagai aplikasi client sehingga memungkinkan penyajian informasi yang lebih menarik dan dinamis dengan pengelolaan yang terorganisasi. 2.1.1 Konsep Dasar HTML HyperText Markup Language (HTML) [http://id.wikipedia.org/] adalah sebuah bahasa markup yang digunakan untuk membuat sebuah halaman web dan menampilkan berbagai informasi di dalam sebuah browser Internet. Bermula dari sebuah bahasa yang sebelumnya banyak digunakan di dunia penerbitan dan percetakan yang disebut dengan SGML (Standard Generalized Markup Language), HTML adalah sebuah standar yang digunakan secara luas untuk menampilkan halaman web. HTML saat ini merupakan standar Internet yang didefinisikan dan dikendalikan penggunaannya oleh World Wide Web Consortium (W3C). Versi terakhir dari HTML adalah HTML 4.01, meskipun saat ini telah 20 http://digilib.mercubuana.ac.id/ 21 berkembang XHTML yang merupakan pengembangan dari HTML 18 HTML berupa kode-kode tag yang menginstruksikan browser untuk menghasilkan tampilan sesuai dengan yang diinginkan. Sebuah file yang merupakan file HTML dapat dibuka dengan menggunakan browser web seperti Mozilla Firefox atau Microsoft Internet Explorer. HTML juga dapat dikenali oleh aplikasi pembuka email ataupun dari PDA dan program lain yang memiliki kemampuan browser. Secara garis besar, terdapat 4 jenis elemen dari HTML: Structural. tanda yang menentukan level atau tingkatan dari sebuah teks (contoh, <h1>Golf</h1> akan memerintahkan browser untuk menampilkan "Golf" sebagai teks tebal besar yang menunjukkan sebagai Heading 1 Presentational. tanda yang menentukan tampilan dari sebuah teks tidak peduli dengan level dari teks tersebut (contoh, <b>boldface</b> akan menampilkan bold. Tanda presentational saat ini sudah mulai digantikan oleh CSS dan tidak direkomendasikan untuk mengatur tampilan teks, Hypertext. tanda yang menunjukkan pranala ke bagian dari dokumen tersebut atau pranala ke dokumen lain href="http://www.wikipedia.org/">Wikipedia</a> (contoh, <a akan menampilkan Wikipedia sebagai sebuah hyperlink ke URL tertentu), Elemen widget yang membuat objek-objek lain seperti tombol (<button>), list (<li>), dan garis horizontal (<hr>). Selain markup presentational, markup yang lain tidak menentukan bagaimana tampilan dari sebuah teks. Namun untuk saat ini, penggunaan tag 19 HTML untuk menentukan tampilan telah dianjurkan untuk mulai ditinggalkan dan sebagai gantinya digunakan Cascading Style Sheets. Contoh dokumen HTML sederhana <!DOCTYPE html> <html> <head> <title>Halo HTML</title> </head> http://digilib.mercubuana.ac.id/ 22 <body> <p>Halo Dunia!</p> </body> </html> 2.1.2 Konsep Dasar PHP PHP merupakan skrip yang dijalankan di server, dimana kode yang menyusun program tidak perlu diedarkan ke pemakai sehingga kerahasiaan kode dapat dilindungi. (Abdul Kadir, 2002) PHP didesain khusus untuk aplikasi web. PHP dapat disisipkan diantara bahasa HTML dan karena bahasa server-side, maka bahasa PHP akan dieksekusi diserver, sehingga dikirimkan ke browser adalah “hasil jadi” dalam bentuk HTML, dan kode PHP anda tidak akan terlihat PHP. PHP termasuk Open Source Product dan saat ini telah mencapai versi 5. Jadi anda dapat mengubah source code dan mendistribusikannya secara bebas. PHP juga diedarkan secara gratis. PHP dapat berjalan di berbagai Web Server semisal IIS, Apache, PWS, dan lain-lain. 2.2 Konsep Dasar Web Server Web server [http://id.wikipedia.org/] merupakan server Internet yang mampu melayani koneksi transfer data dalam protocol HTTP. Web server merupakan hal yang terpenting dari server di Internet dibandingkan server lainnya seperti E-mail server, FTP server ataupun News server. Hal ini disebabkan web server telah dirancang untuk dapat melayani beragam jenis data, dari text sampai grafis. Kemampuan ini telah menyebabkan berbagai institusi seperti universitas maupun perusahaan dapat menerima kehadirannya dan juga sekaligus menggunakannya sebagai sarana di Internet. Web server juga dapat menggabungkan dengan dunia mobile wireless internet atau yang sering disebut sebagai WAP ( Wireless Access Protocol ), yang banyak digunakan sebagai sarana handphone yang memiliki fitur WAP. Dalam kondisi ini, webserver tidak lagi melayani data file HTML tetapi telah melayani WML ( Wireless Markup Language ). http://digilib.mercubuana.ac.id/ 23 Salah satu software yang biasa digunakan oleh banyak web master di dunia adalah Apache . Software tersebut dapat di download secara gratis. Dalam penggunaannya Apache merupakan software open source yang sekarang ini sudah merebut pasar dunia lebih dari 50%. Apache fleksibel terhadap berbagai system operasi seperti Windows 9x/NT/2000/XP/Vista ataupun Unix atau Linux. Apache merupakan turunan dari webserver yang dikeluarkan oleh NCSA yaitu NCSA HTTPd pada sekitar tahun 1995. Kelebihan Apache Web Server : Freeware (software gratis) Mudah di-install. Mampu beroperasi pada berbagai platform sistem operasi. Mudah mengkonfigurasinya. Mudah dalam menambahkan periferal lainnya ke dalam platform web servernya, misalnya: untuk menambahkan modul, cukup hanya menset file konfigurasinya agar mengikutsertakan modul itu ke dalam kumpulan modul lain yang sudah dioperasikan. Mampu di kompilasi sesuai dengan spesifikasi HTTP yang sekarang. Menyediakan feature untuk multihomed dan virtual server. Secara otomatis menjalankan file index.html, halaman utamanya, untuk ditampilkan secara otomatis pada clientnya. Lebih aman karena memiliki level-level pengamanan Apache mempunyai komponen dasar terbanyak di antara webserverwebserver lain, yang berarti bahwa webserver Apache termasuk salah satu dari webserver yang lengkap. Performansi dan konsumsi sumberdaya ( resource ) dari webserver apache tidak terlalu banyak, hanya sebesar 20 MB untuk file-file dasarnya dan setiap daemon nya hanya memerlukan sebesar 950 KB memory per-child. Mendukung transaksi yang aman ( secure transaction ) menggunakan SSL ( Secure Socket Layer ). Mempunyai dukungan teknis melalui web. Mempunyai kompatibilitas platform yang tinggi. http://digilib.mercubuana.ac.id/ 24 2.3 Mendukung third party berupa modul-modul tambahan. Konsep Dasar Database Dalam pengembangan suatu aplikasi web, peran database management system sangat penting. Data-data dan informasi yang diinput tersimpan didalam suatu management database agar dapat dipergunakan kembali untuk keperluan reporting dan hal lain yang diperlukan dalam proses pengolahan data lebih lanjut. Didalam basis data, data diorganisasikan sedemikian rupa, sehingga membentuk informasi yang lebih berkualitas. 2.3.1 DBMS Sistem manajemen basis data (Bahasa Inggris: database management system, DBMS), atau kadang disingkat SMBD [http://id.wikipedia.org/], adalah suatu sistem atau perangkat lunak yang dirancang untuk mengelola suatu basis data dan menjalankan operasi terhadap data yang diminta banyak pengguna. Contoh tipikal SMBD adalah akuntansi, sumber daya manusia, dan sistem pendukung pelanggan, SMBD telah berkembang menjadi bagian standar di bagian pendukung (back office) suatu perusahaan. Contoh SMBD adalah Oracle, SQL server 2000/2003, MS Access, MySQL dan sebagainya. DBMS merupakan perangkat lunak yang dirancang untuk dapat melakukan utilisasi dan mengelola koleksi data dalam jumlah yang besar. DBMS juga dirancang untuk dapat melakukan manipulasi data secara lebih mudah. Sebelum adanya DBMS, data pada umumnya disimpan dalam bentuk flat file, yaitu file teks yang ada pada sistem operasi. Sampai sekarangpun masih ada aplikasi yang menimpan data dalam bentuk flat secara langsung. Menyimpan data dalam bentuk flat file mempunyai kelebihan dan kekurangan. Penyimpanan dalam bentuk ini akan mempunyai manfaat yang optimal jika ukuran filenya relatif kecil, seperti file passwd pada sistem operasi Unix dan Unix-like. File passwd pada umumnya hanya digunakan untuk menyimpan nama yang jumlahnya tidak lebih dari 1000 orang. Selain dalam bentuk flat file, penyimpanan data juga dapat dilakukan dengan menggunakan program bantu seperti spreadsheet. Penggunaan perangkat lunak ini memperbaiki beberapa kelemahan dari flat file, seperti bertambahnya http://digilib.mercubuana.ac.id/ 25 kecepatan dalam pengolahan data. Namun metode ini masih memiliki banyak kelemahan, diantaranya adalah masalah manajemen dan keamanan data yang masih kurang. Penyimpanan data dalam bentuk DBMS mempunyai banyak manfaat dan kelebihan dibandingkan dengan penyimpanan dalam bentuk flat file atau spreadsheet, diantaranya : 1. Performa yang dapat dengan penyimpanan dalam bentuk DBMS cukup besar, sangat jauh berbeda dengan performance data yang disimpan dalam bentuk flat file. Disamping memiliki unjuk kerja yang lebih baik, juga akan didapatkan efisiensi penggunaan media penyimpanan dan memori 2. Integritas data lebih terjamin dengan penggunaan DBMS. Masalah redudansi sering terjadi dalam flat file. Redudansi adalah kejadian berulangnya data atau kumpulan data yang sama dalam sebuah database yang mengakibatkan pemborosan media penyimpanan. 3. Independensi. Perubahan struktur database dimungkinkan terjadi tanpa harus mengubah aplikasi yang mengaksesnya sehingga pembuatan antarmuka ke dalam data akan lebih mudah dengan penggunaan DBMS. 4. Sentralisasi. Data yang terpusat akan mempermudah pengelolaan database. kemudahan di dalam melakukan bagi pakai dengan DBMS dan juga kekonsistenan data yang diakses secara bersama-sama akan lebiih terjamin dari pada data disimpan dalam bentuk file atau worksheet yang tersebar. 5. Keamanan. DBMS memiliki sistem keamanan yang lebih fleksibel daripada pengamanan pada file sistem operasi. Keamanan dalam DBMS akan memberikan keluwesan dalam pemberian hak akses kepada pengguna. Dalam membangun aplikasi web sistem pelaporan keuangan kantor area ini, penulis menggunakan PHP sebagai backend & database MySql. 2.3.2 Mysql Menurut Bimo Sunarfrihantono (2002), “mengatakan bahwa MySQL merupakan multiuser database yang menggunakan bahasa Structured Query Language (SQL)”. Universitas Sumatera Utara Menurut Lukmanul Hakim dan Uus Musalini (2004), “mengatakan bahwa MySQL merupakan salah satu jenis program database server, yaitu sebuah program yang berfungsi untuk mengolah, http://digilib.mercubuana.ac.id/ 26 menyimpan dan memanipulasi data dari server”. MySQL dikembangkan oleh MySQL AB, awal mula perkembangan MySQL adalah penggunaan mSQL untuk koneksi ke tabel menggunakan rutin level rendah (ISAM) setelah beberapa pengujian ternyata mSQL tidak cukup cepat dan fleksibel untuk memenuhi kebutuhan, sehingga dihasilkan SQL baru pada database tetapi dengan API yang mirip dengan mSQL dengan masa MySQL. Menambahkan, mengakses, dan memproses data yang tersimpan di dalam operasi, hal ini yang membuat PHP dan MySQL menjadi alternatif oleh para programmer web dalam membuat program database webnya. MySQL [http://id.wikipedia.org/] adalah sebuah perangkat lunak sistem manajemen basis data SQL (bahasa Inggris: database management system) atau DBMS yang multithread, multi-user, dengan sekitar 6 juta instalasi di seluruh dunia. MySQL AB membuat MySQL tersedia sebagai perangkat lunak gratis dibawah lisensi GNU General Public License (GPL), tetapi mereka juga menjual dibawah lisensi komersial untuk kasus-kasus dimana penggunaannya tidak cocok dengan penggunaan GPL. Tidak sama dengan proyek-proyek seperti Apache, dimana perangkat lunak dikembangkan oleh komunitas umum, dan hak cipta untuk kode sumber dimiliki oleh penulisnya masing-masing, MySQL dimiliki dan disponsori oleh sebuah perusahaan komersial Swedia MySQL AB, dimana memegang hak cipta hampir atas semua kode sumbernya. Kedua orang Swedia dan satu orang Finlandia yang mendirikan MySQL AB adalah: David Axmark, Allan Larsson, dan Michael "Monty" Widenius. 2.4 Framework Menurut pressman (2005, p282), framework merupakan kerangka kode yang dapat disempurnakan dengan classes yang specific. 2.4.1 Yii Yii [http://www.yiiframework.com/doc] merupakan salah satu dari sekian banyak framework PHP yang cukup populer dikalangan PHP Developer, bisa dilihat dari [http://www.phpframeworks.com/top-10-php-frameworks/] bahwa Yii termasuk dalam 10 besar framework PHP dunia. http://digilib.mercubuana.ac.id/ 27 Adapun Yii di kembangkan oleh Qiang Xue pada 1 Januari 2008, seorang programmer berkebangsaan China yang sebelum nya juga telah mengembangkan framework PHP bernama Prado. Oleh karena itu tak heran jika Qiang juga mengadopsi teknik-teknik yang dipakai pada Prado saat mengembangkan Yii. Selain terinspirasi oleh Prado, Yii juga terinspirasi oleh framework luar yaitu Ruby On Rails terutama pada mekanisme ORM nya. Dan masih banyak lagi yang menginspirasi Yii framework seperti Symfony dan Joomla. 2.4.2 Fitur Yii Sebagai framework yang banyak dipergunakan oleh programmer sebagai alat bantu untuk membangun suatu aplikasi web yang powerfull, Yii memiliki beberapa fitur yaitu: MVC(Model - View - Controller) Hampir semua framework PHP saat ini berbasis MVC, tidak terkecuali Yii karena dengan MVC aplikasi menjadi lebih terstruktur dan mudah di pahami. ORM(Object Relational Mapping) Object Relational Mapping merupakan salah satu keunggulan Yii dalam urusan Database, jika kita lihat secara spesifik lagi maka Yii sebenarnya menyediakan mekanisme seperti DAO(Data Access Object), Query Builder(seperti di framework CI), Active Record(ORM) dan Database Migration. Dengan ORM pekerjaan developer menjadi terbantu karena tidak perlu menulis query SQL yang rumit lagi, cukup dengan memanggil fungsi-fungsi tertentu. Form input dan validasi Yii sangat membantu sekali dalam urusan menangani form input, karena para developer telah disediakan sejumlah validator yang akan memvalidasi inputan dari pengguna aplikasi dengan cara yang mudah dan efisien. Widget Widget merupakan konsep di Yii yang menyediakan komponen-komponen user interface yang siap pakai, misal nya data grid, autocomplete, tree view dll. http://digilib.mercubuana.ac.id/ 28 Adapun widget-widget ini ada yang terintegrasi dengan library Jquery sehingga memungkinkan untuk mekanisme AJAX. Autentikasi dan Autorisasi Yii sudah menyediakan mekanisme Autentikasi(login, logout) dan Autorisasi(hak akses) terhadap pengguna sistem, sehingga kita tidak perlu lagi repot-repot membuat dari pertama. Skin dan Tema Masalah tampilan pun sudah di perhatikan oleh Yii, dengan konsep Skinning kita bisa meng-costumize tampilan komponen user interface di aplikasi kita menggunakan CSS sedangkan dengan konsep Theming kita bisa mengganti-ganti seluruh tampilan aplikasi dengan mudah. Web Service Yii memiliki support yang cukup baik untuk membuat web service pada web kita seperti meng-generate spesifikasi WSDL service secara otomatis. Internationalization(I18N) dan Localization(L10N) Yii mensupport translasi pesan, tanggal dan format waktu sesuai dengan lokasi dimana anda berada. Caching Dengan caching, aplikasi yang kita rancang bisa menjadi lebih cepat, dan Yii mempermudah mekanisme itu dengan menyediakan class-class yang siap pakai dan mensupport banyak teknik seperti APC dan memcached. Penanganan Error dan Logging Segala pesan error yang keluar dari aplikasi anda ditampilkan secara bagus dan mudah dimengerti, mekanisme logging nya juga sangat bagus, sebab kita bisa memilih untuk menampilkan langsung ataupun disimpan ke suatu file di server. Security Yii memiliki fitur keamanan yang membantu dalam mencegah serangan-serangan seperit SQL Injection, XSS, CSRF, Cookie Tampering dll. Bisa bekerja dengan library luar(3rd party) http://digilib.mercubuana.ac.id/ 29 Yii telah di desain sedemikian rupa sehingga kita bisa memasang library external dari pihak ketiga untuk di sematkan dalam aplikasi kita Dokumentasi yang lengkap Dokumentasi Yii framework bisa dibilang cukup lengkap, setiap method dan property sudah terdokumentasi dengan baik, buku-buku(ebook) dan tutorial mengenai Yii juga lengkap di website nya Unit dan Fuctional testing Yii memiliki support penuh terhadap Test Driven Development, sehingga melakukan testing terhadap aplikasi kita menjadi lebih mudah dan menyenangkan, Yii mensupport PHPUnit dan Selenium. Extensions Yii memiliki segudang extensions. Extension sendiri merupakan kontribusi dari pengguna-pengguna Yii dengan membuat widget, library ataupun component yang bisa dipakai dan belum ada di Yii secara built-in. Dalam mengembangkan aplikasi system pelaporan keuangan kantor area ini penulis menggunakan framework Yii untuk memudahkan dalam proses pengembangannya. 2.5 Proses Bisnis Proses bisnis adalah suatu kumpulan aktivitas atau pekerjaan terstruktur yang saling terkait untuk menyelesaikan suatu masalah tertentu atau yang menghasilkan produk atau layanan (demi meraih tujuan tertentu). Suatu proses bisnis dapat dipecah menjadi beberapa subproses yang masing-masing memiliki atribut sendiri tapi juga berkontribusi untuk mencapai tujuan dari superprosesnya. Analisis proses bisnis umumnya melibatkan pemetaan proses dan subproses di dalamnya hingga tingkatan aktivitas atau kegiatan [http://id.wikipedia.org/]. Davenport (1993) [1] mendefinisikan proses bisnis sebagai: “aktivitas yang terukur dan terstruktur untuk memproduksi output tertentu untuk kalangan pelanggan tertentu. Terdapat di dalamnya penekanan yang kuat pada “bagaimana” pekerjaan itu dijalankan di suatu organisasi, tidak seperti fokus dari produk yang berfokus pada aspek “apa”. Suatu proses oleh karenanya http://digilib.mercubuana.ac.id/ 30 merupakan urutan spesifik dari aktivitas kerja lintas waktu dan ruang, dengan suatu awalan dan akhiran, dan secara jelas mendefinisikan input dan output.” Definisi dari Hammer dan Champy’s (1993) [2] bisa dianggap merupakan turunan dari definisi Davenport. Mereka mendefinisikan proses sebagai : “Kumpulan aktivitas yang membutuhkan satu atau lebih inputan dan menghasilkan output yang bermanfaat/bernilai bagi pelanggan”. 2.6 Activity Diagram Diagram aktivitas atau dalam bahasa inggris activity diagram adalah representasi grafis dari seluruh tahapan alur kerja. Diagram ini mengandung aktivitas, pilihan tindakan, perulangan dan hasil dari aktivitas tersebut. Pada pemodelan UML, diagram ini dapat digunakan untuk menjelaskan proses bisnis dan alur kerja operasional secara langkah demi langkah dari komponen suatu sistem. Pengertian Activity Diagram Activity diagrams menggambarkan berbagai alir aktivitas dalam sistem yang sedang dirancang, bagaimana masing-masing alir berawal, decision yang mungkin terjadi, dan bagaimana mereka berakhir. Activity diagram juga dapat menggambarkan proses paralel yang mungkin terjadi pada beberapa eksekusi. Activity diagram merupakan state diagram khusus, di mana sebagian besar state adalah action dan sebagian besar transisi di-trigger oleh selesainya state sebelumnya (internal processing). Oleh karena itu activity diagram tidak menggambarkan behaviour internal sebuah sistem (dan interaksi antar subsistem) secara eksak, tetapi lebih menggambarkan proses-proses dan jalur-jalur aktivitas dari level atas secara umum. Menggambarkan proses bisnis dan urutan aktivitas dalam sebuah proses. Dipakai pada business modeling untuk memperlihatkan urutan aktivitas proses bisnis. Struktur diagram ini mirip flowchart atau Data Flow Diagram pada perancangan terstruktur. Sangat bermanfaat apabila kita membuat diagram ini terlebih dahulu dalam memodelkan sebuah proses untuk membantu memahami proses secara keseluruhan. Activity diagram dibuat berdasarkan sebuah atau beberapa use case pada use case diagram. [http://id.wikipedia.org/]. 2.7 Use Case Use case diagram ialah model fungsional sebuah system yang menggunakan actor dan use case. Use case adalah layanan (services) atau fungsi- http://digilib.mercubuana.ac.id/ 31 fungsi yang disediakan oleh system untuk penggunanya (Henderi et al, 2008). Use Case adalah suatu pola atau gambaran yang menunjukan prilaku atau kebiasaan system. Use Case Diagram menggambarkan fungsionalitas yang diharapkan dari sebuah system. Yang tekankan adalah “apa” yang dibuat system, dan bukan “bagaimana” sebuah use case menerangkan sebuah interaksi antar actor dengan system. Use case merupakan sebuah pekerjaan tertentu, misal :login ke system, meng-create sebuah daftar belanja, dsb. Sebuah actor adalah sebuah entitas manusia atau mesin yang berinteraksi dengan system untuk melakukan pekerjaanpekerjaan tertentu. Use Case Diagram dapat sangat membantu bila kita sedang menyusun requitment sebuah system, mengkomunikasikan rancangan dengan klien, dan merancang test case untuk semua feature yang ada pada system. Sebuah use case yang meng-include dieksekusi secara normal. Sebuah use case dapat di-include oleh lebih dari satu use case lain, sehingga duplikasi fungsionalitas dapat dihindari dengan cara menarik keluar fungsional yang common. Sebuah use case juga dapat meng-extend use case lain dengan behaviornya sendiri. Sementara hubungan generalisasi antar use case mennjukkan bahwa use case yang satu merupakan spesialisasi dari yang lain. Deskripsi Use Case Diagram 1. Sebuah use case adalah dimana system digunakan untuk memenuhi satu atau lebih kebutuhan pemakai. 2. Use case merupakana awal yang sangat baik untuk setiap fase pengembangan berbasis objek, design testing, dan dokumentasi. 3. Use case menggambarkan kebutuhan system dari sudut pandang di luar system. 4. Use case menentukan nilai yang diberikan system kepada pemakainya. 5. Use case hanya menetapkan apa yang seharusnya dikerjakan oleh system, yaitu kebutuhan fungsional system. 6. Use case tidak untuk menentukan kebutuhan nonfungsional, misal: sasaran kerja, bahasa pemrograman, dsb. http://digilib.mercubuana.ac.id/ 32 Komponen-Komponen yang terlibat dalam Use Case Diagram : Actor Pada dasarnya actor bukanlah bagian dari diagram, namun untuk dapat terciptanya suatu use case diagram diberikan beberapa actor dimana actor tersebut menjelaskan seseorang atau sesuatu (sperti perangkat, system lain) yang berinteraksi dengan system. Sebuah actor mungkin hanya memberikan informasi inputan pada system, hanya menerima informasi dari system atau keduanya menerima dan member informasi pada system, actor hanya berinteraksi dengan use case tetapi tidak memiliki control atas use case. Actor digambarkan secara umum atau spesifik, dimana untuk membedakannya anda dapat menggunakan relationship. Ada beberapa kemungkinan yang menyebabkan actor tersebut terkait dengan system antara lain : Yang berkepentingan terhadap system dimana adanya arus informasi baik yang diterima maupun yang dia inputkan ke system. Orang ataupun pihak yang akan mengelola system tersebut. External resource yang digunaka oleh system System lain yang berinteraksi dengan system yang akan dibuat Use Case Merupakan gambaran fungsional dari suatu system, sehingga customer atau pengguna system paham dan mengerti mengenai kegunaan system yang akan dibangun. Berikut ini cara menentukan Use Case dalam suatu system : Pola prilaku perangkat lunak aplikasi Gambaran tugas dari sebuah actor. System atau benda yang memberikan suatu nilai kepada actor. Apa yang dikerjakan oleh suatu perangkat lunak (* bukan bagaimana mengerjakannya). http://digilib.mercubuana.ac.id/ 33 Relasi Dalam Use Case Ada beberapa relasi yang terdapat pada use case diagram: 1. Assoclation , hubungan link antar element 2. Generalization, disebut juga inheritance (pewarisan), sebuah elemen yang merupakan spesialisasi dari elemen lainnya. 3. Dependency, sebuah elemen tergantung dari beberapa Cara kepada elemen lainnya. 4. Aggregation, bentuk asosiation dimana sebuah elemen berisi elemen lainya. http://digilib.mercubuana.ac.id/