Professional Documents
Culture Documents
Outline
Tujuan utama diskusi ini adalah memahami bagaimana membuat model untuk dijadikan pijakan dalam pengembangan aplikasi web Konsep dasar pemodelan aplikasi web Hal-hal yang harus diperhatikan dalam pemodelan aplikasi web.
Fundamental
Model digunakan untuk mengurangi kompleksitas, mendokumentasikan keputusan rancangan dan menfasilitasi komunikasi di dalam tim proyek. Pemodelan bertujuan menyediakan suatu spesifikasi dari sistem yang akan dibangun dengan derajat detail yang cukup bagi implementasi sistem tersebut. Hasil dari proses pemodelan adalah model yang merepresentasikan aspek-aspek yang relevan dari sistem dalam bentuk yang disederhanakan dan juga comprehensible (dapat dipahami).
3
Tingkatan Pemodelan
Ada tiga tingkatan pemodelan aplikasi web: 1-content : informasi dan logik aplikasi di bawah aplikasi web Tujuan dari model content adalah definisi eksplisit dari struktur informasi. 2-hypertext : penstrukturan content ke dalam node-node dan link antar node. Model struktur hypertext hanya mereferensi content yang bersesuaian 3-Presentation : user interface atau layout halaman (page)
10
Tingkatan Pemodelan
Aplikasi web yang menyediakan user interface hypertext-oriented saja tetapi mempunyai himpunan data besar butuh fokus pada pemodelan content dan struktur hypertext. Sebaliknya, aplikasi web yang presentationoriented, misalnya corporate portal atau online shopping, akan sangat membutuhkan pemodelan presentassi.
11
Aspects (Aspek)
Struktur dan perilaku dimodelkan pada tiap tingkatan (3 level): content, hypertext & presentation. Relevansi dari model struktur dan perilaku tergantung pada jenis aplikasi web yang akan diimplementasikan Aplikasi web yang menyediakan informasi statis kurang membutuhkan pemodelan perilaku dibandingkan aplikasi web yang menyediakan banyak interaksi
12
Phases (Fase)
Urutan langkah pemodelan level-level ditentukan dengan modeler Tergantung pada jenis aplikasi web, dapat mengikuti: 1-pendekatan information-driven : memulai dengan pemodelan content 2-pendekatan presentation-driven: memulai dengan pemodelan aspek presentation dari aplikasi
13
Customization (Penyesuaian)
Mempengaruhi semua dimensi pemodelan web baik content, hypertext maupun presentation. Struktur dan perilaku, juga setiap fase dari proses pengembangan UWE (UML-based Web Engineering): sejalan dengan UML. Didefinisikan sebagai profil UML, merupakan ekstensi ringan dari UML
14
Pemodelan Kebutuhan
Use cases adalah teknik pemodelan yang lebih disukai untuk kebutuhan fungsional, karena dapat direpresentasikan secara grafis Keunikan dari kebutuhan aplikasi web adalah fungsi navigasi agar pengguna dapat menjelajah via hypertext dan menemukan node-node.
15
16
17
Pemodelan Content
Infromasi yang disediakan oleh aplikasi web adalah salah satu faktor paling penting bagi suksesnya aplikasi tersebut Pembuatan model domain masalah, terdiri dari aspek statis dan dinamis. Ciri aplikasi web berikut harus diperhatikan:
18
Pemodelan Content
1-Document-centric character and multimedia: Harus memperhitungkan semua jenis format media berbeda ketika memodelkan content, termasuk menstrukturkan informasi sebagai basis 2-Integration of existing data and software: Banyak aplikasi web dibangun di atas repositori data dan komponen software yang telah ada dimana awalnya tidak dimaksudkan untuk aplikasi web.
19
21
22
Pemodelan Hypertext
Dikenal sebagai pemodelan navigasi Hypertext non-linearity termasuk properti paling penting yang harus diperhitungkan ketika memodelkan aplikasi web Tujuan dari pemodelan hypertext adalah menetapkan navigability (dapat dijelajah) dari semua content aplikasi web, yaitu tersedianya path navigasi kepada pengguna. Pemodelan hypertext menghasilkan dua hal berikut: 1- model struktur hypertext, dikenal sebagai model struktur navigasi . Mendefinisikan struktur dari hypertext, yaitu kelaskelas mana dari model content yang dapat dikunjungi dengan navigasi. 2- model struktur hypertext tersaring, dimana elemen-elemen akses berbentuk suatu access model. Pemodelan hypertext fokus pada aspek struktural dari hypertext dan elemen-elemen aksesnya. 23
25
Klasifikasi Link
Metode HDM (Hypertext Design Model) menetapkan jenis link berikut: 1-Structural links menghubungkan elemen-elemen dari node yang sama, misal: dari suatu rangkuman review ke detail review. 2-Perspective links meletakkan berbagai view dari suatu node dalam hubungan dengan tiap yang lain, misal: versi PostScript dan PDF dalam makalah. 3-Application links meletakkan node-node berbeda dalam relasi untuk tiap yang lain, tergantung pada aplikasi, misal: suatu link menunjuk ke makalah terbaik.
26
Klasifikasi Link
Metode WebML (Web Modeling Language) didasarkan pada perjalanan informasi selama navigasi. Menghasilkan jenis link berikut: 1-Contextual links membawa informasi konteks, misal: nomor unik dari reviewer, untuk menjelajah dari satu reviewer ke semua review yang dibuat olehnya 2-Non-contextual links tidak punya informasi konteks yang berasosiasi, misal: link-link yang menunjuk dari suatu review tunggal ke daftar semua review.
27
Klasifikasi Link
Memperhatikan distribusi node-node pada level hypertext terhadap halaman (page) pada level presentation. WebML menetapkan jenis link tambahan: 1-Intra-page links digunakan ketika source dan destination dari suatu link berada pada halaman yang sama 2-Inter-page links digunakan saat source dan destination pada page yang berbeda.
28
Klasifikasi Link
Berdasarkan pada kebutuhan fungsional dari aplikasi Web, metode pemodelan UWE mendefinisikan jenis link berikut: 1-Navigation links digunakan untuk navigasi antar node 2-Process links menunjuk ke node start (awal) dari suatu proses 3-External links menunjuk ke node yang tidak secara langsung terlibat pada aplikasi
29
Klasifikasi Link
Metode pemodelan OO-H (Object-Oriented Hypermedia) mendefinisikan 5 jenis link berikut: 1. I-links (internal links) menunjuk ke node di dalam batasan dari kebutuhan navigasi yang diberikan, misal: link-link internal ke detail review dari salah satu reviewer. 2. T-links (traversal links) mengarah ke node yang mengcover kebutuhan navigasi lain, misal: dari seorang author ke makalahnya.
30
Klasifikasi Link
3. R-links (requirement links) menunjuk ke suatu awal (start) jalur (path) navigasi, misal: untuk menambahkan suatu review baru. 4. X-links (external links) mengarah ke nodenode eksternal, misal: ke panduan format eksternal. 5. S-links (service links) mengarah (dengan link responnya yang bersesuaian) ke layanan, misal: ke suatu search engine eksternal.
31
34
Pemodelan Presentasi
Pemodelan presentasi membidik perancangan struktur dan perilaku dari user interface untuk memastikan bahwa interaksi dengan aplikasi Web adalah sederhana dan self-explanatory. Pemodelan presentasi memberikan dua hasil: 1) menghasilkan suatu konsep presentasi uniform dengan memodelkan elemen-elemen terulang pada page, misalnya headers dan footers. Idealnya menunjukkan komposisi dari setiap page dan rancangan dari fields, texts, images, forms, dll., termasuk dalam page ini. 2) Mendeskripsikan aspek berorientasi perilaku dari user interface.
36
38
39
Diagram Sequence
40
Pemodelan Kustomisasi
Customization modeling bertujuan secara eksplisit merepresentasikan informasi context, dan adaptations yang berasal darinya. Tergantung pada metode pemodelan, hasilnya tak selalu model kustomisasi eksplisit Pada banyak kasus, pemodelan kustomisasi bercampur baur dengan model content, hypertext dan presentation.
42
Contoh Kustomisasi
47
49
51
Metode Pemodelan
Metode pemodelan mengikuti paradigma berbeda, tergantung pada asal-usul dan fokusnya: 1) Data-oriented methods berasal dari bidang sistem database; Sebagian besar berbasis pada model ER yang ditingkatkan dengan konsep spesifik untuk pemodelan pada tingkatan hypertext. Fokus utama dari metode ini adalah pemodelan dari aplikasi web database-driven. Contoh dari metode berorientasi data termasuk Relationship Management Methodology (RMM) Hera dan Web Modeling Language (WebML) 2) Hypertext-oriented methods fokus pada karakter hypertext dari aplikasi Web. Metode ini muncul terutama dari bidang sistem hypertext. Wakil kelompok ini adalah Hypertext Design Model (HDM) yang dikembangkan menjadi W2000, dan HDM-lite atau Web Site Design Method (WSDM).
52
Metode Pemodelan
3) Object-oriented methods didasarkan pada OMT atau UML. Kategori ini termasuk metode ObjectOriented Hypermedia Design Method (OOHDM) ,UML-based Web Engineering (UWE), ObjectOriented Web Solutions (OOWS) dan ObjectOriented Hypermedia (OO-H). 4) Software-oriented methods fokus terutama pada aplikasi Web dari pandangan pengembangan software tradisional, menggunakan teknik yang betul-betul mengikuti contoh Software Good klasik. Diantaranya adalah Web Application Extension (WAE) atau WAE2, versi perbaikannya.
53
54
55
Pengembangan Model-Driven
Pendekatan Model-Driven Development (MDD) tidak hanya menganjurkan pemanfaatan model untuk mengembangkan software, tetapi juga menekankan butuhnya transformasi dalam semua fase pengembangan, dari spesifikasi sistem s.d implementasi dan testing. Pengembangan aplikasi web merupakan domain khusus dimana MDD dapat diterapkan dengan baik, dikarenakan pemisahan konsen karakteristik spesifik web content, hypertext, presentation dan customization. Metode seperti WebML, OO-H dan UWE merupakan basis yang bagus untuk pendekatan model-driven dalam pengembangan aplikasi web. 56
Pengembangan Model-Driven
WebSA (Web Software Architecture) juga merupakan pendekatan model-driven spesifik untuk domain Web, didasarkan pada paradigma MDA (Model-Driven Architecture). WebSA menekankan konstruksi dari model tak-tergantung platform (Platform Independent Model, PIM) dan bangunan terotomasi berikutnya dari platform specific models (PSM), dimana PSM menjadi basis bagi pembangkitan kode executable.
57
58
Tool Pendukung
Karena pendeknya siklus pengembangan dan kompleksitas aplikasi web, disarankan menggunakan tool yang mendukung tidak hanya pemodelan itu sendiri, tetapi juga pembangkitan kode otomatis dan pemeriksaan konsistensi model. Contoh tool untuk jenis ini:
1. WebRatio Site Development Studio, 2. VisualWADE, dan 3. OpenUWE Suite
59
Tugas Personal
Buat makalah tentang konsep MVC (Model View Controller). Jelaskan definisi, arsitektur dan contoh terapannya! Pastikan isi makalah berdasarkan pada referensi, tidak NGECAP. Sebutkan referensinya! Waktu: 1 Minggu Sifat: Personal (Pribadi) Kirimkan makalah tersebut ke email (husni@if.trunojoyo.ac.id). Upload juga ke blog!
60