BAB 2 LANDASAN TEORI 2.1 Pengertian Krit

BAB 2
LANDASAN TEORI

2.1

Pengertian Kriteria dan Analisis Multikriteria
Dalam proses pengambilan keputusan dibutuhkan adanya kriteria sebelum

memutuskan suatu alternatif pilihan. Kriteria digunakan sebagai alat ukur untuk
mengukur tingkat pencapaian tujuan, karena kriteria menunjukkan definisi dari suatu
masalah dalam bentuk yang konkrit.
Kriteria adalah standar penentuan atau aturan-aturan dasar yang mana alternatif
keputusan-keputusan diurutkan menurut keinginan kriteria itu sendiri, atau dengan kata
lain kriteria adalah suatu istilah umum yang meliputi konsep-konsep dari atribut dan
sasaran (Malczewski, 1999).
Analisis multikriteria adalah seperangkat proses yang digunakan untuk
menganalisis masalah keputusan yang kompleks dimana ketidakpastian dan kriteria yang
saling berlawanan dilibatkan sebagai dasar dimana keputusan-keputusan alternatif
dievaluasi (Malczewski, 1999).

2.2


Metode Pembobotan
Menurut Malczewski (1999), terdapat beberapa cara pembobotan, pembobotan

bisa dilakukan dengan metode ranking, rating, pairwise comparison, dan trade-off
analysis. Pada penelitian ini metode yang digunakan adalah :

12
1. Metode Pairwise Comparison digunakan dalam metode AHP. Metode ini
mempunyai konsep menentukan bobot relatif antara dua kriteria berdasarkan skala
nilai bobot 1-9 yang dikembangkan oleh Saaty.
2. Metode ranking digunakan dalam MPE, merupakan metode pemberian bobot yang
sederhana, dimana dalam penyusunannya bobot dibuat dalam tingkatan-tingkatan
tertentu. Kriteria dan bobot dibuat berdasarkan pertimbangan pembuat keputusan.

2.3

Definisi AHP
Analytical Hierarchy Process (AHP) adalah suatu metode analisa pengambilan


keputusan berhirarki yang dibangun oleh Prof. Thomas L. Saaty di University of
Pittsburg pada tahun 1970. AHP pertama kali diaplikasikan dalam perencanaan militer
Amerika Serikat dalam menghadapi berbagai kemungkinan (contingency planning).
Setelah itu AHP digunakan dalam pengembangan rencana transportasi di Sudan dan
meluas di perusahaan Amerika Serikat lainnya. Di antara perusahaan besar di Amerika
Serikat yang pernah menggunakan AHP dalam kegiatan bisnisnya adalah IBM, General
Motors, Xerox, Kodak, dan Rockwell International.
AHP adalah suatu model pengambilan keputusan yang berguna dan fleksibel
untuk membantu orang dalam menentukan prioritas dan membuat keputusan terbaik.
AHP memberikan kesempatan untuk membangun gagasan-gagasan dan mendefinisikan
persoalan dengan cara membuat asumsi mereka masing-masing dan memperoleh
pemecahannya. AHP memasukkan pertimbangan dan nilai-nilai pribadi secara logis.
Proses ini bergantung pada imajinasi, pengalaman, dan pengetahuan untuk menyususn
hirarki suatu masalah pada logika, intuisi, dan pengalaman untuk memberikan
pertimbangan. Proses ini juga memungkinkan pengujian kepekaan hasilnya terhadap

13
perubahan informasi. Secara kualitatif, metode ini mendefinisikan masalah dan
penilaian. Sedangkan secara kuantitatif, AHP melakukan perbandingan dan penilaian
untuk mendapatkan solusi.

Metode ini memecahkan suatu masalah yang kompleks dan tidak terstruktur ke
dalam kelompok-kelompoknya, mengatur kelompok-kelompok tersebut dalam suatu
hirarki, memasukkan nilai numerik sehingga mengganti persepsi manusia dalam
melakukan perbandingan relatif dan akhirnya dengan suatu sintesa ditentukan elemen
mana yang mempunyai prioritas tertinggi. Para pengambil keputusan dapat
memperbanyak elemen-elemen suatu persoalan hirarki dan mengubah beberapa
pertimbangan mereka. Setiap pengulangan AHP adalah seperti membuat hipotesis dan
mengujinya, sehingga lama-kelamaan akan menambah pemahaman terhadap sistem.
Pada dasarnya pengambilan keputusan dalam metode AHP didasarkan pada 3 hal, yaitu
penyusunan hirarki, penentuan prioritas dan konsistensi logis.
Kekuatan AHP terletak pada struktur hirarkinya yang memungkinkan seseorang
memasukkan semua faktor penting, nyata dan mengaturnya dari atas ke bawah mulai
dari tingkat yang paling penting ke tingkat yang berisi alternatif, untuk dipilih mana
yang terbaik. Metode AHP juga merupakan suatu teori umum mengenai pengukuran.
AHP digunakan untuk menurutkan skala rasio dari beberapa perbandingan berpasangan
yang bersifat diskrit maupun kontinu. Empat macam skala pengukuran yang biasa
digunakan adalah skala nominal, ordinal, interval dan rasio. Skala yang lebih tinggi
dapat dikategorikan menjadi skala-skala yang lebih rendah, namun tidak sebaliknya.
Perbandingan berpasangan tersebut dapat diperoleh melalui pengukuran aktual maupun
pengukuran relatif dari derajat kesukaan, kepentingan atau perasaaan. Dengan demikian


14
metode ini sangat berguna untuk membantu mendapatkan skala rasio dari hal-hal yang
semula sulit diukur, seperti pendapat, perasaan, perilaku dan kepercayaan.
Menurut Mulyono (2002, p335-337), dalam menyelesaikan persoalan dengan
AHP ada beberapa prinsip yang harus dipahami, diantaranya adalah :


Decomposition
Setelah persoalan didefinisikan, maka perlu dilakukan decomposition, yaitu
memecah persoalan yang utuh menjadi unsur-unsurnya. Jika ingin mendapatkan
hasil yang akurat, pemecahan juga dilakukan terhadap unsur-unsurnya sampai tidak
mungkin dilakukan pemecahan lebih lanjut, sehingga didapatkan beberapa tingkatan
dari persoalan tadi. Karena alasan ini, maka proses analisis ini dinamakan hirarki.
Ada dua jenis hirarki, yaitu lengkap dan tidak lengkap. Dalam hirarki lengkap,
semua elemen pada suatu tingkatan memiliki semua elemen yang ada pada tingkat
berikutnya. Jika tidak demikian maka dinamakan hirarki tidak lengkap.




