bab 2 tinjauan pustaka 2.1 interaksi manusia komputer (imk ... · pdf file2.1.1 pengertian imk...

35
BAB 2 TINJAUAN PUSTAKA 2.1 Interaksi Manusia Komputer (IMK) 2.1.1 Pengertian IMK Interaksi manusia dan komputer merupakan ilmu tentang desain interaktif antara manusia dengan komputer (Schneiderman dan Plaisant, 2010:32). Interaksi manusia dan komputer adalah sebuah ilmu yang mempelajari hubungan antara manusia dengan komputer yang meliputi perancangan, evaluasi, implementasi antarmuka pengguna komputer agar mudah digunakan oleh pengguna. Ilmu ini berusaha mencari cara yang paling efisien untuk merancang pesan elektronik dan juga menjembatani perbedaan antara manusia dan komputer (Fajar, Dennis, Yogi, 2014:10). (Alan, Janet, Gregory, Russel, 2004:125) Secara tradisional, tujuan dari sistem interaksi adalah untuk membantu pengguna dalam mencapai tujuan dari beberapa domain aplikasi. Sebuah domain didefinisikan sebagai bidang keahlian dan pengetahuan dalam beberapa aktivitas dunia nyata. Beberapa contoh domain adalah desain grafis, authoring dan pengendalian proses di pabrik. Sebuah domain terdiri dari konsep-konsep yang menyoroti aspek yang penting. Dalam grafik desain domain, beberapa konsep penting adalah bentuk geometris, gambar permukaan dan peralatan menggambar. Sistem dan pengguna masing-masing dijelaskan dengan cara dari bahasa yang dapat mengekspresikan konsep yang relevan dalam domain aplikasi. Sistem bahasa disebut sebagai bahasa inti dan bahasa Pengguna disebut sebagai bahasa tugas. Bahasa inti menggambarkan komputasi atribut dari domain yang relevan dengan pusat System, sedangkan bahasa tugas menjelaskan atribut psikologis dari domain yang relevan dengan Userstate. Sistem ini dianggap beberapa aplikasi

Upload: trinhtuyen

Post on 03-Feb-2018

238 views

Category:

Documents


7 download

TRANSCRIPT

BAB 2

TINJAUAN PUSTAKA

2.1 Interaksi Manusia Komputer (IMK)

2.1.1 Pengertian IMK

Interaksi manusia dan komputer merupakan ilmu tentang

desain interaktif antara manusia dengan komputer (Schneiderman dan

Plaisant, 2010:32). Interaksi manusia dan komputer adalah sebuah

ilmu yang mempelajari hubungan antara manusia dengan komputer

yang meliputi perancangan, evaluasi, implementasi antarmuka

pengguna komputer agar mudah digunakan oleh pengguna. Ilmu ini

berusaha mencari cara yang paling efisien untuk merancang pesan

elektronik dan juga menjembatani perbedaan antara manusia dan

komputer (Fajar, Dennis, Yogi, 2014:10).

(Alan, Janet, Gregory, Russel, 2004:125) Secara tradisional,

tujuan dari sistem interaksi adalah untuk membantu pengguna dalam

mencapai tujuan dari beberapa domain aplikasi. Sebuah domain

didefinisikan sebagai bidang keahlian dan pengetahuan dalam

beberapa aktivitas dunia nyata. Beberapa contoh domain adalah

desain grafis, authoring dan pengendalian proses di pabrik. Sebuah

domain terdiri dari konsep-konsep yang menyoroti aspek yang

penting. Dalam grafik desain domain, beberapa konsep penting adalah

bentuk geometris, gambar permukaan dan peralatan menggambar.

Sistem dan pengguna masing-masing dijelaskan dengan cara dari

bahasa yang dapat mengekspresikan konsep yang relevan dalam

domain aplikasi.

Sistem bahasa disebut sebagai bahasa inti dan bahasa

Pengguna disebut sebagai bahasa tugas. Bahasa inti menggambarkan

komputasi atribut dari domain yang relevan dengan pusat System,

sedangkan bahasa tugas menjelaskan atribut psikologis dari domain

yang relevan dengan Userstate. Sistem ini dianggap beberapa aplikasi

10

komputerisasi, dalam konteks ini book, tetapi model-model berlaku

untuk aplikasi non-komputer. Ini juga merupakan asumsi umum

bahwa dengan membedakan antara pengguna dan sistem kami

dibatasi untuk aplikasi single-user. Hal ini tidak terjadi. Namun,

penekanannya adalah pada tampilan dari interaksi dari perspektif

pengguna tunggal. Dari sudut pandang ini, lain pengguna, seperti

yang ada di sistem konferensi multi-partai, merupakan bagian dari

sistem (Alan, Janet, Gregory, Russel, 2004:125).

2.1.2 Proses Desain

(Alan, Janet, Gregory, Russel, 2004:196) Ada 4 fase utama

pada proses desain suatu sistem:

Gambar 2. 1 Interaction Design Process

Sumber : Alan, Janet, Gregory, Russel (2004)

● Requirements

Fase pertama sebelum kita membuat suatu sistem, kita harus

mengetahui apa saja yang kita butuhkan dalam suatu sistem tersebut.

Ada beberapa teknik cara mencari tahu apa saja yang dibutuhkan

yaitu : interview orang dengan cara merekamnya, membaca dokumen

yang berhubungan dengan sistem, observasi objek yang telah

ditentukan. Membuat kuesioner yang sesuai dengan keperluan sistem

dapat membantu menemukan suatu masalah.

11

● Analysis

Setelah melakukan observasi dan interview, dibutuhkan cara

untuk mencari permasalahan yang ada dengan cara menganalisis

permasalahan yang ada setelah itu desain dapat dibuat. Menganalisi

isu-isu yang ada membantu desain sebuah sistem lebih baik, sehingga

kegagalan yang sudah pernah terjadi dapat terhindar. Menganalisis

kuesioner juga dapat membantu menemukan masalah.

● Design

Desain sebuah sistem dapat dilakukan setelah melakukan

analisis yang diperlukan. Ini adalah sebuah fase yang paling penting

karena suatu sistem perlu didesain.

● Iteration and Prototyping

Manusia sangat kompleks dan tidak bisa berekspektasi untuk

mendapatkan desain yang langsung benar. Biasanya akan dilakukan

lebih dari sekali dalam mendesain suatu sistem. Maka dari itu, butuh

adanya prototype untuk mengevaluasi hasil desain pertama untuk

melakukan desain yang lebih baik.

● Implementation and deployment

Fase terakir yaitu implementasi dan menyebarkan sistem atau

aplikasi yang telah dibuat. Biasanya adalah menulis sebuah koding,

biasanya membuat suatu perangkat keras, menulis dokumen dan cara

menggunakannya.

(Alan, Janet, Gregory, Russel, 2004:283) Dalam melakukan desain

pada suatu sistem, ada 8 aturan emas yang harus diperhatikan yaitu:

1. Berusaha untuk konsistensi dalam urutan tindakan, tata

letak, terminologi, penggunaan perintah dan seterusnya.

2. Aktifkan sering pengguna untuk menggunakan jalan

pintas, seperti singkatan, urutan tombol khusus dan macro, untuk

melakukan teratur, tindakan akrab lebih cepat.

3. Penawaran umpan balik informatif untuk setiap tindakan

pengguna, pada tingkat yang sesuai dengan besarnya aksi.

12

4. Desain dialog untuk menghasilkan penutupan sehingga

pengguna tahu kapan mereka telah menyelesaikan tugas.

5. Penawaran pencegahan kesalahan dan penanganan

kesalahan sederhana sehingga, idealnya, pengguna akan dicegah

dari membuat kesalahan dan, jika mereka melakukannya,

mereka ditawarkan jelas dan informatif.

6. feedback yang mudah untuk mengurangi kecemasan dan

mendorong eksplorasi, karena pengguna tahu bahwa dia selalu

dapat kembali ke keadaan sebelumnya.

7. Dukungan internal locus of control bahwa pengguna

mengendalikan sistem, yang merespon tindakannya.

8. Kurangi beban memori jangka pendek dengan menjaga

menampilkan sederhana, konsolidasi menampilkan beberapa

halaman dan menyediakan waktu untuk belajar urutan tindakan.

2.2 Rekaya Perangkat Lunak (RPL)

2.2.1 Pengertian RPL

(Sommerville, 2011:7) Perangkat lunak (software) adalah sebuah

program pada suatu komputer dan memiliki dokumentasi. Produk

perangkat lunak biasanya dibuat karena permintaan pelanggan atau

biasanya dibuat untuk permintaan pasar luas. Rekayasa perangkat

lunak (software engineering) adalah satu bidang profesi yang

mendalami cara-cara pengembangan perangkat lunak termasuk

pembuatan, pemeliharaan, manajemen organisasi pengembanganan

perangkat lunak dan manajemen kualitas. Pengubahan perangkat

lunak itu sendiri guna mengembangkan, memelihara, dan membangun

kembali dengan menggunakan prinsip rekayasa untuk menghasilkan

perangkat lunak yang dapat bekerja lebih efisien dan efektif untuk

pengguna. (Sommerville, 2011:8) Dari definisi ini, ditemukan 2 kata

kunci yang penting yaitu :

1. Engineering dicipline, Insinyur membuat suatu program yang

berjalan sesuai permintaan. Mereka menerapkan teori, metode,

13

dan alat-alat dengan pemakaian yang tepat. Namun, mereka

menggunakannya secara selektif dan selalu mencoba untuk

menemukan solusi untuk masalah bahkan ketika tidak ada teori

yang berlaku dan metode. Insinyur juga mengakui bahwa mereka

harus bekerja untuk kendala organisasi dan keuangan sehingga

mereka mencari solusi dalam ini kendala.

2. Semua aspek produksi perangkat lunak Software engineering

tidak hanya peduli dengan proses teknis dari pengembangan

perangkat lunak. Ini juga mencakup kegiatan seperti manajemen

proyek perangkat lunak dan pengembangan alat-alat, metode, dan

teori untuk mendukung produksi perangkat lunak.

Sementara semua proyek perangkat lunak harus dikelola secara

profesional dan dikembangkan, teknik yang berbeda sangat cocok

untuk berbagai jenis sistem. Sebagai contoh, game harus selalu

dikembangkan dengan menggunakan serangkaian prototipe sedangkan

sistem keselamatan kontrol kritis memerlukan spesifikasi lengkap dan

dianalisis untuk dikembangkan. Oleh karena itu, banyak metode dan

metode yang digunakan berbeda-beda setiap pembuatan sebuah

perangkat lunak.

(Sommerville, 2011:6) Ada 2 macam produk perangkat lunak yaitu :

1. Generic Product, perangkat lunak seperti ini biasanya sistem yang

berdiri sendiri yang diproduksi oleh sebuah organisasi atau tim

dan dijual di pasar terbuka untuk semua pelanggan yang dapat

membelinya. Contoh produk yang seperti ini yaitu : database,

word processor, drawing package, dan project management tools.

2. Customized products, perangkat lunak seperti ini biasanya adalah

sistem yang dibuat sesuai dengan permintaan pelanggan. Seorang

pembuat perangkat lunak akan membuat perangkat lunak yang

dikhususkan untuk pelanggan tersebut.

14

2.2.2 Software Process Models

Sebuah proses model perangkat lunak adalah sebuah

representasi dari proses perangkat lunak yang sudah disederhanakan.

Setiap proses model merepresentasi sebuah proses dari perspektif yang

khusus dan biasanya menyediakan sebagian informasi disetiap proses.

Ada 3 macam proses model :

1. Waterfall model

Model air terjun ini mengambil kegiatan proses dasar spesifikasi,

pengembangan, validasi, dan evolusi dan mewakili mereka

sebagai terpisah fase proses seperti spesifikasi persyaratan,

perancangan perangkat lunak, implementasi, pengujian, dan

sebagainya.

2. Incremental development

Pendekatan ini interleaves kegiatan spesifikasi, pengembangan,

dan validasi. Sistem ini dikembangkan sebagai serangkaian versi

(increment), dengan masing-masing versi menambahkan

fungsionalitas ke versi sebelumnya.

3. Reuse-oriented software engineering

Pendekatan ini didasarkan pada keberadaansejumlah besar

komponen reusable. Proses pengembangan sistemberfokus pada

mengintegrasikan komponen ini ke dalam sistem daripada

mengembangkanmereka dari awal.

2.2.3 Extreme Programming (XP)

(Sommerville, 2011:65) Extreme Programming (XP) adalah

mungkin yang paling dikenal dan paling banyak digunakan dari

metode tangkas. Nama itu diciptakan oleh Beck (2000) karena

pendekatan itu dikembangkan dengan mendorong diakui praktik yang

baik, seperti pengembangan berulang, untuk Tingkat 'ekstrim'.

15

Gambar 2. 2 Extreme Programming Cycle

Sumber : Sommerville (2011)

Dalam extreme programming , dilaksanakan secara langsung

sebagai serangkaian tugas. Programmer bekerja berpasangan dalam

mengembangkan suatu sistem untuk setiap tugas sebelum menulis

kode. Semua tes harus berhasil dieksekusi ketika kode baru yang

terintegrasi ke dalam sistem. Gambar 2.2 menggambarkan proses XP

untuk menghasilkan kenaikan dari sistem yang sedang dikembangkan.

Extreme programming melibatkan sejumlah praktik yang

mencerminkan prinsip-prinsip metode tangkas :

1. Pengembangan Incremental didukung melalui kecil, rilis sering

dari sistem. Persyaratan didasarkan pada cerita pelanggan

sederhana atau skenario yang digunakan sebagai dasar untuk

memutuskan apa fungsi harus dimasukkan dalam sistem kenaikan.

2. Keterlibatan Pelanggan didukung melalui keterlibatan terus

menerus dari pelanggan dalam tim pengembangan. Perwakilan

nasabah mengambil bagian dalam pengembangan dan

bertanggung jawab untuk menentukan tes penerimaan untuk

sistem.

3. Orang, bukan proses, didukung melalui program pasangan,

kepemilikan kolektif dari kode sistem, dan proses pembangunan

berkelanjutan yang tidak melibatkan jam kerja yang panjang

berlebihan.

16

4. Perubahan dianut melalui siaran sistem reguler untuk pelanggan,

uji-pertama pengembangan, refactoring untuk menghindari kode

degenerasi, dan integrasi berkelanjutan fungsi baru.

5. Menjaga kesederhanaan didukung oleh refactoring konstan yang

meningkatkan kode kualitas dan dengan menggunakan desain

sederhana yang tidak perlu mengantisipasi masa depan perubahan

pada sistem.

2.3 UML

2.3.1 Pengertian UML

(Sommerville, 2011: 121) Unified Modeling Language (UML)

adalah 13 jenis diagram yang berbeda yang dapat digunakan untuk

memodel sistem perangkat lunak. UML di kembangkan pada 1990-an

untuk pemrograman berorientasi objek di mana notasi berorientasi

objek yang sama terintegrasi untuk menciptakan UML. Sebuah revisi

besar (UML 2) diselesaikan pada tahun 2004. UML secara universal

diterima sebagai pendekatan standar untuk mengembangkan model

sistem perangkat lunak. Banyak jenis lainnya telah diusulkan untuk

pemodelan sistem yang lebih umum.

2.4 Use Case

2.4.1 Pengertian Use Case

Use case adalah sebuah gambaran kasar tentang bagaimana

sebuah sistem berjalan, siapa saja pelaku-pelakunya (actor), dan apa

saja yang dikerjakannya. (Sommerville, 2011:106) Use case

merupakan sebuah teknik requirement discovery yang diperkenalkan

pertama kali pada metode Objectory, yang kini telah menjadi

kerangka dasar dari unified modeling language. Pada dasarnya, Use

case menjelaskan bagaimana pengguna, yang berperan sebagai aktor,

melakukan interaksi apa saja yang memungkinkan terhadap sistem

17

aplikasi AlarmSelfie. Interaksi tersebut dijelaskan dalam bentuk text,

gambar, diagram, dsb.

(Sommerville, 2011:107) Use case didokumentasikan melalui

diagram use case tingkat tinggi. Kumpulan perangkat use case

menggambarkan semua interaksi yang memungkinkan, dan akan

digambarkan dalam syarat sistem. Aktor, yang dapat berupa manusia

maupun sistem lain, digambarkan dengan sosok stik (stick figure).

Setiap kelas interaksi digambarkan dengan elips. Panah dan anak

panah menjelaskan hubungan antara aktor dengan interaksi, serta

bagaimana interaksi tersebut dimulai.

(Sommerville, 2011:108) Skenario dan use case adalah teknik

yang efektif untuk memperoleh kebutuhan dari pemegang kepentingan

yang berinteraksi langsung dengan sistem. Setiap tipe interaksi

direpresentasikan sebagai sebuah use case. Namun, dikarenakan fokus

dari use case sendiri adalah interaksi dengan sistem, use case kurang

efektif untuk memperoleh peraturan, atau bisnis tingkat tinggi dan

ketentuan nonfungsional, atau untuk menemukan persyaratan ruang

lingkup.

UML telah menjadi standar de facto untuk modeling

berorientasi obyek, dan hal itu menjadikan use case dan segala bentuk

perolehan berdasarkan use case digunakan secara luas sebagai syarat

perolehan.

2.4.2 Sejarah Use Case

(Alistair Cockburn, 2002) Use Case pertama kali digunakan

oleh Ivar Jacobson, ketika beliau menuliskan skenario yang

menggambarkan arsitektur sistem AXE milik Ericsson pada tahun

1967. Hasil yang digambarkan Ivar Jacobson disebut sebagai usage

scenario. Usage scenario ini masih bersifat informal dan tidak

beraturan, dan hanya bertujuan untuk memberikan gambaran ide

secara keseluruhan tentang cara kerja sistem AXE. Skenario tersebut

belum menggambarkan struktur yang formal secara jelas.

18

Pada pertengahan tahun 1980-an, Jacobson menyempurnakan

skenario yang beliau kerjakan dan memakai kata “anvendningsfall”,

istilah Swedia yang dapat diartikan sebagai “penggunaan kasus,” atau

dalam bahasa Inggris dapat berarti “situation of usage” atau “usage

case.” Namun kata “usage case” terdengar aneh dalam bahasa

Inggris, sehingga beliau menggantinya dengan “use case.”

2.4.3 Format Use Case

(Alistair Cockburn, 2002) Dari awal mulanya, usage scenario

diciptakan dengan bentuk yang informal. Ketika usage scenario (atau

use case) diubah menjadi lebih formal, hanya sedikit orang yang mau

memakainya. Use case yang informal ini menimbulkan banyak

kesulitan. Tidak ada indikator yang jelas apakah use case yang dibuat

sudah benar, apakah use case sudah meliputi keseluruhan sistem, dan

bagaimana cara menggabungkan use case dalam jumlah yang banyak.

(Sommerville, 2011:107) Tidak ada perbedaan yang jelas

mengenai skenario dan use case. Beberapa orang berpendapat bahwa

setiap use case berisi sebuah skenario tunggal; Sedangkan beberapa

orang lainnya, seperti yang dianjurkan Stevens dan Pooley (2006),

mengenkapsulasi kumpulan skenario ke dalam satu use case. Setiap

skenario merupakan satu rangkaian dari use case.

(Alistair Cockburn, 2002) Bagi beberapa orang, use case

hanyalah nama lain dari skenario, deskripsi singkat dari seseorang

yang menggunakan sistem. Menurut pemikiran ini, use case tidak

memiliki struktur internal. Masih banyak orang yang

merekomendasikan menulis use case dengan struktur yang informal.

Yang terpenting dari sebuah use case bukanlah bagaimana struktur

formalnya, tetapi kegunaan use case tersebut dalam sebuah proyek

atau sistem.

19

Gambar 2. 3 Sebuah Use Case

(Sumber: Dan Pilone, Neil Pitman, 2005:116)

Gambar 2. 4 Diagram Use Case

(Sumber: Dan Pilone, Neil Pitman, 2005:121)

2.5 Activity Diagram

2.5.1 Pengertian Activity Diagram

(Sommerville, 2011:120). Activity Diagram adalah sebuah

diagram yang menampilkan segala jenis kegiatan yang terlibat pada

sebuah proses atau pemprosesan data ke dalam bentuk diagram.

Diagram ini merepresentasikan skenario dan segala aktifitas yang

berjalan di dalamnya. State merupakan tampilan dari situasi - situasi

yang terjadi ketika sistem dijalankan. Transition menampilkan

aktifitas yang dijalankan untuk berpindah atau bertransisi dari satu

state ke state yang lain.

20

(Dan Pilone, Neil Pitman, 2005:152) Membuat model aktivitas

melalui Activity Diagram bertujuan untuk menjelaskan bagaimana

sebuah program (atau sebuah sistem) akan dieksekusi, bagaimana alur

dan sifat dari sistem tersebut, bukan bagaimana sistem itu disusun.

Bila dibandingkan dengan diagram UML yang lain, ruang lingkup

dari activity diagram lebih luas, karena tidak hanya mencakup

software modeling, activity diagram cocok untuk membuat model

perilaku di bidang apapun, seperti model proses bisnis hingga alur

kerja sebuah sistem.

Gambar 2. 5 Activity Diagram Sederhana

(Sumber: Dan Pilone, Neil Pitman, 2005:155)

(Sommerville, 2011:123) Gambar 2.5 adalah sebuah contoh

dari UML activity diagram. Diagram aktivitas menunjukkan aktivitas

yang membangun sebuah proses sistem dan jalur kendali dari suatu

aktivitas ke aktivitas lainnya. Awal mula dari proses digambarkan

dengan sebuah lingkaran penuh, dan diakhiri dengan sebuah lingkaran

penuh dengan tambahan garis lingkaran di luarnya. Kotak dengan siku

yang melengkung menggambarkan aktivitas. Anda juga dapat

memasukkan objek pada diagram aktivitas. Kotak dengan siku

menunjukkan sistem yang berjalan pada aktivitas yang berhubungan

dengan sistem tersebut.

21

Gambar 2.5 terdapat garis dengan panah yang menunjukkan

jalur kerja dari suatu aktivitas ke aktivitas lain. Sebuah garis tebal

digunakan untuk menunjukkan koordinasi aktivitas. Ketika banyak

aktivitas menunjuk ke garis tebal tersebut, berarti semua aktivitas

tersebut harus selesai terlebih dahulu untuk melanjutkan sistem.

Ketika garis tebal menunjuk ke beberapa aktivitas, berarti aktivitas ini

bisa dijalankan secara parallel.

Garis dengan panah juga dapat mengandung kata-kata yang di

kurung dengan kurung siku, dimana kata-kata tersebut menunjukkan

kondisi ketika jalur tersebut di lalui, contohnya [dangerous] dan [not

dangerous]. Kondisi tersebut juga diindikasikan melalui sebuah if

yang di gambarkan dengan bentuk lupis.

Gambar 2. 6 Activity Diagram

(Sumber: Sommerville, 2011:123)

22

2.6 Sequence Diagram

2.6.1 Pengertian Sequence Diagram

(Sommerville, 2011:126) Kegunaan utama Sequence diagram

pada UML adalah untuk menggambarkan interaksi antara aktor dan

objek pada sebuah sistem dan juga interaksi antara objek itu sendiri.

Sequence diagram, menunjukkan sequence (urutan) interaksi yang

terjadi pada sebuah usecase. Gambar 2.5 menunjukkan contoh sebuah

sequence diagram. Diagram tersebut menunjukkan proses sequence

diagram pada use case view patient information, dimana seorang

resepsionis dapat melihat informasi mengenai data pasien.

2.6.2 Tujuan Sequence Diagram

Sequence diagram termasuk di dalam kategori interaction

diagram, dan pada interaction diagram ini, segala jenis diagramnya

ditujukan untuk menggambarkan bagaimana komunikasi yang terjadi

antar obyek satu sama lain (Dan Pilone, Neil Pitman, 2005:179),

sesuai dengan tujuan awal dirilisnya UML 2.0, yakni bagaimana

caranya agar diagram yang digambarkan tidak hanya diagram relasi

struktural, melainkan juga diagram berupa alur kejadian, dan alur

kejadian tersebut kini dapat diwakili oleh sequence diagram.

Kemampuan dalam menggambarkan alur kontrol inilah yang menjadi

bagian terbesar dari UML 2.0, dan membedakan versi ini dengan

UML versi pendahulunya.

Hal yang dimuat dan ditekankan pada sequence diagram

adalah komunikasi yang terjadi antar obyek, bukan manipulasi data

yang terjadi seiring dengan adanya komunikasi tersebut. sequence

diagram difokuskan kepada pesan yang disampaikan dalam

komunikasi tersebut antar obyek yang bersangkutan dan bagaimana

pesan yang disampaikan tersebut dapat dihubungkan untuk

menjalankan fungsi-fungsi operasi yang ada, dan pada wadah yang

23

sama pula struktur obyek yang berhubungan ditampilkan pada

diagram ini.

Detil dari sebuah interaksi dapat diungkapkan dan

digambarkan dengan berbagai cara, namun sequence diagram lah cara

yang paling sering digunakan. Berbagai jenis interaksi lainnya

diungkapkan dengan interaction overviews, communication diagrams,

timing diagrams, dan interaction tables. Oleh karena sequence

diagram adalah cara yang paling sering digunakan, setiap konsep yang

ada di dalam suatu sistem dituliskan di dalam diagram ini.

2.6.3 Susunan Sequence Diagram

Simbol yang selalu digunakan untuk menunjukkan suatu

interaksi adalah sebuah persegi besar dengan kata kunci “sd” diikuti

oleh nama interaksi tersebut di dalam sebuah bangun pentagonal, di

sudut kiri atas. Contoh dari sequence diagram ini ditunjukkan di

dalam Gambar 2.7.

Gambar 2. 7 Sequence Diagram

(Sumber: Sommerville, 2011:127)

24

Gambar 2.7 adalah contoh kedua sequence diagram dari

sistem yang sama yang menggambarkan dua fitur tambahan. Diagram

di bawah merupakan komunikasi langsung antara pelaku dalam sistem

dan penciptaan benda-benda sebagai bagian dari urutan operasi.

Dalam contoh ini, sebuah objek dibuat untuk menyimpan data

ringkasan yang akan di-upload ke PRS (sistem catatan pasien).

Berikut adalah penjelasan mengenai sequence diagram dibawah:

1. Resepsionis log on ke PRS.

2. Ada dua pilihan yang tersedia. Ini memungkinkan transfer

langsung diperbarui informasi pasien dengan PRS dan

transfer data kesehatan ringkasan dari MHC-PMS ke PRS.

3. Dalam setiap kasus, izin resepsionis diperiksa

menggunakan otorisasi sistem.

4. Informasi pribadi dapat ditransfer langsung dari objek

antarmuka pengguna untuk PRS. Atau, rekor ringkasan

dapat dibuat dari database dan catatan yang kemudian

ditransfer.

5. Setelah menyelesaikan transfer, PRS mengeluarkan pesan

status dan pengguna log off.

25

Gambar 2. 8 Sequence Diagram Dengan Alternate

(Sumber: Sommerville, 2011:128)

2.7 Class Diagram

2.7.1 Pengertian Class Diagram

(Sommerville, 2011:129).Class diagram digunakan ketika

mengembangkan sebuah object-oriented system untuk menunjukkan

kelas-kelas dalam sebuah sistem beserta asosiasi antar kelas. Sebuah

kelas objek dapat dianggap sebagai definisi umum dari sebuah class.

Sebuah asosiasi adalah hubungan antara kelas-kelas yang

mengindikasikan bahwa terdapat sebuah hubungan antara kelas-kelas

26

tersebut. Dengan kata lain, tiap kelas bisa memiliki informasi

mengenai kelas yang ter-asosiasi.

2.7.2 Susunan Class Diagram

Class diagram terdiri dari obyek - obyek, setiap obyeknya

dilambangkan dalam bangun kotak, dan setiap kotaknya

melambangkan satu class. Di dalam kotak tersebut terdapat

keterangan - keterangan yang menerangkan class tersebut, berupa

judul class, atribut, dan metode operasi yang dimiliki class tersebut.

Selain keterangan dari masing - masing class, class diagram juga

menggambarkan bagaimana relasi antar class, serta sifat relasinya.

Judul class dituliskan dengan huruf kapital pada awal dari

setiap kata pada judul class, dan seluruh katanya ditulis tebal (bold).

Di bawah judul class terdapat garis pemisah yang memisahkan judul

class dengan atribut class yang terdapat di bawahnya.

(Sumber: Sommerville, 2011:130)

Gambar 2.9 diatas menunjukkan asosiasi antar kelas dengan

angka (1,4) dan simbol (*). Tiap angka dan simbol menunjukkan

Gambar 2. 9 Class Diagram Sederhana

27

berapa banyak objek yang terlibat dalam asosiasi. Jumlah objek yang

terlibat dapat beragam, mulai dari 1 hingga tak terhngga atau *.

Di bawah atribut class terdapat garis pemisah, dan diikuti oleh

daftar metode - metode operasi yang dimiliki oleh class yang

bersangkutan. Segala bentuk fungsi dan operasi yang dimiliki oleh

class dimuat di sini. Metode - metode dituliskan dalam bentuk nama

dari fungsi, dan parameter yang dimiliki fungsi tersebut. Dalam

beberapa kasus, terkadang sifat dari metode juga dituliskan, seperti

private, public, dan protected. Fungsi private dilambangkan oleh

tanda minus (-), fungsi public dilambangkan oleh tanda plus (+).

• +(Public) , Semua kelas yang dapat melihat kelas tersebut bisa

melihat atributnya.

• #(Protected) , Kelas dan semua turunannya bisa melihat

atributnya.

• -(Private) , Hanya kelas itu sendiri yang bisa melihat

atributnya.

Gambar 2. 10 Class Diagram Dengan Metode

(Sumber: Rumbaugh, Jacobson, Booch, 2004: 207-208)

(Dan Pilone, Neil Pitman, 2005:47) Garis hubungan antar

kelas memiliki berbagai jenis bentuk, dengan arti yang berbeda-beda

pula. UML menyediakan beberapa cara untuk mewakili hubungan

antara kelas. Masing-masing dari hubungan UML mewakili berbagai

jenis hubungan antara kelas dan memiliki ketelitian yang tidak

sepenuhnya dapat ditangkap dalam spesifikasi UML. Ada 5 jenis

28

hubungan antar kelas yaitu, Dependency, Association, Aggregation,

Composition, dan Generalization.

1. Dependency

Hubungan yang paling lemah antara kelas

adalah hubungan ketergantungan (Dependency).

Ketergantungan antara kelas berarti bahwa satu kelas

menggunakan, atau memiliki pengetahuan, dari kelas

lain. Hal ini biasanya hubungan sementara, yang

berarti kelas tergantung singkat berinteraksi dengan

kelas sasaran tetapi biasanya tidak mempertahankan

hubungan dengan itu untuk waktu yang lama.

Dependensi biasanya dibaca sebagai "...

menggunakan ...". Sebagai contoh, jika ada kelas

bernama Window yang mengirimkan sebuah kelas

bernama WindowClosingEvent, dapat dikatakan

bahwa "Window menggunakan kelas

WindowClosingEvent."

2. Association

Hubungan Asosiasi (Association) lebih kuat

dari pada hubungan ketergantungan (Dependency) dan

biasanya menunjukkan bahwa satu kelas

mempertahankan hubungan dengan kelas lain selama

jangka waktu. Jalur hidup dari dua objek dihubungkan

Gambar 2. 11 Dependency Relationship

29

oleh hubungan asosiasi mungkin tidak terikat (yang

berarti satu dapat dihancurkan tanpa harus

menghancurkan yang lain).

Asosiasi biasanya dibaca sebagai "... memiliki

...". Sebagai contoh, jika ada kelas bernama Window

yang memiliki referensi ke kursor mouse saat ini, Anda

akan mengatakan "Window memiliki kursor". Dalam

hal ini, Jendela tidak memiliki Kursor; Kursor

merupakan bagian dari semua aplikasi dalam sistem.

Namun, Window memiliki referensi untuk itu sehingga

Window dapat menyembunyikannya, mengubah

bentuk, dan sebagainya.

Hubungan asosiasi memiliki penanda lain yaitu

Multiplicity. Karena hubungan asosiasi biasanya

mewakili hubungan yang bertahan lama, mereka sering

digunakan untuk menunjukkan atribut kelas. Berapa

banyak bagian dari kelas tertentu yang terlibat dalam

suatu hubungan dapat diungkapkan. Jika tidak

ditentukan nilainya, maka banyaknya bagian yang

berhubungan diasumsikan 1. Jika hubungannya

menggunakan lebih dari 1 bagian, maka nilai di

tentukan.

Gambar 2. 12 Association Relationship

30

3. Aggregation

Hubungan Agregasi () adalah versi lebih kuat

dari asosiasi. Tidak seperti asosiasi, agregasi biasanya

menyiratkan kepemilikan dan dapat menyiratkan

hubungan antar bagian. Agregasi biasanya dibaca

sebagai "... memiliki sebuah ...". Sebagai contoh, jika

ada kelas bernama Window yang disimpan posisi dan

ukuran di kelas Rectangle, dapat dikatakan "Jendela

memiliki sebuah Rectangle." Persegi panjang dapat

dibagi dengan kelas lain, tapi Window memiliki

hubungan intim dengan Rectangle. Hal ini agak

berbeda dari asosiasi dasar karena memiliki konotasi

kuat. Namun, itu bukan hubungan terkuat antara kelas.

4. Composition

Hubungan Komposisi (Composition)

merupakan hubungan yang sangat kuat antara kelas.

Komposisi digunakan untuk menangkap hubungan

keseluruhan-bagian. "Bagian" dari hubungan dapat

terlibat dalam satu hubungan komposisi pada waktu

tertentu. Masa pakai bagian yang terlibat dalam

Gambar 2. 13 Multiplicity

Gambar 2. 14 Aggregation Relationship

31

hubungan komposisi hampir selalu terkait; jika lebih

besar, pemilik bagian hancur, ini hampir selalu

menghancurkan “Bagian”. UML tidak memungkinkan

bagian yang akan dikaitkan dengan pemilik yang

berbeda sebelum dihancurkan, sehingga ia

mempertahankan keberadaannya, tetapi ini biasanya

termasuk sebuah pengecualian aturan.

Hubungan komposisi biasanya dibaca sebagai

"... merupakan bagian dari ...", yang berarti Anda perlu

membaca komposisi dari bagian ke keseluruhan.

Misalnya, jika dikatakan bahwa Window di sistem

harus memiliki Titlebar, dapat diwakili ini dengan

kelas bernama Titlebar bahwa "... adalah bagian dari

..." kelas bernama Window.

5. Generalization

Hubungan generalisasi (Generalization)

menyampaikan bahwa target hubungan adalah umum,

atau kurang spesifik, bagian sumber kelas atau

antarmuka. Hubungan Generalisasi sering digunakan

untuk menarik kesamaan antara perbedaan klasifikasi.

Sebagai contoh, jika ada kelas bernama Cat dan kelas

bernama Dog, dapat dibuat generalisasi dari kedua

kelas yang disebut Animal.

Generalisasi biasanya dibaca sebagai "... adalah

...", mulai dari kelas yang lebih spesifik dan membaca

Gambar 2. 15 Composition Relationship

32

arah kelas umum. Kembali ke Cat dan contoh Dog,

dapat dikatakan "Cat ... adalah ... Animal".

2.8 Computer Vision

2.8.1 Penjelasan Computer Vision

(Bradski, Kaebler, 2008:2) Penglihatan komputer(Computer

Vision) adalah perubahan data dari gambar diam atau gambar video

menjadi suatu bentuk lain atau keputusan baru. Semua perubahan

dilakukan dengan menghasilkan suatu tujuan tertentu. Bentuk

perubahan baru yang di maksud bisa berarti merubah gambar

berwarna menjadi gambar hitam-putih atau penghilangan pergerakan

kamera dari sebuah urutan gambar.

Manusia adalah mahluk visual, penglihatan yang sempurna

membuat computer vision terlihat sangat mudah, ternyata tidak

seperti itu. Mesin menerima sebaris angka-angka dari kamera atau

pun device lain, dan hanya angka-angka saja. Seperti pada gambar

2.1, dengan mata manusia gambar tersebuat sangat mudah di

identifikasikan sebagai sebuah mobil, tetapi melalu kamera digital,

Gambar 2. 16 Generalization Relationship

33

tampilan kaca samping mobil di terjemahkan dalam bentuk informasi

berupa angka-angka demikian.

Sumber : Learning OpenCV (2008).

2.8.2 Image Processing

(Bradski, Kaebler, 2008:109) Pemprosesan Gambar(Image

Processing) adalah operasi struktur gambar di tingkat lebih tinggi,

dalam hal mencapai sebuah tugas yang memiliki dasar konteks grafik,

gambar visual. (Bradski, Kaebler, 2008:iv) Pemprosesan gambar

meliputi smoothing, image morphology, flood fill, resize, image

pyramids, threshold, dan exercises. Program yang sedang di bangun

ini di kembangkan dengan 2 jenis pemprosesan gambar, yaitu

smoothing dan threshold. Penghalusan Gambar (smoothing) atau

sering disebut blurring adalah pemprosesan gambar yang paling

sering digunakan karena cara penggunaannya yang simple dan sangat

bermanfaat. Pada dasarnya, penghalusan gambar memiliki banyak

manfaat, tetapi hal paling penting dari penghalusan gambar adalah

untuk pengurangan noise atau artefak kamera. Penghalusan gambar

Gambar 2. 17 Komputer melihat kaca samping mobil sebagai sebaris angka

34

juga berperan penting dalam pengurangan resolusi secara prinsip dan

dapat ditemukan pada image pyramids processing.

(Bradski, Kaebler, 2008: 135) Threshold merupakan

pemprosesan gambar dengan memberi lapisan penyaring gambar

berguna sebagai penghilang piksel yang tidak diinginkan dalam

rentang nilai tertentu, selagi mempertahankan yang lainnya.

2.8.3 OpenCV

(Bradski, Kaebler, 2008: 1) OpenCV adalah sebuah library

open source untuk pembelajaran computer vision yang ditulis dalam

bahasa pemrograman C dan C++ dan biasanya digunakan pada

operating system linux, windows, dan Mac OS X, dan sekarang sedang

dikembangkan dalam bahasa pemrograman Python, Ruby, Matlab,

dan bahasa pemrograman lainnya.

OpenCV didisain untuk efisiensi perhitungan dan berfokus

pada aplikasi real-time. Tujuan dari dibuatnya OpenCV adalah

bantuan bagi programmer yang ingin membangun aplikasi yang

cukup canggih dengan computer vision dalam waktu yang relative

singkat. Pada library OpenCV terdapat lebih dari 500 fungsi yang

mencakup banyak bidang dalam pengaplikasian computer vision

termasuk dalam program inspeksi produk pabrik, penggambaran

medikal, keamanan, desain antar muka pengguna, kalibrasi kamera,

stereo vision, dan robotics.

Masih banyak fungsi – fungsi dan algoritma – algoritma yang

menyediakan fitur face detection selain OpenCV, seperti algoritma

KLT, FaceDetect dari library Android, maupun algoritma – algoritma

lainnya. Namun library OpenCV merupakan salah satu algoritma yang

cukup akurat, serta disebarkan secara open source membuat algoritma

ini dipakai dalam berbagai macam pengembangan aplikasi, termasuk

pengembangan aplikasi ini.

Algoritma face detection yang disediakan OpenCV

menggunakan training set dari file berformat .xml yang merupakan

35

data training yang diberikan oleh OpenCV sendiri dan telah siap

untuk dipakai. Pengembang yang memakai fungsi face detection dari

OpenCV tidak perlu men-training fungsi face detection tersebut dan

dapat langsung memakainya untuk mendeteksi wajah atau objek

lainnya.

2.8.4 Face Detection atau Haar Classifier

(Bradski, Kaebler, 2008: 506) Face Detection atau Haar

Classifier merupakan suatu algoritma computer vision yang pada

awalnya dikhususkan untuk mendeteksi wajah manusia. Namun,

seiring pesatnya perkembangan computer vision, algoritma ini sudah

banyak di kembangkan menjadi aplikasi dengan fungsi yang berbeda

seperti pendeteksi sepeda, mobil, tubuh manusia, dan objek-objek

lainnya. Seperti teknologi pada umumnya, perkembangan jaman

membuat banyak teknologi tersingkirkan dari dunia yang semakin

modern ini. Demikian juga untuk algoritma face detection ini yang

sudah di kembangkan ke berbagai bentuk dan fungsi, semakin lama

semakin di tinggalkan dan hilang.

Face Detection pada OpenCV di kembangkan pertama kali

oleh Paul Viola dan Michael Jones dan awalnya di kenal sebagai

Viola-Jones detector. Setelah itu, algoritmanya di kembangkan

kembali oleh Rainer Lienhart dan Jochen Maydt, dan kemudian nama

algoritma Face Detection dari OpenCV di ubah menjadi OpenCV

“Haar Classifier”. OpenCV juga membuat algoritma ini menjadi

object detection karena algoritmanya memungkinkan pengguna untuk

melatih dan menyimpan objek baru untuk kemudian dideteksi.

Berikut adalah algoritma untuk face detection :

36

Gambar 2. 18 Flowchart Algoritma Face Detection

37

Dimana menyatakan apakah nilai (v) dari fitur tertentu (f) di

atas atau di bawah threshold (t). Ada tidaknya wajah di tentukan dari

jawaban “ya” atau “tidak”.

Fungsi sign mengembalikan nilai -1 jika angkanya kurang dari

0, 0 jika angka sama dengan 0, dan +1 jika angka merupakan bilangan

positive dimana angka tersebut di simpan dalam F. Threshold (tl) dari

f1 yang mengklasifikasi input, lalu hasil errornya digunakan untuk

menghitung weighted vote (w1). Setiap fitur vector atau data point di

timbang kembali (reweighted) rendah atau tinggi sesuai dengan

ketepatan dalam mengklasifikasi pada iterasi classifier. Ketika node

telah mempelajari cara ini, data yang berhasil melalu proses ini

digunakan untuk melatih node selanjutnya. Dan berikut kode untuk

menerapkan algoritma face detection kedalam program:

38

2.9 AndroidSDK

2.9.1 Sejarah Android

(Cadenhead, 2012:343)Android pertama kali diluncurkan oleh

google pada tahun 2007, dua tahun setelah mendapatkan teknologi ,

sebagai industri yang luas yang memiliki usaha untuk membuat

sebuah telepon genggam yang canggih pada platform yang open-

source. Tidak seperti sistem operasi RIM Blackberry atau Apple,

Android digunakan oleh nama besar seperti teknologi Google, Intel,

Motorola, Nvidia, Samsung, dan perusahaan lainnya.

Google melepaskan Android Software Development Kit(SDK),

dengan gratis untuk mengembangkan aplikasi Android. Smartphone

pertama yang menggunakan Android adalah T-Mobile G1, yang

keluar pada bulan juni 2008.

(Cadenhead, 2012:344) Menulis aplikasi Android lebih mudah

jika Anda menggunakan Integrated Development Environment (IDE)

yang dilengkapi untuk mendukung SDK Android. IDE yang paling

populer untuk pemrograman Android adalah Eclipse, yang juga gratis

dan open source. Penghubung Android untuk Eclipse membuat fungsi

SDK mulus di dalam IDE.

39

(Fajar, Dennis, Yogi, 2014:22) Android berkembang pesat

karena Android merupakan platform yang sangat lengkap baik dari

segi sistem operasinya, aplikasi dan tools pengembangannya. Market

yang menyimpan berbagai aplikasi dan dukungan dari komunitas

open source di dunia juga merupakan alasan android berkembang

sampai saat ini.

2.9.2 Penjelasan Android

Android adalah sebuah sistem yang sistem operasi berbasis

Java yang berjalan di kernel linux 2.6. Sistem ini sangat ringan dan

penuh dengan fitur-fitur yang baik (DiMarzio,2008:6). Aplikasi

Android dikembangkan dengan menggunakan Java dan dapat dengan

mudah dihubungkan dengan platform baru. (Cadenhead, 2012:345)

Aplikasi Android adalah program Java yang menggunakan kerangka

aplikasi, satu set kelas dan file aplikasi memiliki kesamaan. Kerangka

itu mewujudkan seperangkat aturan untuk bagaimana aplikasi harus

disusun memesan untuk berjalan dengan baik pada perangkat

Android.

2.10 Eclipse

2.10.1 Penjelasan Eclipse

(Adhari, 2012:43) Eclipse adalah sebuah IDE (Integrated

Development Environment) untuk mengembangkan perangkat lunak

dan dijalankan di semua platform. Eclipse sendiri juga merupakan

sebuah komunitas open source, yang memiliki proyek 43 yang

berfokus pada membangun sebuah platform pengembangan terbuka

dari extensible Framework, tools dan runtime untuk membangun,

menyebarkan dan mengelola perangkat lunak di seluruh siklus hidup

perangkat lunak tersebut.

Umumnya Eclipse digunakan untuk membuat sebuah program

yang menggunakan bahasa pemrograman Java. Namun, Eclipse juga

40

bisa digunakan untuk penggunaan bahasa pemrograman lainnya

seperti C, C++, COBOL, Perl, PHP, Python, dan sebagainya.

2.11 Object Oriented Programming

(Marrer, 2009:30) Object Oriented Programming (OOP) adalah cara

berfikir berdasarkan logika untuk menghadapi masalah – masalah yang

berada pada sistem yang akan diatasi dimana objek adalah suatu entitas

tunggal yang memiliki kombinasi struktur data dan fungsi tertentu. OOP

dapat diterapkan pada perancangan sistem perangkat lunak (software),

perangkat keras (hardware), serta sistem informasi (information system).

Konsep yang terdapat dalam OOP diantaranya adalah sebagai berikut :

a. Object (Objek)

Objek adalah konsep yang ada di dunia nyata yang penting bagi

aplikasi. Biasanya berbentuk benda, kejadian, orang.

b. Class (Kelas)

Kelas adalah kumpulan objek dengan atribut yang serupa. Objek yang

serupa berada dikelas yang sama, sehingga membentuk sebuah kelas.

c. Atribute (Atribut)

Atribut adalah data yang dimiliki objek dalam kelas.

Menurut Deitel OOP mempunyai beberapa sifat yaitu :

a. Inheritance

(Deitel, 2007:522) Inheritance adalah bentuk penggunaan kembali

perangkat lunak, membuat sebuah kelas yang menyerap kelas yang sudah ada

dan perilaku dan sifatnya juga akan menyerupai kelas yang sudah ada.

Software reusability menghemat waktu selama pengembangan program.

Penggunaan kembali terbukti menhasilkan perangkat lunak berkualitas tinggi,

yang meningkatkan kemungkinan bahwa sistem akan dilaksanakan secara

efektif.

41

b. Encapsulation

Enkapsulasi adalah pengemasan data dan fungsi ke dalam

komponen tunggal. Fitur enkapsulasi didukung menggunakan kelas

dalam kebanyakan bahasa pemrograman berorientasi objek, meskipun

alternatif lain juga ada. Hal ini memungkinkan menyembunyikan

properti secara selektif dan metode dalam suatu objek dengan

membangun dinding tak tertembus untuk melindungi kode dari korupsi

yang disengaja.

c. Polymorphism

Polimorfisme memungkinkan kita untuk "Program secara

umum" daripada "Program secara spesifik" .Secara khusus,

polimorfisme memungkinkan kita untuk menulis program yang

memproses objek kelas yang merupakan bagian dari hirarki kelas yang

sama seolah-olah mereka semua objek dari hirarki ini kelas dasar.

Seperti yang kita akan segera lihat, polimorfisme bekerja dari kelas

dasar menangani pointer dan baseclass referensi menangani, tetapi tidak

dari nama menangani. Dengan polimorfisme, kita dapat merancang dan

mengimplementasikan sistem yang mudah diperluas. Kelas baru dapat

ditambahkan dengan sedikit atau tanpa modifikasi pada bagian umum

program, selama kelas baru merupakan bagian dari hirarki warisan yang

program proses umum.

2.12 Java

2.12.1 Penjelasan Java

(Neimeyer, Leuck, 2013: 2)Java adalah suatu bahasa

pemrograman yang di kembangkan pertama kali oleh Sun

Microsystems dan di bawah pengawasan James Gosling dan Bill Joy.

Java di disain sedemikian mungkin agar menjadi bahasa programing

yang cukup aman dalam melintasi jaringan, dan cukup kuat untuk

memperbaiki kode yang di eksekusi. Oleh karena itu, Java sangat

42

berperan dalam perkembangan Internet dan membawa dunia seperti

sekarang.

Projek Java dimulai dari tahun 1990 ketika Windows sedang

memasuki masa kejayaannya dalam bidang komputerisasi. Tim

pengembang Java dari Sun Microsystem mengembangkan java lebih

baik lagi di Aspen, Colorado. Lalu projek tersebut di beri nama Sun

Aspen Smallworks. Dikarenakan James Gosling merupakan anggota

pertama dari tim java yang ke Aspen, selanjutnya ia di kenal sebagai

father of Java.

2.12.2 Alarm Manager

(Komatineni, MacLean, 2012: 539) Alarm Manager adalah

suatu kelas dalam java khususnya java Android yang berfungsi

sebagai trigger atau pemanggil aplikasi lain pada saat-saat tertentu,

sesuai dengan keinginan dan tujuan dari di panggilnya kelas tersebut.

Suatu aplikasi, kelas, ataupun fungsi dapat di panggil oleh alarm

manager di dengan waktu yang spesifik maupun berinterval.

Bagaimanapun juga, kelas ini tidak dapat di lakukan atau di jalankan

tanpa pasangannya, yaitu broadcast receiver.

Broadcast Receiver adalah sebuah kelas atau fungsi yang

dibuat untuk menerima kiriman perintah dari alarm manager. Perintah

yang dikirim berupa data waktu yang di minta alarm manager untuk

menjalankan fungsi tertentu. Berikut adalah tahapan untuk

menjalankan kelas alarm manager :

1. Akses alarm manager.

2. Atur waktu.

3. Buat kelas broadcast receiver.

4. Buat pending intent yang di gunakan untuk intent / memanggil

fungsi yang di inginkan saat waktu sesuai.

5. Gunakan waktu pada tahap 2 dan pending intent pada tahap 4

untuk menyalakan alarm.

6. Lihat receiver dari tahap 3 menerima data panggilan