Anda di halaman 1dari 9

VIDIO 1: Elemen dalam desain arsitektur (Menerapkan software ke hardware)

Capaian pembelajaran :

 Mampu menjelaskan komponen penting/fundamental dari sebuah sistem informasi


 Mampu menjelaskan client-server, server-based, dan arsitektur aplikasi mobile
 Mampu menjelaskan bagaimana cloud computing dapat diterapkan sebagai salah satu
komponen dari arsitektur sistem

A. Desain Arsitektur

Desain arsitektur adalah sebuah rancangan yang menjelaskan bagaimana sebuah sistem
akan didistribusikan ke seluruh komputer serta software dan hardware apa saja yang akan
digunakan setiap komputer untuk menjalankan sistem. Output dari proses desain arsitektur
adalah model arsitektur yang menggambarkan bagaimana sistem ini disusun sebagai satu set
komponen untuk berkomunikasi.Komponen Utama Desain Arsitektur yaitu Software dan
Hardware.

Desain arsitektur ini bertujuan :

 Menerapkan komponen software pada sebuah sistem informasi ke dalam hardware dari
sistem dengan cara yang paling menguntungkan.

Software pada sebuah sistem akan dibagi menjadi empat fungsi dasar :

 Penyimpanan data, yaitu software database yang menyimpan data mengenai suatu
organisasi
 Logika pengaksesan data, yaitu proses atau tahapan yang perlu dilakukan untuk
mengakses data yang telah disimpan. Fungsi ini merupakan pemograman yang nantinya
akan memproses datanya, seperti contohnya sql statements. Logika ini biasanya dalam
suatu sistem database terdapat dalam software DBMS (Database Management System),
contohnya seperti Microsoft access.
 Logika aplikasi, yaitu logika yang didokumentasikan dalam DFD, use case, dan
kebutuhan fungsional. Pada bagian inilah pemograman yang umumnya kita ketahui.
Pada bagian ini, pemogramannya akan menggunakan bahasa pemograman seperti java,
phyton, dll.
 Logika presentase, yaitu bagaimana tampilan informasi yang diberikan kepada
pengguna serta bagaimana penerimaan sistem terhadap command dari pengguna.
Bagian ini mungkin lebih akrab jika disebut sebagai bagian untuk memrogram User
Interface atau UI atau user interface yaitu bagaimana tampilan sebuah produk dilihat
oleh pengguna.

Setelah software, komponen lainnya dari arsitektur desain adalah hardware. Hardware
dalam sistemm terdiri atas tiga komponen utama :
 Komputer client/komputer pengguna. Yaitu perangkat yang digunakan oleh pengguna
untuk melakukan input dan output. Contohnya seperti laptop dan smartphone.
 Server. Yaitu komputer besar yang bersifat multi-user yang digunakan untuk menyimpan
software dan data.
 Jaringan/network. Yaitu infrastruktur yang menghubungkan komputer-komputer.

Jadi, dapat disimpulkan bahwa desain arsitektur adalah hardware yang dipilih untuk
digunakan, bagaimana menghubungkan hardware tersebut, dan software mana yang dipasang
serta hardware mana yang akan dipasangkan software tersebut.

B. Arsitektur Client Server

Arsitektur Client server adalah arsitektur yang menyeimbangkan proses antara perangkat
client/pengguna dengan satu atau lebih perangkat server. Dalam arsitektur ini, pengguna/client
akan berurusan dengan logika presentase sedangkan server sistem akan mengurus mengenai
penyimpanan data dan logika pengaksesan data. Sedangkan untuk logika aplikasinya
penempatannya itu bergantung kepada bagaimana konfigurasu antara client dan server.

Prinsip kerja pada arsitektur ini sangat sederhana, dimana Server akan menunggu
permintaan dari Client, memproses dan memberikan hasil kepada Client, sedangkan Client akan
mengirimkan permintaan ke Server, menunggu proses dan melihat visualisasi hasil prosesnya.

Jenis-jenis Model Arsitektur Client Server

 Arsitektur two-tiered client-server.

Berdasarkan gambar, dapat dilihat pembagian fungsi softwarenya. Untuk bagian


