03.08.2013 Views

BAB III LANDASAN TEORI

BAB III LANDASAN TEORI

BAB III LANDASAN TEORI

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

3.1 Unified Modeling Language (Uml)<br />

<strong>BAB</strong> <strong>III</strong><br />

<strong>LANDASAN</strong> <strong>TEORI</strong><br />

Unified Modeling Language (UML) adalah notasi yang lengkap untuk<br />

membuat visualisasi model suatu sistem. Sistem berisi informasi dan fungsi,<br />

tetapi secara normal digunakan untuk memodelkan sistem komputer. Di<br />

dalam pemodelan obyek guna menyajikan sistem yang berorientasi pada<br />

objek pada orang lain, akan sangat sulit dilakukan jika pemodelan tersebut<br />

dilakukan dalam bentuk kode bahasa pemrograman. Kesulitan yang muncul<br />

adalah timbulnya ketidak jelasan dan salah interpretasi di dalam pembacaan<br />

kode pemrograman untuk pemodelan objek tersebut.<br />

Dimulai tahun 1994, Booch, Runbaugh dan Jacobson merupakan tiga<br />

tokoh yang metodelogi-nya paling banyak dipakai mempelopori organisasi<br />

yang bertujuan menyatukan metodelogi-metodelogi berorientasi objek,<br />

organisasi tersebut dinamakan OMG (Object Modelling Group). Pada tahun<br />

1995 OMG merealisasi draf pertama dari UML (versi 0.8) dan pada tahun<br />

1997 UML versi 1.1 muncul dan sekarang versi terbaru dari UML adalah<br />

versi 2.0. Pada tahun 1997 Booch, Runbaugh dan Jacobson menyusun tiga<br />

buku tentang UML. Sejak saat itulah UML telah menjelma menjadi standar<br />

bahasa pemodelan untuk aplikasi berorientasi objek.<br />

12


3.1.1 Diagram UML<br />

UML merupakan sintak umum untuk membuat model<br />

logika dari suatu sistem dan digunakan untuk menggambarkan<br />

sistem agar dapat dipahami selama fase analisis dan desain. UML<br />

biasanya disajikan dalam bentuk diagram/gambar yang meliputi<br />

class beserta atribut dan operasinya, serta hubungan antar class<br />

yang meliputi inheritance, association dan komposisi.<br />

Gambar 3.1 Diagram UML<br />

13


3.1.2 Use Case Diagram<br />

14<br />

Use case diagram menggambarkan fungsionalitas<br />

yang diharapkan dari sebuah sistem, yang ditekankan<br />

adalah “apa” yang diperbuat sistem, dan bukan<br />

“bagaimana”. Sebuah use case mempresentasikan sebuah<br />

interaksi antara actor dengan sistem. Use case<br />

menggambarkan kata kerja seperti Login ke sistem,<br />

maintenance user dan sebagainya.<br />

3.1.2.1 Lambang-lambang dalam use-case Diagram<br />

1. Aktor merupakan sebuah entita yang berinterkasi<br />

dengan use case. Nama actor dituliskan di bawah<br />

gambar tersebut.<br />

2. Use case menggambarkan sebuah fungsi terntentu<br />

yang disediakan oleh system, sebuah subsistem atau<br />

urutan pertukaran pesan antara anggota system dan<br />

satu atau lebih actor melakukan aksi yang dikerjakan<br />

oleh system.<br />

3. Hubungan, menggambarkan hubungan association.<br />

Haris ini digunakan untuk menghubungkan antara<br />

actor dengan use case.<br />

Contoh :<br />

Gambar 3.2 Use Case Diagram


3.1.2.2 Komponen-komponen Usecase Diagram :<br />

1. Actor<br />

Gambar 3.4 Actor<br />

15<br />

Actor menggambarkan pengguna software aplikasi<br />

(user). Actor membantu memberikan suatu<br />

gambaran jelas tentang apa yang harus dikerjakan<br />

software aplikasi.<br />

2. Usecase<br />

Gambar 3.5 Usecase<br />

Use-case menggambarkan perilaku software<br />

aplikasi, termasuk didalamnya interaksi antara actor<br />