Comparative judgement
Prinsip ini berarti membuat penilaian tentang kepentingan relatif dua elemen pada
suatu tingkat tertentu dalam kaitannya dengan tingkat di atasnya. Penilaian ini
merupakan inti dari AHP, karena ia akan berpengaruh terhadap prioritas elemenelemen. Hasil dari penilaian ini akan tampak lebih enak bila disajikan dalam bentuk
matriks yang dinamakan pairwise comparison matrix. Pertanyaan yang biasa
diajukan dalam menyusun skala kepentingan adalah :
1. Elemen mana yang lebih (penting / disukai / mungkin / ...) ? dan
2. Berapa kali lebih (penting / disukai / mungkin / ...) ?
Agar diperoleh skala yang bermanfaat ketika membandingkan dua elemen,
seseorang yang akan memberikan jawaban perlu pengertian menyeluruh tentang

15
elemen-elemen yang dibandingkan dan relevansinya terhadap kriteria atau tujuan
yang dipelajari.


Synthesis of priority
Dari setiap pairwise comparison matrix kemudian dicari eigenvectornya untuk
mendapatkan local priority. Karena pairwise comparison matrix terdapat pada setiap
tingkat, maka untuk mendapatkan global priority harus dilakukan sintesa di antara

local priority. Prosedur melakukan sintesa berbeda menurut bentuk hirarki.
Pengurutan elemen-elemen menurut kepentingan relatif melalui prosedur sintesa
dinamakan priority setting.



Logical consistency
Konsistensi memiliki dua makna. Pertama adalah bahwa objek-objek yang serupa
dapat dikelompokkan sesuai dengan keseragaman dan relevansi. Contohnya, anggur
dan kelereng dikelompokkan dalam himpunan yang seragam jika bulat merupakan
kriterianya, tetapi tak dapat jika rasa sebagai kriterianya. Arti kedua adalah
menyangkut tingkat hubungan antara objek-objek yang didasarkan pada kriteria
tertentu. Contohnya, jika manis merupakan kriteria dan madu dinilai lima kali lebih
manis dibanding gula, dan gula dinilai dua kali lebih manis dibanding sirup, maka
seharusnya madu dinilai sepuluh kali lebih manis dibanding sirup. Jika madu hanya
dinilai empat kali lebih manis dibanding sirup, maka penilaian dianggap tidak
konsisten dan proses harus diulang jika ingin memperoleh penilaian yang lebih tepat.

2.4


Manfaat AHP
Menurut Saaty (1991, p23-25), AHP merupakan sebuah model luwes untuk

membantu dalam pengambilan keputusan. Pengamatan mendasar ini tentang sifat

16
manusia, pemikiran analitik, dan pengukuran membawa pada pengembangan suatu
model yang berguna untuk memecahkan persoalan secara kuantitatif. AHP merupakan
proses yang ampuh untuk menanggulangi berbagai persoalan politik dan sosio ekonomi
yang kompleks. AHP harus memasukkan pertimbangan dan nilai-nilai pribadi secara
logis, karena hal tersebut merupakan faktor yang dapat mempengaruhi hasil keputusan.
Prosesnya adalah mengidentifikasi, memahami, dan menilai interaksi dari suatu sistem
sebagai suatu keseluruhan. Kita sulit untuk mengharapkan pemecahan langsung untuk
persoalan yang rumit, oleh karena itu, AHP harus terus dicoba dan diulang.
Secara umum, keuntungan menggunakan AHP dapat dikatakan sebagai berikut :
1. Kesatuan.
AHP memberi satu model tunggal yang mudah dimengerti dan luwes untuk aneka
ragam persoalan tak terstruktur.
2. Kompleksitas.
AHP memadukan ancangan deduktif dan ancangan berdasarkan sistem dalam

memecahkan persoalan.
3. Saling ketergantungan.
AHP dapat menangani saling ketergantungan elemen-elemen dalam suatu sistem dan
tak memaksakan pemikiran linear.
4. Penyusunan hierarki.
AHP mencerminkan kecenderungan alami pikiran untuk memilah-milah elemenelemen suatu sistem dalam berbagai tingkat berlainan dan mengelompokkan unsur
yang serupa dalam setiap tingkat.

17
5. Pengukuran.
AHP memberi suatu skala untuk mengukur hal-hal dan wujud suatu metode untuk
menetapkan prioritas.
6. Konsistensi.
AHP melacak konsistensi logis dari pertimbangan-pertimbangan yang digunakan
dalam menetapkan berbagai prioritas.
7. Sintesis.
AHP menuntun kesatuan taksiran menyeluruh tentang kebaikan setiap alternatif.
8. Tawar Menawar.
AHP mempertimbangkan prioritas-prioritas relatif dari berbagai faktor sistem dan
memungkinkan orang untuk memilih alternatif yang terbaik berdasarkan tujuantujuan mereka.

9. Penilaian dan Konsensus.
AHP tidak memaksakan konsensus tetapi mensintesis suatu hasil yang representative
dari berbagai penilaian yang berbeda-beda.
10. Pengulangan Proses
AHP memungkinkan orang memperhalus definisi mereka pada suatu persoalan dan
memperbaiki pertimbangan dan pengertian mereka melalui pengulangan.

2.5

Metodologi AHP
Langkah-langkah penggunaan AHP adalah sebagai berikut :

1. Tentukan tujuan (level 1), kriteria (level 2), dan alternatif (level 3) dari masalah.
2. Tentukan peringkat kriteria untuk matriks alternatif yang dipilih menurut tabel
derajat kepentingan.

18
Jika faktor dibandingkan dengan dirinya sendiri, maka harus ”equally preferred”
dengan nilai 1, yang membuat seluruh nilai sepanjang diagonal matriks bernilai 1.
Penilaian skala perbandingan antar kriteria diisi berdasarkan tabel intensitas

kepentingan pada model AHP.
Tabel 2.1 Derajat Kepentingan AHP
Intensitas

Keterangan

Kepentingan
1

2

Penjelasan
Dua aktivitas memberikan kontribusi sama

Equally preferred

terhadap tujuan.

Equally to moderately
preferred


Antara equally dan moderately.
Pengalaman dan penilaian memberikan nilai

3

Moderately preferred

tidak jauh berbeda antara satu aktivitas
terhadap aktivitas lainnya.

4

5

6

7

8

9

Moderately to strongly
preferred

Penilaian memberikan nilai kuat berbeda antara

Strongly preferred
Strongly

to

satu aktivitas terhadap aktivitas lainnya.
very

strongly preferred

Antara strongly dan very strongly.

strongly Satu aktivitas sangat lebih disukai

Very

dibandingkan aktivitas lainnya.

preferred
Very

Antara moderately dan strongly.

strongly

extremely preferred
Extremely preferred

to

Antara very strongly dan extremely.
Satu aktivitas menempati urutan tertinggi dari
aktivitas lainnya.

3. Sama dengan cara nomor 2, tentukan peringkat untuk masing-masing matriks kriteria
yang dipilih menurut tabel derajat kepentingan.

19
4. Kalikan matriks kriteria dengan matriks alternatif dari hasil perhitungan nomor 2 dan
nomor 3 untuk mendapatkan priority vector sehingga mendapatkan keputusan yang
terbaik.
5. Langkah nomor 5-8 digunakan untuk menghitung konsistensi, dimulai dengan
penentuan weighted sum vector dengan mengalikan row averages dengan matriks
awal.
6. Tentukan consistency vector dengan membagi weighted sum vector dengan row
averages.
7. Hitung Lambda dan Consistency Index:
CI =