server, ia akan menangani mengenai logika pengaksesan data dan penyimpanan data.
Sedangkan untuk bagian client/pengguna akan menangani bagian logika presentase.
Untuk penempatan logika aplikasi, disini terbagi menjadi dua :
1. Thick client, yaitu logika aplikasi ditempatkan kebanyakan di sisi client. Atau dengan
kata lain, program software ini dipasang pada komputer client. Client tidak hanya
berperan sebagai penyaji interface melainkan jg berfungsi mengoperasikan aplikasi.
Sementara itu server hanya bertugas mengelola data saja sehingga. Server tidak
akan terlalu terbebani oleh request yang banyak dari client karena sesungguhnya
server hanya mengelola data yang diminta oleh client.
2. Thin client, yaitu logika aplikai ditempatkan kebanyakan di sisi server. Artinya
program software dipasang di perangkat server. Client akan merasakan akses yang
cepat karena semua prosedur dan eksekusi dilakukan oleh server. Server juga tidak
terlalu terbebani karena jumlah client yang dilayani masih bisa dijangkau.

Perbedaan keduanya selain dari posisi logika aplikasinya, adalah thick client tidak
memerlukan koneksi ke server untuk bisa menjalankan aplikasinya. Sedangkan thin
cilient perlu koneksi ke server untuk bisa menjalankan aplikasi

 Arsitektur three-tiered client-server

Pada arsitektur client-server 3 tingkat ini terdapat sever lagi yang akan mengurus
logika aplikasinya. Server aplikasi ini berdiri diantara client dan databse server yg
dimana berperan sebagai busines proses layer. Lapisan ini disebut juga lapisan
perantara membantu komunikasi lebih cepat antara client dan lapisan data.
 Arsitektur n-tiered client-server.

Dalam arsitektur ini, organisasi dapat menambahkan sebanyak mungkin server


sesuai dengan kebutuhan mereka. Contohnya seperti gambar diatas, yaitu
organisasinya menambahkan dua buah server, dimana server pertama akan mengurus
mengenai logika aplikasi, satu server lagi akan mengurus mengenai logika web, dan
server yang sudah ada sebelumnya akan mengurus hal-hal yang berkaitan penyimpanan
data atau database.

 Arsitektur berbasis base (zero-tiered client-server).

Arsitektur ini memfokuskan setiap fungsi pada software ke dalam perangkat


server. Artinya, penyimpanan data, logika pengaksesan data, logika aplikasi, dan logika
presentase semua dilakukan di perangkat server yang dikendalikan melalui terminal
yang digunakan untuk operasional server.

C. Arsitektur Aplikasi Mobile


Arsitektur lainnya yang perlu diketahui adalah arsitektur aplikasi mobile. Arsitektur ini
sebenarnya mirip dengan arsitektur client-server. Arsitekur ini terbagi lagi menjadi
beberapa jenis:
 Rich client, yaitu seluruh fungsi pemrosesan software diletakkan di perangkat mobile.
Artinya, logika presentase, logika aplikasi, dan logika pengaksesan data semua berada
di sisi client/perangkat mobile dengan menggunakan resources-nya. Contoh dari
arsitektur ini adalah aplikasi pada smartphone yang bisa digunakan tanpa
menggunakan internet
 Thin web-based client, yaitu logika aplikasi dan pengaksesan data diletakkan di sisi
server. Arsitektur ini digunakan untuk aplikasi smartphone yang memerlukan internet.
 Rich internet application, yaitu arsitektur yang berbasis browser atau untuk mengakses
aplikasinya, perlu membuka browser terlebih dahulu. Arsitektur ini menggunakan
beberapa teknologi dari perangkat pengguna/client untuk memberika UI yang lengkap
bagi pengguna. Namun, penggunaan arsitektur ini semakin lama semakin menurun.
Salah satu contoh aplikasinya adalah adobe flash.

Setelah mengetahui beberapa arsitektur aplikasi, berikut beberapa jenis aplikasi yang
perlu diketahui:

 Native app, yaitu aplikasi yang diprogram dan dirancang untuk berjalan di perangkat
tertentu dengan OS tertentu. Misalnya, sebuah aplikasi dirancang untuk berjalan di
android, dengan android memiliki OS versi 11.
 Cross-platform framework, yaitu aplikasi yang dikembangkan dengan teknologi
