BAGAIMANA MEMILIH/MERANCANG ARSITEKTUR SUATU APLIKASI MOBILE ?

Slides:



Advertisements
Presentasi serupa
Kiky Rizky Nova Wardani, S.Kom
Advertisements

JARINGAN CLIENT - SERVER
Client-Server Computing
SISTEM TERDISTRIBUSI Definisi :
Sistem Jaringan Terdistribusi
BAB II FIREWALL Ibarat sebuah rumah yang memiliki pagar sebagai pelindungnya, baik dari kayu,tembok beton, kawat berduri ataupun kombinasi.
Model Sistem Terdistribusi
PEMROGRAMAN CLIENT/SERVER Riyanto, S.Kom 1.
SISTEM INFORMASI BERBASIS WEB
RANCANGAN ARSITEKTUR TEKNOLOGI INFORMASI Materi Pertemuan 27
IMPLEMENTASI SISTEM BASIS DATA
FIREWALL Ibarat sebuah rumah yang memiliki pagar sebagai pelindungnya, baik dari kayu,tembok beton, kawat berduri ataupun kombinasi beberapa jenis pagar.
SISTEM TERDISTRIBUSI Definisi :
Arsitektur Client-Server
ARSITEKTUR CLIENT SERVER
HUBUNGAN WEB DATABASE Sesi 8 83 web database.
Sistem Operasi Jaringan
MODEL SISTEM INFORMASI
ARSITEKTUR DAN PEMODELAN APLIKASI
Jaringan internet / Web Server Jaringan Bank
Arsitektur dalam Sister
Pertemuan 2 Khairul Anwar Hafizd
Client-Server Computing
Outline Elemen desain arsitektur. Membuat desain arsitektur.
ARSITEKTUR SISTEM TERDISTRIBUSI
Arsitektur SisTer.
Model Sistem Terdistribusi
Pertemuan 3 Khairul Anwar Hafizd
SIM Rumah Sakit Materi Kuliah PERTEMUAN 6.
ARSITEKTUR TEKNOLOGI INFORMASI
REKAYASA PERANGKAT LUNAK
7 DATABASE Client/Server Wiratmoko Y, ST C H A P T E R
Basis Data Klien Server dan Basis data Internet Materi 7
SISTEM DATABASE.
Web Service.
11 Arsitektur Sistem Terdistribusi
Perancangan Arsitektur Sistem
SMK TELKOM SANDHY PUTRA MALANG
Aplikasi Komputer.
CLIENT-SERVER DATA TRANSFER
Client-Server Computing
Basis Data Terdistribusi
ARSITEKTUR APLIKASI CLIENT SERVER
MANAJEMEN SISTEM INFORMASI “Basis Data”
Metode Rekayasa Perangkat Lunak
6 SUMBER DAYA JARINGAN CHAPTER
IMPLEMENTASI SISTEM BASIS DATA
BAB XV WIRELESS APPLICATION PROTOCOL
ARSITEKTUR CLIENT - SERVER
SISTEM BASIS DATA TERSEBAR
Prinsip Dasar Internet & Pemrograman Web
Review Sistem Terdistribusi
Andika Elok Amalia, ST., MT.
SISTEM BASIS DATA TERSEBAR
Database Server & Terdistribusi
Sistem Terdistribusi dan Jaringan Komputer
Konsep Web Statis dan Web Dinamis
Dasar Pemrograman Web.
APLIKASI CLIENT SERVER
Client-Server Computing
Mengadministrasi server dalam jaringan adalah suatu bentuk pekerjaan yang dilakukan oleh administrator jaringan. Tugasnya: Membuat server Mengelola jaringan.
SISTEM BASIS DATA TERSEBAR
Database Server & Terdistribusi
SISTEM TERDISTRIBUSI Definisi :
Prinsip Dasar Internet & Pemrograman Web
Aplikasi Komputer.
Mengenal DBMS (Database Management System)
SISTEM BASIS DATA TERSEBAR ARSITEKTUR SISTEM BASISDATA TERSEBAR/DDBMS
Aplikasi Komputer Dr. Mesterjon, S.Kom, M.Kom.
ADMINISTRASI JARINGAN Materi : “Server & client serta jenis-jenis Jaringan”
Transcript presentasi:

BAGAIMANA MEMILIH/MERANCANG ARSITEKTUR SUATU APLIKASI MOBILE ? Model Layout Software Hardware

ARSITEKTUR Ada dua arsitektur aplikasi yang paling umum digunakan dalam aplikasi mobile yaitu client-server dan peer-to-peer. Terdapat 1/lebih piranti mobile yang meminta layanan ke 1/lebih server   Request Response CLIENT (C) SERVER (S)