dengan software aplikasi tersebut.


3. Association / Directed Association<br />

Gambar 3.6 Association<br />

16<br />

Asosiasi, yaitu hubungan statis antar element.<br />

Umumnya menggambarkan element yang memiliki<br />

atribut berupa element lain, atau element yang harus<br />

mengetahui eksistensi element lain. Panah<br />

navigability menunjukkan arah query antar element<br />

4. Generalization / Pewarisan<br />

Gambar 3.7 Pewarisan<br />

Pewarisan, yaitu hubungan hirarkis antar element.<br />

Element dapat diturunkan dari element lain dan<br />

mewarisi semua atribut dan metoda element asalnya<br />

dan menambahkan fungsionalitas baru, sehingga ia


17<br />

disebut anak dari element yang diwarisinya.<br />

Kebalikan dari pewarisan adalah generalisasi<br />

5. Dependency<br />

Gambar 3.8 Dependency<br />

Dependency/ketergantungan adalah suatu jenis<br />

hubungan yang menandakan bahwa satu element,<br />

atau kelompok element, bertindak sebagai klien<br />

tergantung pada unsur lain atau kelompok element<br />

yang berlaku sebagai penyalur. Ini merupakan suatu<br />

hubungan lemah yang menandakan bahwa jika<br />

penyalur klien diubah maka klien secara otomatis<br />

akan terpengaruh oleh perubahan tersebut. Ini<br />

merupakan suatu hubungan searah


3.1.3 Class Diagram<br />

18<br />

Class adalah sebuah spesifikasi yang jika di-<br />

instansiasi akan menghasilkan sebuah objek dan merupakan<br />

inti dari pengembangan berorientasi objek. Class<br />

menggambarkan keadaan (attribute/property) suatu sistem,<br />

sekaligus menawarkan layanan untuk memanipulasi<br />

keadaan tersebut (metode/fungsi).<br />

Class diagram menggambarkan struktur dan deskripsi class,<br />

packed dan objek beserta hubungan satu sama lain seperti<br />

containment, pewarisan, asosiasi dan lainnya.<br />

3.1.3.1 Tiga Area Pokok :<br />

1.Nama<br />

2.Atribut<br />

3.Metoda<br />

Atribut dan metoda dapat memiliki salah satu sifat<br />

berikut :<br />

• Private, tidak dapat dipanggil dari luar class yang<br />

bersangkutan<br />

• Protected, hanya dapat dipanggil oleh class yang<br />

bersangkutan dan anak-anak yang mewarisinya<br />

• Public, dapat dipanggil oleh siapa saja


3.1.3.2 Komponen Class Diagram :<br />

1. Subsystem<br />

Gambar 3.9 Subsystem<br />

19<br />

Sedangkan suatu package adalah suatu<br />

mekanisme umum untuk mengorganisir<br />

element-element model, suatu subsistem<br />

menggambarkan suatu unit tingkah laku di<br />

dalam sistem fisik.<br />

2. Class<br />

Gambar 3.10 Class


20<br />

Suatu class adalah mendeskripsikan untuk<br />

satu set object dengan struktur serupa,<br />

perilaku/behavior, dan hubungan/relation.<br />

3. Signal<br />

Gambar 3.11 Signal<br />

Signal adalah suatu yang menggambarkan<br />

spesifikasi dari asynchronous stimulus yang<br />

berkomunikasi antar kejadian.<br />

4. Exception<br />

<br />

Signal1<br />

Gambar 3.12 Exception<br />

Suatu Exception adalah suatu isyarat yang<br />

diangkat oleh behavior dalam suatu ketika<br />

terjadi kesalahan.


5. Port<br />

Gambar 3.13 Port<br />

21<br />

Port adalah suatu struktural suatu peng-class-<br />

an yang menetapkan suatu interaksi beda<br />

yang menunjukan antara peng-class-an dan<br />

lingkungannya atau antara ( perilaku) peng-<br />

class-an dan bagian internal nya


3.1.4 Activity Diagram<br />

22<br />

Activity diagram menggambarkan berbagai alir<br />

aktifitas dalam sebuah sistem yang sedang dirancang,<br />