λ−n
n −1

, di mana n adalah jumlah item dari sistem yang dibandingkan.
dan λ adalah rata-rata dari Consistency Vector.

8. Hitung Consistency Ratio:

CR =

CI
, di mana RI adalah Random Index yang didapatkan dari tabel.
RI

Hasil yang konsisten adalah CR ≤ 0,10. Jika hasil CR > 0,10, maka matriks
keputusan yang diambil harus dievaluasi ulang.
Tabel 2.2. Random Index
N
2
3
4
5
6
7
8
9
10

Random Index
0,00
0,58
0,90
1,12
1,24
1,32
1,41
1,45
1,49

20
2.6

Definisi MPE

Metode Perbandingan Eksponensial (MPE) merupakan salah satu metode untuk
menentukan prioritas alternatif keputusan dengan kriteria jamak. Teknik ini digunakan
sebagai pembantu bagi individu pengambil keputusan untuk menggunakan rancang
bangun model yang terdefinisi dengan baik pada tahapan proses. Berbeda dengan teknik
Bayes, MPE akan menghasilkan nilai alternatif yang perbedaannya lebih kontras
(Marimin, 2004).

2.7

Metodologi MPE

Dalam menggunakan metode perbandingan eksponensial, ada beberapa tahapan
yang harus dilakukan. Tahapan-tahapan tersebut adalah sebagai berikut :
1. Menyusun alternatif-alternatif keputusan yang akan dipilih.
2. Menentukan kriteria atau perbandingan relatif kriteria keputusan yang penting untuk
dievaluasi dengan menggunakan skala konversi tertentu sesuai dengan keinginan
pengambil keputusan.
3. Menentukan tingkat kepentingan relatif dari setiap dari setiap kriteria keputusan atau
pertimbangan kriteria. Penentuan bobot ditetapkan pada setiap kriteria untuk
menunjukkan tingkat kepentingan suatu kriteria.
4. melakukan penilaian terhadap semua alternatif pada setiap kriteria dalam bentuk
total skor tiap alternatif.
5. menghitung skor atau nilai total setiap alternatif dan mengurutkannya. Semakin
besar total nilai (TN) alternatif maka semakin tinggi urutan prioritasnya.
Formulasi perhitungan skor untuk setiap alternatif dalam metode perbandingan
eksponensial adalah sebagai berikut :

21
Total Nilai (TN i ) = ∑ ( RK ij )
m

TKK j

j =1

Dimana :
TNi

= total nilai alternatif ke –i

RKij

= derajat kepentingan relatif kriteria ke –j pada pilihan keputusan i

TKKj = derajat kepentingan kriteria keputusan ke –j; TKKj > 0; bulat
n

= jumlah pilihan keputusan

m

= jumlah kriteria keputusan

2.8

Keuntungan MPE

Metode perbandingan eksponensial mempunyai keuntungan dalam mengurangi
bias yang mungkin terjadi dalam analisis. Nilai skor yang menggambarkan urutan
prioritas menjadi besar (fungsi eksponensial) ini mengakibatkan urutan prioritas
alternatif keputusan lebih nyata (Marimin, 2004).

2.9

Pengertian Sistem Informasi

Menurut Mcleod (2001, p11), sistem adalah sekelompok elemen yang
terintegrasi dengan maksud yang sama untuk mencapai suatu tujuan. Suatu organisasi
seperti suatu perusahaan atau bidang fungsional cocok dengan definisi ini.
Menurut O’Brien (2003, p8), sistem terdiri dari bagian-bagian yang saling
berkaitan satu sama lain dan saling bekerja sama untuk mencapai tujuan tertentu. Atau
lebih detail lagi, sistem adalah integrasi dari komponen-komponen yang saling bekerja
sama untuk mencapai satu tujuan dengan mengubah input menjadi output melalui
serangkaian proses yang terorganisir.

22
Elemen / komponen dasar sebuah sistem terdiri atas :
1. Input, meliputi seluruh elemen / komponen yang memasuki sistem untuk diproses.
2. Process, meliputi proses transformasi yang mengubah input menjadi suatu output
yang berguna.
3. Output, merupakan pemindahan elemen-elemen yang telah dihasilkan oleh proses
transformasi yang akan dikirimkan ke tujuan akhir.
Selain elemen dasar, sistem juga memiliki dua elemen tambahan. Elemen
tambahan ini membuat konsep sistem menjadi lebih berguna dan sistem dapat
menjalankan pengawasan dan pengaturan sendiri. Elemen tambahan tersebut adalah :
1. Feedback, merupakan output yang dikembalikan kepada orang-orang dalam
organisasi untuk membantu mengevaluasi input.
2. Control, merupakan pengawasan dan evaluasi feedback untuk menentukan apakah
sistem telah berjalan sesuai yang diharapkan.
Menurut McLeod (2001, p12-13), informasi adalah data yang telah diproses atau
data yang memiliki arti. Terdapat empat dimensi informasi, yaitu :


Ketepatan waktu
Informasi harus dapat tersedia untuk memcahkan masalah pada waktu yang tepat
sebelum situasi menjadi tidak terkendali atau kesempatan yang ada menghilang.



Kelengkapan
Perusahaan khususnya manajer harus dapat memperoleh informasi yang memberi
gambaran lengkap dari suatu permasalahan atau penyelesaian. Namun pemberian
informasi yang tidak berguna secara berlebihan harus dihindari.

23


Akurasi
Secara ideal, semua informasi harus akurat untuk menunjang terbentuknya system
yang akurat pula. Akurasi ini terutama diperlukan dalam aplikasi-aplikasi tertentu
seperti aplikasi yang melibatkan keuangan, semakin teliti informasi yang diinginkan
maka biaya pun semakin bertambah.



Relevansi
Informasi disebut relevan jika informasi tersebut berkaitan langsung dengan masalah
yang sedang dihadapi. Manajer harus mampu memilih informasi yang diperlukan.
Menurut O’Brien (2003, p13), informasi adalah data yang telah diproses menjadi

sesuatu yang bermanfaat bagi pengguna. Ada tiga buah dimensi atribut dari kualitas
informasi menurut O’Brien (2003, p16), yaitu :


Dimensi Waktu (Time Dimension)
Informasi harus disediakan ketika dibutuhkan, harus up-to-date ketika disajikan,
harus disajikan sesering mungkin ketika dibutuhkan dan harus dapat menyajikan
data masa lalu, sekarang, dan amsa yang akan datang.



Dimensi Isi (Content Dimension)
Informasi harus dapat disajikan secara akurat, harus relevan, dan harus dapat
disediakan secara lengkap sesuai kebutuhan.



Dimensi Bentuk (Form Dimension)
Informasi harus dapat disajikan dengan cara yang mudah dipahami, bisa ditampilkan
dalam bentuk tulisan, angka, grafik, dan bentuk-bentuk lainnya, informasi dapat
disajikanpada media kertas, video, atau media yang lainnya.

