ead pertemuan-4

31
PERTEMUAN 4 PENGEMBANGAN APLIKASI ENTERPRISE Memahami Kualitas Sistem

Upload: yudha-arif-budiman

Post on 23-Jun-2015

126 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Ead pertemuan-4

PERTEMUAN 4PENGEMBANGAN APLIKASI ENTERPRISE

MemahamiKualitas Sistem

Page 2: Ead pertemuan-4

Tujuan I nstruksional

Setelah mengikuti pertemuan ini, diharapkan mahasiswa dapat : Mendeskripsikan kualitas-kualitas sistem

sebuah aplikasi Mendeskripsikan praktek-praktek umum

untuk memperbaiki kualitas-kualitas sistem Memprioritaskan kebutuhan quality-of-

service Melakukan inspeksi kebutuhan quality-of-

service untuk peluang trade-off

Page 3: Ead pertemuan-4

Mengukur Kualitas Sistem Perbedaan kualitas sistem akan menghasilkan tekanan-

tekanan pada disan sistem secara keseluruhan.

Arsitek seharusnya mengevaluasi dan memprioritaskan kebutuhan-kebutuhan kualitas sistem untuk meminimalisasi constraint

Kualitas sistem seharusnya tidak telalu ambisius didefinisikan.

Kebutuhan-kebutuhan kualitas sistem didokumentasikan dalam Service Level Requirements (SLR)

Page 4: Ead pertemuan-4

Kategori-Kategori Kualitas Sistem

Daftar kualitas yang selalu disampaikan ke pengguna : Performance Reliability Availability Usability

Daftar Kualitas-kualitas operasional yang terikat dengan sistem yang sedang berjalan : Throughput Manageability Security Serviceability Testability

Page 5: Ead pertemuan-4

Kategori-Kategori Kualitas Sistem

Daftar Kalitas pengembangan yang berdampak pada bagaimana sistem dibangun : Realizability Planability

Kualitas evolusioner yang terkait dengan bagaimana sistem berperilaku ketika sistem diubah atau di-upgrade : Scalability Maintainability Extensibility Flexibility Reusability Portability

Page 6: Ead pertemuan-4

Dimensi-dimensi sistem

Capacity (System Height) Redundancy (System Width) Modularity (System Depth) Tolerance Workload Heterogeneity

Page 7: Ead pertemuan-4

Dimensi Sumber Daya Komputasi

Page 8: Ead pertemuan-4

Dampak Kualitas Dimensi

Page 9: Ead pertemuan-4

Redudancy dan Kualitas Sistem Redundancy dapat diterapkan pada

produk-produk vendor atau sistem-sistem server.

Redundancy umumnya diimplementasikan dengan replication

Common techniques include Load balancing Failover Cluster

Page 10: Ead pertemuan-4

Load Balancing

Strategi Load balancing Load balancers in network switches Load balancers in cluster management software and

application servers Load balancers based on server instance DNS configuration

Load balancing algorithms Round-robin algorithm Response-time or first-available algorithm Least-loaded algorithm Weighted algorithm Client DNS based algorithm

Page 11: Ead pertemuan-4

Failover

Failover adalah konfigurasi sistem yang memungkinkan satu server menganggap adanya identitas kegagalan sistem

Salah satu aspek penting dari failover adalah adanya kapasitas yang tersedia dimana dapat ditangani dengan dua cara, yaitu : Disain dengan kapasitas ekstra Maintaining a stand-by server

Page 12: Ead pertemuan-4

Akibat Failover

Page 13: Ead pertemuan-4

Cluster

Cluster adalah kelompok sistem-sistem server dan piranti lunak pendukung yang digunakan untuk mengelola kelompok server.

Clusters menghasilkan ketersediaan tinggi oada sumber daya sistem

Benefits of clusters Memungkinkan adalanya pengelompokan administrasi Mendeteksi kegagalan piranti keras dan piranti lunak Menangani failover sistem Secara otomatis melakukan restart layanan ketika terjadi

kegagalan.

Page 14: Ead pertemuan-4

Konfigurasi Cluster

Two-node clusters (symmetric and asymmetric)

Clustered pairsRingN+1 (Star)Scalable (N-to-N)

Page 15: Ead pertemuan-4

Mengevaluasi Strategi Replikasi Perlu dipertimbangkan perhatian terhadap

arsitektur dan menemukan pendekatan yang efektif dari segi biaya untuk menyelesaikan permasalahan yang dihadapi.

Perlu masukan dari stackholder

Pertimbangkan faktor berikut : Machine Equivalence Network Design Cost Consideration

▪ Cost of Ownership▪ Initial Outlay Costs▪ Machine equivalence

Page 16: Ead pertemuan-4

Memperbaiki Kinerja dan Troughput

Dua faktor yang menentukan kinerja sistem Processing time Blocked time

Praktek-praktek umum untuk memperbaiki kinerja : Meningkatkan kapasitas sistem. Meningkatkan efisiensi komputasi Memperkenalkan cached data untuk mengurangi

overhead komputasi Memperkenalkan concurrency Membatasi jumlah concurrent request Memperkenalkan intermediate response Menerapkan time out operasi out the long-lasting

Page 17: Ead pertemuan-4

Memperbaiki Ketersediaan (Availability)