bagaimana masing-masing alir berawal, decision yang<br />

mungkin terjadi dan bagaimana mereka berakhir. Activity<br />

diagram juga dapat menggambarkan proses paralel yang<br />

mungkin terjadi pada beberapa eksekusi. Activity diagram<br />

tidak menggambarkan sifat internal dari sebuah sistem dan<br />

interaksi antara beberapa sub sistem secara eksak, tetapi<br />

lebih menggambarkan proses-proses dan jalur-jalur aktivitas<br />

dari level atas secara umum.<br />

3.1.4.1 Lambang Aktivity Diagram :<br />

a) Awal ( Initial state ), menunjukkan tempat<br />

dimulainya diagram. Lambang ini boleh diberi<br />

label dengan isi berupa nama kejadian yang<br />

memanggilnya.<br />

b) Akhir ( Final state ), menunjukkan tempat<br />

berakhirnya diagram. Lambing ini tidak<br />

memerlukan label. Diagram aktivitas dapat<br />

memiliki satu atau lebih akhir.<br />

c) Aktivitas adalah bentuk khusus dari keadaan<br />

dimana aktivitas menggamabarkan kegiatan<br />

yang dilakukan.<br />

d) Penyelaras digunakan untuk menyelaraskan<br />

lebih dari satu transisi baik itu masuk ataupun<br />

keluar. Sebuh jalur masuk dengan lebih dari<br />

satu jalur keluar atau beberapa jalur masuk<br />

dengan satu jalur keluar.


23<br />

Contoh : activity diagram tanpa swimline<br />

3.1.4.2 Tujuan Penggunaan UML<br />

Gambar 3.14 Activity Diagram<br />

a) Memberikan bahasa pemodelan yang bebas<br />

dari berbagai bahas pemrograman dan proses<br />

rekayasa.<br />

b) Menyatukan praktek-praktek terbaik yang<br />

terdapat dalam pemodelan.<br />

c) Memberikan model yang siap pakai, bahsa<br />

pemodelan visual yang ekspresif untuk<br />

mengembangkan dan saling menukar model<br />

dengan mudah dan dimengerti secara umum.<br />

d) UML bisa juga berfungsi sebagai sebuah (blue<br />

print) cetak biru karena sangat lengkap dan<br />

detail. Dengan cetak biru ini maka akan bias<br />

diketahui informasi secara detail tentang<br />

coding program atau bahkan membaca


3.1.4.3 Star UML<br />

24<br />

program dan menginterpretasikan kembali ke<br />

dalam bentuk diagram (reserve enginering). [3]<br />

Star UML adalah software permodelan<br />

yang mendukung UML (Unified Modeling<br />

Language). Berdasarkan pada UML version 1.4<br />

dan dilengkapi 11 macam diagram yang berbeda,<br />

mendukung notasi UML 2.0 dan juga mendukung<br />

pendekatan MDA (Model Driven Architecture)<br />

dengan dukungan konsep UML. StarUML dapat<br />

memaksimalkan pruduktivitas dan kualitas dari<br />

suatu software project.


3.2 Microsoft Visual Studio.Net 2008<br />

Microsoft Visual Studio.Net 2008 adalah sebuah aplikasi yang<br />

digunakan sebagai alat bantu didalam membangun suatu program aplikasi<br />

yang berbasis komputer. Visual Studio.Net 2008 merupakan generasi yang<br />

terbaru yang dikeluarkan Microsoft dimana sebelumnya ada Visual<br />

Studio.Net 2003 & Visual Studio.Net 2005. Visual Studio.Net 2008<br />

menggunakan .Net Framework 3.5.<br />

3.2.1 Dukungan Terhadap Linq<br />

Linq merupakan suatu fitur baru yang dikeluarkan oleh<br />

microsoft khususnya pada bahasa pemrograman C#. Linq<br />

sebenarnya adalah sekumpulan operator – operator query standard<br />

yang memampukan kita untuk bekerja dengan data yang ada<br />

dalam database. Teknologi yang digunakan oleh Linq didalam<br />

pemanipulasian data adalah menggunakan teknologi ORM<br />

(Object Relational Mapping) bukan teknologi konvensional yaitu<br />