24
Menurut Mcleod (2001, p4), sistem informasi adalah suatu kombinasi yang
terorganisasi dari manusia, perangkat lunak, perangkat keras, jaringan komunikasi, dan
sumber daya data yang mengumpulkan, mentransformasikan, serta menyebarkan
informasi dalam sebuah organisasi.

2.10

Analisis dan Perancangan Sistem Informasi

2.10.1 Konsep Object Oriented Analysis and Design

Menurut Mathiassen et al (2000, p135), Object-Oriented Analysis and Design
(OOAD) adalah metode untuk menganalisa dan merancang sistem dengan pendekatan
berorientasi object. Object diartikan sebagai suatu entitas yang memiliki identitas, state
dan behavior (Mathiassen et al, 2000, p4). Pada analisa, identitas sebuah object
menjelaskan bagaimana seorang user membedakannya dari object lain, dan behavior
object digambarkan melalui event yang dilakukannya. Sedangkan pada perancangan,

identitas sebuah object digambarkan dengan cara bagaimana object lain mengenalinya
sehingga dapat diakses, dan behavior object digambarkan dengan operation yang dapat
dilakukan object tersebut yang dapat mempengaruhi object lain dalam sistem.
Terdapat tiga buah konsep atau teknik dasar dalam proses analisa dan
perancangan berorientasi objek, yaitu:
1. Encapsulation
Encapsulation dalam bahasa pemrograman berorientasi objek secara sederhana

berarti pengelompokkan fungsi. Pengelompokkan ini bertujuan agar developer tidak
perlu membuat coding untuk fungsi yang sama, melainkan hanya perlu memanggil
fungsi yang telah dibuat sebelumnya.

25
2. Inheritance
Inheritance dalam bahasa pemrograman berorientasi objek secara sederhana berarti

menciptakan sebuah class baru yang memiliki sifat-sifat dan karakteristikkarakteristik sama dengan yang dimiliki class induknya disamping sifat-sifat dan
karakteristik-karakteristk individualnya.
3. Polymorphism
Polymorphism berarti kemampuan dari tipe objek yang berbeda untuk menyediakan

atribut dan operasi yang sama dalam hal yang berbeda. Polymorphism adalah hasil
natural dari fakta bahwa objek dari tipe yang berbeda atau bahkan dari sub-tipe yang
berbeda dapat menggunakan atribut dan operasi yang sama.
Pendekatan perancangan yang berorientasi pada objek ini menggunakan objek
dan class sebagai konsepnya. Pengertian objek yaitu suatu entitas yang memiliki
identitas, status, dan perilaku. Sedangkan, pengertian class adalah deskripsi dari
kumpulan objek yang memiliki struktur, pola perilaku, dan atribut yang sama.

2.10.2 System Choice

Pengembangan sebuah sistem dimulai dengan pengumpulan ide-ide yang
diperlukan mengenai sistem. Hal ini dapat dilakukan dengan preliminary analysis atau
dengan sederetan keputusan yang telah dibuat oleh pihak-pihak yang terlibat. Pembuatan
system choice dapat dilakukan dengan terlebih dahulu mendeskripsikan sistem yang

akan dibuat.
Deskripsi sistem yang diinginkan dapat dibuat dalam bentuk narasi atau gambar.
Dalam bentuk narasi, deskripsi sistem dibuat menggunakan system definition, yaitu
deskripsi singkat dan jelas mengenai sistem yang akan dibuat dalam bahasa yang

26
sederhana. Dalam bentuk gambar, deskripsi sistem dibuat menggunakan rich picture,
yaitu suatu gambar informal yang menunjukkan pemahaman pengembang terhadap
sistem.
Dalam preliminary analysis, juga ditentukan 6 kriteria yang sering disingkat
menjadi FACTOR. Keenam kriteria tersebut adalah (Mathiassen et al, 2000, p39-40) :




Functionality, fungsi dari sistem yang mendukung kegiatan application domain.
Application domain, bagian dari suatu organisasi yang mengatur, mengawasi dan

mengontrol problem domain.




Conditions, kondisi di mana sistem akan dikembangkan dan digunakan.
Technology, teknologi yang digunakan untuk mengembangkan sistem dan teknologi

di mana sistem tersebut akan dijalankan.




Objects, object utama dalam problem domain.
Responsiliility, tanggung jawab sistem secara keseluruhan terhadap konteks sistem.

FACTOR dapat digunakan dalam dua cara. Pertama, FACTOR digunakan untuk
mendukung pembuatan system definition, dengan mempertimbangkan formulasi keenam
kriteria FACTOR. Di sini, FACTOR didefinisikan dahulu, baru kemudian dibuat system
definitionnya. Cara kedua adalah dengan mendefinisikan system definition dahulu dan

kemudian menggunakan keenam kriteria FACTOR untuk mengetahui bagaimana system
definition yang dibuat telah memenuhi keenam FACTOR tersebut.

27
2.10.3 Aktivitas Utama Object Oriented Analysis and Design

Menurut Mathiassen et al (2000), Objek Oriented Analysis and Design (OOAD)
memiliki empat aktifitas utama yaitu problem domain analysis, application domain
analysis, component design, dan architectural design.

2.10.3.1

Problem Domain Analysis
Problem domain merupakan bagian dari konteks yang diatur, diawasi dan

dikendalikan oleh sistem. Dengan kata lain analisis problem domain berkaitan dengan
mengekspresikan kebutuhan yang harus dipenuhi oleh sistem. Tujuannya yaitu
mengidentifikasi dan memodelkan problem domain sehingga didapatkan informasi apa
saja yang dibutuhkan oleh sistem. Aktivitas dalam problem domain ada tiga, yaitu
mendefinisikan classes, structure dan behavior.
Tabel 2.3 Aktivitas dalam Problem Domain Analysis
Aktivitas
Classes

Structure

Behavior

Isi
Object dan event apa saja yang menjadi

bagian dalam problem domain?

Konsep
Class, object dan event

Bagaimana class dan object saling

Generalisasi, agregasi,

dihubungkan?

asosiasi, dan cluster

Apa saja properti dinamis yang dimiliki

Event trace, behavioral

sebuah object?

pattern,dan atribut

2.10.3.1.1 Classes

Menurut Mathiassen et al (2000, p49), aktivitas classes bertujuan memilih
elemen-elemen dalam problem domain, yaitu object, class dan event. Event adalah
kejadian yang terjadi seketika yang melibatkan satu atau lebih object. Abstraksi,
klasifikasi dan pemilihan adalah kegiatan utama dalam aktivitas class. Abstraksi

28
merupakan kegiatan di mana problem domain diabstraksikan dalam bentuk object dan
event. Object dan event tersebut kemudian diklasifikasikan dan dilakukan pemilihan
class dan event mana yang digunakan untuk memodelkan problem domain. Konsep
class ini merupakan upaya untuk mendefinisikan dan membatasi problem domain.

2.10.3.1.2 Structure

