Teknik Informatika S1 Rekayasa Perangkat Lunak Lanjut Lanjutan UML Diagram + Studi Kasus
Disusun Oleh: Egia Rosi Subhiyakto, M.Kom, M.CS Teknik Informatika UDINUS
[email protected] +6285740278021
SILABUS MATA KULIAH 1. Lanjutan OO Diagram + Studi Kasus 2. Pengenalan Web App + Req. Web App
3. Konsep Dasar Web Engineering 4. Web App. Process and Architecture 5. Web Engineering Design (1) 6. Web Engineering Design (2) 7. Testing Web App.
State Diagrams
State Diagrams State diagrams adalah teknik untuk menggambarkan perilaku, yaitu, perubahan keadaan satu class menurut peristiwa dan pesan yang dikirim atau diterima oleh class.
States A state • abstrak dari nilai atribut dan asosiasi dari suatu objek; • mewakili kondisi internal / keadaan obyek untuk jangka waktu tertentu; • sesuai dengan interval waktu antara dua peristiwa. Respon terhadap peristiwa mungkin tergantung pada keadaan obyek. Object creation bersama-sama dengan an initial object state. Object deletion mungkin terkait dengan (salah satu dari banyak) final states.
Events o Event adalah sesuatu yang layak memperhatikan pada suatu titik waktu; • sinyal dari satu objek ke yang lain, misalnya, “delivered”, • pesan yang diterima oleh suatu , misalnya“check item”, • tanggal tertentu / waktu, Misalnya: "setelah 10 detik" (berada dalam keadaan tertentu) atau "pada tanggal 31 Desember2000, 00:00". o Events dapat mengambil argumen, misalnya, "menyerahkan kepada (receiver: Pelanggan)". o Events dapat dinyatakan dalam diagram kelas dengan argumen ditampilkan sebagai atribut.
Transitions o Transisi merupakan perubahan dari kondisi/ keadaan internal suatu objek. o Transisi biasanya dipicu ("dipecat") oleh sebuah event. Transitions without event label (“lambda transitions”) fire immediately. o Transitions fire instantly • dari tepat satu state ke state lain atau dirinya sendiri (selftransisi) dan • tidak interruptible.
Guards Sebuah guard adalah kondisi logis (value "true" atau "false"). Sebuah guarded transition fires only if the guard resolves to “true”. Karena hanya satu transisi bisa dipecat dalam keadaan tertentu, guards dimaksudkan untuk menjadi eksklusif untuk acara apapun. Events dapat dijaga.
Action Action adalah proses pada software yang mengeksekusi segera. Transisi dapat memicu action. Actions mungkin dipicu pada masuk atau keluar dari states (bukan label masing-masing masuk (entry) dan keluar (exit) transisi dengan tindakan tersebut). Sebuah event dapat memicu tindakan tanpa meninggalkan state, yaitu, tanpa memicu keluar dan masuk tindakan sebagai self-transisi akan dilakukan. Tindakan dapat memicu peristiwa, biasanya dalam objek lain. Tindakan dapat mengambil argumen.
Sending Messages
Mengirim pesan adalah tindakan khusus. Pesan alamat suatu obyek atau satu set objek. Pesan terjadi setelah tindakan lainnya. Pesan memicu aktivitas/ transisi di objek penerima.
Activities Aktivitas dapat mengambil "lebih lama", yaitu proses yang berlangsung selama obyek dalam keadaan tertentu. Kegiatan yang interruptible, yaitu, suatu peristiwa yang menyebabkan transisi state mungkin membatalkan suatu kegiatan. Kegiatan dapat dibangun dari awal dan tindakan akhir.
State Diagram: Example
Class Diagram
Class Diagrams: Overview Class diagrams menggambarkan jenis objek dalam sistem dan
berbagai macam hubungan statis yang ada di antara mereka. Ada dua jenis utama dari hubungan statis: asosiasi
- "Pelanggan dapat menyewa sejumlah video" subtipe
- "Mahasiswa adalah tipe orang“ Class diagrams juga menunjukkan atribut dan operasi dari kelas dan kendala yang berlaku untuk cara objek yang terhubung.
Role of Class Diagrams
From Use Cases to Class Diagrams Daftar persyaratan sebuah perusahaan meliputi deskripsi tekstual berikut kasus penggunaan "order":
Example: Order - Associations
Order: Kami memiliki pelanggan yang mungkin memesan beberapa produk. Kami membedakan pelanggan korporat dari pelanggan pribadi, karena pelanggan korporat ditagih bulanan sedangkan pelanggan pribadi perlu prabayar pesanan mereka dengan kartu kredit. Kami ingin pesanan kami harus berbaris produk dengan produk. Setiap baris harus berisi jumlah dan harga masing-masing produk.
Example: Order - Generalization
Order: Kami memiliki pelanggan yang mungkin memesan beberapa produk. Kami membedakan pelanggan korporat dari pelanggan pribadi, karena pelanggan korporat ditagih bulanan sedangkan pelanggan pribadi perlu prabayar pesanan mereka dengan kartu kredit. Kami ingin pesanan kami harus berbaris produk dengan produk. Setiap baris harus berisi jumlah dan harga masing-masing produk.
Example: Order - More Associations
Order: Kami memiliki pelanggan yang mungkin memesan beberapa produk. Kami membedakan pelanggan korporat dari pelanggan pribadi, karena pelanggan korporat ditagih bulanan sedangkan pelanggan pribadi perlu prabayar pesanan mereka dengan kartu kredit. Kami ingin pesanan kami harus berbaris produk dengan produk. Setiap baris harus berisi jumlah dan harga masing-masing produk
Example: Order- Attributes & Operations
Order: Kami memiliki pelanggan yang mungkin memesan beberapa produk. Kami membedakan pelanggan korporat dari pelanggan pribadi, karena pelanggan korporat ditagih bulanan sedangkan pelanggan pribadi perlu prabayar pesanan mereka dengan kartu kredit. Kami ingin pesanan kami harus berbaris produk dengan produk. Setiap baris harus berisi jumlah dan harga masing-masing produk
Example: Order - Full Class Diagram
Perspectives Ada tiga perspektif (pandangan) yang dapat digunakan dalam menggambar Class Diagram:
Konseptual merupakan konsep yang berkaitan dengan kelas memberikan kemerdekaan bahasa
Spesifikasi merupakan perangkat lunak antarmuka menyembunyikan implementasi
Implementasi menunjukkan kelas nyata digunakan dalam bahasa pemrograman peta langsung ke implementasi
Attributes
Atribut dapat ditentukan pada berbagai tingkat detail: Pada tingkat konseptual nama atribut pelanggan menunjukkan bahwa pelanggan memiliki nama. Pada tingkat spesifikasi, atribut ini menunjukkan bahwa objek pelanggan dapat memberitahu nama dan Anda dapat mengatur nama. Pada tingkat implementasi, pelanggan memiliki variabel contoh untuk namanya.
Berikut contoh sintaknya:
Operations
Operasi adalah proses yang dilakukan oleh class Mereka sesuai dengan metode kelas dalam bahasa OO. Pada spesifikasi tingkat operasi sesuai dengan metode umum di kelas. Biasanya Anda tidak menunjukkan metode-metode yang hanya mengatur atau mendapatkan nilai atribut.
Pada tampilan implementasi biasanya metode akan ditampilkan. Berikut contoh sintaknya:
TERIMA KASIH