RDBMS.<br />

3.2.2 Dukungan Terhadap Expression Blend<br />

Expression Blend adalah aplikasi yang digunakan untuk<br />

mengenerate XAML untuk aplikasi silverlight. Kita dapat<br />

menginstall Expression Blend sebagai plug-in didalam Visual<br />

Studio.Net 2008. dengan menjadikan Expression Blend sebagai<br />

plugin akan membantu kita dalam design website dan pemakaian<br />

javascript.<br />

25


3.2.3 Windows Presentation Foundation (WPF)<br />

WPF banyak menyediakan fungsi grafis. Visual<br />

Studio.Net 2008 banyak memiliki library Windows Presentation<br />

Foundation dimana dengan fitur ini maka kita akan sangat terbantu<br />

didalam membangun aplikasi grafis 2 dimensi (2D) dan 3 dimensi<br />

(3D).<br />

3.2.4 Dukungan Multi Framework<br />

Visual Studio.Net 2008 mendukung banyak framework.<br />

Dalam artian dengan menggunakan Visual Studio.Net 2008 kita<br />

dapat melakukan kompilasi untuk framework 2.0, 3.0 dan 3.5<br />

bahkan framework 1.1.<br />

3.2.5 Dukungan Terhadap Ajax Dalam ASP.NET<br />

Pada seri sebelumnya, untuk menggunakan ajax kita harus<br />

menginstall terlebih dahulu secara terpisah tidak built-in didalam<br />

visual studio.net nya. Namun dengan Visual Studio.Net 2008,<br />

library ajax akan secara otomatis terinstall ketika kita menginstall<br />

visual studio.net 2008.<br />

3.2.6 Fitur Lainnya :<br />

Dukungan Terhadap Dubugging Untuk Javascript,<br />

Dukungan Terhadap Nested Masterpage (Masterpage Bersarang),<br />

Dukungan Terhadap LINQ Intellisense dan Javascript Intellisense<br />

Pada Aplikasi Silverlight, Pengorganisasian Penggunaan<br />

26


Namespace Using dan Import, Intellisense Filtering, Posisi Dari<br />

Kotak Intellisense, Split View Pada Visual Studio.Net 2008,<br />

Kesalahan HTML dan Javascript dijadikan Warning Bukan Error,<br />

Kemampuan Debugging Source Code Library .Net Framework,<br />

Library Silverlight sudah Built-In, Visual Studio LINQ Designer,<br />

C++ SDK Built-In, Arsitektur MUI (Multilingual User Interface),<br />

Dukungan Terhadap Microsoft Popfly, Tool dan Ebook Gratisan.<br />

27


3.3 Microsoft Sql Server 2000<br />

Microsoft SQL Server adalah sebuah sistem manajemen basis data<br />

relasional (RDBMS) produk Microsoft. Bahasa kueri utamanya adalah<br />

Transact-SQL yang merupakan implementasi dari SQL standar ANSI/ISO<br />

yang digunakan oleh Microsoft dan Sybase. Umumnya SQL Server<br />

digunakan di dunia bisnis yang memiliki basis data berskala kecil sampai<br />

dengan menengah, tetapi kemudian berkembang dengan digunakannya SQL<br />

Server pada basis data besar.<br />

Microsoft SQL Server dan Sybase/ASE dapat berkomunikasi lewat<br />

jaringan dengan menggunakan protokol TDS (Tabular Data Stream). Selain<br />

dari itu, Microsoft SQL Server juga mendukung ODBC (Open Database<br />

Connectivity), dan mempunyai driver JDBC untuk bahasa pemrograman<br />

Java. Fitur yang lain dari SQL Server ini adalah kemampuannya untuk<br />

membuat basis data mirroring dan clustering.<br />

28


3.4 Entity Relationship Diagram ( Erd )<br />

ERD adalah model data yang menggunakan beberapa notasi untuk<br />

menggambarkan data dalam konteks entitas dan hubungan yang di<br />

deskripsikan oleh data tersebut. Ada 2 (dua) komponen utama pembentuk<br />

ERD, yaitu :<br />

3.4.1 Entittas<br />