Aktivitas structure bertujuan menjelaskan hubungan struktural antara class
dan object dalam problem domain. Dalam aktivitas classes, class dan object
diklasifikasikan berdasarkan event. Pada aktivitas structure, hal ini dikembangkan
dengan menambahkan pendeskripsian hubungan struktural antara class dan object
tersebut. Hubungan sruktural ini kemudian digambarkan dalam suatu class diagram,
yang menunjukkan atribut dan operasi dari sebuah class. Menurut Mathiassen et al
(2000), hubungan struktural terbagi atas :
1. Struktur antar class


Generalisasi, adalah hubungan struktural antara dua atau lebih class khusus
(subclass) dengan sebuah class yang lebih umum (superclass). Dalam konsep
generalisasi ini, semua yang merupakan property dari superclass juga berlaku
bagi subclassnya.



Cluster, adalah kumpulan dari class yang saling berhubungan. Sebuah cluster

memungkinkan pemahaman problem domain secara menyeluruh dengan
membaginya menjadi subdomain. Class-class di dalam sebuah cluster biasanya
memiliki hubungan generalisasi atau agregasi, walaupun hal ini bukanlah syarat
mutlak dalam pembentukan cluster. Dan hubungan antar class dari cluster yang
satu dengan cluster yang lain biasanya berupa hubungan asosiasi.

29
2. Struktur antar object


Agregasi, adalah hubungan struktural antara dua atau lebih object, di mana object
yang satu merupakan bagian dari suatu object lain yang bersifat keseluruhan.
Hubungan agregasi dari class yang lebih tinggi dapat dinyatakan sebagai ”terdiri
dari”, misalnya sebuah mobil terdiri dari mesin motor. Sedangkan hubungan
agregasi dari class yang lebih rendah dinyatakan sebagai ”bagian dari”, misalnya
mesin motor adalah bagian dari mobil.



Asosiasi, adalah hubungan struktural antara dua atau lebih object, di mana tidak
terdapat peringkat antar object yang dihubungkannya (memiliki peringkat yang
sama / sejajar). Hubungan asosiasi digambarkan dengan sebuah garis di antara
class yang relevan.

2.10.3.1.3 Behaviour

Pada aktivitas behavior, dilakukan perluasan definisi class diagram dengan
menambahkan atribut dan behavioral pattern pada setiap class. Dalam aktivitas class,
behavior merupakan sekumpulan event yang belum berurutan yang melibatkan sebuah
object. Maka pada aktivitas behavior, behavior dijelaskan dengan lebih detail dengan

memberikan urutan waktu pada event. Behavior perlu dibuat untuk semua class dan
dapat dibuat dengan membuat event trace terlebih dahulu.
Event trace adalah urut-urutan event yang melibatkan object tertentu. Dan
behavioral pattern adalah penjelasan dari semua kemungkinan event trace untuk seluruh
object dalam sebuah class. Ada tiga bentuk behavioral pattern, yaitu :



Sequence (urutan), adalah pola di mana event terjadi satu persatu secara berurutan.

30


Selection (pemilihan), adalah pola di mana hanya satu event yang terjadi dari

beberapa kemungkinan event yang dapat terjadi.


Iteration (perulangan), ialah pola di mana sebuah event terjadi secara berulang-

ulang.
Hasil

dari

aktivitas

behavior

adalah

statechart

diagram

yang

menggambarkan semua aktivitas dan state-state yang mungkin dialami dalam sebuah
class, mulai dari pembentukan class hingga ketika class tersebut dihancurkan.

2.10.3.2

Application Domain Analysis
Application domain merupakan organisasi yang mengatur, mengawasi, atau

mengendalikan problem domain. Tujuan dari analisis application domain adalah untuk
menentukan fungsi-fungsi dan antar muka apa saja yang dibutuhkan oleh penggunaan
sistem.
Tabel 2.4 Aktivitas dalam Application Domain Analysis
Aktivitas
Usage

Function

Interface

Isi

Bagaimana sistem berinteraksi dengan
manusia dan konteks sistem?
Bagaimana kemampuan (kapabilitas)
sistem dalam memproses informasi?

Konsep
Use case dan actor

Function

Interface apa saja yang dibutuhkan oleh

Interface, user interface,

sistem?

system interface

2.10.3.2.1 Usage

Aktivitas usage bertujuan mendefinisikan interaksi pengguna (actor) dengan
sistem melalui pendefinisian actor dan use case. Actor adalah abstraksi pengguna atau
sistem lain yang berinteraksi dengan sistem. Dan use case adalah sebuah pola interaksi

31
antara sistem dengan actor dalam application domain. Hasil dari aktivitas ini dapat
berupa gambar (use case diagram) yang menggambarkan hubungan actor dan use case,
atau berupa tabel (actor table) yang mendefinisikan interaksi antara actor dan use case.
2.10.3.2.2 Function

Aktivitas

function

bertujuan

menentukan

kapabilitas

sistem

dalam

memproses informasi, di mana function yang kompleks perlu mendapatkan perhatian
khusus. Function adalah fasilitas yang memungkinkan model menjadi berguna bagi
actor. Sebuah function akan diaktifkan, dieksekusi dan akhirnya memberikan hasil, di

mana eksekusi yang dilakukan terhadap function dapat mengubah status atau
menimbulkan reaksi terhadap application domain dan problem domain.
Hasil dari aktivitas function adalah function list. Terdapat 4 tipe function,
yaitu:


Update, adalah function yang diaktifkan oleh event dalam problem domain dan

menghasilkan perubahan pada status (state) dari model.


Signal, adalah function yang diaktifkan oleh perubahan status dari model dan

menimbulkan reaksi dalam problem domain, reaksi dapat berupa tampilan bagi actor
atau intervensi langsung yang menyatakan hal tersebut.


Read, adalah function yang diaktifkan oleh adanya kebutuhan akan informasi dalam

pekerjaan actor sehingga sistem akan menampilkan bagian tertentu dari model yang
berhubungan.


Compute, adalah function yang diaktifkan oleh adanya kebutuhan akan informasi

dalam pekerjaan actor yang memerlukan komputasi dari informasi yang disediakan
oleh actor atau model. Hasilnya berupa tampilan hasil komputasi tersebut.

32
2.10.3.2.3 Interface
Interface digunakan oleh actor untuk berinteraksi dengan sistem. Interface

adalah fasilitas yang memungkinkan model dan function dari sistem dapat digunakan
oleh actor. Interface terdiri dari user dan system interface. User interface adalah
interface yang menghubungkan sistem dengan pengguna (user). Sedangkan system
interface adalah interface yang menghubungkan sistem dengan sistem lain.

Hasil dari aktivitas ini adalah pembuatan tampilan (form) yang merupakan
user interface dan navigation diagram yang menggambarkan setiap window, bagaimana

hubungan antara setiap window dan bagaimana mengakses setiap window tersebut.

2.10.3.3

Architectural Design
Architectural design adalah tahap penyusunan sistem yang terkomputerisasi.

