BAB 2 LANDASAN TEORI 2.1 Teori Umum 2.1.1 Kategori Perangkat Lunak Komputer 2.1.1.1 Sistem Software Perangkat lunak sistem adalah kumpulan program tertulis guna melayani program lain. Beberapa perangkat lunak sistem (compiler, editor, dan utilitas manajemen file) proses yang rumit tetapi pasti , informasi yang terstruktur. sistem aplikasi lainnya (komponen sistem operasi, driver, perangkat lunak jaringan, prosesor telekomunikasi) memproses besarnya data yang tak tentu. Dalam kedua kasus, daerah sistem perangkat lunak ditandai dengan beratnya interaksi dengan perangkat keras komputer, beratnya penggunaan oleh beberapa pengguna, operasi yang terjadi bersamaan yang membutuhkan penjadwalan, berbagi sumber daya, dan proses manjemen yang canggih, struktur data yang kompleks, dan beberapa antarmuka eksternal . (Pressman, 2008, hal. 40)
2.1.1.2 Aplikasi Software Aplikasi software terdiri dari program mandiri yang dapat menyelesaikan spesifikasi yang dibutuhkan dalam bisnis. Aplikasi pada bidang proses bisnis atau data teknis dengan cara memfasilitasi operasi bisnis atau manajemen / teknik pengambilan keputusan. Di samping aplikasi pengolahan data konvensional, aplikasi perangkat lunak digunakan untuk mengontrol fungsi
6
7
bisnis secara real time (point-of sale, proses transaksi, mengontrol prosespembuatan real time) (Pressman, 2008, hal. 40)
2.1.1.3 Web Aplikasi Dalam bentuk yang paling sederhana, aplikasi web memiliki sedikit lebih dari satu set file hypertext terkait yang menyajikan informasi dengan menggunakan teks dan grafis yang terbatas. Namun, seperti e-commerce dan aplikasi business to business semakin penting, aplikasi web berkembang ke lingkungan komputasi canggih yang tidak hanya menyediakan fitur mandiri, fungsi komputasi, dan konten ke pengguna akhir, tetapi juga terintegrasi dengan database perusahaan dan aplikasi bisnis. (Pressman, 2008, hal. 41)
2.1.2 UML (The Unified Modeling Language) The Unified Modeling Language (UML) adalah bahasa visual yang menyediakan cara bagi orang-orang yang akan menganalisa dan merancang sistem yang berorientasi obyek untuk memvisualisasikan, membangun dan mendokumentasikan artefak dari sistem perangkat lunak dan untuk model organisasi bisnis yang menggunakan sistem tersebut. (Bennet, Skeleton, & Lunn, 2008, hal. 5) Uml dirancang untuk menyatukan fitur-fitur terbaik dari sejumlah teknik analisis dan desain dan notasi untuk menghasilkan standar industri. (Bennet, Skeleton, & Lunn, 2008, hal. 5)
8
Pedoman yang disajikan dalam bab ini berlaku untuk semua jenis diagram, UML atau sebaliknya. Istilah "simbol","Garis", dan "label" yang digunakan di seluruh: 1. Simbol mewakili elemen diagram seperti class box,object box, use case, dan aktor. 2.
Garis merupakan elemen diagram seperti asosiasi, dependensi,dan transisi di antara negara-negara.
3.
Label mewakili elemen diagram seperti nama kelas, asosiasi peran, dan kendala. (Ambler, 2005, hal. 4)
2.1.2.1 Use Case Diagram (Ambler, 2005, hal. 33) Sebuah UML use case diagram menunjukkan hubungan antar aktor dan menggunakan kasus dalam sebuah sistem. Mereka sering digunakan untuk: a. Untuk memberikan gambaran dari semua atau bagian dari persyaratan penggunaan untuk sistem atau organisasi dalam essential model dan juga model bisnis b. Menggambarkan lingkup proyek pembangunan c. Sebagai model analisis persyaratan penggunaan dalam bentuk sistem use case model Use-case model harus dikembangkan dari sudut pandang proyek anda sebagai pemangku kepentingan bukan dari titik teknis sudut pandang pengembang.
9
Use-Case Guidelines : Sebuah use case menggambarkan suatu urutan tindakan yang memberikan ukuran nilai bagi seorang aktor. Sebuah use case digambarkan seperti horizontal elipse pada diagram use case UML 1.
Menggunakan nama use case dengan kata kerja yang kuat
Dengan menggunakan kata kerja yang kuat akan menjadikan use case memiliki nama yang baik. Yang mana nama tersebut menggambarkan hal-hal apa saja yang use case lakukan . Menggunakan nama use case yang lemah hanya akan mengakibatkan kesulitan berkomunikasi dengan stakeholder proyek anda. Contoh nama use case yang baik antara lain : Withdraw Funds, Register
Student
in
Seminar,
Shipment. Gambar 2.1 Use case Diagram
dan
Deliver
10
2.
Actor Guidelines
Seorang aktor adalah orang, organisasi, proses lokal (misalnya: sistem dan jam), atau sistem eksternal yang berperan dalam satu atau lebih interaksi dengan sistem anda.
Gambar 2.2 Contoh Use Case Diagram Online Shopping
3.
Relationship Guidelines
pada use case diagram terdapat hubungan yang mungkin muncul pada use case diagram : a.
Asosisasi :
Asosiasi digambarkan sebagai garis yang menghubungkan dua unsur pemodelan dengan tanda panah yang terbuka ujungnya pada akhir garis, yang menunjukkan tujuan dari awal sebuah hubungan b.
Generalisasi
Generalisasi digambarkan dengan panah yang
tertutup ujungnya yang
menunjuk ke arah elemen pemodelan yang lebih umum.
11
Gambar 2.3 Contoh Use Case Diagram Enrolling Students in University
4.
System Boundary Box Guidelines
System boundary box digunakan untuk menunjukan ruang lingkup sistem yang anda gunakan. System boundary box diapat digambar sebuah persegi panjang yang berada disekitar use case, sedangkan use case yang berada dalam persegi panjang atau system boundary box mewakili fungsi yang akan anda implementasikan.
2.1.2.2 Activity Diagram Menurut (Ambler, 2005, hal. 47) Diagram aktivitas (Activity Diagram) UML adalah object-oriented equivalent dari
flow chart dan data-flow
diagram dari pengembangan terstruktur . Activity Diagram Guideline : 1.
Sertakan titik awal Sebuah activity diagram harus memiliki titik awal yang dimodelkan dengan lingkaran penuh, serta menempatkannya dipojok kiri atas dengan
12
menggunakan notasi yang sama. Titik awal menandai awal dimulainya sebuah proses dari suatu system.
Gambar 2.4 Activity Diagram
2.
Sertakan Titik Akhir Pada activity diagram juga harus disertakan titik akhir yang menandakan berakhirnya suatu proses. Sebuah titik akhir dimodelkan dengan lingkaran penuh dengan perbatasan sekitarnya.
3.
Menunjukkan Keputusan dalam Bentuk Diamonds Dalam sebuah activity diagram, untuk menunjukan logika keputusan atau validasi dimodelkan dalam sebuah bentuk diamond.
2.1.2.3 Class Diagram Menurut(Ambler, 2005, hal. 50) UML class diagram menunjukkan class dari sistem, interrelationship mereka, dan operasi serta atribut dari kelas. Sebuah class model terdiri dari satu atau lebih diagram yang mendukung
13
spesifikasi yang menggambarkan elemen model, termasuk class, hubungan antara class, dan interface. Class diagram guidelines : a.
General Guidelines
UML class diagram digunakan guna memahami kebutuhan user untuk menggambarkan rincian desain yang diinginkan oleh user . 1.
Indikasi tipe pada analisis model Indikasi tipe pada analisis model dibutuhkan guna membatasi elemen data ke spesifikasi jenis atau ukuran tertentu.
2.
Konsisten dengan nama atribut dan tipe atribut Contoh : Nama Atribut : CustomerID Tipe Atribut : Integer Ini tidak akan konsisten jika nama atribut CustomerID memiliki tipe atribut char.
3.
Penamaan Operasi Operasi yang nantinya akan digunakan untuk mengimplementasi fungsi suatu objek, harus dinamai dengan cara yang efektif
guna
mengkomunikasikan fungsi yang ada. Tabel 2.1 berisikan daftar nama operasi untuk menganalisis class dan serta mendesain class diagram. 4.
Penamaan Atribut Seperti class dan operasi, anda harus menggunakan deskripsi penuh untuk nama atribut anda. Tabel 2.2 menunjukkan penamaan berbasis Java untuk
14
menganalisis
serta menunjukan nama desain yang memiliki format
AttributeName
Tabel 2.1 Example Names for Operation
Tabel 2.2 Exampel Names for Attributes
15
b.
Relationship Guidelines Sebuah class diagram perlu memiliki hubungan antar dua model elemen
yang memungkinkan dua elemen tersebut untuk berkolaborasi. Serta menyertakan multiplicity indicator untuk mengetahui jumlah atau banyaknya dari bagaimana hubungan antar class itu terjadi (lihat tabel 2.3). Dibawah ini merupakan hubungan yang terdapat pada class diagram : a.
Asosisasi : Antara objek yang satu dengan objek lainnya semuanya saling berhubungan
b.
Agregasi : spesialisasi dari asosiasi yang menentukan hubungan keseluruhan juga bagian antar dua objek. Apabila terdapat salah satu class yang dihapus maka class tersebut masih akan tetap bisa berjalan. Dengan kata lain class tersebut masih bisa berdiri sendiri walaupun ada atau tidaknya class yang berhubungan dengannya. Agregasi dimodelkan dengan diamond yang berwarna polos
c.
Komposisi : spseialisasi dari asosiasi dengan bentuk yang lebih kuat dari agregasi. Dimana apabila terdapat salah satu class yang dihapus class yang lainnya akan hancur atau dengan kata lain antara class yang saling berhubungan dengan class lainnya tidak dapat beridiri sendiri. Komposisi digambarkan dengan diamond yang berwarna hitam
16
Gambar 2.5 Modelling an Order
Tabel 2.3 UML Multiplicity Indicators
Gambar 2.6 Contoh Agregasi dan Komposisi
17
2.1.2.4 Sequence Diagram Menurut (Ambler, 2005, hal. 80) Diagram urutan UML adalah teknik pemodelan yang dinamis. UML sequance diagram biasanya digunakan untuk : a. Validasi serta menyempurnakan logika dan kelengkapan
penggunaan
suatu skenario. Sebuah usage scenario menunjuk kepada penamaan serta deskripsi dari cara bagaimana sistem anda akan digunakan. b. Membantu serta mempermudah developer dalam mendesain aplikasi Sequance guidelines : 1.
Memulai aliran pesan dari diagram Aliran pesan pada sequence diagram dimulai dari sudut kiri atas, pesan yang muncul setelah pesan sebelumnya akan berada lebih rendah dari pesan sebelumnya. Untuk merancang sequence diagram anda diharuskan terlebih dulu mengatur pengkalsifikasian aktor, class, objek, dan juga use case yang ditempatkan sejajar pada atas diagram.
2.
Layer Object Lifelines Layering biasa digunakan untuk mengatur user interface, proses/ controller, ataupun bisnis.
18
Gambar 2.7 Contoh Sequence Diagram Enrolling a Student in a Seminar
3.
Actor Guidlines Dalam sequence diagram, aktor merupakan orang atau organisasi yang memulai skenario yang dimodelkan. Pada sequence diagram aktor ditempatkan di kiri atas diagram.
4.
Guidelines for Lifelines Lifelines merupakan contoh dari pengklasifikasian yang digambarkan di bagian atas seqence diagram. Aktor, kelas, komponen, objek, use case merupakan lifelines.
5. Penamaan
Objek
Dalam sequence diagram sering ditemukan objek dengan tipe yang sama, oleh karena itu anda harus memberikan semua objek dari tipe
19
sebuah nama yang berbeda agar tidak membuat digram anda menjadi ambigu.
Gambar 2.8 Contoh Sequence Diagram Transfering Funds Between Account
6. Message Guidelines Penerima pesan akan melaksanakan operasi yang sesuai, oleh karena itu nama pesan harus dekat dengan classifier . 7. Return Values Dalam sequence diagaram sebuah return values menunjukan secara eksplisit tempat darimana proses itu berasal
2.1.3 MySQL My SQL merupakan database open source yang cukup popular keberadaannya. Dengan berbagai keunggulan yang dimiliki untuk membuat software database ini banyak digunakan oleh para praktisi untuk membangun
20
suatu project. Adanya fasilitas API (Application Programming Interface) yang dimiliki MySQL, memungkinkan bermacam-macam aplikasi komputer yang ditulis dengan berbagai bahasa pemogramman dapat mengakses basis data MySQL. (Komputer, 2012, hal. 2) Bagi anda yang baru pertama dengan MySQL akan bingung dengan 2 kata SQL dan MySQL. SQL (Structures Query Languge) merupakan suatu bahasa permintaan yang terstruktur, karena pada penggunaannya,SQL memiliki beberapa aturan yang telah distandarkan oleh asosiasi yang bernama ANSI (American National Standard Institute).
Jadi, SQL merupakan
permintaan yang melekat pada satu database atau SMBD (Sistem Manajemen Basis Data ) tertentu, sedangkan MySQL merupakan databse servernya. Dengan kata lain MySQL merpakan SMBD-nya SQL dan SQL adalah perintah atau bahasa yang melekat pada SMBD tersebut. (Nugroho B. , 2009, hal. 3)
2.1.4 PHP (Personal Home Page) Menurut (Wahyono, 2009, hal. 35)PHP (Personal Home Page) merupakan script untuk membuat suatu aplikasi yang dapat terintegrasikan ke dalam halaman HTML, sehingga suatu halaman web tidak lagi bersifat statis, namun menjadi lebih dinamis. PHP dikelompokan dalam kategori bahasa pemograman server side programming. Artinya bahwa script yang dibuat dengan PHP akan disimpan di server, dan dijalankan oleh server untuk memenuhi permintaan klien. (Wahyono, 2009, hal. 36)
21
PHP juga terkenal lebih aman daripada bahasa pemograman website yang lain. PHP juga sudah mendukung OOP (Object Oriented Programming) sehingga maintanance kode menjadi jauh lebih mudah dibandingkan prosedural. (Wardana, 2010, hal. 7)
2.1.5 CSS (Cascading Style Sheet) CSS (Cascading Style Sheet) adalah bahasa penulisan HTML (Hypertext Markup Language) yang disederhanakan bagi pengguna blog Multiply. CSS digunakan untuk mengatur tampilan blog agar dapat menampilkan halaman yang sama dengan tampilan berbeda.
Pengaturannya meliputi penulisan
huruf, warna,teks, dan tabel. Penulisan dengan CSS dapat lebih ringkas karena tidak terjdi pengulangan penulisan teks. (Hermawan, 2012, hal. 45-46)
2.2 Teori Khusus 2.2.1 Android Android merupakan open source platform. Seluruh susunan, dari level terendah modul linux, keseluruhan native libraries, dan dari application framework hingga complete application semuanya gratis. (Gargenta, 2011, hal. 15) Android terdiri dari bagian-bagian yang diperlukan dan saling bergantungan, termasuk yang berikut: 1.
Compatibility Definition Document (CDD) dan Compatibility Test Suite (CTS) yang menggambarkan kemampuan yang diperlukan oleh perangkat untuk mendukung penyusunan software
22
2.
Sistem operasi linux kernel yang menyediakan antarmuka tingkat rendah dengan kontrol hardware, manajemen memori, dan proses, semua dioptimalkan untuk mobile dan perangkat yang ada
3.
Open –source libraries untuk pengembangan aplikasi, termasuk SQLife, WebKit, OpenGL, dan media manager
4.
Run time digunakan untuk mengeksekusi dan sejumlah besar aplikasi android, termasuk Dalvik virtual machine (DVM) dan core libraries yang menyediakan spesifik fungsi android. run time dirancang menjadi kecil dan efisien untuk digunakan pada perangkat mobile
5.
Application framework yang agnostically membuka sistem pelayanan ke lapisan aplikasi (application layer), termasuk window manager dan manajer lokasi, database, telepon, dan sensor
6.
User Interface framework digunakan untuk host dan menjalankan aplikasi
7.
Satu set inti pra-instal aplikasi
8.
Software Development Kit (SDK) yang digunakan untuk membuat aplikasi termasuk alat terkait, plug-in, dan dokumentasi (Meier, 2012, hal. 22-23)
2.2.2 DVM (The Dalvik Virtual Machine) Dalvik Virtual Machine merupakan runtime komponen inti dari android. DVM adalah proses berbasis virtual machine yang menggunakan arsitektur pendaftaran dan dioptimalkan untuk rendahnya kapasitas memori efisiensi kinerja yang lebih baik. (Helal, Bose, & Li, 2012, hal. 23)
dan
23
Dalvik Virtual Machine ditulis untuk memungkinkan eksekusi aplikasi pada perangkat dengan sumber daya yang sangat terbatas, biasanya telepon selular akan jatuh ke dalam kategori ini karena mereka dibatasi oleh kekuatan pemrosesan, jumlah memori yang tersedia, dan pendeknya ketahanan baterai (Gunasekera, 2012, hal. 4) 2.2.3 Android SDK (Software Development Kit) Android SDK adalah kumpulan dari platform, tools, sample code, dan dokumnetasi yang dibutuhkan untuk membangun aplikasi android. Android SDK merupakan add-on Java Development Kit dan memilki plug-in yang terintegrasi untuk plug-in Eclipse Integrated Development Environment (IDE). (Steele & To, 2011, hal. 9)
2.2.4 ADT (Android Development Tools) ADT (Android Development Tools) menyediakan pembangun grafis antarmuka pengguna yang mana anda bisa untuk menyusun definisi antarmuka pengguna anda dengan menarik (dragging) dan menurunkan (dropping) komponen. (Lehtimaki, 2013, hal. 223) ADT merupakan plug-in di dalam program eclipse untuk menambahkan fungsi yang spesifik dalam pembuatan aplikasi android, menjalankan emulator android, menyambungkan ke debugging service ke emulator, mengubah file XML pada android (.apk files) dan menampilkan spesifik fungsi android lainnya. (Mednicks, Dornin, Meike, & Nakmaura, 2012, hal. 9-10)
24
2.2.5 Eclipse Eclipse IDE adalah open source lingkungan pengembangan yang terdiri dari beberapa bagian.
Uniknya plug-in berbasis arsitektur
memudahkan
untuk membuat, mengintegrasikan, dan memanfaatkan perangkat lunak. (Barclay & Savage, 2007, hal. 339) Eclips Platform awalnya sebuah platform integrasi untuk alat dan jenis lain dari aplikasi klien. itu juga merupakan pengembangan Java development environment dan open source. (D'Anjou, Fairbrother, Kehn, Kellerman, & MacCarthy, 2005, hal. 4). Eclipse menyelesaikan ini dengan menyediakan sebuah arsitektur dan satu set Java Framework
yang membuat tools
penulisan lebih mudah di integrasi. Framework ini juga menyediakan cara yang konsisten agar
tools berkontribusi untuk user interface , dan
menggunakan fungsi baru, dan menawarkan bantuan online.
(D'Anjou,
Fairbrother, Kehn, Kellerman, & MacCarthy, 2005, hal. 5)
2.2.6 JSON (JavaScript Object Nation) JSON, merupakan singakatan dari JavaScript Object Notation adalah format pertukaran data komputer yang ringan. JSON berbasis teks, format yang mudah dibaca untuk menunjukan struktur data sederhana dan associative array. Format JSON awalnya ditetapkan dalam RFC 4627 oleh Douglas Crockford, tipe media resmi internet untuk JSON adalah aplikasi/JSON. nama file extension dari JSON adalah(.Json). Format JSON sering digunakan untuk serialisasi dan transmisi struktur data melalui koneksi jaringan. Aplikasi utamanya adalah dalam pemrograman aplikasi web Ajax, di mana ia berfungsi
25
sebagai alternatif untuk format XML. Meskipun JSON didasarkan pada subset dari bahasa pemrograman JavaScript dan umumnya menggunakan bahasa tersebut,yang mana itu dianggap sebagai independent-language format data.Code untuk parsing dan generating JSON data sudah tersedia untuk berbagai macam bahasa pemrograman. website json.org menyediakan daftar komprehensif binding JSON yang ada, yang diorganisir per bahasa (Miller, Vandome, & McBrewster, 2009, hal. 29-30)
Syntax
Sintaks JSON memungkinkan representstion dari tiga nilai jenis: 1.
Simple values : String, angka, boolean, dan null semua dapat diwakili di dalam JSON menggunakan sintaks yang sama seperti JavaScript.
2.
Object : Objek mewakili ordered key-value pairs. values masing-masing mungkin tipe primitif atau tipe kompleks.
3.
Array : Array merupakan suatu daftar ordered nilai yang dapat diakses via indek numerik. Nilai-nilai didapat dari tipe apa pun, termasuk simple values,
objek
dan
setiap
array
lainnya.
JSON membahas semua tentang representating data yang terstruktur, meskipun itu menggunakan sintaks JavaScript, kita tidak harus bingung dengan paradigma JavaScript. (Zakas, 2012, hal. 11)
26
2.2.7 Codepro Analytix CodePro Analytix adalah alat pengujian utama perangkat lunak Java untuk pengembang Eclipse yang peduli tentang meningkatkan kualitas perangkat lunak dan mengurangi biaya pembangunan dan jadwal. Codepro Analytix sangat diperlukan bagi developer dalam mengurangi kesalahan yang mungkin disebabkan karena adanya kode yang sedang dikembangkan dan menjaga coding sesuai dengan pedoman yang ada. Codepro Analytix mempunyai kemampuan unutk melakukan koreksi terhadap kode yang dibuat oleh developer. A. Metrics
Gambar 2.9 Compute Matrics
Setiap kali item menu "Compute Metrics" dipilih, metrik yang telah aktif pada set metrik akan dijalankan dan menghasilkan satu set metrik hasil, yang kemudian ditampilkan dalam tampilan Metrics. Set metrik lainnya, dapat dijalankan menggunakan perintah "Compute Metrics Using ..." . Pilihan
27
disediakan
melalui
halaman
preferensi
untuk
mengaktifkan
atau
menonaktifkan metrik individu dan menetapkan ambang pelanggaran dan berbagai titik pemicu. 1.
The Detail Chooser
Memilih sebuah hasil metrik Individu akan menyebabkan 'The detail chooser’ berpopulasi dengan list yang agak detil mengenai hasil metrik yang dipilih. Spesifikasi dari detil list yang tersedia bergantung pada metriknya. 2.
The Detail View
Sebuah detil akan membuat the detail view berpopulasi dan memperlihatkan detil yang lebih spesifik. The detail view hanya bisa dibaca dan spesifik untuk metrik yang dipilih.
Gambar 2.10 Average Number of Parameters Beberapa detil diperlihatkan di tabel sedangkan beberapa lainnya ditunjukan dalam grafik.
28
Gambar 2.11 Number of Fields
Gambar 2.12 Number of Constructor
B. Dependency Analysis Dependencies view menampilkan hasil dari analisis ketergantungan, misalnya, yang digunakan untuk memisahkan dua proyek atau paket. Sistem ini menyimpan daftar analisis ketergantungan yang tersedia. Dependencies
29
view dapat digunakan untuk memilih mana analisis yang digunakan untuk melihat dan mengelola daftar. Dependensi dapat dilihat pada tiga tingkat yang berbeda : ketergantunga antar proyek, package, dan tipe/jenis Jika analisis dilakukan pada satu atau lebih proyek, maka semua tingkat granularity akan tersedia. Jika analisis dilakukan pada satu atau lebih package fragment root dan package fragment, maka hanya package dan hasil dari tipe level yang tersedia. Ketika analisis yang dipilih, tingkat tertinggi granularity
yang akan
ditampilkan.
Dependency View
Gambar 2.13 Dependency View
Dependensi yang ditampilkan dalam format grafis. Unsur-unsur yang terlihat pada setiap tingkat granularity (proyek, package, atau tipe) yang
30
ditampilkan sebagai persegi panjang diberi label oleh kedua ikon yang menunjukkan jenis elemen yang dilihat dan nama elemen. Dependensi antara unsur-unsur yang ditampilkan sebagai directed lines (garis dengan panah di kedua ujung satu atau keduanya). Elemen-elemen dibagi menjadi tiga kelompok. Kelompok pertama adalah unsur internal, yaitu elemen yang secara langsung dipilih saat analisis dilakukan, atau unsur-unsur yang terkandung dalam elemen dipilih langsung. Secara default, elemen internal ditampilkan dalam warna hitam. Kelompok kedua adalah unsur eksternal, yaitu unsur-unsur yang tidak dipilih atau terkandung dalam unsur-unsur yang dipilih, tetapi yang direferensikan oleh mereka. Secara default, elemen eksternal ditampilkan dalam warna abu-abu. Kelompok ketiga adalah bagian dari unsur-unsur internal, mereka merupakan elemen dari komponen yang saling terhubung kuat. Komponen yang terhubung kuat merupakan seperangkat elemen yang mungkin untuk mencapai semua elemen dengan mengikuti dependensi/ketergantungan. Dengan kata lain, mereka merupakan set elemen yang saling tergantung satu sama lain. Secara default mereka akan ditampilkan dalam warna merah. Ketebalan setiap baris lanjut menunjukkan apakah ketergantungan adalah bidirectional atau tidak. Jumlah dependensi antara node dapat secara optional ditampilkan sebagai label pada garis yang terhubung. Jika garis adalah bi-directional,
31
jumlah dependensi di kedua arah akan ditampilkan, dipisahkan oleh sebuah garis miring ("/").
Gambar 2.14 Jumlah Dependency Antar Package
Ketika analisis ketergantungan sedang dilihat, tingkat granularity dapat diakses dengan mengklik ganda pada beberapa bagian dari grafik. Dobel klik pada sebuah elemen akan menampilkan grafik yang hanya berisi elemenelemen di dalam elemen yang diklik serta unsur-unsur yang saling bergantungan. Misalnya, mengklik ganda pada sebuah proyek akan menampilkan grafik yang terdiri dari paket yang didefinisikan dalam proyek itu dan semua package tersebut. Dobel klik pada elemen eksternal dianulir karena tidak ada informasi dependensi yang dicatat untuk elemen eksternal.
32
2.2.8 Yslow Yslow biasa digunakan oleh developer untuk membantu mereka menemukan cara agar halaman website mereka dapat loading lebih cepat. Nilai yslow sendiri telah memiliki standrad dalam pengukurannya. Yslow juga dapat digunakan sebagai framework untuk menjembatani langsung ke browser. Yslow memiliki
scoremeter
yang
dapat
digunakan
mengestimasi dampak dari perbaikan hasil. (Stefanov, 2012, hal. 11)
untuk