Ada berbagai macam model arsitektur Client-Server  Dinyatakan dalam istilah - LAYER, - TIER, - Komunikasi antara LAYER dan TIER

LAYER ”Layering” : Pemecahan program aplikasi ke dalam kelompok-kelompok kode program berdasarkan fungsinya sehingga memudahkan kode-kode program digunakan lagi untuk aplikasi lain Dalam 1 program aplikasi terdapat modul-modul program yang secara khusus difungsikan untuk - user-system interface (View) - logika aturan bisnis aplikasi (Control) - interaksi dengan Database (Model) Secara fisik, ”Layer” : modul-modul kode program yang disimpan dalam folder yang berbeda pada Client/Server.

Macam-macam LAYER Layer 0 : tidak memiliki kode aplikasi sama sekali Layer 1 : kode aplikasi untuk user-system interface disebut ”PRESENTATION” layer Layer 2 : kode aplikasi untuk mengelola logika aturan bisnis disebut ”BUSINESS” layer Layer 3 : kode aplikasi untuk interaksi aplikasi dengan database disebut ”DATA ACCESS” layer CLIENT: Dimungkinkan memiliki Layer 0 – 3 Client yang hanya memiliki Layer 0 : tidak terdapat sama sekali kode aplikasi yg diinstall di Client (semua kode aplikasi ditangani dan disimpan di Server) disebut ”THIN CLIENT” Client yang memiliki Layer 1 – 3  ”FAT CLIENT” SERVER: Tidak mungkin Layer 0  Layer 1 – 3

TIER Pengelompokkan kode-kode program aplikasi berdasarkan fungsinya dengan menempatkannya pada 1/lebih mesin yang berbeda ”Tiering” : menempatkan modul-modul program ke dalam mesin yang berbeda sesuai fungsinya sehingga program aplikasi yang telah dibangun berdasarkan Layer akan lebih mudah untuk di Tiering

Macam-macam TIER 1. PRESENTATION Tier (first tier): aplikasi user-system interface 2. APPLICATION Tier (second tier): aplikasi pemrosesan Logika Bisnis & Logika Akses Database 3. DATABASE Tier (third tier): DBMS & Datasource lainnya

Merancang Arsitektur Aplikasi Mobile Menentukan : Arsitektur piranti di CLIENT ? Arsitektur di SERVER ? Jenis KONEKTIVITAS-nya ?

A. CLIENT THIN Clients FAT Clients WEB PAGE HOSTING SmartPhone, PDA, Tablet PC, Palmtop, dll Macam-macam (Pilihan) Arsitektur Client dibedakan berdasarkan LAYERING-nya THIN Clients FAT Clients WEB PAGE HOSTING

A.1.THIN Client Client tidak diinstal aplikasi yang dibangun, Client sepenuhnya tergantung dari koneksi Server Client diinstal - Web Browser (Microsoft Pocket Internet Explorer, Microsoft Internet Explorer, Netscape Navigator) - WAP Browser Kelebihan Thin Client : Lebih mudah dan murah dalam perawatan software client (tidak perlu ada updating & distribusi aplikasi client) Kelemahan Thin Client: Fungsi client sangat tergantung dari kualitas koneksi client-server

A.2. FAT Client DB DB DB FAT Client – Two Layer Hanya ada 1 Aplikasi yang mencakup kode-kode fungsi : PRESENTATION (Form) BUSINESS DATA ACCESS PRESENTATION (Form) BUSINESS DATA ACCESS PRESENTATION (Form) BUSINESS DATA ACCESS DB DB DB FAT Client – Two Layer FAT Client – Three Layer FAT Client – One Layer

Lanjutan FAT Client Client dapat memiliki 1 hingga 3 layer aplikasi Tiap layer aplikasi dapat bekerja secara independen terhadap Server Jenis FAT Client cocok untuk : Situasi dimana koneksi Client – Server tidak dapat dijamin kualitasnya, padahal frekuensi kebutuhan update data cukup tinggi FAT Client dapat menyimpan hasil update data ”sementara” di Database Lokal piranti Mobile namun saat koneksi ke Server tercapai data dapat di upload Kelemahan FAT Client: Bergantung pada spesifikasi piranti dan Sistem Operasi tertentu -Lebih sulit dan mahal dalam perawatan aplikasi client (perlu ada pembuatan/update & distribusi aplikasi client, aplikasi harus support banyak ragam piranti)