Kegiatan ini merupakan kerangka kerja dalam aktivitas pengembangan sistem. Hasil
dari aktifitas ini adalah struktur komponen dan proses sistem. Architectural design
terbagi atas dua yaitu component architecture dan process architecture. Component
architecture berfokus pada aspek yang stabil yaitu class dan menyusun sistem dalam

komponen yang terkait dan berkaitan dengan pertimbangan logis. Sedangkan process
architecture lebih berfokus pada aspek yang dinamis yaitu objek dan menyusun proses

dalam sistem supaya terkoordinasi dan mencapai penggunaan yang efisien dalam
technical platform dan process architecture berhubungan dengan pertimbangan fisik.

33
Tabel 2.5 Aktivitas dalam Architectural Design
Aktivitas
Criteria

Isi

Bagaimana kondisi dan kriteria untuk
perancangan?

Konsep
Criterion

Compone

Bagaimana sistem didekomposisikan ke

Component dan

nts

dalam komponen-komponen?

Component architecture

Bagaimana proses dalam sistem

Process dan Process

didistribusikan dan dikoordinasikan?

architecture

Processes

2.10.3.3.1 Criteria

Tujuan pembuatan criteria adalah untuk menentukan urutan prioritas dalam
perancangan. Suatu perancangan yang baik memiliki 3 prinsip, yaitu tidak memiliki
kelemahan utama, memiliki beberapa kriteria secara seimbang, serta mencakup paling
tidak 3 kriteria perancangan, yaitu usable, flexible dan comprehensible. Usable
ditentukan oleh hubungan antara kualitas teknis sistem dengan penerapannya dalam
pekerjaan user. Flexible dan comprehensible membantu dalam perancangan dan
pengimplementasian kegiatan.
Criteria adalah properti atau kondisi yang lebih diutamakan dalam suatu

arsitektur. Kriteria-kriteria ini bisa jadi saling bertentangan, karena itu prioritas dari
kriteria-kriteria menjadi penting. Kriteria-kriteria tersebut adalah :


Usable : kemampuan sistem untuk beradaptasi terhadap suatu organisasi, kegiatan

yang terkait, dan konteks teknis dalam organisasi tersebut.






Secure : pencegahan terhadap akses yang tidak diijinkan terhadap data dan fasilitas.
Efficient : eksploitasi secara ekonomis dari fasilitas technical platform.
Correct : pemenuhan sistem terhadap kebutuhan organisasi.

34


Reliable : pemenuhan terhadap kebutuhan yang penting dalam pelaksanaan fungsi-

fungsi sistem.




Maintainable : biaya untuk mencari dan memperbaiki kerusakan pada sistem.
Testable : biaya untuk memastikan bahwa sistem yang dibuat dapat berfungsi

sebagaimana mestinya.




Flexible : biaya untuk memodifikasi sistem yang dibuat.
Comprehensible : usaha yang diperlukan untuk mendapatkan pemahaman yang baik

terhadap sistem.


Reuseable : potensi untuk menggunakan bagian-bagian sistem dalam sistem lainnya

yang berkaitan.




Portable: biaya untuk memindahkan sistem ke technical platform yang lain.
Interoperable : biaya untuk menghubungkan sistem dengan sistem yang lain.

2.10.3.3.2 Components

Tujuan dari aktivitas ini adalah untuk membuat struktur sistem yang mudah
dimengerti (comprehensible) dan flexible. Component adalah suatu kumpulan dari
bagian-bagian program yang memiliki tanggung jawab masing-masing. Component
architecture adalah struktur sistem yang terdiri dari komponen-komponen yang saling

berhubungan. Component architecture yang baik akan membantu pemahaman sistem,
pengaturan perancangan dan menunjukkan kestabilan dari sistem tersebut. Hasil dari
aktivitas ini adalah component diagram.
Komponen sistem memiliki tiga bagian, yaitu :




Model : bertanggung jawab untuk menampung object dari problem domain.
Function : bertanggung jawab untuk menyediakan fungsionalitas dari sistem.

35


User interface : bertanggung jawab untuk mengatur interaksi antara pengguna (user)

dengan sistem.
Perancangan component architecture dapat dilakukan berdasarkan pola-pola
(pattern) tertentu. Pattern menunjukkan pengalaman dari berbagai proyek, dan pattern
terbaik dapat membantu dalam membuat perancangan yang konsisten. Ada 3 macam
pola (pattern) yang digunakan untuk merancang component architecture, yaitu :


The layered architecture pattern
Layered architecture terdiri dari beberapa komponen yang dirancang dalam bentuk

lapisan-lapisan (layer), di mana setiap komponen diuraikan menjadi interface atas
dan bawah. Interface bawah menjelaskan operasi yang dapat diakses oleh komponen
dari lapisan di bawahnya, sedangkan interface atas menjelaskan operasi yang
disediakan oleh komponen di lapisan atas.


The generic architecture pattern

Arsitektur ini terdiri dari model sistem yang terletak di lapisan paling bawah, diikuti
dengan function pada lapisan di atasnya dan interface di lapisan teratas. Perangkat
teknis bisa diletakkan di bawah model di mana perangkat teknis ini terhubung
dengan model dan interface.


The client-server architecture pattern

Arsitektur ini dikembangkan untuk sistem yang terdistribusi di beberapa area
geografis yang berbeda. Komponen dari arsitektur ini mencakup sebuah server dan
beberapa klien, di mana klien-klien ini menggunakan server secara independen satu
sama lainnya.

36
Tabel 2.6 Bentuk-Bentuk Distribusi dalam Client Server Architecture
Client

Server

Architecture

U

U+F+M

Distributed presentation

U

F+M

Local presentation

U+F

F+M

Distributed functionality

U+F

M

Centralized data

U+F+M

M

Distributed data

2.10.3.3.3 Processes

Aktivitas ini bertujuan mendefinisikan struktur fisik sebuah sistem. Process
architecture adalah struktur eksekusi sistem yang terdiri dari proses-proses yang

interdependen. Hasil dari aktivitas ini adalah deployment diagram, yang menjelaskan
distribusi dan kolaborasi komponen program dan objek yang terkait dengan processor.
Processor adalah unit yang dapat mengeksekusi program.

2.10.3.4

Component Design

Tujuan dari aktifitas ini adalah menentukan implementasi dari kebutuhan ke
dalam kerangka kerja arsitektur. Oleh karena itu aktifitas ini berisi perancangan terhadap
komponen sistem yaitu model dan function yang hasilnya berupa deskripsi mengenai
komponen tersebut.

37
Tabel 2.7 Aktivitas dalam Component Design
Aktivitas

Isi

Konsep

Bagaimana model mewakili

Model Component dan

class dalam sistem?

Attribute

Bagaimana functions

Function Component dan

diimplementasikan?

Operation

Connecting

Bagaimana komponen-

Component dan

Components

komponen dihubungkan?

Connection

Model Component

Function Component

2.10.3.4.1 Model Component
Model component adalah bagian dari sistem yang mengimplementasi model

dari problem domain. Tujuannya yaitu mengantarkan data historis dan saat ini ke
function, interfaces, dan terutama kepada user dan sistem lain. Hasilnya adalah class
diagram dari model component yang telah direvisi.

