Upload
nguyenkiet
View
221
Download
3
Embed Size (px)
Citation preview
8
BAB 2
LANDASAN TEORI
2.1 Teori Telemedicine dan E-Health
2.1.1 Telemedicine
Aplikasi pengobatan klinis dimana informasi medis ditransfer melalui
media audio-visual interaktif disebut Telemedicine (Fabbrocini, et al,
2011).
Telemedicine berguna untuk pengaturan perawatan primer dan khusus
dalam sistem kesehatan publik, komunikasi elektronik dalam membuat
rujukan untuk perawatan khusus, membantu dalam menghubungkan pasien
dan rumah sakit utama dengan klinik perawatan di daerah terpencil dan
dapat meningkatkan kerjasama antara dokter spesialis dan perawat rujukan
(Coelho, 2011).
Kesuksesan program telemedicine terlihat dari meningkatnya tingkat
konsultasi, penerimaan secara positif, dan keseluruhan umpan balik yang
positif dari pasien (Dobke, et al, 2011).
Virtual Communities for Healthcare merupakan salah satu metode
untuk meningkatkan kualitas hidup pasien yang dikembangkan melalui
metode pembelajaran jarak jauh dengan menciptakan “virtual self-help
groups”. Kualitas hidup yang dimaksud adalah meningkatnya
kemandirian, self-management, memperkaya pengetahuan medis dan
memperbaiki kondisi kesehatan (Chorbev, et al, 2011).
9
Gambar 2.1 Ilustrasi Konsep Telemedicine
(Sumber: Design of Multimedia Messaging Service for Mobile
Telemedicine System - Setyono)
Menurut Fuad (2005), informatika kesehatan masyarakat merupakan
salah satu subdomain dari informatika kedokteran yang didefinisikan
sebagai disiplin ilmu yang berkembang dengan cepat yang berurusan
dengan penyimpanan, penarikan dan penggunaan data, informasi serta
pengetahuan biomedis secara optimal untuk memecahkan masalah dan
mengambil keputusan. Subdomain dalam informatika kedokteran menurut
Fuad (2005), meliputi:
a. Bio informatika bekerja pada proses molekuler dan seluler. Riset
dan aplikasi bio informatika memfasilitasi upaya-upaya rekayasa
genetik dan penemuan vaksin.
b. Informatika klinis yang diterapkan pada level individu, mengkaji
berbagai inovasi teknologi informasi untuk mendukung pelayanan
kesehatan pasien, komunikasi antara dokter dengan pasien serta
10
mempermudah dokter dalam mengumpulkan hingga mengolah data
individu pasien.
c. Medical imaging mengkaji aspek pengolahan data dan informasi
digital pada level jejaring dan organ.
d. Informasi kesehatan masyarakat yang berfokus pada populasi untuk
mendukung pelayanan, pendidikan dan pembelajaran kesehatan
masyarakat.
Secara sederhana, telemedicine sesungguhnya telah diaplikasikan
ketika terjadi diskusi antara dua dokter membicarakan masalah pasien
lewat mobile. Ilustrasinya seperti gambar 2.2.
Gambar 2.2 Blok Diagram Sistem Telemedicine
(Sumber: Design of Multimedia Messaging Service for Mobile
Telemedicine System - Setyono)
Praktek telemedicine dapat dibagi menjadi dua kategori berbeda:
realtime dan store-and-forward. Telemedicine realtime melibatkan
interaksi sinkron antara pihak yang bersangkutan. Misalnya, perawatan
kesehatan profesional dan pasien mungkin berinteraksi dengan video
conference. Sementara telemedicine realtime sering efektif dalam hal
kepuasan konsultasi dan pasien, itu menyajikan tantangan. Terpenting
adalah penjadwalan dari pihak yang bersangkutan, karena biasanya ada
11
dua penyedia layanan kesehatan yang terlibat dalam konsultasi (penyedia
lokal dan dokter), dan mereka berdua harus tersedia pada saat yang sama.
Bidang telemedicine lebih dari interaksi klinis, memiliki teknologi
untuk menghubungkan remote site juga memungkinkan pembelajaran
jarak jauh. Ini mungkin melibatkan pelatihan atau berbagi informasi untuk
perawatan kesehatan profesional yang tidak secara langsung melibatkan
pasien namun tetap meningkatkan perawatan.
2.1.2 Electronic Health (E-Health)
Menurut Pagliari (2005), E-Health adalah penggunaan jaringan
informasi dari teknologi telekomunikasi terutama internet untuk
meningkatkan kulitas pelayanan kesehatan. E-Health berguna untuk
memberikan informasi kesehatan, baik berupa resep obat, maupun yang
berhubungan dengan informasi jenis-jenis penyakit. E-Health merupakan
aplikasi teknologi komunikasi dan informasi yang mencakup keseluruhan
fungsi yang mempengaruhi sektor kesehatan. E-Health melibatkan banyak
pihak mulai dari masyarakat sampai dengan farmasi. Layanan E-Health
terdiri dari: content, connectivity, commerce, community, dan clinical care.
Fungsi dari E-Health adalah menggambarkan kemampuan unik
internet yang memungkinkan pengiriman pelayanan kesehatan. Hasilnya,
E-Health menyebabkan pelayanan kesehatan menjadi lebih efisien,
membuat pasien dan pihak kesehatan lainnya dapat melakukan konsultasi
dan interaksi tanpa harus bertemu secara tatap muka.
Kelebihan E-Health:
1. Membantu masyarakat dalam bidang kesehatan karena sebagian
masyarakat masih awam dalam melakukan pengobatan dan masih
12
menggunakan pengobatan alternatif.
2. Mempermudah untuk mendapatkan informasi tentang kesehatan,
pelayanan kesehatan, obat, penyakit dan lain-lain, sehingga
masyarakat dapat dengan dini untuk mencengah ataupun mengobati
penyakit yang diderita.
3. Mencari informasi tentang gaya hidup sehat.
4. Mencari kelompok diskusi tentang kesehatan.
Kekurangan E-Health:
1. Akses kesehatan melalui internet terbatas pada golongan tertentu
saja yang cukup mapan.
2. Informasi internet masih terkendala dengan sulitnya mencari
informasi yang valid, lengkap dan mudah dimengerti.
3. Masalah konflik “interest” dengan perusahaan kimia di dunia
internet.
2.2 Teori dan Konsep yang Mendukung Sistem Telemedicine
2.2.1 Membangun Perangkat Lunak
Menurut Pressman (2010, p1), Perangkat Lunak Komputer adalah
produk yang dibangun oleh seorang tenaga profesional dan bisa
dikembangkan dalam jangka waktu yang panjang, meliputi program yang
akan dieksekusi oleh komputer dengan ukuran dan arsitektur tertentu.
Konten yang berada di dalamnya merupakan implementasi dari eksekusi
program komputer, bisa berupa informasi deskriptif maupun informasi
virtual.
13
Rekayasa perangkat lunak mencakup proses, kumpulan metode, dan
berbagai alat yang mendukung tenaga profesional untuk membangun
perangkat lunak komputer yang berkualitas tinggi. Perangkat lunak
menjelma menjadi sesuatu yang penting bagi kehidupan manusia, karena
keberadaannya mempengaruhi setiap aspek kehidupan, meliputi
perdagangan, budaya, serta kegiatan sehari-hari.
Membangun sebuah perangkat lunak sama dengan membangun
produk-produk lainnya. Penerapan proses yang terencana, beradaptasi
dengan perkembangan perangkat lunak dengan maksimal agar
menghasilkan produk berkualitas tinggi dan dapat memenuhi kebutuhan
orang banyak.
Ada beberapa cara dalam membangun atau membuat sebuah
perangkat lunak antara lain adalah Model Building and Fix, Model
Waterfall, Prototyping, Model Incremental, dan Model Spiral. Namun
karena dalam pembangunan perangkat lunak ini yang digunakan adalah
Model Waterfall sehingga akan dijelaskan tentang Model Waterfall secara
menyeluruh.
2.2.2 Model Waterfall Dalam Perancangan Rekayasa Perangkat Lunak
2.2.2.1 Pengertian Model Waterfall
Menurut Pressman (2010, p39), Model Waterfall dapat juga
disebut sebagai Classic Life Cycle. Menunjukkan sebuah
pendekatan sistematis untuk pengembangan perangkat lunak.
Diawali dengan Communication, Planning, Modeling, Construction
dan Deployment seperti gambar 2.3.
14
Gambar 2.3 Tahapan Model Waterfall
(Sumber: Software Engineering, A Practitioner Approach 7th -
Pressman)
1. Communication.
Sebelum melakukan pekerjaan yang bersifat teknis, penting
bagi developer untuk berkomunikasi dan berkolaborasi secara
berkala dengan pelanggan atau perusahaan. Hal ini dilakukan
agar developer mengerti tujuan utama perusahaan dalam
pembuatan perangkat lunak dan dalam rangka
mengumpulkan segala persyaratan untuk membuat fitur
dalam perangkat lunak itu sendiri.
2. Planning.
Segala macam perjalanan sulit membutuhkan map untuk
mempermudahnya. Seperti itulah proyek pembuatan
perangkat lunak. Proyek perangkat lunak diibaratkan sebagai
sebuah perjalanan. Sedangkan mapnya adalah perencanaan
proyek perangkat lunak. Pada tahap ini developer mulai
memikirkan tugas-tugas teknis apa yang akan dilakukan,
resiko yang mungkin terjadi, sumber daya apa saja yang
15
diperlukan, produk apa saja yang akan diproduksi serta
membuat modul kerja.
3. Modeling.
Seorang arsitek, penata taman, pembangun jembatan,
insinyur penerbangan, sampai tukang kayu, selalu bergelut
dalam pembuatan desain model. Semuanya diawali dengan
pembuatan sketsa. Jika semua bagian-bagiannya cocok
dengan karakteristik lainnya, sketsa mulai dibuat lebih detil
agar kita dapat lebih memahami masalah yang ada. Seperti
itulah Rekayasa Perangkat Lunak, harus memulainya dengan
membuat suatu model agar dapat memahami kebutuhan
perangkat lunak tersebut. Kemudian desain yang dibuat harus
sesuai agar mencapai kebutuhan awal yang diminta.
4. Construction.
Pada tahap ini developer mulai membuat coding (pembuatan
kode) baik manual atau otomatis. Jika sudah selesai, maka
pengujian harus langsung dilakukan untuk meminimalisir
kesalahan-kesalahan dalam coding.
5. Deployment.
Perangkat lunak sudah dapat dikirimkan kepada pelanggan
dan pelanggan akan memberikan umpan balik sekiranya ada
yang perlu dievaluasi pada perangkat lunak tersebut.
2.2.2.2 Kelebihan Model Waterfall
Kelebihan Model Waterfall, yaitu:
1. Merupakan model linier yang sangat sederhana untuk
16
dimplementasikan.
2. Jumlah sumber daya yang diperlukan untuk melaksanakan
model ini minimal.
3. Dokumentasi diproduksi pada setiap tahap pengembangan
perangkat lunak.
4. Setelah setiap tahap utama coding perangkat lunak, pengujian
akan dilakukan untuk memeriksa jalan yang benar dari kode.
2.2.2.3 Kelemahan Model Waterfall
Kelemahan Model Waterfall, yaitu:
1. Anda tidak bisa melangkah selanjutnya, jika pada tahap
modeling/desain ada yang salah, hal-hal bisa menjadi sangat
rumit dalam tahap konstruksi.
2. Seringkali, klien tidak jelas tentang apa yang sebenarnya
diinginkan dari perangkat lunak. Setiap perubahan yang
disebutkan diantaranya dapat menyebabkan kebingungan.
3. Sampai pada tahap akhir siklus pengembangan selesai,
sebuah model kerja perangkat lunak tidak terletak di tangan
klien.
2.2.3 Server dan Web Server
Menurut Nugroho (2004, p5) secara global server dapat diartikan
sebagai pusat dan difungsikan sebagai “pelayan” yang berguna untuk
pengiriman dan penerimaan data serta mengatur pengiriman dan
penerimaan data diantara komputer-komputer yang tersambung. Dengan
kata lain server berfungsi menyediakan pelayanan terhadap klien.
17
Sedangkan web server menurut Nugroho (2004, p6) adalah sebuah
bentuk server yang khusus digunakan untuk menyimpan halaman website
atau home page. Komputer dapat dikatakan sebagai web server jika
komputer tersebut memiliki suatu program server yang disebut Personal
Web Server (PWS). PWS ini difungsikan agar halaman web yang ada di
dalam sebuah komputer server dapat dipanggil oleh komputer client.
Macam-macam web server seperti Apache (open source), Xitami, IIS,
PWS dan lain-lain. Bentuk hubungan server, client dan host dapat dilihat
pada gambar 2.4.
Gambar 2.4 Hubungan Server, Client dan Host
(Sumber: PHP & MySQL dengan Editor Dreamweaver MX - Nugroho)
2.2.4 AJAX
2.2.4.1 Pengertian AJAX
Menurut Sunyoto (2007, p159), aplikasi web yang bekerja
dengan AJAX bekerja secara asynchronously, yang berarti
mengirim dan menerima data dari user ke server tanpa perlu
18
memuat kembali seluruh halaman, melainkan hanya melakukan
penggantian pada bagian web yang hendak diubah. AJAX bukanlah
bahasa pemrograman, tetapi merupakan sebuah teknik pemanfaatan
Javascript dalam mengontrol class object XMLHttpRequest untuk
me-refresh/update konten dalam halaman web. Dengan AJAX,
aplikasi web dapat menjadi lebih baik, cepat dan menambah unsur
user-friendly dan interaktif.
AJAX berbasiskan pada JavaScript dan request HTTP.
Dengan menggunakan JavaScript AJAX dapat mengirim dan
menerima data antara web server dan web browser. Teknik yang
dimiliki AJAX akan bergantian bertukar data dan memuat ulang
seluruh halaman. Melalui AJAX, JavaScript dapat
dikomunikasikan secara langsung dengan server menggunakan
obyek JavaScript XMLHttpRequest. Obyek JavaScript ini dapat
melakukan pertukaran data sebuah web server tanpa harus memuat
(refresh) halaman web. AJAX menggunakan asynchronous data
transfer (pada HTTP request) antara browser dan web server, yang
memperbolehkan halaman web meminta bit yang kecil atau seluruh
informasi dari server.
2.2.4.2 Model Tradisional
Yang dimaksud dengan model tradisional di sini adalah model
yang sering digunakan tanpa AJAX. Pertama, browser membuat
sebuah HTTP request dikirim ke server, misalnya index.html.
19
Gambar 2.5 Arsitektur Model Tradisional
(Sumber: AJAX: Membangun Web dengan Teknologi
Asynchronous JavaScript & XML - Sunyoto)
Pada model di atas, server mengirimkan respon berisi seluruh
halaman termasuk header, logo, navigasi, footer dan lain-lain.
Ketika menekan tombol next maka akan menampilkan halaman
baru lagi (artinya header, logo, footer, navigasi akan dikirim ulang)
dan seterusnya akan mengirimkan data halaman baru lagi setiap
diminta dari user.
Halaman seperti ini tidak masalah ketika data yang
ditampilkan tidak memerlukan respon yang cepat. Namun, akan
menjadi masalah jika user menginginkan respon yang cepat,
misalnya ketika dipilih drop-down tertentu maka data yang
ditampilkan berubah menurut nilai dari drop-down.
2.2.4.3 Model AJAX
AJAX akan berkomunikasi dengan server tanpa harus me-
refresh semua halaman. Konsep ini berbeda dengan model sistem
tradisional. Dalam model AJAX, aksi dari sisi klien dibagi menjadi
dua bagian, yaitu layer user interface dan layer AJAX.
20
Gambar 2.6 Arsitektur Model AJAX
(Sumber: AJAX: Membangun Web dengan Teknologi
Asynchronous JavaScript & XML - Sunyoto)
Ketika user mengklik sebuah link atau mengirimkan sebuah
form maka input tersebut akan ditangani oleh layer AJAX dan
diinteraksikan dengan server, kemudian memperbaharui User
Interface (UI). Jadi, dalam AJAX, interaksi UI secara logika
terpisah dengan interaksi jaringan. Pendekatan yang digunakan
AJAX adalah bagaimana mengirimkan jumlah data yang kecil dari
dan ke server atas request user.
2.2.5 Cloud Computing
2.2.5.1 Pengertian Cloud Computing
Menurut Enterprise (2010, p1), Cloud Computing (Komputasi
Awan) adalah suatu bentuk evolusi lanjutan dari internet yang
menggabungkan pemanfaatan teknologi komputer dan
pengembangan berbasis internet. Dalam istilah ini “Cloud”
diartikan sebagai internet, sedangkan “Computing" diartikan
sebagai proses komputasi.
Cloud Computing ini adalah suatu istilah yang digunakan
untuk menyebut penggunaan teknologi komputer berbasis
pengembangan internet dengan software dan sistem operasi yang
21
tersedia secara online. Dalam hal ini internet dan semua yang
terkait dengan internet menjadi terminal pusat. Informasi secara
permanen tersimpan di server internet dan tersimpan dalam jangka
waktu sementara pada komputer pengguna (client) termasuk
komputer, tablet, notebook dan hardware lainnya.
Gambar 2.7 Ilustrasi Cloud Computing
(Sumber: Trik Mengoperasikan PC Tanpa Software - Enterprise)
2.2.5.2 Kelebihan Cloud Computing
Kelebihan Cloud Computing:
1. Biaya yang murah.
2. Operasional dan manajemen lebih mudah.
3. Kolaborasi yang dilakukan lebih terjamin dan efisien.
2.2.5.3 Kekurangan Cloud Computing
Kekurangan Cloud Computing:
1. Ada kemungkinan provider tidak konsisten dengan
performa aplikasi atau transaksi, jadi pengguna diharuskan
memahami level layanan yang meliputi waktu respon
transaksi, perlindungan data, dan kecepatan data recovery.
22
2. Terkait dengan privasi dan keamanan. Oleh karena banyak
orang lain menggunakan hosting, maka ada kemungkinan
data pengguna dapat dibaca oleh orang lain tanpa
sepengetahuan atau ijin pengguna, jadi pengguna harus
memahami keamanan sistem informasi software dan
hardware seperti firewall, VPNs (Virtual Private Networks),
encryption untuk data penting dan komponen sejenis
lainnnya.
2.2.5.4 Layanan dan Jenis Cloud Computing
Cloud Computing tediri dari tiga jenis layanan, yaitu:
1. Software as a Service (SaaS).
Jenis layanan ini merupakan hasil pengembangan dari
konsep ASP (Application Service Provider). SaaS
memberikan kemudahan kepada para penggunanya untuk
memanfaatkan software dengan cara berlangganan. Tetapi
pada jenis layanan ini, para pengguna tidak memiliki
kendali penuh pada aplikasi yang mereka gunakan.
2. Platform as a Service (PaaS).
PaaS adalah layanan yang menyediakan modul-modul siap
pakai yang dapat digunakan untuk mengembangkan
aplikasi. Tentu saja aplikasi yang nantinya dihasilkan hanya
dapat beroperasi di atas platform tersebut saja. Pada jenis
layanan ini, pengguna juga tidak memiliki kendali atas
komputasi dasar seperti memori media penyimpanan,
processing power dan piranti lainnya yang diatur oleh
23
provider layanan.
3. Infrastructure as a Service (IaaS).
Layanan ini menyediakan sumber daya teknologi informasi
dasar yang meliputi media penyimpanan, memory
processing power, sistem operasi, kapasitas jaringan dan
piranti sejenis lainnya yang bisa dimanfaatkan oleh para
penggunanya untuk menjalankan aplikasi yang dimilikinya.
IaaS memungkinkan para penggunanya melakukan
penambahan atau pengurangan kapasitas secara fleksibel
dan otomatis.
Jenis Cloud computing terbagi atas:
1. Public Cloud.
Public cloud adalah komputasi yang pelayanan dan
infrastruktur disediakan di luar lokasi melalui internet.
2. Private Cloud.
Komputasi yang layanan dan infrastruktur diselenggarakan
di jaringan pribadi.
3. Hybrid Cloud.
Mencakup berbagai pilihan public dan private dengan
penyedia ganda.
2.2.6 Unified Modeling Language (UML)
UML adalah suatu kumpulan permodelan konvensional yang
digunakan untuk menspesifikasi atau mendeskripsikan suatu sistem
perangkat lunak dalam bentuk obyek (Whitten & Bentley, 2007, p371).
24
Berikut akan dijelaskan 4 macam diagram yang digunakan dalam
pembangunan aplikasi berorientasi obyek, yaitu Usecase Diagram,
Sequence Diagram, Activity Diagram, dan Class Diagram.
2.2.6.1 Usecase Diagram
Menurut Whitten dan Bentley (2007, p246), Usecase
Diagram menggambarkan interaksi antara sistem dan sistem
eksternal serta user. Dengan kata lain, Usecase Diagram
menggambarkan siapa yang akan menggunakan sistem dan
dengan jalan apa yang diinginkan user untuk berinteraksi dengan
sistem. Selain itu, Usecase digunakan untuk secara tekstual
menggambarkan urutan langkah setiap interaksi tersebut.
Berikut adalah contoh Usecase Diagram sederhana:
Gambar 2.8 Contoh Usecase Diagram Sederhana
(Sumber: System Analysis and Design Methods 7th - Whitten &
Bentley)
25
Tabel 2.1 Keterangan Bagian Usecase Diagram
Actor
Orang, organisasi atau sistem
eksternal yang berperan
dalam satu atau lebih
interaksi dengan Usecase.
System
Boundary Boxes
Menunjukkan ruang lingkup
dari sistem anda. Apapun di
dalam kotak merupakan
fungsi yang ada di dalam
lingkup, apapun yang ada
diluar kotak tidak termasuk
di dalam fungsi.
Association
Asosiasi ada setiap kali
seorang aktor yang terlibat
dengan interaksi dijelaskan
oleh usecase. Dimodelkan
sebagai garis, hubungkan
kasus penggunaan dan
aktor satu sama lain.
Dengan mata panah
optional pada salah satu
ujung baris, panah sering
digunakan untuk
menunjukkan arah awal
hubungan atau untuk
menunjukkan aktor utama.
Usecases
Menjelaskan suatu urutan
tindakan yang menghasilkan
sebuah nilai yang terukur
untuk aktor.
26
2.2.6.2 Activity Diagram
Activity Diagram adalah diagram yang bisa digunakan untuk
menggambarkan aliran proses bisnis, langkah- langkah dari
usecase, atau logika suatu metode dari suatu obyek secara grafis
(Whitten & Bentley, 2007, p390). Secara grafis Activity Diagram
sama dengan flowcharts yang menggambarkan aliran sekuensial
aktifitas bisnis atau usecase. Tetapi perbedaannya adalah Activity
Diagram memiliki mekanisme untuk menggambarkan aktivitas
yang terjadi secara paralel. Karena itulah diagram ini sangat
berguna dalam memodelkan suatu aksi yang akan dilakukan
ketika suatu operasi dijalankan bersama dengan hasil dari aksi
tersebut. Berikut adalah contoh Activity Diagram:
Gambar 2.9 Contoh Activity Diagram
(Sumber: System Analysis and Design Methods 7th - Whitten &
Bentley)
27
Tabel 2.2 Keterangan Bagian Activity Diagram
Initial
Node
Bulatan merah muda di dalam
lingkaran menggambarkan awal dari
proses.
Actions Bulatan persegi panjang
menggambarkan langkah individu.
Flow Panah di dalam Diagram menunjukan
alur proses.
Decision
Bentuk berlian dengan 1 flow yang
masuk dan 2 atau lebih flow yang
keluar. Flow yang keluar ditandai
untuk mengindikasikan kondisinya.
Activity
final
Bulatan merah muda dengan garis
hitam berbentuk lingkaran
menandakan akhir dari proses.
2.2.6.3 Sequence Diagram
Sequence Diagram menggambarkan bagaimana obyek
berinteraksi satu sama lain melalui pesan di dalam pelaksanaan
suatu usecase atau operasi (Whitten & Bentley 2007, p394).
Dunia berbasis obyek berjalan dengan saling mengirim pesan
diantara obyek. Sistem dari Sequence Diagram membantu untuk
memulai mengidentifikasi high-level messages yang masuk dan
keluar sistem. Berikut ini adalah contoh Sequence Diagram:
28
Gambar 2.10 Contoh Sequence Diagram
(Sumber: System Analysis and Design Methods 7th - Whitten &
Bentley)
Tabel 2.3 Keterangan Bagian Sequence Diagram
Actor
Yang memulai dan diambil dari
usecase digambarkan dengan
usecase aktor simbol.
System
Kotak mengindikasikan sistem
sebagai “black box”. Merupakan
standar notasi pada Sequence
Diagram yang mengindikasikan
instance yang berjalan dari
sistem.
Activation
bars
Persegi panjang yang berada
pada lifelines mengindikasikan
periode waktu peserta aktif
dalam interaksi.
Input
messages
Panah horizontal dari aktor ke
sistem mengindikasikan pesan
29
masuk.
Output
messages
Panah horizontal dari sistem ke
aktor digambarkan dengan garis
putus-putus mengindikasikan
pesan keluar.
2.2.6.4 Class Diagram
Menurut Whitten dan Bentley (2007, p382), Class Diagram
menggambarkan struktur dari sistem. Serta menampilkan Class
Object yang berada di dalam sistem serta hubungan antara obyek
tersebut dan obyek lainnya. Berikut ini adalah contoh Class
Diagram:
30
Gambar 2.11 Contoh Class Diagram
(Sumber: System Analysis and Design Methods 7th - Whitten &
Bentley)
31
Tabel 2.4 Keterangan Bagian Class Diagram
Class
Class adalah blok-blok
pembangunan pada
Pemrograman Berorientasi
Obyek. Sebuah class
digambarkan sebagai sebuah
kotak yang terbagi atas tiga
bagian. Bagian atas
mendefinisikan bagian nama
class, bagian tengah
menyatakan atribut class,
sedangkan bagian bawah
adalah method-method dari
class.
Association
Sebuah asosiasi merupakan
relationship paling umum
antara dua class dan
dilambangkan oleh sebuah
garis yang menghubungkan
dua class tersebut. Garis ini
bisa melambangkan tipe-tipe
relationship dan juga dapat
menampilkan hukum-hukum
multiplicity pada sebuah
relationship. (Contoh: one-
to-one, one-to-many, many-
to-many)
Composition
Jika sebuah class tidak bisa
berdiri sendiri dan harus
merupakan bagian dari class
lain, maka class tersebut
memiliki relasi composition
terhadap class tempat dia
32
bergantung tersebut. Sebuah
relationship composition
digambarkan sebagai garis
dengan ujung berbentuk jajar
genjang berisi/solid.
Aggregation
Aggregation mengindikasikan
keseluruhan bagian
relationship dan biasanya
disebut dengan relation.
Dependency
Terkadang sebuah class
menggunakan class yang lain.
Hal ini disebut dependency.
Umumnya penggunaan
dependency digunakan untuk
menunjukkan operasi pada
suatu class yang
menggunakan class lain.
Sebuah dependency
dilambangkan sebagai sebuah
panah bertitik-titik.
2.2.7 Video Conference
2.2.7.1 Pengertian Video Conference
Video conference menurut Wijasena (2009) adalah
seperangkat teknologi telekomunikasi interaktif yang
memungkinkan dua pihak atau lebih di lokasi berbeda dapat
berinteraksi melalui pengiriman dua arah audio dan video secara
bersamaan. Video conference dapat memudahkan orang untuk
berkomunikasi jarak jauh dengan menggunakan komputer dan
media internet. Hal tersebut memungkinkan pengguna untuk
33
dapat berhubungan dengan orang lain dengan biaya yang lebih
rendah.
Dalam rangka untuk mencapai transmisi video dan audio
bagian-bagian dari pertemuan, video conference software yang
digunakan harus mengambil input dari mikrofon dan kamera,
mengubahnya menjadi sinyal digital yang dikodekan dan
kemudian diteruskan di internet di mana mereka diterima dan
diterjemahkan kembali ke dalam gambar dan suara di tempat yang
berbeda. Komunikasi video conference dilakukan dengan cara
mengubah suara, gambar analog menjadi paket data digital,
kemudian dari komputer diteruskan melalui Hub/Router/ADSL
Modem dikirimkan melalui jaringan internet dan akan diterima
oleh tempat tujuan melalui media yang sama. Dalam proses
pengiriman paket data, digunakan perangkat komunikasi data
digital seperti misalnya teknologi internet broadband. Teknologi
tersebut dapat mengirimkan dan menerima paket data dalam
jumlah yang sangat besar (Wolfe, 2007).
2.2.7.2 Teknologi Video Conference
Menurut Mirabito (2004), teknologi inti yang digunakan
dalam konferensi video adalah sistem kompresi digital audio dan
video stream secara nyata. Perangkat keras atau perangkat lunak
yang melakukan kompresi disebut dengan codec. Angka kompresi
dapat dicapai hingga 1:500. Digital yang dihasilkan aliran 1s dan
0s dibagi menjadi paket label, yang kemudian dikirimkan melalui
jaringan digital biasanya menggunakan Integrated Servive Digital
34
Network (ISDN) dan dengan Internet Protocol (IP). Penggunaan
modem audio dalam saluran pengiriman memungkinkan
penggunaan Plain Old Telephone System atau POTS, dalam
beberapa aplikasi kecepatan rendah, seperti video telephony,
karena POTS mengubah getaran digital ke atau dari gelombang
analog dalam rentang spektrum audio. Komponen lain yang
dibutuhkan untuk sistem video conference meliputi:
1. Video input: kamera video atau webcam.
2. Video output: monitor komputer, televisi atau proyektor.
3. Audio input: mikrofon.
4. Audio output: biasanya pengeras suara yang berkaitan
dengan perangkat layar atau telepon.
5. Data transfer jaringan telepon analog atau digital, LAN
atau Internet.
2.2.7.3 Protokol Video Conference
Protokol adalah aturan yang mengatur proses transmisi atau
pertukaran data antar-device. Untuk dapat melakukan video
conference, diperlukan beberapa protokol yang mengatur proses
streaming audio dan video.
1. Real-Time Protocol (RTP).
Real-time Protocol adalah protokol transport yang
dikembangkan khusus untuk streaming data baik audio
maupun video. RTP menyediakan timestamp dan sequence
number untuk mendukung waktu yang digunakan untuk
mengirim data dan mengendalikan server sehingga
35
streaming video yang dihasilkan mempunyai hasil yang
bagus untuk real-time (Kosiur, 1998, p137).
a. Sequence Number.
Sequence number menggunakan 16 bit yang selalu
bertambah satu untuk setiap paket yang ada.
Sequence number biasa digunakan oleh media player
untuk mendeteksi paket yang hilang dan
mengirimkan paket yang lengkap. Angka yang
digunakan pada saat inisiasi stream dipilih secara
acak.
b. Timestamp.
Timestamp digunakan untuk sinkronisasi dan
penghitungan jitter. Timestamp bersifat monotonik
dan linier.
c. Source Indentifier.
CSRC adalah identifier unik yang digunakan untuk
sinkronisasi RTP stream. Satu atau lebih CSRC
muncul saat RTP stream membawa banyak media
informasi. RTP biasanya menggunakan UDP dan
memanfaatkan fitur multiplexing dan checksum.
2. Real-Time Control Protocol (RTCP).
RTCP digunakan secara bersamaan dengan RTP. RTCP
memberikan pengaruh dalam RTP session. Terdapat 2
komponen penting dalam RTCP, yaitu sender report yang
berisi informasi banyaknya data yang dikirim dan receiver
36
report yang dikirimkan oleh penerima panggilan yang
berisi informasi mengenai jumlah paket yang hilang
selama sesi percakapan dan delay sejak pengiriman sender
report yang terakhir. Informasi ini dapat digunakan oleh
layer aplikasi yang lebih tinggi untuk memodifikasi
transmisi yang berjalan. RTCP saling berkomunikasi
untuk mengendalikan video conference dengan banyak
client (Kosiur, 1998, p142).
3. Session Description Protocol (SDP).
SDP adalah sebuah format yang digunakan untuk
multimedia session, termasuk video conference. SDP
mencakup session announment dan session invitation
(Kosiur, 1998, p217).
4. Real-Time Streaming Protocol (RTSP).
RTSP adalah sebuah protokol aplikasi untuk
mengendalikan data multimedia yang bersifat real-time.
RTSP menyediakan sebuah framework dibandingkan
sebuah protokol. RTSP mendukung fungsi dari RTP
sebagai data delivery protocol. Protokol diciptakan untuk
memberikan rate pengiriman file yang maksimum kepada
client (Kosiur, 1998, p151).
2.2.8 Multimedia Messaging Service (MMS)
2.2.8.1 Pengertian MMS
Menurut Setyono (2010), Multimedia Messaging Service atau
37
yang biasa dikenal dengan nama MMS adalah konten yang
mengirim pesan dari ponsel, sistem yang tidak hanya mengirim
pesan teks tetapi juga mengirim gambar, animasi, video dan
kombinasi dari mereka. Secara teoritis, MMS bisa mengirimkan
data sampai 300 kb tergantung pada penyedia layanan seluler dan
fitur MMS pada ponsel.
Hampir semua penyedia layanan seluler menyediakan
fasilitas MMS. Mereka menggunakan teknologi pembawa yang
berbeda, seperti spesifikasi jaringan dan sistem, yang
mempengaruhi kemampuan MMS untuk mentransfer data.
Banyak operator selular menggunakan umumnya Packet Radio
Service (GPRS), yang dapat mengirimkan data sampai 115 kbps
dan beberapa mereka menggunakan Universal Mobile
Telecommunication System (UMTS) dengan kecepatan 384 kbps.
Mereka juga memiliki data maksimal yang berbeda ukuran untuk
mengirim pesan multimedia ke ponsel, nomor telepon dan server
email, dan itu adalah dalam kisaran 50-100.
2.2.8.2 Proses MMS
Menurut Sharma (2009), MMS mempunyai arsitektur sebagai
berikut:
a. MMS Environment adalah pengendalian administrasi
tunggal dari MMS operator yang bertugas untuk
memberikan layanan untuk pelanggan. Pusat dari MMS itu
sendiri terdiri dari relay dan MMS server. Relay
bertanggung jawab untuk routing pesan dan server
38
bertanggung jawab atas penyimpanan pesan.
b. MMS interface adalah interface yang memungkinkan
jaringan berkomunikasi sebagai penyampaian pesan,
penerimaan pesan dan meneruskan pesan, yang terkait
dengan satu set protokol unit sebagai parameter.
c. MMS client adalah perangkat aplikasi yang berada pada
MMS enabled mobile yang menawarkan fitur seperti
manajemen pesan, pemberitahuan perangkat yang biasa
dikirim dengan kotak pesan terpadu untuk memanajemen
elemen MMS, pesan komposisi perangkat komposer yang
digunakan untuk membuat pesan multimedia baru,
penampil pesan untuk melihat pesan yang diterima,
konfigurasi MMS, preferensi konektivitas parameter dan
lain-lain.
Hubungan antara klien MMS dan Pusat MMS (MMS Center)
terbatas dalam hal bandwidth sehingga pesan multimedia adalah
biner-encoded untuk ditransfer secara efisien, pesan multimedia
teks dikodekan untuk transfer melalui protokol internet antara
MMSCs, dari MMSC terhadap domain internet atau dari/ke Value
Added Service (VAS) server. Pesan multimedia menjadi benda
yang dibungkus ke dalam amplop, yang memungkinkan berbagai
elemen jaringan untuk mengirimkan ke rute pesan terhadap
penerima (alamat primer dan sekunder penerima) dan yang
mengkarakterisasi isi pesan (kelas, prioritas, subjek dan lain-lain).
39
Gambar 2.12 Framework MMS
(Sumber: MMSSEC Algorithm for Securing MMS - Sharma &
Mistry)
Message Envelope adalah pesan multimedia yang terdiri dari
sebuah header pesan dan isi pesan. Header mempunyai
karakteristik seperti berisi alamat dari penerima yang bisa lebih
dari satu dalam arti mempunyai carbon copy, prioritas dari pesan
multimedia bisa urgensi, sedang, dan tidak urgensi, kelas dari
pesan bisa auto, auto personal, informasi atau iklan, tanggal dan
waktu pesan dikirim, periode penerimaan pesan, parameter untuk
membalas pesan, delivery atau laporan pembacaan yang diminta,
subjek dari pesan, visibilitas pesan, waktu pengiriman yang lebih
awal, indikator pendistribusian pesan, status MMSBox (Sharma,
2009).
Menurut Jagdale, et al (2010), untuk masalah security dalam
pengiriman MMS, menggunakan konsep Elliptic Curve
Crypthography yang merupakan jenis stenography yang hanya
pengguna tertentu yang tahu dimana kunci publik didistribusikan
dalam komunikasi. Beberapa algoritma criptography
40
membutuhkan sekumpulan konstanta yang telah ditetapkan untuk
diketahui oleh semua perangkat dalam komunikasi.
Cara kerja algoritma Elliptic Curve Cryptography adalah:
1. Menghasilkan titik-titik dari kurva.
Algorithm gen_points(a, b, p)
{
x = 0
while(x < p)
{
Cari res = (x3 + ax + b)
Cari nilai yang berbeda dari y2 yang mod dengan p
sama dengan res.
Cari akar kuadrat dari y;
Akhirnya, semua nilai (x, y) memberikan poin
yang berbeda pada elliptic curve.
}
}
2. Menghasilkan kunci dari user.
Misalkan ada dua pengguna A dan B.
Algoritma berikut digunakan untuk menghasilkan kunci.
Algoritma Generate_keys()
{
Pengguna A akan memilih nomor acak KA sebagai
kunci private.
Pilih Generator titik G (titik memiliki koordinat kecil x
dan y) dari titik kurva.
41
Untuk menghasilkan kunci public kAp kalikan KA dengan
G menggunakan Algoritma point_mult().
Ikuti langkah-langkah diatas untuk menghasilkan
kunci(kB, kBp) untuk pengguna B.
}
3. Perkalian titik-titik dari ECC.
Untuk mengalikan nomor K dengan titik p(x, y) berulang-
ulang menerapkan penggandaan titik dan operasi
penambahan.
Algoritma point_mult()
{
Untuk menggandakan sebuah titik(2p) gunakan
formula berikut:
S = [(3 x 2 + a) / 2 yp] mod p
Kemudian 2p memiliki koordinat (XR, YR) yang
diberikan oleh:
XR = (S2 - 2 x) mod p
YR = [S (x - XR) - y] mod p
Untuk menentukan 3P, gunakan P + 2P, menangani 2P
= Q. Disini P memiliki koordinat (x, y), Q (=2P)
memiliki koordinat (XQ, yQ).
S = [(yQ-y)/(XQ-x)] / mod p
P + Q = -R
XR = (s2 - x - XQ) mod p
YR = (S(x - XR) -y) mod p
42
4. Mengenkripsi isi pesan.
Algoritma encrypt_text()
{
Konversikan karakter ke dalam sebuah teks melalui
format ASCII nya.
Pilih sebuah titik pm dari titik yang dihasilkan pada
elliptic curve.
Kalikan nilai ASCII dengan pm untuk mendapatkan
titik lain pm1 menggunakan Algoritma point_mult.
Cipher text akan menjadi {kG, pm1 + k * kAp}
}
5. Mendekripsi isi pesan.
Algoritma decrypt_text()
{
Terima Cipher text yang akan menjadi {kG, pm1 + k *
kAp}
Kalkulasikan pm = pm1 + k * kAp - kbkG
}
Dalam metode ini gambar dapat menjadi hitam atau putih dan
menggunakan algoritma LSB yang digunakan untuk
menyembunyikan data di dalam sebuah gambar, merupakan
metode sederhana yang digunakan untuk menyembunyikan data
24 bit di dalam gambar. Setiap pixel dari suatu gambar dapat
direpresentasikan dengan tiga warna Merah, Hijau dan Biru.
Dalam gambar 24 bit, bisa ada 2^24 warna yakni 16,7 juta warna.
43
Cara menyembunyikan informasi dalam gambar: bagi gambar
MMS menjadi 3x3, konversi setiap bit dari teks menjadi piksel
dari least significant bit, pilih pixel dari data yang disembunyikan
dengan menggunakan password yang akan dibagi (shared) oleh
pengirim dan penerima.
Cara mengambil informasi tersembunyi dari gambar: bagi
gambar menjadi 3x3, gunakan password yang sama dengan yang
digunakan oleh pengirim untuk memilih pixel, ambil bit data dari
pixel terpilih dari least significant bit.
Cara menyembunyikan informasi di text untuk setiap bits
data yang disembunyikan, cari list dari akronim yang akan
diciptakan dan hanya diketahui oleh pengirim dan penerima,
contohnya hiding 1 untuk keseluruhan data dan hiding 0 untuk
akronim yang digunakan.
Menurut Djunaedi (2004) ada beberapa jenis telemedicine
ponsel teknologi, termasuk jaringan lokal nirkabel (WLAN),
jaringan mobile ad hoc (MANETs), jaringan nirkabel
pribadi/pasien (WPANs), generasi ketiga (3G) teknologi telepon
selular, identifikasi frekuensi radio (RFID) teknologi dan jaringan
sensor nirkabel (WSNs).
Seperti kita ketahui bahwa MMS dapat mengirim pesan
multimedia upto 300 kb. Tetapi di dunia nyata, hampir semua
seluler penyedia layanan hanya menyediakan ukuran data sebesar
100 kb dan ini sangat kecil ukuran data untuk sistem
telemedicine. Dokter membutuhkan kualitas tinggi dari gambar,
44
suara atau video untuk mendiagnosa pasien dengan benar.
Sebagai contoh, seorang perawat ingin mengirim data pasien
dalam bentuk gambar dengan ukuran 500 kb. Tentu, MMS tidak
bisa mengirimkannya karena data maksimum ukuran MMS
adalah 300 kb. Untuk mengatasi masalah ini, kita dapat
mengembangkan sebuah algoritma dengan memisahkan file
gambar menjadi 5 file dimana setiap file adalah 100 kb dan
mengirim mereka satu per satu. Metode ini sangat penting untuk
diagnosis oleh dokter untuk menghasilkan hasil terbaik. Setelah
menerima data pasien dengan sukses, aplikasi server
menggabungkan file terpisah ke dalam satu file lagi. Dokter tidak
perlu mengetahui bagaimana multimedia konten terbentuk dan
ada tetapi ia dapat mengamati dan mendiagnosa berdasarkan file
tunggal dari konten multimedia tersebut.
Gambar 2.13 Desain Untuk Mengirimkan Batas Atas Ukuran
Data MMS
45
(Sumber: Design of Multimedia Messaging Service for Mobile
Telemedicine System - Setyono)
Desain Algorithm Splitting Data. Ini adalah ide innovative
dalam penelitian. Kami mencoba untuk mengembangkan
algoritma untuk membagi dan menggabungkan data MMS yang
dapat melebihi batas ukuran data atas. Kompresi dapat
mengurangi kualitas dari konten multimedia, dan kemudian
dokter mungkin menghadapi kesulitan untuk diagnosis dan
akhirnya hasil diagnosis mungkin tidak akurat. Sistem akan
adaptif dan efisien untuk menggunakannya di daerah terpencil.
Gambar 2.16 menunjukkan flowchart dari algoritma dirancang
untuk pemecahan dan penggabungan data.
Gambar 2.14 Desain Algoritma (Flowchart) Untuk
Pemecahan Data
46
(Sumber: Design of Multimedia Messaging Service for Mobile
Telemedicine System - Setyono)
Desain algoritma untuk penggabungan data. Setelah
menerima data MMS dari nomor ponsel atau dari server email,
akan digabung menjadi satu file dan akan disimpan dalam
database server.
Gambar 2.15 Desain Algoritma (Flowchart) Untuk
Pemecahan Data
(Sumber: Design of Multimedia Messaging Service for Mobile
Telemedicine System - Setyono)
47
2.2.9 Ilmu Penyakit Dalam
Ilmu Penyakit Dalam dalam bidang kedokteran dapat didefinisikan
sebagai suatu ilmu kedokteran yang menangani diagnosis, penanganan
organ dan orang dewasa yang meliputi penyakit-penyakit tanpa bedah,
mencakup hampir seluruh tubuh manusia.