Entitas adalah sesuatu yang diperlukan bisnis untuk<br />

menyimpan data. Entitas merupakan individu yang mewakili<br />

sesuatu yang nyata dan dapat dibedakan dari sesuatu yang lain.<br />

3.4.2 Atribut<br />

Setiap entitas memiliki atribut yang mendeskripsikan<br />

karakteristik dari sebuah entitas tersebut. Atribut merupakan sifat<br />

atau karakteristik deskriptif suatu entitas<br />

3.4.3 Symbol symbol ERD antara lain :<br />

1. Persegi panjang, menyatakan himpunan entitas<br />

Gambar 3.15 Persegi Panjang<br />

2. Lingkaran / Elips, menyatakan atribut (atribut yang berfungsi<br />

sebagai primary key digaris bawahi).<br />

Gambar 3.16 Eclipse<br />

29


3. Belah ketupat, menyatakan himpunan relasi<br />

Gambar 3.17 Belah Ketupat<br />

4. Garis, sebagai penghubung antara himpunan relasi dengan<br />

himpunan entitas dan himpunan entitas dengan atributnya.<br />

Gambar 3.18 Garis<br />

Kardinalitas relsi dapat dinyatakan dengan banyaknya garis<br />

cabang aian angka ( 1 dan 1 menyatakan relasi satu ke satu, 1 dan N<br />

menyatakan relasi satu ke banyak, atau N ke M menyatakan relasi<br />

banyak ke banyak ).<br />

30


3.5 Store Procedure<br />

Adalah salah satu feature yang terdapat di mysql 5.0 sedang-kan<br />

store procedure sendiri adalah kumpulan-kumpulan SQL berupa rountine<br />

yang di simpan dalam database MySQL Server.<br />

3.5.1 Manfaat Store Procedure:<br />

Akan memperkecil trafik request dari aplikasi ke database<br />

karena semua proses bisnis dilakukan di database mysql dan<br />

aplikasi akan menerima hasil proses saja.<br />

Ketika sebuah aplikasi yang didevelop terdiri dari<br />

berbagai bahasa pemrograman (misalkan desktop dan web) yang<br />

mana kedua tipe aplikasi tersebut membutuhkan hasil dan operasi<br />

database yang sama.<br />

Untuk meningkatkan securiti, misalkan sebuah aplikasi<br />

yang login dengan user abcd tidak dapat mengakses tabel2 tertentu<br />

secara langsung tetapi mesti melalui store procedure, dengan cara<br />

ini akan meningkatkan ke-valid-tan data<br />

Dalam contoh dibawah ini kasus tentang sistem informasi<br />

sekolah, yang mana store procedure yang dibuat akan menangani<br />

tentang menghasilkan data siswa yang difilter bedasarkan kelas.<br />

3.5.2 Sturuktur tabel<br />

CREATE TABLE `data_siswa`.`tbl_siswa` (<br />

`nis` char(10) NOT NULL,<br />

`nama` varchar(255) NOT NULL,<br />

`kelas` int(11) NOT NULL<br />

) ENGINE=MyISAM DEFAULT CHARSET=latin1<br />

31


Store procedure untuk menampilkan data siswa dalam bentuk<br />

resultset<br />

DELIMITER $$<br />

CREATE PROCEDURE sp_tampil_siswa_kelas(p_kelas int)<br />

BEGIN<br />

SELECT * FROM tbl_siswa where KELAS = p_kelas;<br />

END$$<br />

DELIMITER ;<br />

Penjelasannya sebagai berikut:<br />

DELIMITER = adalah untuk memberi tahu kepada myql<br />

soal delimiter yang digunakan, secara default menggunakan ; jadi<br />

bila ada tanda ; mysql akan mengartikan akhir dari statement, pada<br />

contoh di atas delimeter yang digunakan $$ jadi akhir statementnya<br />

adalah $$<br />

CREATE PROCEDURE = adalah header untuk membuat store<br />

procedure<br />

BEGIN END = adalah body dari store procedure, jadi semua SQL<br />

nya di tulis disini.<br />

Contoh pemanggilannya seperiti dibawah ini:<br />

call sp_tampil_siswa_kelas(2);<br />

32

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!