berbasis web dan menggunakan framework untuk bisa digunakan dibanyak
perangkat. Contohnya aplikasi Tokopedia dan Shopee yang bisa diakses melalui
banyak perangkat baik itu android maupun ios.
 Aplikasi web mobile, yaitu aplikasi yang berbasis browser yang tidak terikat oleh
platform. User experience aplikasi ini sangatlah terbatas. Contohya adalah
Tokopedia dan Shopee yang diakses melalui browser perangkat mobile.

Setelah mengetahu mengenai berbagai jenis arsitektur, maka perlu diketahui juga
mengenai bagaimana perkembangan dalam konfigurasi arsitektur. Seiring dengan
perkembangan hardware, softwarem dan networking, hal ini mendorong juga
munculnya berbagai pilihan arsitektur baru. Beberapa diantaranya adalah:

 Virtualisasi, yaitu pembuatan sebuah perangkat atau resource virtual. Dalam


virtualisasi, sebuah server fisik akan dipecah menjadi beberapa server virtual yang
lebih kecil. Satu server fisik bisa menjalankan beberapa mesin virtual dengan OS
yang mungkin berbeda-beda. Contohnya seperti virtualBox yang memungkinkan
komputer/perangkat yang ada untuk menjalankan berbagai OS didalamnya. Seperti
komputer windows 10 bisa menjalankan/memvisualisasikan windows 7, 8 atau bisa
juga linux. Selain server, penyimpanan juga bisa di virtualisasi. Virtualisasi untuk
penyimpanan dilakukan dengan cara menggabungkan beberapa jaringan perangkat
penyimpanan menjadi sebuah unit penyimpanan.
 Cloud computing, yaitu resource-resource seperti penyimpanan dan server
diberikan sebagai sebuah layanan. Hardware dan software apapun bisa dijadikan
sebagai sebuah layanan yang akan diberikan dimanapun dan kapanpun. Cloud ini
bisa dikatakan sebagai kumpulan hardware, network, penyimpanan, perangkat, dan
interface yang disatukan yang akan diberikan sebagai layanan computing. Cloud ini
digunakan jika organisasi tidak ingin memiliki hardware fisik dan alat pengelolaan
lainnya ditempat mereka. Mereka memilih untuk membayar hardware dan software
yang dikelola di tempat lain, namun bisa diakses menggunakan network seperti
internet. Salah satu contoh dari cloud adalah dropbox. 

Ada beberapa keuntungan dari penggunaan cloud:

 Elastisitas, artinya layanan yang diperoleh dari cloud bisa ditingkatkan dan
dikurangi sesuai dengan permintaan. Misalkan seseorang bisa meminta
penambahan penyimpanan cloud atau pun menguranginya.
 Pelanggan cloud bisa memperoleh layanan cloud secara langsung dan cepat.
 Layanan cloud biasanya memiliki API standar 
 Pelanggan membayar sesuai layanan yang digunakannya

VIDIO 2 : Kebutuhan non-fungsional sebagai sumber untuk menentukan desain arsitektur

Capaian pembelajaran : Menjelaskan bagaimana operasional, performa, keamanan, budaya,


dan politik dapat mempengaruhi desain arsitektur

Dalam mendesai arsitektur sebuah sistem, biasanya desainnya berdasarkan


infrastruktur yang telah digunakan dalam bisnis/aktivitas atau bisa juga berdasarkan keperluan
bisnis sebuah proyek (namun ini jarang dilakukan). Contohnya, jika organisasi telah
menggunakan aplikasi berbasis windows dalam proyek, maka akan lebih baik jika menggunakan
software berbasis windows dalam desain arsitekturnya.  

 Jika seandainya desain arsitektur tidak menggunakan infrastruktur yang sudah ada atau
juga kebutuhan aktivitas/bisnis dari proyek, maka dalam desain arsitektur kebutuhan non-
fungsional akan menjadi sangat penting.

Setelah sebelumnya dipelajari bahwa kebutuhan non-fungsional ini terbagi menjadi 4,


yaitu operasional, performa, keamanan, dan budaya dan politik (kali ini akan membahas lebih
detail mengenai kebutuhan non-fungsional).

