BAB III LANDASAN TEORI - · PDF fileUnified Modeling Language (UML) adalah notasi yang lengkap...
Transcript of BAB III LANDASAN TEORI - · PDF fileUnified Modeling Language (UML) adalah notasi yang lengkap...
12
BAB III
LANDASAN TEORI
3.1 Unified Modeling Language (Uml)
Unified Modeling Language (UML) adalah notasi yang lengkap untuk
membuat visualisasi model suatu sistem. Sistem berisi informasi dan fungsi,
tetapi secara normal digunakan untuk memodelkan sistem komputer. Di
dalam pemodelan obyek guna menyajikan sistem yang berorientasi pada
objek pada orang lain, akan sangat sulit dilakukan jika pemodelan tersebut
dilakukan dalam bentuk kode bahasa pemrograman. Kesulitan yang muncul
adalah timbulnya ketidak jelasan dan salah interpretasi di dalam pembacaan
kode pemrograman untuk pemodelan objek tersebut.
Dimulai tahun 1994, Booch, Runbaugh dan Jacobson merupakan tiga
tokoh yang metodelogi-nya paling banyak dipakai mempelopori organisasi
yang bertujuan menyatukan metodelogi-metodelogi berorientasi objek,
organisasi tersebut dinamakan OMG (Object Modelling Group). Pada tahun
1995 OMG merealisasi draf pertama dari UML (versi 0.8) dan pada tahun
1997 UML versi 1.1 muncul dan sekarang versi terbaru dari UML adalah
versi 2.0. Pada tahun 1997 Booch, Runbaugh dan Jacobson menyusun tiga
buku tentang UML. Sejak saat itulah UML telah menjelma menjadi standar
bahasa pemodelan untuk aplikasi berorientasi objek.
13
3.1.1 Diagram UML
UML merupakan sintak umum untuk membuat model
logika dari suatu sistem dan digunakan untuk menggambarkan
sistem agar dapat dipahami selama fase analisis dan desain. UML
biasanya disajikan dalam bentuk diagram/gambar yang meliputi
class beserta atribut dan operasinya, serta hubungan antar class
yang meliputi inheritance, association dan komposisi.
Gambar 3.1 Diagram UML
14
3.1.2 Use Case Diagram
Use case diagram menggambarkan fungsionalitas
yang diharapkan dari sebuah sistem, yang ditekankan
adalah “apa” yang diperbuat sistem, dan bukan
“bagaimana”. Sebuah use case mempresentasikan sebuah
interaksi antara actor dengan sistem. Use case
menggambarkan kata kerja seperti Login ke sistem,
maintenance user dan sebagainya.
3.1.2.1 Lambang-lambang dalam use-case Diagram
1. Aktor merupakan sebuah entita yang berinterkasi
dengan use case. Nama actor dituliskan di bawah
gambar tersebut.
2. Use case menggambarkan sebuah fungsi terntentu
yang disediakan oleh system, sebuah subsistem atau
urutan pertukaran pesan antara anggota system dan
satu atau lebih actor melakukan aksi yang dikerjakan
oleh system.
3. Hubungan, menggambarkan hubungan association.
Haris ini digunakan untuk menghubungkan antara
actor dengan use case.
Contoh :
Gambar 3.2 Use Case Diagram
15
3.1.2.2 Komponen-komponen Usecase Diagram :
1. Actor
Gambar 3.4 Actor
Actor menggambarkan pengguna software aplikasi
(user). Actor membantu memberikan suatu
gambaran jelas tentang apa yang harus dikerjakan
software aplikasi.
2. Usecase
Gambar 3.5 Usecase
Use-case menggambarkan perilaku software
aplikasi, termasuk didalamnya interaksi antara actor
dengan software aplikasi tersebut.
16
3. Association / Directed Association
Gambar 3.6 Association
Asosiasi, yaitu hubungan statis antar element.
Umumnya menggambarkan element yang memiliki
atribut berupa element lain, atau element yang harus
mengetahui eksistensi element lain. Panah
navigability menunjukkan arah query antar element
4. Generalization / Pewarisan
Gambar 3.7 Pewarisan
Pewarisan, yaitu hubungan hirarkis antar element.
Element dapat diturunkan dari element lain dan
mewarisi semua atribut dan metoda element asalnya
dan menambahkan fungsionalitas baru, sehingga ia
17
disebut anak dari element yang diwarisinya.
Kebalikan dari pewarisan adalah generalisasi
5. Dependency
Gambar 3.8 Dependency
Dependency/ketergantungan adalah suatu jenis
hubungan yang menandakan bahwa satu element,
atau kelompok element, bertindak sebagai klien
tergantung pada unsur lain atau kelompok element
yang berlaku sebagai penyalur. Ini merupakan suatu
hubungan lemah yang menandakan bahwa jika
penyalur klien diubah maka klien secara otomatis
akan terpengaruh oleh perubahan tersebut. Ini
merupakan suatu hubungan searah
18
3.1.3 Class Diagram
Class adalah sebuah spesifikasi yang jika di-
instansiasi akan menghasilkan sebuah objek dan merupakan
inti dari pengembangan berorientasi objek. Class
menggambarkan keadaan (attribute/property) suatu sistem,
sekaligus menawarkan layanan untuk memanipulasi
keadaan tersebut (metode/fungsi).
Class diagram menggambarkan struktur dan deskripsi class,
packed dan objek beserta hubungan satu sama lain seperti
containment, pewarisan, asosiasi dan lainnya.
3.1.3.1 Tiga Area Pokok :
1.Nama
2.Atribut
3.Metoda
Atribut dan metoda dapat memiliki salah satu sifat
berikut :
• Private, tidak dapat dipanggil dari luar class yang
bersangkutan
• Protected, hanya dapat dipanggil oleh class yang
bersangkutan dan anak-anak yang mewarisinya
• Public, dapat dipanggil oleh siapa saja
19
3.1.3.2 Komponen Class Diagram :
1. Subsystem
Gambar 3.9 Subsystem
Sedangkan suatu package adalah suatu
mekanisme umum untuk mengorganisir
element-element model, suatu subsistem
menggambarkan suatu unit tingkah laku di
dalam sistem fisik.
2. Class
Gambar 3.10 Class
20
Suatu class adalah mendeskripsikan untuk
satu set object dengan struktur serupa,
perilaku/behavior, dan hubungan/relation.
3. Signal
Gambar 3.11 Signal
Signal adalah suatu yang menggambarkan
spesifikasi dari asynchronous stimulus yang
berkomunikasi antar kejadian.
4. Exception
Gambar 3.12 Exception
Suatu Exception adalah suatu isyarat yang
diangkat oleh behavior dalam suatu ketika
terjadi kesalahan.
Signal1<<signal>>
21
5. Port
Gambar 3.13 Port
Port adalah suatu struktural suatu peng-class-
an yang menetapkan suatu interaksi beda
yang menunjukan antara peng-class-an dan
lingkungannya atau antara ( perilaku) peng-
class-an dan bagian internal nya
22
3.1.4 Activity Diagram
Activity diagram menggambarkan berbagai alir
aktifitas dalam sebuah 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
tidak menggambarkan sifat internal dari sebuah sistem dan
interaksi antara beberapa sub sistem secara eksak, tetapi
lebih menggambarkan proses-proses dan jalur-jalur aktivitas
dari level atas secara umum.
3.1.4.1 Lambang Aktivity Diagram :
a) Awal ( Initial state ), menunjukkan tempat
dimulainya diagram. Lambang ini boleh diberi
label dengan isi berupa nama kejadian yang
memanggilnya.
b) Akhir ( Final state ), menunjukkan tempat
berakhirnya diagram. Lambing ini tidak
memerlukan label. Diagram aktivitas dapat
memiliki satu atau lebih akhir.
c) Aktivitas adalah bentuk khusus dari keadaan
dimana aktivitas menggamabarkan kegiatan
yang dilakukan.
d) Penyelaras digunakan untuk menyelaraskan
lebih dari satu transisi baik itu masuk ataupun
keluar. Sebuh jalur masuk dengan lebih dari
satu jalur keluar atau beberapa jalur masuk
dengan satu jalur keluar.
23
Contoh : activity diagram tanpa swimline
Gambar 3.14 Activity Diagram
3.1.4.2 Tujuan Penggunaan UML
a) Memberikan bahasa pemodelan yang bebas
dari berbagai bahas pemrograman dan proses
rekayasa.
b) Menyatukan praktek-praktek terbaik yang
terdapat dalam pemodelan.
c) Memberikan model yang siap pakai, bahsa
pemodelan visual yang ekspresif untuk
mengembangkan dan saling menukar model
dengan mudah dan dimengerti secara umum.
d) UML bisa juga berfungsi sebagai sebuah (blue
print) cetak biru karena sangat lengkap dan
detail. Dengan cetak biru ini maka akan bias
diketahui informasi secara detail tentang
coding program atau bahkan membaca
24
program dan menginterpretasikan kembali ke
dalam bentuk diagram (reserve enginering).[3]
3.1.4.3 Star UML
Star UML adalah software permodelan
yang mendukung UML (Unified Modeling
Language). Berdasarkan pada UML version 1.4
dan dilengkapi 11 macam diagram yang berbeda,
mendukung notasi UML 2.0 dan juga mendukung
pendekatan MDA (Model Driven Architecture)
dengan dukungan konsep UML. StarUML dapat
memaksimalkan pruduktivitas dan kualitas dari
suatu software project.
25
3.2 Microsoft Visual Studio.Net 2008
Microsoft Visual Studio.Net 2008 adalah sebuah aplikasi yang
digunakan sebagai alat bantu didalam membangun suatu program aplikasi
yang berbasis komputer. Visual Studio.Net 2008 merupakan generasi yang
terbaru yang dikeluarkan Microsoft dimana sebelumnya ada Visual
Studio.Net 2003 & Visual Studio.Net 2005. Visual Studio.Net 2008
menggunakan .Net Framework 3.5.
3.2.1 Dukungan Terhadap Linq
Linq merupakan suatu fitur baru yang dikeluarkan oleh
microsoft khususnya pada bahasa pemrograman C#. Linq
sebenarnya adalah sekumpulan operator – operator query standard
yang memampukan kita untuk bekerja dengan data yang ada
dalam database. Teknologi yang digunakan oleh Linq didalam
pemanipulasian data adalah menggunakan teknologi ORM
(Object Relational Mapping) bukan teknologi konvensional yaitu
RDBMS.
3.2.2 Dukungan Terhadap Expression Blend
Expression Blend adalah aplikasi yang digunakan untuk
mengenerate XAML untuk aplikasi silverlight. Kita dapat
menginstall Expression Blend sebagai plug-in didalam Visual
Studio.Net 2008. dengan menjadikan Expression Blend sebagai
plugin akan membantu kita dalam design website dan pemakaian
javascript.
26
3.2.3 Windows Presentation Foundation (WPF)
WPF banyak menyediakan fungsi grafis. Visual
Studio.Net 2008 banyak memiliki library Windows Presentation
Foundation dimana dengan fitur ini maka kita akan sangat terbantu
didalam membangun aplikasi grafis 2 dimensi (2D) dan 3 dimensi
(3D).
3.2.4 Dukungan Multi Framework
Visual Studio.Net 2008 mendukung banyak framework.
Dalam artian dengan menggunakan Visual Studio.Net 2008 kita
dapat melakukan kompilasi untuk framework 2.0, 3.0 dan 3.5
bahkan framework 1.1.
3.2.5 Dukungan Terhadap Ajax Dalam ASP.NET
Pada seri sebelumnya, untuk menggunakan ajax kita harus
menginstall terlebih dahulu secara terpisah tidak built-in didalam
visual studio.net nya. Namun dengan Visual Studio.Net 2008,
library ajax akan secara otomatis terinstall ketika kita menginstall
visual studio.net 2008.
3.2.6 Fitur Lainnya :
Dukungan Terhadap Dubugging Untuk Javascript,
Dukungan Terhadap Nested Masterpage (Masterpage Bersarang),
Dukungan Terhadap LINQ Intellisense dan Javascript Intellisense
Pada Aplikasi Silverlight, Pengorganisasian Penggunaan
27
Namespace Using dan Import, Intellisense Filtering, Posisi Dari
Kotak Intellisense, Split View Pada Visual Studio.Net 2008,
Kesalahan HTML dan Javascript dijadikan Warning Bukan Error,
Kemampuan Debugging Source Code Library .Net Framework,
Library Silverlight sudah Built-In, Visual Studio LINQ Designer,
C++ SDK Built-In, Arsitektur MUI (Multilingual User Interface),
Dukungan Terhadap Microsoft Popfly, Tool dan Ebook Gratisan.
28
3.3 Microsoft Sql Server 2000
Microsoft SQL Server adalah sebuah sistem manajemen basis data
relasional (RDBMS) produk Microsoft. Bahasa kueri utamanya adalah
Transact-SQL yang merupakan implementasi dari SQL standar ANSI/ISO
yang digunakan oleh Microsoft dan Sybase. Umumnya SQL Server
digunakan di dunia bisnis yang memiliki basis data berskala kecil sampai
dengan menengah, tetapi kemudian berkembang dengan digunakannya SQL
Server pada basis data besar.
Microsoft SQL Server dan Sybase/ASE dapat berkomunikasi lewat
jaringan dengan menggunakan protokol TDS (Tabular Data Stream). Selain
dari itu, Microsoft SQL Server juga mendukung ODBC (Open Database
Connectivity), dan mempunyai driver JDBC untuk bahasa pemrograman
Java. Fitur yang lain dari SQL Server ini adalah kemampuannya untuk
membuat basis data mirroring dan clustering.
29
3.4 Entity Relationship Diagram ( Erd )
ERD adalah model data yang menggunakan beberapa notasi untuk
menggambarkan data dalam konteks entitas dan hubungan yang di
deskripsikan oleh data tersebut. Ada 2 (dua) komponen utama pembentuk
ERD, yaitu :
3.4.1 Entittas
Entitas adalah sesuatu yang diperlukan bisnis untuk
menyimpan data. Entitas merupakan individu yang mewakili
sesuatu yang nyata dan dapat dibedakan dari sesuatu yang lain.
3.4.2 Atribut
Setiap entitas memiliki atribut yang mendeskripsikan
karakteristik dari sebuah entitas tersebut. Atribut merupakan sifat
atau karakteristik deskriptif suatu entitas
3.4.3 Symbol symbol ERD antara lain :
1. Persegi panjang, menyatakan himpunan entitas
Gambar 3.15 Persegi Panjang
2. Lingkaran / Elips, menyatakan atribut (atribut yang berfungsi
sebagai primary key digaris bawahi).
Gambar 3.16 Eclipse
30
3. Belah ketupat, menyatakan himpunan relasi
Gambar 3.17 Belah Ketupat
4. Garis, sebagai penghubung antara himpunan relasi dengan
himpunan entitas dan himpunan entitas dengan atributnya.
Gambar 3.18 Garis
Kardinalitas relsi dapat dinyatakan dengan banyaknya garis
cabang aian angka ( 1 dan 1 menyatakan relasi satu ke satu, 1 dan N
menyatakan relasi satu ke banyak, atau N ke M menyatakan relasi
banyak ke banyak ).
31
3.5 Store Procedure
Adalah salah satu feature yang terdapat di mysql 5.0 sedang-kan
store procedure sendiri adalah kumpulan-kumpulan SQL berupa rountine
yang di simpan dalam database MySQL Server.
3.5.1 Manfaat Store Procedure:
Akan memperkecil trafik request dari aplikasi ke database
karena semua proses bisnis dilakukan di database mysql dan
aplikasi akan menerima hasil proses saja.
Ketika sebuah aplikasi yang didevelop terdiri dari
berbagai bahasa pemrograman (misalkan desktop dan web) yang
mana kedua tipe aplikasi tersebut membutuhkan hasil dan operasi
database yang sama.
Untuk meningkatkan securiti, misalkan sebuah aplikasi
yang login dengan user abcd tidak dapat mengakses tabel2 tertentu
secara langsung tetapi mesti melalui store procedure, dengan cara
ini akan meningkatkan ke-valid-tan data
Dalam contoh dibawah ini kasus tentang sistem informasi
sekolah, yang mana store procedure yang dibuat akan menangani
tentang menghasilkan data siswa yang difilter bedasarkan kelas.
3.5.2 Sturuktur tabel
CREATE TABLE `data_siswa`.`tbl_siswa` (
`nis` char(10) NOT NULL,
`nama` varchar(255) NOT NULL,
`kelas` int(11) NOT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
32
Store procedure untuk menampilkan data siswa dalam bentuk
resultset
DELIMITER $$
CREATE PROCEDURE sp_tampil_siswa_kelas(p_kelas int)
BEGIN
SELECT * FROM tbl_siswa where KELAS = p_kelas;
END$$
DELIMITER ;
Penjelasannya sebagai berikut:
DELIMITER = adalah untuk memberi tahu kepada myql
soal delimiter yang digunakan, secara default menggunakan ; jadi
bila ada tanda ; mysql akan mengartikan akhir dari statement, pada
contoh di atas delimeter yang digunakan $$ jadi akhir statementnya
adalah $$
CREATE PROCEDURE = adalah header untuk membuat store
procedure
BEGIN END = adalah body dari store procedure, jadi semua SQL
nya di tulis disini.
Contoh pemanggilannya seperiti dibawah ini:
call sp_tampil_siswa_kelas(2);