2.10.3.4.2 Function Component
Function component lebih mengarah pada bagaimana fungsi diimplementasi.
Function component adalah bagian dari sistem yang mengimplementasi kebutuhan

fungsional. Tujuannya yaitu memberikan akses terhadap model kepada user interface
dan sistem lain. Hasil aktifitas ini adalah class diagram dengan operasi dan spesifikasi
dari operasi yang kompleks.
2.10.3.4.3 Connecting Component

Aktifitas

connecting

component

berfokus

pada

menilai

bagaimana

komponen-komponen tersebut saling terhubung. Hubungan ini ditunjukan dengan
penilaian terhadap coupling (ukuran seberapa dekat dua buah class atau komponen
terkait) dan cohesion (ukuran seberapa baik sebuah class atau komponen digabungkan

38
bersama. Hasil aktifitas ini adalah class diagram dari komponen yang saling
berhubungan.

2.11

Unified Modeling Language (UML)

2.11.1 Sejarah UML

UML merupakan pengantar kepada gelombang metode OOAD yang muncul
pada akhir tahun 1980an dan awal 1990an. Pada saat itu, ada banyak metode object
oriented yang berbeda yang digunakan dalam industri, di antaranya Booch Method dari

Grady Booch, Object Modeling Technique (OMT) dari James Rumbaugh, dan ObjectOriented Software Engineering (OOSE) dari Ivar Jacobson. Adanya banyak metode dan

teknik pemodelan tersebut merupakan permasalahan utama dalam pengembangan sistem
saat itu, karena tidak ada standar dan keseragaman tertentu sehingga terdapat
keterbatasan antar proyek dan antar anggota tim pengembangan. Hal ini mempersulit
komunikasi dan menimbulkan banyak kesalahan dalam proyek. Permasalahan inilah
yang membawa kepada usaha untuk menemukan bahasa pemodelan yang standar, yang
dapat digunakan pada semua keadaan di seluruh dunia.
Tahun 1994, Booch dan Rumbaugh menyatukan pandangan mereka tentang
metode pengembangan object oriented, dan disusul oleh Jacobson pada 1995, serta
metode-metode lain seperti Fusion, Shlaer-Mellor, dan lain-lain. Pada 1996, Object
Management Group (OMG) meminta proposal untuk sebuah pendekatan yang standar

untuk object oriented modeling. Para pencetus UML mulai bekerja dengan para
metodologis dan pengembang dari perusahaan lain untuk membuat sebuah proposal
yang menarik bagi OMG agar modeling languange dapat diterima oleh para pencetus,
metodologis dan pengembang. Proposal diserahkan ke OMG pada September 1997,

39
hasil akhirnya adalah kolaborasi dari banyak orang. Dan pada November 1997 dibuat
sebuah standarnya yaitu UML version 1.0. UML adalah standar dunia yang dibuat oleh
Object Management Group (OMG), sebuah badan yang bertugas mengeluarkan standar-

standar teknologi object oriented dan software component.
2.11.2 Kegunaan UML

Berdasarkan OMG, UML (Unified Modeling Language) dapat didefinisikan
sebagai sebuah bahasa yang berdasarkan gambar untuk memvisualisasi (visualisizing),
menspesifikasi (specifying), mengkonstruksi (constructing), dan mendokumentasi
(documenting) sebuah sistem perangkat lunak. UML menggunakan notasi yang
dikombinasikan dari beberapa metode yang telah berkembang sebelumnya. Hal ini
ditujukan untuk mempermudah desain, dan dapat digunakan untuk model dengan skala
besar sekalipun dengan jumlah kompleksitas, jumlah tim, dan distribusi komponen yang
sangat besar. Tujuan akhir dari UML adalah untuk menjadi sesederhana mungkin selama
masih memenuhi kebutuhan untuk melakukan modeling pada sistem yang akan
dibangun.
2.11.3 Diagram-diagram dan Notasi UML

Notasi adalah bahasa textual dan graphical untuk menggambarkan sebuah sistem
dan konteksnya yang diformalisasikan secara terpisah. Tujuannya adalah untuk
menyederhanakan komunikasi dan dokumentasi. Berikut ini merupakan beberapa
diagram UML dan notasinya yang paling umum digunakan dalam OOAD :
1. Class Diagram
Class merupakan sebuah spesifikasi yang jika diinstansiasi akan menghasilkan

sebuah objek dan merupakan inti dari pengembangan dan desain berorientasi objek.

40
Class menggambarkan keadaan suatu sistem, sekaligus menawarkan layanan untuk

memanipulasi keadaan tersebut. Jadi, dapat disimpulkan bahwa class diagram
menggambarkan sekumpulan class, interface, dan collaboration, dan relasirelasinya. Class diagram juga menunjukkan atribut dan operasi dari sebuah objek
class. Atribut adalah nama-nama properti dari sebuah kelas yang menjelaskan

batasan nilainya dari properti yang dimiliki oleh sebuah kelas tersebut. Atribut dari
suatu kelas merepresentasikan properti-properti yang dimiliki oleh kelas tersebut.
Atribut mempunyai tipe yang menjelaskan tipe instansiasinya. Operasi adalah
implementasi dari layanan yang dapat diminta dari sebuah objek dari sebuah kelas
yang menentukan tingkah lakunya. Sebuah operasi dapat berupa perintah ataupun
permintaan. Sebuah permintaan tidak boleh mengubah kedudukan dari objek
tersebut. Hanya perintah yang dapat mengubah keadaan dari sebuah objek. Keluaran
dari sebuah operasi tergantung dari nilai keadaan terakhir dari sebuah objek.
Class memiliki 3 area pokok, yaitu nama, atribut, dan fungsi. Atribut dan metoda

dapat memiliki salah satu sifat berikut ini:
− 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.
Class dapat merupakan implementasi dari sebuah interface, yaitu class abstrak yang

hanya memiliki metoda. Interface tidak dapat langsung diinstansiasikan, tetapi harus
diimplementasikan dahulu menjadi sebuah class. Dengan demikian interface
mendukung resolusi metoda pada saat run time. Sesuai dengan perkembangan class
model, class dapat dikelompokkan menjadi package.

41
Hubungan antar class dapat digambarkan dengan notasi sebagai berikut:


Asosiasi
Hubungan statis antar class. Umumnya menggambarkan class yang memiliki
atribut berupa class lain, atau class yang harus mengetahui eksistensi class lain.
Digambarkan dengan sebuah garis yang dilengkapi dengan sebuah label, nama
dan status hubungannya. Panah navigability menunjukkan arah query antar class.
Navigability merupakan sebuah properti dari role yang menandakan bahwa

mungkin untuk melakukan navigasi uni-directional pada asosiasi dari objek
sumber ke objek tujuan.


Agregasi
Hubungan yang menyatakan ”bagian dari”, ”bagian keseluruhan” atau ”terdiri
atas”. Suatu class atau objek mungkin memiliki atau bisa dibagi menjadi class
atau objek tertentu, dimana class atau objek yang disebut kemudian merupakan
bagian dari class atau objek yang terdahulu. Ada 2 jenis agregasi, yaitu :
1. Composite Aggregation

Disebut juga strong aggregation dimana objek ”bagian” tidak dapat berdiri
sendiri tanpa objek ”keseluruhan”. Jadi, antara objek yang satunya saling
terkait kuat dengan objek lainnya. Merupakan multiplicity pada satu
composite dan dinotasikan dengan filled diamond. Menunjukkan bahwa
composite secara tunggal memiliki the part.
2. Shared Aggregation

Merupakan multiplicity pada composite yang lebih dari 1 dan dinotasikan
dengan hollow diamond. Menunjukkan bahwa the part bisa terdapat pada
instance composite.

42


Generalisasi
Menggambarkan hubungan khusus dalam objek anak/child yang menggantikan
objek parent/induk. Objek anak memberikan pengaruhnya dalam hal struktur dan
tingkah lakunya kepada objek induk.

2. Statechart Diagram
Menggambarkan transisi dan perubahan keadaan (dari satu state ke state lainnya)
suatu objek pada sistem sebagai akibat dari stimuli yang diterima. Pada umumnya
statechart diagram menggambarkan class tertentu. Statechart diagram digunakan

dalam aktifitas behavior pada problem domain analysis.
3. Use Case Diagram
Menggambarkan fungsionalitas yang diharapkan dari sebuah sistem. Yang
ditekankan adalah ”apa” yang diperbuat oleh sistem, dan bukan ”bagaimana.”
Sebuah use case merepresentasikan sebuah interaksi antara aktor dengan sistem. Use
case merupakan sebuah pekerjaan tertentu, misalnya login ke sistem, meng-create

sebuah daftar belanja dan sebagainya. Seorang actor adalah sebuah entitas manusia
atau mesin yang berinteraksi dengan sistem untuk melakukan pekerjaan-pekerjaan
tertentu. Use case diagram dapat sangat membantu bila kita sedang menyusun
requirement (kebutuhan) sebuah sistem, mengkomunikasikan rancangan dengan

klien, dan merancang test case untuk semua feature yang ada pada sistem.
Use case diagram menunjukkan aktor-aktor yang berinteraksi dengan sebuah sistem

dan use case yang menjelaskan cara-cara seperti bagaimana interaksi mengambil
tempat. Aktor-aktor dihubungkan dengan use case di mana mereka dihubungkan
dengan sebuah asosiasi.

43
4. Sequence Diagram
Menggambarkan interaksi antar objek di dalam dan di sekitar sistem (termasuk
pengguna, display, dan sebagainya) berupa message yang digambarkan terhadap
waktu. Sequence diagram terdiri dari dimensi vertikal (waktu) dan dimensi
horizontal (objek-objek yang terkait). Bisa digunakan untuk menggambarkan
skenario atau rangkaian langkah-langkah yang dilakukan sebagai respons dari
sebuah event untuk menghasilkan output tertentu. Diawali dari apa yang men-trigger
aktivitas tersebut, proses dan perubahan apa saja yang terjadi secara internal dan
output apa yang dihasilkan. Masing-masing objek, termasuk aktor memiliki lifeline

vertikal. Message digambarkan sebagai garis berpanah dari satu objek ke objek
lainnya. Sequence diagram menunjukkan sebuah interaksi antara peran atau obyekobyek prototipe dalam sebuah kolaborasi. Setiap peran memiliki sebuah lifeline yang
memanjang di bawahnya. Message direpresentasikan dengan panah ber-label yang
digambarkan dari satu lifeline ke lifeline lain. Message memberikan sebuah aktivasi.
Di ujung aktivasi, return message menunjukkan arah balik kendali kepada obyek
yang memanggil. Paramenter dan nilai return dapat ditunjukkan dalam message.
Message dikirim ke obyek dengan sendirinya untuk memberikan aktivasi nested.

Bennet et al. (2006, p253-254) menyatakan bahwa setiap sequence diagram harus
diberikan frame yang memiliki heading dengan menggunakan notasi sd yang
merupakan kependekan dari sequence diagram. Bennet et al. (2006, p270) juga
menyatakan bahwa terdapat beberapa notasi penulisan heading pada setiap frame
yang terdapat dalam sequence diagram, antara lain:

44
a. alt

Notasi alt merupakan kependekan dari alternatives yang menyatakan bahwa
terdapat beberapa buah alternatif jalur eksekusi untuk dijalankan.
b. opt

Notasi opt merupakan kependekan dari optional dimana frame yang memiliki
heading ini memiliki status pilihan yang akan dijalankan jika syarat tertentu

dipenuhi.
c. loop

Notasi loop menyatakan bahwa operation yang terdapat dalam frame tersebut
dijalankan secara berulang selama kondisi tertentu.
d. break

Notasi break mengindikasikan bahwa semua operation yang berada setelah
frame tersebut tidak dijalankan.
e. par

Merupakan kependekan dari parallel yang mengindikasikan bahwa operation
dalam frame tersebut dijalankan secara bersamaan.
f. seq

Notasi seq merupakan kependekan dari weak sequencing yang berarti operation
yang berasal dari lifeline yang berbeda dapat terjadi pada urutan manapun.
g. strict

Notasi strict merupakan kependekan dari strict sequencing yang menyatakan
bahwa operation harus dilakukan secara berurutan.

45
h. neg

Notasi neg merupakan kependekan dari negative yang mendeskripsikan operasi
yang tidak valid.
i. critical
Frame yang memiliki heading critical menyatakan bahwa operasi-operasi yang

terdapat di dalamnya tidak memiliki sela yang kosong.
j. ignore

Notasi ini mengindikasikan bahwa tipe pesan atau parameter yang dikirimkan
dapat diabaikan dalam interaksi.
k. consider
Consider menyatakan pesan mana yang harus dipertimbangkan dalam interaksi.
l. assert

Merupakan kependekan dari assertion yang menyatakan urutan pesan yang valid.
m. ref

Notasi ref merupakan kependekan dari refer yang menyatakan bahwa frame
mereferensikan operation yang terdapat di dalamnya pada sebuah sequence
diagram tertentu.

5. Navigation Diagram.
Navigation Diagram merupakan statechart diagram khusus yang berfokus pada user
interface. Diagram ini menunjukan window- window yang terlibat dan transisi antar
window tersebut. Sebuah window dapat digambarkan sebagai sebuah state yang

memiliki nama dan mengandung gambar miniatur window. Navigation diagram
digunakan pada aktifitas interface pada application domain analysis.

46
6. Component Diagram
Menggambarkan struktur dan hubungan antar komponen piranti lunak, termasuk
ketergantungan (dependency) di antaranya. Komponen piranti lunak adalah modul
berisi code, baik berisi source code maupun binary code, baik library maupun
executable, baik yang muncul pada compile time, link time, maupun run time.

Umumnya komponen terbentuk dari beberapa class dan atau package, tapi dapat
j