A.  Kebutuhan operasional. 
Kebutuhan operasional mencakup dimana dan di lingkungan seperti apa sebuah
sistem akan beroperasi. Kebutuhan operasional ini terbagi menjadi 4 kategori, yaitu :
1. Lingkungan teknis, yaitu kebutuhan yang mencakup mengenai hardware, software, dan
kebutuhan jaringan khusus yang diperlukan dalam kebutuhan bisnis/aktivitas.
Contohnnya, setiap kantor dalam sebuah organisasi harus memiliki jaringan yang selalu
terhubung yang memungkinkan update database secara real-time
2. Integrasi sistem, yaitu kebutuhan mengenai cakupan dari operasi sistem. Atau dengan
kata lain, kebutuhan ini mencakup mengenai dengan sistem-sistem apa saja yang akan
beroperasi bersama dengan sistem yang akan dibuat. Contohnya, sistem yang akan
membaca data yang diinput akan beroperasi dengan sistem penyimpanan database,
yaitu data yang diinput dibaca lalu di tulis di dalam penyimpanan database.
3. Portabilitas, yaitu kebutuhan mengenai bagaimana bentuk sistem jika beroperasi di
lingkungan lain. Contohnya, sebuah sistem yang beroperasi di Android bisa berubah
bentuk sistemnya jika dioperasikan di iOS.
4. Pemeliharaan, yaitu kebutuhan mengenai bagaimana perkiraan perubahan pada
bisnis/aktivitas. Jika terjadi perubahan, maka sistem harus bisa beradaptasi dengan
perubahan tersebut. Contohnya, sebuah sistem pada organisasi harus bisa beradaptasi
jika terjadi penambahan divis/departemen dalam organisasi.
B. Kebutuhan Peforma
Setelah kebutuhan operasional, ada kebutuhan performa . Kebutuhan ini
berkaitan dengan Kecepatan, kapasitas, dan keandalan yang dimiliki sistem. Kebutuhan
Peforma ini terbagi menjadi 3 kategori, yaitu :
1. Kebutuhan kecepatan, yaitu kebutuhan mengenai berapa lama waktu yang
diperlukan sistem untuk bekerja menjalankan fungsinya. Contohnya sistem kita
harus menanggapi permintaan transaksi dalam waktu kurang dari 4 detik.
2. Kapasitas, yaitu kebutuhan mengenai total atau nilai puncak/jumlah tebanyak
pengguna dan volume data yang diperkirakan. Contohnya sebuah sistem
diperkirakan dapat beroperasi dengan jumlah pengguna sebanyak 2.000 orang
secara bersamaan.
3. Ketersediaan dan keandalan, yaitu kebutuhan yang meliputi mengenai bagaiman
sistem akan tersedia untuk digunakan oleh pengguna dan batas failure rate (cari
pengertiannya) yang disebabkan karena error. Contohnya, sebuah sistem
diharapkan memiliki presentase operasi/ketersediaan sekitar 99% atau jika dalam
sehari, sistem hanya boleh down selama  8 detik.

C. Kebutuhan  keamanan

 Kebutuhan keamanan juga terdiri atas 4 kategori, yaitu:

1. Perkiraan nilai sistem, yaitu kebutuhan mengenai bagaimana perkiraan nilai dari
sebuah sistem beserta datanya. Untuk lebih memahaminya, misalkan bahwa jika
seluruh data dalam sebuah sistem hilang, maka akan merugikan organisasi sebesar
Rp 100.000.000.
2. Kontrol akses, yaitu mengenai pembatasan siapa yang bisa mengakses suatu data
dalam sistem. Contohnya, data mata kuliah yang bisa diambil oleh mahasiswa hanya
bisa diubah oleh pihak kampus dan admin neosia.
3. Enkripsi dan autentikasi, hal ini berkaitan dengan data apa saja yang akan dienkripsi
dan dimana atau apakah proses autentikasi diperlukan untuk akses pengguna.
Contohnya adalah pesan yang dikirim melalui media seperti WA akan dienkripsi dari
hp pengirim ke hp penerima.
4. Kontrol virus, hal ini berkaitan dengan tahapan-tahapan yang dilakukan untuk
mengendalikan dampak yang berpotensi dihasilkan oleh virus. Contohnya seperti
pada komputer kita, sebelum bisa mengakses datanya, biasanya komputer akan
mengecek apakah data bervirus atau tidak.

