Ead pertemuan-3

367 views

Published on

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
367
On SlideShare
0
From Embeds
0
Number of Embeds
2
Actions
Shares
0
Downloads
4
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Ead pertemuan-3

  1. 1. Pengenalan Konsep Dasar Arsitektur
  2. 2. Setelah mengikuti pertemuan ini, diharapkan mahasiswa dapat :  memahami tantangan aplikasi-aplikasi enterprise  mendefinisikan arsitektur piranti lunak  memahami kebutuhan akan arsitektur piranti lunak  memahami peran, tangung jawab, dan deliverable seorang arsitek  memahami pemodelan arsitektur menggunakan unified  modeling language (UML)  memahami perbedaan dan kesamaan antara arsitektur dan disain  mendeskripsikan the SunTone Architecture Methodology
  3. 3. meningkatkan produktifitas pengembangan  merespon permintaan yang terus bertambah  menjaga keberlangsungan nilai sebuah sistem informasi yang bsedang berjalan  menjaga keamanan sistem 
  4. 4. Arsitektur piranti lunak mendeskripsikan struktur-struktur sistem seperti :  Elemen-elemen piranti lunak  Elemen dipotret sebagai abstraksi  Berbentuk modul-modul sistem atau komponen-komponen level tinggi Correspond to high level system modules or components  External Visible Properties of elements  Mendeskripsikan fitur-fitur elemen yang diekspos  Merepresentasikan layanan yang disediakan untuk elemen-elemen lainnya  Relationships of elements  Mendeskripsikan cara elemen-elemen berinteraksi dengan yang lainnya
  5. 5.  Sistem piranti lunak besar membutuhkan struktur dari multi perspektif.  Satu sudut pandang saja tidak cukup untuk memenuhi kebutuhan  Contoh sudut pandang  Sudut pandang disain berorientasi objek memfokuskan kepada fungsionalitas sistem  Sudut pandang deployment merefleksikan deployment fisik dari komponen-komponen piranti lunak ke dalam piranti keras komputasi
  6. 6.  Perubahan krusial di rekayasa piranti lunak telah menumbuhkan pentingnya arsitektur :  Skala  Distribusi  Keamanan
  7. 7. Compute near the data, validate near the user
  8. 8.     Menyelesaikan isu-isu skalabilitas, distribusi, dan keamanan Mengurangi risiko-risiko proyek Menangkap quality-related decisions Memfasilitasi disainm implementasi, dan deployment aplikasi.
  9. 9. Arsitek melakukan aktifitas di fase inception sebagai berikut :  Membantu menganalisis kebutuhan dan membuat :  model use case untuk mendefinisikan kebutuhan fungsional  Service Level Requirements (SLR) untuk non kebutuhan fungsional  Bekerja dengan manajer proyek untuk :  Mengidentifikasi piranti keras, piranti lunak, dan sumber daya manusia yang akan mendukung jalannya proyek  Memvalidasi rencana proyek  Arsitek membuat cetak biru arsitektur di fase elaborasi :  Model domain dalam cetak biru dibuat dari model use case dengan mengidentifikasi komponen-komponen sistem tingkat tinggi.  Dokumen deskripsi arsitektur dibuat berdasarkan SLR untuk mendeskripsikan hubungan, interaksim dan distribusi komponenkomponen
  10. 10.  Tanggung Jawab Teknis :  Membuat arsitektur untuk memenuhi kebutuhan  Mengidentifikasi use case arsitektural yang mencakup : ▪ Concurrency ▪ Performance ▪ Legacy integration  Merekomendasikan teknologi-teknologi dan framework tepat guna yang mendukung proyek  Mengembangkan atau mengarahkan pengembangan prototipe arsitektur  Tanggung Jawab Manajerial :  Memahami dan mengelola biaya proyek  Mengelola komunikasi  Memperbaharui dan mengklarifikasi kebutuhan  Meyakinkan pihak-pihak yang berkepentingan dalam pengambilan keputusan.  Menjadi mentor untuk anggota tim proyek
  11. 11.  Domain Model  Memotret hubungan struktural dan perilaku antara komponen- komponen level sistem.  Architecture Description Document (ADD)  Merepresentasikan lingkungan pengembangan  Menunjukkan di mana komponen-komponen diletakkan dan bagaimana komponen-komponen tersebut saling berkomunikasi.  Dibuat dalam bentuk diagram UML  Prototipe Arsitektur  Menyediakan demonstrasi atau implementasi end-to-end teknologi dan komponen utama
  12. 12.   Mencakup Domain Model and ADD Lebih fokus pada quality-related requirements, daripada fungsionalitas karea :  Multi solusi dapat digunakan untuk implementasi fungsionalitas sistem  Seorang arsitek harus emilih solusi yang memenuhi quality-related requirement  Memotret berbagai sudut pandang sistem
  13. 13.  Sudut Pandang Logic – mendeskripsikan dekomposisi sistem ke dalam modul-modul piranti lunak abstrak.  Sudut Pandang Proses – mendeskrisikan concurrency dan distribusi fungsionalitas ke dalam proses-proses komunikasi.  Sudut Pandang Pengembangan – mendeskripsikan cara modulmodul piranti lunak diorganisir di dalam lingkungan pengembangan.  Sudut Pandang fisik (deployment)– memetakan modul-modul piranti lunak ke node-node piranti keras.  Sudut Pandang Use case – memetakan kebutuhan fungsional
  14. 14. Mendemonstrasikan kelangsungan teknologiteknologi dan produk-produk yang dirumuskan dalam cetak biru arsitektur  Menyediakan pltaform pengujian untuk kebutuhan-kebutuhan quality-of-service (QoS)  Menampilkan tampilan konkrit model komponen, standarm dan rekomendasirekomendasi lainnya yang diperlukan.  Membentuk backbone pengembangan proyek ke depannya. 
  15. 15.   Prototipe arsitektur dapat dibuat pada tingkat konsep menggunakan dokumendokumen dan diagram-diagram Prototipe arsitektur juga umumnya membuat It executable skeleton system (dikenal sebagai evolutionary prototype)  Fitur-fitur tambahan ditambahkan dalam skeleton system  Produk akhir dibangun dari prototipe ini.
  16. 16.  Arsitek harus mengambil peran dalam working practices dan skill tim secara umum.  Arsitek harus memahami bagaimana arsitektur meberi dampak pada tim.  Arsitek bekerjadengan tim untuk menjamin bahwa produk sesuai dengan arsitektur.
  17. 17. Gunakan diagram kelas untuk memodelkan model domain
  18. 18.  Gunakan diagram interaksi untuk memodelkan interkasi dan komunikasi antar komponen-komponen.  Diagram interaksi mencakup diagram komunikasi dan diagram sequence.  Contoh diagram komunikasi :
  19. 19. Contoh diagram Sequence:
  20. 20.  Gunakan diaram komponen untuk memodelkan komponen-komponen sistem penting dan relasinya.
  21. 21.  Gunakan diagram deployment untuk menunjukkan layout node piranti keras dan penginstalan komponen-komponen.
  22. 22.  Gunakan diagram package untuk mendeskripsikan organisasi sistem, teknologi, dan komponen-komponen.
  23. 23.  Tidak ada batasan yang jelas antara arsitektur dengan disain.  Perbedaan umumnya terletak pada :  Tingkat abstraksi.  Deliverable  Area fokus
  24. 24.  Karakteristik umum arsitektur dan disain :  Abstraction  Encapsulation  Cohesion  Coupling  Sama halnya dengtan disain dan implementasi, arsitektur memerlukan proses refactoring untuk mengakomodir perubahan.
  25. 25.  Layer Pattern  MVC Pattern
  26. 26.  Metodologi arsitektur The SunTone (SunTone AM) mendeskripsikan proses untuk mengembangkan aplikasi-aplikasi enterprise kritis.  Diluncurkan dalam the Sun Java Center pada tahun 1990-an  Berbasis pada Rational Unified Process (RUP)  Memadukan praktek-praktek terbaik industri
  27. 27.      The client tier The web presentation tier The business logic tier The integration tier The enterprise resource tier
  28. 28.       The application layer The virtual platform layer The application infrastructure layer The enterprise services layer The compute and storage layer The network infrastructure layer
  29. 29. Performance Throughput  Security  Availability  and many more  
  30. 30.      Use Case Driven Development Iterative and Incremental Development Architecture-Centric Development Service-Driven Development Pattern-Based Development

×