Faktor mempengaruhi availability sistem : System downtime Long response time

Praktek-praktek umum untuk memperbaiki availability sistem adalah melalui salah satu dari tipe replikasi berikut : Active Replication Passive Replication

Page 18: Ead pertemuan-4

Memperbaiki Ekstensibilitas dan Fleksibilitas

Kebutuhan ekstensibilitas dan fleksibilitas disebabkan oleh perubahan requirement

Pertimbangkan praktek-praktek berikut untuk ekstensibilitas dan fleksibilitas sistem : Mendefinisikan dengan jelas cakupan dalam

Service Level Agreement Antisipasi perubahan yang mungkin akan

terjadi menerapkan pattern pada arsitektur sistem

Page 19: Ead pertemuan-4

Tujuan Keamanan Sistem

ConfidentialityIntegrityAuthenticationAuthorizationNon-Repudiation

Page 20: Ead pertemuan-4

Praktek-Praktek Keamanan yang Umum Digunakan

Gunakan teknologi yang terbukti handal dan terbuka Memiliki kebijakan keamanan yang didefinisikan

dengan jelas Menerapkan infrastruktur keamanan yang konsisten

Page 21: Ead pertemuan-4

Praktek-Praktek Keamanan yang Umum Digunakan

Mengadopsi metode proaktif untuk mendeteksi dan mengidentifikasi serangan Protect audit trails

Mengurangi pembukaan komponen-komponen sistem yang tidak diinginkan

Menyediakan sekurang-kurangnya set privileges yang seperlunya untuk mengoperasikan sistem

Page 22: Ead pertemuan-4

Memperbaiki Skalabilitas

Skalabilitas dapat dikonfigurasi dengan dua cara :

Vertical Scalability Menambah daya pemrosesan di sistem

server yang sedang berjalan. Mengganti server yang ada dengan

sistem yang punya kapabilitas lebih baik.

Horizontal Scalability Menambah instan-instan server yang

berjalan

Page 23: Ead pertemuan-4

Skalabilitas Vertikal v.s Horizontal

Skalabilitas Vertical Transparan terhadap arsitektur sistem Dibatasi pada keterbatasan fisik sistem Biaya pembelian piranti keras yang lebih

powerful sangat besar

Skalabilitas Horizontal Tidak memiliki keterbatasan fisis Berdampak pada arsitektur sistem Harus mencatat machine equivalence

Page 24: Ead pertemuan-4

Prioritaskan Kebutuhan Kualitas Kebutuhan quality-of-service menentukan

nilai-nilai yang diminta dan diharapkan untuk kualitas sistem. Evaluasi kebutuhan QoS di basis-basis yang

umum dibutuhkan. Bekerja dengan stakeholders untuk

memprioritaskan kebutuhan-kebutuhan.

Variasi di prioritas dapat memberikan solusi berbeda pada arsitektur sistem secara dramatis

Page 25: Ead pertemuan-4

Pertimbangan Disain Sistem

Uji proyek untuk menentukan kualitas atau kategori kualitas mana yang paling penting

Examples: Sebuah proyek membangun sistem yang

dominan di komputasi, namun memiliki jumlah pengguna yang tetap.

Sebuah proyek membangun sistem dengan kemungkinan jumlah penggunanya yang meningkat besar, namun sulit menentukan jumlahnya.

Page 26: Ead pertemuan-4

Perangkingan Kebutuhan QoS Berbasis domain bisnis

Online Shopping Online Banking Online Brokerage

Berbasis harapan pelanggan Stakeholder memerlukan tingkat kualitas dari

aplikasiyang berbasis pada pengalaman mereka yang pernah menggunakan sistem serupa.

Jika kualitas sistem tidak memenuhi harapan pelanggan, maka projek dianggap gagal.

Page 27: Ead pertemuan-4

Memprioritaskan Kebutuhan QoS

Page 28: Ead pertemuan-4

Mereview Estimasi Kualitas Presentasikan estimasi ke untuk validasi

Beri ruang stakeholder untuk memilih nilai-nilai requirement atau untuk mengubah nilai-nilai berbasis biaya arsitektur saat ini.

Selaraskan sudut pandang stakeholder proyek dan tujuan proyek dengan deliverable proyek aktual

Gunakan prototipe arsitektur untuk memvalidasi kemampuan meraih tujuan QoS.

Page 29: Ead pertemuan-4

Merevisi Nilai-Nilai QoS

Mengatur nilai-nilai requirement ke nilai-nilai yang realistis jika dihadapkan dengan isu-isu berikut : Keterbatasan anggaran Keterbatasan waktu Kompleksitas tinggi

Mengatur arsitektur ketika dihadapkan pada isu-isu berikut: Kekurangan dukungan teknologi Kebutuhan akan distribusi ulang layanan Perbaikan diperlukan untuk fleksibilitas atau

kemudahan pengelolaan

Page 30: Ead pertemuan-4

Membuat Keputusan Trade-Off

Arsitek seharusnya memiliki kemampuan untuk memilih solusi optimal dari beberapa pilihan

Untuk membuat keputusan trade-off : Identifikasi Invariant Requirements –

requirements yang tidak dapat dikompromikan.

Bandingkan invariant Requirements untuk Trade-offs

Page 31: Ead pertemuan-4

SELESAI PERTEMUAN 4