Pemodelan Sistem Perangkat Lunak Andronicus Riyono, M.T. Universitas Kristen Duta Wacana
Thursday, August 27, 2009
Silabus Pemodelan Sistem Perangkat Lunak Pertemuan I
Thursday, August 27, 2009
Nico Andronicus Riyono, M.T. http://lecturer.ukdw.ac.id/riyono/
[email protected] facebook.com/riyono
[email protected]
Thursday, August 27, 2009
Belajar apa semester ini? Writing GREAT software! everytime! consistently!
Thursday, August 27, 2009
Belajar apa semester ini? •
OOP (Object-Oriented Programming) *
•
OOA&D (Object Oriented Analysis & Design)
•
UML (Unified Modeling Language) * bagaimana melakukan OOP lebih lengkapnya didapat di Matakuliah PBO (Pemrograman Berorientasi Obyek)
Thursday, August 27, 2009
Tujuan Pembelajaran* •
Mahasiswa mampu menjelaskan secara garis besar peranan dari masing-masing diagram dan kapan digunakan
•
Mahasiswa mampu memilih dan menerapkan diagram-diagram sesuai dengan studi kasus yang diberikan
•
Mahasiswa mampu menggunakan UML CASE Tool sebagai alat bantu pembuatan diagram UML * Kompetensi Matakuliah TI2133 - Pemodelan Sistem Perangkat Lunak, Panduan Akademik Kurikulum 2008 Teknik Informatika, UKDW, halaman 41(dengan sedikit perubahan)
Thursday, August 27, 2009
OOA&D with UML •
Mahasiswa mampu melakukan Object-Oriented Analysis & Design
•
Mahasiswa mampu membuat berbagai diagram UML yang diperlukan untuk mengkomunikasikan struktur aplikasi
Thursday, August 27, 2009
OOA&D is about writing great software, not doing a bunch of paperwork!
•
•
Customers are satisfied when their apps
• • •
WORK KEEP WORKING can be UPGRADED
Programmers are satisfied when their apps
• •
Thursday, August 27, 2009
can be REUSED FLEXIBLE
Penilaian • • • • •
Tugas-tugas Kelompok 50% Tugas-tugas Pribadi 40% TTS 5% TAS 5% Tugas Tambahan Lain / Penilaian Subjektif
Thursday, August 27, 2009
Pertemuan (Tentatif) 1. Silabus + Sekilas OOP + Sekilas OOA&D 2. Requirements & Changes 3. Analysis & Good Design 4. Presentasi Tugas 5. Architecture & Design Principle 6. Iterating, Testing, and OOA&D Lifecycle 7. Case Study & Discussion Thursday, August 27, 2009
Pertemuan (Tentatif) 8. Applying UML & Patterns 9. Domain Models, SSDs, Operation Contracts 10. Object Design, Interaction Diagrams 11. Class Diagrams & GRASP 12. Mapping Designs to Code, Test-Driven Development & Refactoring 13. Presentasi Tugas
Thursday, August 27, 2009
Books •
•
Head First Object Oriented Analysis & Design
• • •
Brett McLaughlin Gary Pollice Dave West
Applying UML and Patterns
•
Thursday, August 27, 2009
Craig Larman
Softwares •
Silakan kunjungi lecturer.ukdw.ac.id/riyono untuk kabar terbaru (mana yang disarankan, di mana mendapatkan installer)
•
Sementara (belum ditentukan):
• •
Thursday, August 27, 2009
ArgoUML Visual Paradigm UML - Community Edition
Sekilas OOP Pemodelan Sistem Perangkat Lunak Pertemuan I
Thursday, August 27, 2009
Sebaiknya Anda Tahu •
Membuat program dengan bahasa yang berorientasi obyek (Java, C++, Ruby)
•
Seseorang bisa membuat program yang jelek dengan OOP seperti bagaimana program prosedural juga bisa jelek
•
Bagaimana bekerja dalam tim pengembangan perangkat lunak
Thursday, August 27, 2009
Object • • •
Memiliki state (kondisi/keadaan)
•
Berubah-ubah
Memiliki behavior (perilaku/method)
•
Merespon terhadap input/message
Memiliki Identity (identitas)
•
Thursday, August 27, 2009
Apa yang membuatnya Unik
State
Dave Age: 32 Height: 6’ 2”
Brett Age: 35 Height: 5’ 10”
Gary Age: 61 Height: 5’ 8”
Thursday, August 27, 2009
Behavior Get the mail. Cook dinner.
Thursday, August 27, 2009
Identity
Okay, which one of you wise guys is the real Poppini?
I am the great Poppini. I am the great Poppini! I’m the great Poppini!
Thursday, August 27, 2009
De great Poppini at-a your service. No, I’m the great Poppini.
Classes ‣ Define the properties and behavior of objects ‣ Can have behavior and properties that are defined in the class but are independent of the individual objects
Thursday, August 27, 2009
Inheritance Dad’s smile
Dad’s sports obsession
Thursday, August 27, 2009
Mom’s eyes
Mom’s love of ROCK
Polymorphism ‣ Different type of objects can respond to the same message ‣ The actual method that executes is not determined until run time ‣ Dynamic (or late) binding
Thursday, August 27, 2009
Encapsulation …Two… Three. And Abracadabra, the rabbit is gone!
Thursday, August 27, 2009
Wait. How’d he do that? Where’s the bunny gone?
Sekilas OOA&D Pemodelan Sistem Perangkat Lunak Pertemuan I
Thursday, August 27, 2009
Mengapa OOA&D •
Membuat software yang
• • • •
Thursday, August 27, 2009
Dirancang dengan baik Tangguh Dapat dikembangkan lebih lanjut dengan teknologi OO (Java, C#)
Ilustrasi
Thursday, August 27, 2009
Requirement Gathering
Thursday, August 27, 2009
Requirement Gathering
Thursday, August 27, 2009
Catatan Spesifikasi
Thursday, August 27, 2009
Catatan Spesifikasi
Thursday, August 27, 2009
Desain Analyst
Thursday, August 27, 2009
Desain Analyst
Thursday, August 27, 2009
Implementasi Programmer
Thursday, August 27, 2009
Implementasi Programmer
Thursday, August 27, 2009
Yang diberikan ke customer
Thursday, August 27, 2009
Yang diberikan ke customer
Thursday, August 27, 2009
Yang sebenarnya diperlukan customer
Thursday, August 27, 2009
Yang sebenarnya diperlukan customer
Thursday, August 27, 2009
Komunikasi • • •
Sangat Penting!
•
Bahasa yang sama
Menyamakan persepsi antara semua pihak Memastikan semua berjalan sesuai yang diharapkan
Thursday, August 27, 2009
UML • •
1 picture worth 1024 words
•
Standar, Open-source
lebih mudah untuk melihat diagram + penjelasan ketimbang hanya narasi berlembar-lembar
Thursday, August 27, 2009
Tugas Pribadi •
Head First OOA&D
•
Appendix II (Welcome to Objectville), Intro, Chapter 1, 2, dan 3
•
Buatlah rangkuman maksimal 1 halaman tentang apa yang Anda pelajari dari tugas membaca tersebut
• •
dikirim ke email:
[email protected] sebelum pertemuan berikutnya
Thursday, August 27, 2009