BAB II DASAR TEORI 2.1 Android Android merupakan sistem operasi telepon seluler yang tumbuh di tengah sistem operasi lainnya yang berkembang dewasi ini. Sistem Operasi lainnya seperti Windows Mobile, iOS-iPhone, Symbian, dan masih banyak lagi juga menawarkan kekayaan isi dan keoptimalan berjalan di atas perangkat hardware yang ada. Akan tetapi, sistem operasi yang ada ini berjalan dengan memprioritaskan aplikasi inti yang dibangun sendiri tanpa melihat potensi yang cukup besar dari aplikasi pihak ketiga. Oleh karena itu adanya keterbatasan dari aplikasi pohak ketiga untuk mendapatkan data asli ponsel, berkomunikasi antar proses serta keterbatasan distribusi aplikasi pihak ketiga untuk platform mereka. Android
menawarkan
sebuah
lingkungan
yang
berbeda
untuk
pengembang. Setiap aplikasi memiliki tingkatan yang sama. Android tidak membedakan antara aplikasi inti dengan aplikasi pihak ketiga. API yang disediakan menawarkan akses ke hardware, maupun data-data ponsel sekaligus, atau data sistem sendiri. Bahkan, pengguna dapat menghapus aplikasi inti dan menggantinya dengan aplikasi pihak ketiga.
2.2
Fitur dan Arsitektur Android Secara umum, arsitektur perangkat lunak android dapat digunakan berupa
susunan struktural dan individu komponen sistemnya. Komponen peyusun terdiri dari beberapa lapisan (layer) penyusun, dan secara keseluruhan dari semua lapisan disebut software stack.
Linux Kernel Android bergantung pada kernel linux untuk layanan sistemnya seperti driver hardware, manajemen memori, manajemen proses, keamanan, network stack. Dan power manajemen. Kernel juga bertindak sebagai lapisan hardware dan seluruh software. lapisan ini merupakan layer inti (core) dari sistem android. 5
6
Libraries Bertempat di level yang sama dengan android runtime. Android menyertakan satu set libraries dalam bahasa C/C++ yang digunakan oleh berbagai komponen pada sistem android. Kemampuan ini dapat diakses oleh programmer melewati android application framework. Sebagai contoh android mendukung pemutaran format audio, video dan gambar.
Android Runtime Merupakan lokasi dimana komponen utama Dalvik VM ditempatkan. Dalvik VM dirancang untuk android pada saat dijalankan pada lingkungan terbatas dimana baterai yang terbatas, memori dan penyimpanan data menjadi fokus utama. Core libraries ditulis dalam bahasa java dan berisi kumpulan class, I/O dan peralatan lain. Core libraries berfungsi untuk menterjemahkan bahasa java yang nantinya akan dijalankan Dalvik VM.
Application Framework Application framework menyediakan class yang akan digunakan untuk membuat aplikasi android. Layer ini juga mendukung dalam pengabstrakan pengguna perangkat keras, manajemen dari user interface dan sumber daya aplikasi tersebut. Application framework merupakan layer dimana para pembuat aplikasi melakukan pengembangan atau pembuatan aplikasi yang akan dijalankan di sistem operasi android.
Application Layer Semua aplikasi yang dibuat dalam layer aplikasi menggunakan library API yang sama. Layer aplikasi berjalan dengan Android Run Time menggunakan kelas-kelas dan services yang tersedia dari application framework (Meier,2009).
2.3
Komponen dasar Android Beberapa kompone dasar yang paling penting di dalam aplikasi android
adalah activities, intents, services dan content provider (brunette, 2010:39-40). Berikut merupakan penjelasan dari masing-masing komponen :
7
2.3.1
Activities Aplikasi android dibuat dari satu atau lebih activity. Activity ini diibaratkan
seperti wadah untuk UI (User Interface) untuk menampilkan tampilan menu dan kode untuk menjalankannya. Jadi, mirip seperti form dalam pemrogaman windows. 2.3.2
Intens Sebuah aplikasi android dapat berisi satu atau lebih activity. Jika aplikasi
yang
dibuat
mempunyai
lebih
dari
satu
activity,
perlu
untuk
menavigasikan/memindahkan dari satu activity ke activity yang lainnya, perpindahan ini yang disebut dengan intent (Lee,2011:43). Android menggunakan kelas special yang disebut intent untuk berpindah dari activity satu ke activity yang lain. Dua bagian yang paling penting dari struktur data intent adalah sebuah aksi dan sebuah data untuk bertindak berdasarkan aksi tersebut. Data tersebut diungkapkan sebagai Uniform Resource Identifier (URI). URI merupakan sebuah karakter string yang digunakan untuk mengidentifikasi nama atau resource pada sebuah intent. 2.3.3
Services Services merupakan tugas (task) yang berjalan di background tanpa
interaksi dengan user secara langsung. Sebagai contoh yaitu aplikasi pemutar music yang tetap berjalan ketika kita menggunakan aplikasi yang berbeda. 2.3.4
Content Provider Penyedian konten mengatur akses ke set data terstruktur. Mereka
merangkum data, dan menyediakan mekanisme untuk mendefinisikan keamanan data. Penyedia konten adalah antarmuka standar yang menghubungkan data dalam satu proses dengan kode yang berjalan dalam proses lain. Android sendiri termasuk penyedia konten yang mengelola data seperti suara, video, gambar, dan informasi kontak pribadi. Anda dapat melihat beberapa dari mereka yang
8
tercantum dalam dokumentasi referensi untuk paket android provider. Dengan beberapa pembatasan, penyedia layanan ini dapat diakses untuk aplikasi Android. 2.4
Data Storage Android sendiri menyediakan beberapa opsi untuk menyimpan data secara
persisten. Opsi yang bisa dipilih adalah sebagai berikut :
Shared
preference
:
Menyimpan
data
private
dalam
bentuk
key
berkepanjangan
Internal storage : menyimpan data private di perangkat memori.
External storage : menyimpan data private di kartu memori.
SQLite database : menyimpan data terstruktur di database private.
Network Connection : menyimpan data di web menggunakan server jaringan.
Content Provider : ini merupakan komponen opsional yang memperlihatkan opsi akses read/write ke data aplikasi.
2.5
Metode Pengembangan Perangkat Lunak Pada awal pengembangan perangkat lunak, para pembuat program
(programmer)
langsung
melakukan
pengkodean
perangkat
lunak
tanpa
menggunakan prosedur atau tahapan pengembangan perangkat lunak. Dan ditemuilah kendala-kendala seiring dengan perkembangan skala sistem-sistem perangkat yang semakin besar. SDLC dimulai dari tahun 1960-an, untuk mengembangkan sistem skala usaha besar secara fungsional untuk para kongklomerat pada zaman itu. Sistemsistem yang dibangun mengelola informasi kegiatan dan rutinitas dari perusahaanperusahaan yang berpotensi memiliki data yang besar dalam perkembangannya. SDLC atau Software Development Life Cycle atau sering disebut juga System Development Life Cycle adalah proses mengembangkan atau mengubah suatu sistem perangkat lunak dengan menggunakan model-model dan metodologi yang digunakan orang untuk mengembangkan sistem-sistem perangkat
lunak
sebelumnya (berdasarkan base pactice atau cara-cara yang sudah teruji baik). Tahapan-tahapan yang ada pada SDLC secara global adalah sebagai berikut :
9
Inisiasi (Initiation) Tahap ini biasanya ditandai dengan pembuatan proposal proyek perangkat lunak. Pengembangan konsep sistem (system concept development) Mendefinisikan lingkup konsep termasuk dokumen lingkup sistem, analisis manfaat biaya, manajemen rencana, dan pembelajaran kemudahan sistem. Perencanaan (planning) Mengembangkan rencana manajemen proyek dan dokumen perencanaan lainnya. Menyediakan dasar untuk mendapatkan sumber daya (resources) yang dibutuhkan untuk memperoleh solusi. Analisis kebutuhan (requirements analysis) Menganalisis kebutuhan pemakai sistem perangkat lunak (user) dan mengembangkan kebutuhan user. Membuat dokumen kebutuhan fungsional. Desain (design) Mentransformasikan kebutuhan detail menjadi kebutuhan yang sudah lengkap, dokumen desain sistem fokus pada bagaimana dapat memenuhi fungsi-fungsi yang dibutuhkan. Pengembangan (development) Mengonversi desain ke sistem informasi yang lengkap termasuk bagaimana memperoleh dan melakukan instalasi lingkungan sistem yang dibutuhkan, membuat basis data dan mempersiapkan prosedur kasus pengujian, mempersiapkan berkas atau file pengujian, pengodean, pengompilasian, memperbaiki dan membersihkan program, peninjauan pengujian. Integrasi dan pengujian (integration and test) Mendemonstrasikan sistem perangkat lunak bahwa telah memenuhi kebutuhan yang dispesifikasikan pada dokumen kebutuhan fungsional. Dengan diarahkan
10
oleh staf penjamin kualitas (quality assurance) dan user. Menghasilkan laporan analisis pengujian. Implementasi (implementation) Termasuk pada persiapan implementasi, implementasi perangkat lunak pada lingkungan produksi (lingkungan pada user) dan menjalankan resolusi dari permasalahan yang teridentifikasi dari fase integrasi dan pengujian. Operasi dan pemeliharaan (operation and maintenance) Mendeskripsikan pekerjaan untuk mengoperasikan dan memelihara sistem informasi pada lingkungan produksi (lingkungan pada user), termasuk implementasi akhir dan masuk pada proses peninjauan. Disposisi (disposition) Mendeskripsikan aktifitas akhir dari pengembangan sistem dan membangun data yang sebenarnya sesuai dengan aktifitas user. 2.5.1
Model SDLC Waterfall Model SDLC air terjun (waterfall) sering juga disebut model sekuensial
linier (sequential linear) atau alur hidup klasik (classic life cycle). Model air terjun menyediakan pendekatan alur hidup perangkat lunak secara sekuensial atau terurut dimulai dari analisis, desain, pengodean, pengujian, dan tahap pendukung (support). Berikut adalah gambar model air terjun.
Sistem / Rekayasa Informasi
Analisis
Desain
Pengodean
Gambar 2.1 Ilustrasi Model Waterfall (Sumber: Rosa A.S.-M.Shalahuddin, 2011.)
Pengujian
11
a. Analisis kebutuhan perangkat lunak Proses pengumpulan kebutuhan dilakukan secara intensif untuk menspesifikasikan kebutuhan perangkat lunak agar dapat dipahami perangkat lunak seperti apa yang dibutuhkan oleh user. Spesifikasi kebutuhan perangkat lunak pada tahap ini perlu untuk didokumentasikan. b. Desain Desain perangkat lunak adalah proses multi langkah yang focus pada desain pembuatan program perangkat lunak termasuk struktur data, arsitektur perangkat lunak, representasi antarmuka, dan prosedur pengkodean. Tahap ini mentranslasi kebutuhan perangkat lunak dari tahap analisis kebutuhan ke representasi desain agar dapat diimplementasikan menjadi program pada tahap selanjutnya. Desain perangkat lunak yang dihasilkan pada tahap ini juga perlu didokumentasikan. c. Pembuatan kode program Desain harus ditranslasikan kedalam program perangkat lunak. Hasil dari tahap ini adalah program komputer sesuai dengan desain yang telah dibuat pada tahap desain. d. Pengujian Pengujian fokus pada perangkat lunak secara dari segi lojik dan fungsional dan memastikan bahwa semua bagian sudah diuji. Hal ini dilakukan untuk meminimalisir kesalahan (error) dan memastikan keluaran yang dihasilkan sesuai dengan yang diinginkan. e. Pendukung (support) atau pemeliharaan (maintenance) Tidak menutup kemungkinan sebuah perangkat lunak mengalamai perubahan ketika sudah dikirimkan ke user. Perubahan bisa terjadi karena adanya kesalahan yang muncul dan tidak terdeteksi saat pengujian atau perangkat lunak harus beradaptasi dengan lingkungan baru. Tahap pendukung atau pemelihraan dapat mengulangi proses pengembangan mulai dari analisis
12
spesifikasi untuk perubahan perangkat lunak yang sudah ada, tapi tidak untuk membuat perangkat lunak baru. Dari kenyataan yang terjadi sangat jarang model air terjun dapat dilakukan sesuai alurnya karena sebab sebagai berikut : Perubahan spesifikasi perangkat lunak terjadi di tengah alur pengembangan. Sangat sulit bagi Pelanggan untuk mendefinisikan semua spesifikasi diawal alur pengembangan. Pelanggan sering kali butuh contoh (Prototype) untuk menjabarkan spesifikasi kebutuhan sistem lebih lanjut. Pelanggan tidak mungkin bersabar mengakomodasi perubahan yang diperlukan di akhir alur pengembangan. Dengan berbagai kelemahan yang dimiliki model air terjun tapi model ini telah menjadi dasar dari model-model yang lain dalam melakukan perbaikan model pengembangan perangkat lunak. Model air terjun sangat cocok digunakan kebutuhan Pelanggan sudah sangat dipahami dan kemungkinan terjadinya perubahan kebutuhan selama pengembangan perangkat lunak kecil. Hal positif dari model air terjun adalah struktur tahap pengembangan sistem jelas, dokumentasi dihasilkan di setiap tahap pengembangan, dan sebuah tahap dijalankan setelah tahap sebelumnya selesai dijalankan (tidak ada tumpang tindih pelaksanaan ). 2.6
Eclipse IDE Semua aplikasi android dibuat dengan bahasa pemrogaman java dan
android sendiri menyediakan “lingkungan hidup” atau run time environtment tersebut yang biasa disebut Dalvik Virtual Machine. Run Time Environtment tersebut merupakan java Run time environtment yang dioptimalisasi untuk perangkat dengan sistem memori yang kecil. Tetapi untuk membangun aplikasi android tersebut tetap dibutuhkan JDK (Java Developmnet Kit). (priyanta:2011). Eclipse merupakan sebuah Integrated Development Environment (IDE) yang dapat digunkan untuk mengembangkan perangkat lunak dan dapat
13
dijalankan di semua platform (platform- independent). Eclipse merupakan IDE gratis dan merupakan open source yang berarti setiap orang dapat melihat kode pemrogaman perankat lunak ini dan mengembangankan oleh pengguna dengan komponen yang dinamakan plug-in (priyanta:2011) 2.7
Android Sofware Development Kit Android SDK menyediakan perpustakaan API dan alat pengembang yang
diperlukan untuk membangun, menguji, dan debug untuk aplikasi Android. Tools pada android SDK dibagi menjadi 2 jenis: 1. SDK tools yang tidak bergantung pada platform dan dibutuhkan pada semua platform android. 2. Platform tools yang telah disesuaikan untuk mendukung fitur terbaru dari platform android tertentu. Beberapa jenis tools yang disediakan oleh Android (Meier,2009):
2.8
Android emulator
Dalvik Debug Monitoring Service(DDMS)
Android Asset Packaging Tool(AAPT)
Android Debug Bridge(ADB)
SQLite
Traceview
MkSDCard
DX
PHP PHP singkatan dari Hypertext Preprocessor yaitu bahasa pemrogaman
web server-side yang bersifat open source. PHP merupakan script yang terintegrasi dengan HTML dan berada pada server (server side HTML embedded scripting). PHP adalah script yang digunakan unutk membuat halaman website yang dinamis. Dinamis berarti halaman yang akan ditampilkan dibuat saat halaman itu diminta oleh client. Mekanisme ini menyebabkan informasi yang diterima client selalu yang terbaru/up to date. Semua script PHP dieksekusi pada
14
server di mana script tersebut dijalankan.
2.9
MySQL MySQL (My Structure Query Language) adalah salah satu Database
Management System (DBMS) dari sekian banyak DBMS seperti Oracle, MS SQL, Postagre SQL, dan lainnya. MySQL berfungsi untuk mengolah database menggunakan bahasa SQL. MYSQL bersifat open source sehingga kita menggunakannya secara gratis. Pemrogaman PHP juga sangat mendukung / support dengan database MYSQL.
2.10
Sistem Client Server Arsitektur ini memiliki dua komponen (tier), klien dan server. Oleh karena
itu, arsitektur ini sering disebut sebagai arsitektur two-tier. Pada arsitektur client/server, aplikasi dianggap sebagai klien(berada pada mesin klien), sedangkan database dianggap sebagai server (berada pada mesin server). Ini bearti bahwa data yang diakses oleh aplikasi berada dalam database yang berjalan pada DBMS di mesin server(remote database).
Aplikasi Database
Media Client
Media Server
Gambar 2.2 Ilustrasi Client Server (Sumber: Budi Raharjo, 2011.)
15
2.11
UML (Unifield Modeling Language) Menurut Rosa A.S.-M.Shalahuddin (2011:121), model ini merupakan
standar bahasa yang banyak digunakan di dunia industry unutk mendefinisikan requirement, membuat analisa dan desain, serta menggambarkan arsitektur dalam pemrogaman berorientasi objek. 2.11.1 Use Case Diagram Menurut Alan Dennis (2009:173) didalam bukunya mengenai sistem analisis dan design menjelaskan bahwa, Use Case adalah suatu penggambaran sederhana dari fungsi sebuah sistem dilihat secara luas dari sudut pandang pengguna. Sedangkan use case diagram adalah diagram fungsional yang didalamnya digambarkan fungsi dasar dari sistem yaitu tentang apa yang dapat dilakukan pengguna dan bagaimaa sistem harus merespon terhadap aksi yang digunakan”. Use case mendeskripsikan sebuah interaksi antara satu atau lebih actor dengan sistem informasi yang akan dibuat. Diagram ini digunakan untuk mengetahui fungsi apa saja yang ada di dalam sebuah sistem informasi dan siapa saja yang berhak menggunakan fungsi-fungsi itu. Syarat penamaan pada use case adalah nama didefinisikan semudah mungkin dan dapat dipahami. Ada dua hal utama pada use case yaitu pendefinisian apa yang diesbut actor dan use case.
Aktor merupakan orang, proses, atau sistem lain yang berinteraksi dengan sistem informasi yang akan dibuat di luar sistem informasi yang akan dibuat sendiri, jadi walaupun symbol actor adalah gambar orang.tapi actor belum tentumerupakan orang
Use case merupakan fungsionalitas yang disediakan sistem sebagai unitunit yang saling bertukar pesan antar unit atau actor
Berikut adalah sisimbol-simbol yang ada oada diagram use case :
16
Simbol Use Case
Deskripsi Fungsionalitas yang disediakan sistem sebagai unit-unit yang saling bertukar pesan antar unit
Nama use case
atau
aktor.
Biasanya
dinyatakan
dengan
menggunakan kata kerja di awal frase nama use case Aktor / Actor
Orang, proses atau sistem lain yang berinteraksi dengan sistem informasi yang akan dibuat di luar sistem informasi yang akan dibuat itu sendiri. Jadi walaupun simbol dari aktor adalah gambar orang, tapi aktor belum tentu merupakan orang, biasanya
Nama aktor
menggunakan kata benda di awal frase nama aktor. Asosiasi / Association
Komunikasi antara actor dengan use case yang berpartisipasi pada use case atau use case memiliki interaksi dengan aktor
Ekstensi / extend
Relasi use case tambahan ke sebuah uses case dimana use case yang ditambahkan dapat berdiri
«extends»
sendiri walau tanpa use case tambahan itu, mirip dengan prinsip inheritance pada pemrogaman berorientasi objek, biasanya use case tambhan memiliki nama depan yang sama dengan use case yang ditambahkan
Generalisasi Generalization
/ Hubungan generalisasi dan spesialisai (umumkhusus) antara dua buah use case dimana fungsi yang satu adalah fungsi yang lebih umum dari lainnya.
17
Include / uses
Ada dua sudut pandang yang cukuo besar mengenai include di use case :
«uses»
Include berarti uses case yang ditambahkan akan selalu dipanggil saat use case tambahan dijalakan.
Include bearti uses case yang tambahab akan selalu melakukan pengecekan apakah use case yang ditambhkan telah dijalankan sebelum use case tambahan dijalankan.
Gambar 2.3 Simbol-simbol Use Case (Sumber: Rosa A.S.-M.Shalahuddin, 2011:138) 2.11.2 Activity Diagram Diagram aktifitas atau activity diagram menggambarkan workflow (aliran kerja) atau aktifitas dari sebuah sustem atau proses bisnis. Yang perlu diperhatikan disini adalah bahwadiagram aktivitas menggambarkan aktivitas sistem, bukan apa yang dilakukan actor. Berikut adalah simbol-simbol yang ada pada diagram aktivitas : Simbol
Deskripsi
Status awal
Status awal diagram aktivitas sistem
Aktivitas
Aktivitas yang dilakukan sistem, biasanya diawali dengan kata kerja.
18
Percabangan / decision
Asosiasi percabangan dimana jika ada pilihan aktivitas lebih dari satu
Penggabungan / join
Asosiasi penggabungan dimana lebih dari satu aktivitas digabungkan menjadi satu.
Status akhir
Status akhir yang dilakukan sistem
Swimlane
Memisahkan organisasi bisnis yang bertanggung jawab terhadap aktivitas yang terjadi.
Nama swinlane
Gambar 2.4 Simbol-simbol Activity Diagram (Sumber: Rosa A.S.-M.Shalahuddin, 2011:134) 2.11.3 Class Diagram Menurut Alan Dennis (2009:213) bahwa, Class Diagram adalah sebuah model statis yang menggambarkan kelas-kelas (classes) dan hubungan antar kelas yang tetap konstan dalam sistem dari waktu ke waktu.
19
Diagram ini menggambarkan struktur sistem dari segi pendefinisian kelas-kelas yang akan dibuat untuk membangun sistem. Kelas memiliki apa yang disebut atribut dan metode atau operasi.
Atribut merupakan variabel-variabel yang dimiliki suatu kelas
Operasi atau metode adalah fungsi-fungsi yang dimiliki oleh suatu kelas Kelas-kelas yang ada pada struktur sistem harus dapat melakukan fungsi-
fungsi sesuai dengan kebutuhan sistem. Susunan struktur kelasyang baik pada diagram kelas sebaiknya memiliki jenis-jenis kelas berikut :
Kelas main Kelas yang memiliki fungsi awal dieksekusi ketika sistem dijalankan.
Kelas yang menangani tampilan sistem Kelas yang mendefinisikan dan mengeatur tampilan ke pemakai.
Kelas yang diambil dari pendefinisian use case Kelas yang menangani fungsi-fungsi yang harus ada, diambil dari pendefinisian use case.
Kelas yang diambil dari pendefinisian data Kelas yang digunkan untuk memegang atau membungkus data menjadi sebuah kesatuan yang diambil maupun akan disimpan ke basis data.
Berikut adalah simbol-simbol yang ada pada diagram kelas : Simbol Kelas
deskripsi Kelas pada struktur sistem
nama_kelas -attribute +operation()
Antarmuka / interface
Sama dengan konsep interface dalam pemrogaman berorientasi objek
Nama_interface
20
Asosiasi / association
Relasi antar kelas dengan makna umum, asosiasi biasanya juga disertai multiplicity.
Asosiasi berarah / direction Relasi antar kelas dengan makna kelas yang satu association
digunakan oleh kelas yang lain, asosiasi biasanya juga disertai dengan multicplicity.
Generalisasi
Relasi antar kelas dengan makna generalisasispesialisasi (umum-khusus)
Kebergantungan
/ Relasi antar kelas dengan makna kebergantungan
dependency
antar kelas.
Agregasi / aggregation
Realsi antar kelas dengan makna semua bagian (whole-part).
Gambar 2.5 Simbol-simbol Class Diagram (Sumber: Rosa A.S.-M.Shalahuddin, 2011:123) 2.11.4 Sequence Diagram Diagram ini menggambarkan kelakuan objek pada use case dengan mendeskripsikan waktu hidup objek dan message yang dikirimkan dan diterima antar objek. Oleh karena itu, untuk menggambarkan diagram sequence maka harus diketahui objek-objek yang terlibat dalam sebuah use case beserta metodemetode yang dimiliki kelas yang diinstalasi menjadi objek itu. Berikut adalah simbol-simbol yang ada pada diagram sequence :
21
Simbol Actor
Deskripsi Orang, proses atau sistem lain yang berinteraksi dengan sistem informasi yang akan dibuat di luar sistem informasi yang akan dibuat itu sendiri. Jadi walaupun simbol dari aktor adalah gambar orang,
Top Package::nama aktor
tapi aktor belum tentu merupakan orang, biasanya menggunakan kata benda.
Garis hidup / lifeline
Menyatakan kehidupan suatu objek
Objek
Menyatakan objek yang berinteraksi pesan
nama objek : nama kelas
Waktu aktif
Menyatakan objek dalam keadaan aktif dan berinteraksi pesan
Pesan tipe create <
>
Pesan tipe call
Menyatakan suatu objek membuat objek yang lain, arah panah mengarah pada objek yang dibuat
Menyatakan suatu objek memanggil operasi / metode yang ada pada objek lain atau dirinya
22
1 : nama_metode()
sendiri, arah panah mengarah pada objek yang memiliki operasi/metode, karena ini memanggil operasi/metode
maka
operasi/metode
yang
dipanggil harus ada pada diagram kelas sesuai dengan objek yang berinterksi Pesan tipe send
Menyatakan
1 : masukan
bahwa
suatu
objek
mengirim
data/masukan/ informasi ke objek lainnya, arah panah mengarah pada objek yang menerima kembalian.
Pesan tipe return
Menyatakan bahwa suatu objek yang telah
1 : keluaran
menjalankan
suatu
operasi
atau
metode
menghasilkan suatu kembalian ke objek tertentu, arah panah mengarah pada objek yang menerima kembalian. Pesan tipe destroy
Menyatakan suatu objek mengakhiri hidup objek yang lain, arah panah mengarah pada objek yang diakhiri, sebaiknya jika ada create maka ada
<<destroy>>
destroy.
X
Gambar 2.6 Simbol-simbol Class Diagram (Sumber: Rosa A.S.-M.Shalahuddin, 2011:138) Penomoran pesan berdasarkan urutan interaksi pesan. Penggambaran letak pesan harus berurutan, pesan yang lebih atas dari lainnya adalah pesan yang berjalan lebih dahulu.
23
2.12
Pengujian Perangkat Lunak Sebuah perangkat lunak perlu dijaga kualitasnya, dimana kualitas
bergantung pada kepuasan pelanggan (customer). Kualitas perangkat lunak perlu dijaga untuk keperluan sebagai berikut : a. Agar dapat beratahan hidup di dunia bisnis perangkat lunak b. Dapat bersaing dengan perangkat lunak yang lain. c. Penting untuk pemasaran global (global marketing). d. Mengefektifkan biaya agar tidak banyak membuang perangkat lunak Karena kegagalan pemasaran dan produksi. e. Mempertahankan pelanggan dan meningkatkan keuntungan 2.12.1 Metode Pengujian Black Box Menurut Rosa A.S.-M.Shalahuddin (2011:213) pengujian yang dilakukan untuk menguji perangkat lunak dari segi spesifikasi fungsional tanpa meguji desain dan kode program. Pengujian dimaksudkan untuk mengetahui apakah fungsi-fungsi, masukan dan keluaran dari perangkat lunak sesuai dengan spesifikasi yang dibutuhkan. 2.12.2 Metode pengujian White Box Testing Menurut Rosa A.S.-M.Shalahuddin (2011:214), pengujian perangkat lunak dari segi desain dan kode program apakah mampu menghasilkan fungsi-fungsi , masukan dan keluaran yang sesuai dengan spesifikasi kebutuhan. Metode ini dilakukan dengan spesifikasi kebutuhan. Pengujian kotak putih dilakukan dengan memeriksa logic dari kode program.