- DASAR – DASAR ARSITEKTUR KOMPUTER
Apa yang dimaksud dengan Arsitektur Komputer ???
Arsitektur Komputer adalah lebih cenderung pada kajian atribut system komputer yang terkait dengan seorang programer
Contoh : Seperti instruksi aritmatika yang digunakan teknik pengalamatan, dan mekanisme I/O.
Bagian berikut menguraikan sifat – sifat yang paling penting dari arsitektur perangkat lunak :
· Arsitektur menggambarkan struktur
· Arsitektur membentuk transisi
· Arsitektur dapat dilihat dari sudut pandang yang berbeda
· Arsitektur membuat suatu system yang dapat dimenferti
· Arsitektur menyajikan kerangka untuk system yang flexibel.
- 2 PENGEMBANGAN ARSITEKTUR
Kebutuhan perangkat lunak dan arsitekturnya adalah subyekuntuk perubahan.
Teknis dan orrganisasi berubah selama dan setelah pengembangannya suatu aplikaasi. Hal ini mungkin berkaitan dengan ketidakjelasan kebutuhan pada permulaan proses pengembangan atau perubahan kebutuhan setelah system selesai.
Arsitektur aplikasi terutama dipengaruhi oleh kebutuhan fungsional, seperti layanan yang disediakan oleh system an pertimbangan kualitas, sperti skalabilitas atau kinerja. Pendekatan ini menibukan resiko sebagai hasil dari kebutuahn yang tidak aman, dan batasan – batasan yang apat dihitung dan yang dapat di kontrol.
- 3. POLA
Suatu pola menguraikan masalah perulangan perancangaan yang muncul dalam sebua konteks perancangan spesifik dan mengusulkan solusi.
Pola didefinisikan pada 3 tingkat abstraksi yang berbeda yaitu :
ü Pola Arsitektur
Pola ini memetakan dasar mekanisme struktur suatu system perangkat lunak.
ü Pola Perancangan
Pola ini menguraikan struktur, hubungan, dan pengaruh diantara komponen – komponen untuk menyelesaikan masalah perancangan didalam konteks yang ditetapkan
ü Idiom
Pola ini menguraikan pola yang mengacu pada implementasi spesifik didalam bahasa pemograman
FRAMEWORK
Framework adalah kerangka kerja, jugaa dapat diartikan sebagai kumpulan scrip yang dapat membantu developmen program untuk menangani malasah – masalah koneksi ke database. Framework menyajikan pilihan lain untuk menggunakan kembali pengetahuan arsitektur yang ada. Framwork juga dapat diartikan system perangkat lunak yang dapat digunakan kembali dengan fungsi umum yang diterapkan.
KATEGORI ARSITEKTUR
Arsitektur untuk lingkungan aplikasi web memberikan aspek – aspek lapisan dari arsitektur atau mendukung format data dan data yang berbeda
- v Aspek Lapisan
Lapisan berarti bahwasystem perangkat lunak tersstruktur kedalam system perangkat linak.
- v Aspek Data
Data dapat dibedakan menjadi data terstruktur dan data tidak terstruktur
KOMPNEN DARI APLIKASI WEB GENERIK
Komunikasi antara komponen umumnya dilakukan berdasarka prinsip perminyaan (request respon) yaitu suatu komponen yang mengirimkan permintaan pada komponen lainny dan merespon perminyaan tersebut melalui saluran komunikasi yang sama (komunikasi serentak).
Berikut ini adalah uraian singkat dari masing – masing komponen :
- Klien adalah browser (user agent) yang dikontrol oleh pengguna untuk mengoprasika aplikasi web.
- Firewale adalah potongan perangkaat lunak yang mengatur komunikasi antara jaringan yang takaman (insecure), seperti internet, dan jaringan yang aman (secure), seperti LAN perusahaan.
- Proxy biasa digunakan untuk penyimpanan sementara halaman web didalam cache
- Web server adalah potognn perangkat lunak yang mendukung berbagai pootokol web, seperti HHTP dan HTPS
- Database server ini biasanya menyuplai data produksi organisasi dalam bentuk yang terstruktur
- Media server, komponen ini secara khusus digunakan untuk konen streaming dari data penting yang tidak terstruktur.
- Konten manajemen server sama dengan database server, konten manajemen server menangani konten untuk melayani aplikasi.
- Application server menangani fungsionalitas yang dibutuhkan oleh berbagai aplikasi
- Legaci application (aplikasi warisan) adalah system tertua yanng diintegrasikan sebagai komponen internal dan eksternal
KEBUTUHAN APLIKASIH WEB
Awalnya WORD WIDE WEB ( WWW ) dibuat pada tahun 1989 ssebagai suatu lingkungan yang menyajikan pembagian informasi diantara perorangan yang terpisah secara geografis. Informasi itu sendiri disimpan pada server yang berbeda dan diambil kembali dengan antar muka (pengguna web browser)
Kebanyakan aplikasi web yang sekarang ini menggunakan system fungsional secara penuh yang menyediakan perdangangan elektronik.
APLIKASI WEB VS PEARANGKAT LUNAK KONVENSIONAL
Bagian ini akan menjelaskan suatu gambaraan yang berbeda antara pengembangan web dan pengembangann perangkat lunak.
HIPER MEDIA WEB, PERANGKAT LUNAK WEB, atau APLIKASI WEB
a. Aplikasi HIPER MEDIA WEB adalah suatu aplikasi yang tidakknfensional yang dikarakterisasi oleh pembuat informasi denagan node – node, tautan, anchor, struktur akses, dan pengiriman WEB.
b. Aplikasi PERANGLAT LUNAK WEB adalah suatu aplikasi pernagkat lunak konvensional yang bersandar pada WEB atau menggunakan infrastruktur WEB untuk pelaksanaannya.
c. APLIKASI WEB adalah suatu aplikasi yang disehkan melalui web yang mengkombinasikan karakteristik dari HIPER MEDIA WEB dan APLIKASI PERANGKAT LUNAK WEB.
PENGEMBANGAN WEB VS PENGEMBANGAN PERANGKAT LUNAK
Pengembangan web dan pengembangan perangkat lunak berbeda dsejumlah area, antara lain yaitu :
1) Karakteristik Aplikasi
Apikasi web diciptakan dengan pengintegrasian banyak elemen yang bberbeda seperti komponen fine grained yaitu (BCOM, OLE, Activex), interpreter scripting language components of the self (COTS) seperti aplikasi yang customizasi library, produk pilihan ketiga, file multimdia seperti ( audio, video, objek 3D ), file HTML/SGML/XML, gambar grafis, gabungan program dan HTML, dan basis data.
2) Teknologi utama yang digunakan
Aplikasi web dikembangkan dengan cakupan yang luas dari teknologi yang berbeda, seperti java servlets, enterprise javabeans, applets, java serve pages, HTML, javascrip, XML, UML, basis data, danbanyak lagi.
3) Perbedaan untuk quality delivered
Untuk pengembangan web, kualitas lebih sering dipertimbangkan sebagai prioritas utama daripada waktu penjualan.
4) Arah proses pengembangan
Arah proses pengembangan yang dominan untuk perusahaan web terdiri atas 3 kriteria kualitas, yaitu :
a. Keandalan
Aplikasi dapat bekerja dengan baik, tidak crash dan tidak menyediakan data yang salah
b. Kemudahan
Aplikasi harus sederhana dalam penggunaannya
c. Keamanan
Penannganan data pelanggan dan informasih lain dengan aman sehinggan permasalahan seperti kerugian keuangan, konsekuensi ilegal, dan kehilangan kreabilitas dapat terhimdarkan.
5) Ketersediaan aplikasi
Pelanggan yang menggunakan web mengharapkan aplikasi untuk oprasionalisasi sepanjang tahun.
6) Pelanggan (stakeholder)
Aplikasi web dapat dikembangkan unutk pengguna didalam batasan – batasan organisasi tunggal (intanet), banyak organisasi (ekstranet) atau pengguna diseluruh dunia.
7) Siklus Pemeliharaan
Aplikasi web sesering mungkin harus dipebaharui tanpa rilis tertentu dan dengana siklus pemeliharaan setiap hari, atau bahkan setiap jam.
8) Orang – orang yang terlibat didalam pengembangan
Web menyediakan spektrum yang luas dari jenis aplikasi web yang berbeda dengan macam - macam kualitas ukuran, komplekksitas dan teknologi. Aplikasi web dapt dibuat menjadilebih besar dan kompleks, dan membutuhkan tim dengan orang – orang yang mempunyai keahlian dan pengalaman yang berbeda – beda, orang – orang terrsebut adalah :
ü Desainer WEB
ü Programer
ü Desain Grafis
ü Pustakawan
ü Desainer Basis Data
ü Manajer Proyek
ü Ahli Keamanan Jaringan
ü Ahli Usabilitas
9) Arsitektur dan Jaringan
Aplikasi WEB biasanya dikembangkan dengan arsitektur klien server(2tier) yang sederhana dan diwakili dengan browser web pada komputer klien yang menghubungkannya pada hosting server web, aplikasi web, untuk konfigurasi yang lebih canggih sseperti arsitektur 3tier atau ntier.
10) Disiplin yang terlibat
Untuk mengembangkan aplikasi web yang besar dan kompleks, memerlukan tim yang solid namun perlunya kedisiplinan antara para anggota agar web tersebut bisa jalan dengan baik.
11) Legalitas kesosialan dan isu etika
Web sebbagai lingkungan yang terdistribusi meemungkinkan suatu jumlh konteks terstruktur yang sangat banyak ( database record ) dan yang tidak terstruktur seperti (teks dan citra audio) teredia dengan muda untuk pengguna diseluruh dunia.
12) Desain dan penstrukturan informasi
Aplikasi web menyajikan konten terstruktur dan tidak terstruktu, yang mungkin terdistribusi atas berbagai lokasi dan menggunakan system yang berbeda, seperti system basis data, system file, dan alat penyimpanan multimedia.