D. Kebutuhan budaya/politik. 
Kebutuhan ini terdiri atas 4 kategori juga, yaitu :
1. Multilingual, yaitu kebutuhan mengenai bahasa-bahasa apa saja yang diperlukan
dalam sistem untuk para pengguna. Misalnya sistem yang akan dibuat akan
beroperasi dalam bahasa Indonesia, bahasa Inggris.
2. Kustomisasi, yaitu mengenai spesifikasi aspek-aspek apa dari sistem yang dapat
diubah oleh pengguna lokal. Misalkan, seorang pengguna ingin melihat database
mengenai penelitian dari negara lain, maka mereka bisa mengganti negara dalam
sistemnya.
3. Menjelaskan aturan yang tidak ditetapkan/disebutkan, yaitu mencakup bagaimana
sistem dapat memberikan gambaran jelas perbedaan sistem untuk tiap negara atau
bahkan organisasi. Misalkan, daftar harga barang dalam sistem semuanya akan
menggunakan Dollar, sesuai dengan dimana sistem terus dibuat atau mata uang yang
dipilih saat pertama kali sistem dibuat.
4. Legal, yaitu mencakup hukum dan regulasi yang diterapkan dalam kebutuhan sistem.
Misalnya, data pribadi pengguna tidak dapat dipindahkan/dikirim dari negara-negara
di eropa ke Amerika Serikat.

VIDIO 3 : Mengetahui kebutuhan dalam sistem dengan spesifikasi software dan hardware

Tujuan pembelajaran : Membuat spesifikasi mengenai hardware dan software

Spesifikasi HW/SW ini digunakan apabila hardware atau software untuk sistem harus
dibeli. Misalkan, agar sistem bisa berjalan, maka hardware yang diperlukan memiliki spesifikasi
yang tinggi serta memiliki software yang bisa melakukan fungsi tertentu. 

Spesifikasi ini juga, secara bersamaan akan menjelaskan mengenai bagaimana


sebenarnya kebutuhan dari proyek. Contohnya, jika proyek memilik spesifikasi yang tinggi
mengenai kapasitas hardware seperti penyimpanan, artinya proyek memerlukan penyimpanan
data yang cukup besar dan mampu memproses data dengan cepat.

Kepemilikan atau akuisisi dari hardware dan software ini akan dilakukan oleh
divisi/departemen pembelian pada suatu organisasi, khususnya pada organisasi/perusahaan
yang besar. Perlu diketahui, bahwa dalam membeli hardware  dan software ini sistem analis
atau bagian divisi IT tidak melakukan sendiri pembeliannya. Oleh karena itu, detail mengenai
hardware dan software yang diperlukan harus ditulis dan dijelaskan denan baik ke divisi
pembelian.
Contoh spesifikasi HW/SW :

 Berdasarkan tabel tersebut, dapat dilihat bagaimana spesifikasi HW/SW yang


diperlukan oleh sistem. Dari kelihatannya, karena sistem menggunakan dua server tambahan
yaitu server web dan server aplikasi, maka bisa dikatakan arsitektur yang digunakan adalah
arsitektur three-tiered client-server. Bisa dilihat bahwa bagaimana dalam spesifikasi  tersebut
menjelaskan mengenai OS yang diperlukan, software khusus, hardware, dan jaringannya. 4
baris kriteria tersebut merupakan komponen utama dari spesifikasi HW/SW. Untuk
perangkatnya (nama kolomnya) bisa saja berganti tergantung dari jenis arsitektur yang
digunakan. Namun, meskipun demikian, keempat baris kriteria tersebut tetap harus sama.

Karena teknologi terus berkembang, maka spesifikasi ini sangat penting karena
perangkat-perangkatnya untuk sistem bisa saja berubah kebutuhannya. Oleh karena itu,
spesifikasi ini HW/SW dapat berubah setiap saat dan kita harus selalu memperhatikan
perkembangan teknologi agar mengetahui bagaimana spesifikasi terbaru yang mungkin
diperlukan oleh sistem. 

Anda mungkin juga menyukai