A.3. WEB PAGE HOSTING Menampilkan & memproses web page secara mandiri dalam Mobile Device  Menginstal ”mini” web server dalam mobile device (Ms. HTTP Server) 1 Aplikasi Mencakup kode-kode Fungsi: PRESENTATION (web) BUSINESS DATA ACCESS PRESENTATION (web) BUSINESS DATA ACCESS PRESENTATION (web) BUSINESS DATA ACCESS DB DB DB Web Page Hosting – One Layer Web Page Hosting – Three Layer Web Page Hosting – Two Layer

B. SERVER Arsitektur One-Tier Arsitektur Two-Tier Macam-macam (Pilihan) Arsitektur Server dibedakan berdasarkan TIERING-nya Arsitektur One-Tier Arsitektur Two-Tier Arsitektur Three-Tier

  B.1. Arsitektur One-Tier + : - : Request Response PRESENTATION server APPLICATION server (Business & Data Access) 3. DB Server (DBMS) + : Mudah dan cepat dalam pengembangan kode aplikasi dalam 1 Server - : Sulit mengukur seberapa besar aplikasi (campur jd 1) sehinga keamanan data kurang terjamin.

   B.2. Arsitektur Two-Tier + : - : 3. DB Server (DBMS)    Request Response PRESENTATION server APPLICATION server (Business & Data Access) + : Mudah dan cepat dalam pengembangan kode aplikasi dalam dua server Memiliki DBMS server khusus sehingga beban server lebih ringan - : Sulit mengukur seberapa besar aplikasi (campur jadi satu). Keamanan data kurang terjamin karena (Aplikasi masih menyatu dengan Presentation). Lebih Mahal.

B.3. Arsitektur Three-Tier  3. DB Server (DBMS)    Request Response 2. APPLICATION server (Business & Data Access) PRESENTATION server + : mudah diukur (scalable) Aman (Aplikasi dan DBMS [Intranet zone] terpisah dari Presentation [Demilitarized Zone]) DBMS server khusus (beban server lebih ringan, cepat) - : Terlalu banyak alat (mahal), pengelolaan dan pengembangan sulit dilakukan

  JENIS KONEKSI Selalu Terkoneksi Terkoneksi secara Periodik (Parsial) Tidak Pernah Terkoneksi (misal: game, jam)   Request Response CLIENT (C) SERVER (S)

SINKRONISASI Komunikasi terus-menerus (continuous) - Synchronous = proses updating data dilakukan pada piranti mobile di Sistem Back-End Komunikasi terus-menerus (continuous) - Synchronous - Asynchronous 2. Store-and-forward

    SINKRONISASI a. Komunikasi Synchronous = proses updating data di piranti mobile dengan di Sistem Back-End a. Komunikasi Synchronous  SERVER  SIMPAN ya ! Server MENYIMPAN data CLIENT Data TELAH DISIMPAN lho & User-Interface dpt digunakan lagi b. Komunikasi Asynchronous   SIMPAN ya ! Server MENYIMPAN data Data SEDANG DISIMPAN Ttp User-Interface sdh dpt Digunakan lagi CLIENT Data SELESAI DISIMPAN KONEKSI

    2. Komunikasi STORE-and-FORWARD SERVER CLIENT SIMPAN Data KONEKSI

JADI ADA BERAPA KEMUNGKINAN ARSITEKTUR APLIKASI MOBILE CLIENT-SERVER? Terdapat 36 Kemungkinan Kombinasi dari pilihan: Client : Layer 0/1/2/3) Server : Tier 1/2/3) Konektivitas : TerusMenerus/Parsial/Never (Table 3-1)

Mana Arsitektur yang relatif SEDERHANA tetapi HANDAL? Layer 0, Tier-3, Terkoneksi terus-menerus DB Server (DBMS)   PRESENTATION server   TerKONEKSI Terus hanya BROWSER APPLICATION server (Business & Data Access)

Mana Arsitektur yang IDEAL tetapi KOMPLEKS? Layer 3, Tier-3, Terkoneksi Parsial DB Server (DBMS)   PRESENTATION server   TerKONEKSI Parsial Diinstal APlikasi 1. Presentation (View/Form Interface) 2. Business (Perhitungan/Analisis) 3. Data Access (Model DBMS) APPLICATION server (Business & Data Access)

Bagaimana Kriteria Disain Arsitektur yang ideal ? Memenuhi Kebutuhan User Compatible/Independent secara teknologi Dapat digunakan kapan saja secara mudah dan handal Mudah dikembangkan (hardware/software) Dapat diakses sebanyak mungkin user