Upload
dangminh
View
248
Download
0
Embed Size (px)
Citation preview
Pemodelan Sistem Perangkat Lunak
Andronicus Riyono, M.T.Universitas Kristen Duta Wacana
Thursday, August 27, 2009
SilabusPemodelan Sistem Perangkat Lunak
Pertemuan I
Thursday, August 27, 2009
Nico
Andronicus Riyono, M.T.
http://lecturer.ukdw.ac.id/riyono/
facebook.com/riyono
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 didapatdi 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
• can be REUSED
• FLEXIBLE
Thursday, August 27, 2009
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
• Craig Larman
Thursday, August 27, 2009
Softwares
• Silakan kunjungi lecturer.ukdw.ac.id/riyono untuk kabar terbaru (mana yang disarankan, di mana mendapatkan installer)
• Sementara (belum ditentukan):
• ArgoUML
• Visual Paradigm UML - Community Edition
Thursday, August 27, 2009
Sekilas OOPPemodelan 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)
• Apa yang membuatnya Unik
Thursday, August 27, 2009
State
DaveAge: 32Height: 6’ 2”
BrettAge: 35Height: 5’ 10”
GaryAge: 61Height: 5’ 8”
Thursday, August 27, 2009
BehaviorGet 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’m the great Poppini!
No, I’m the great Poppini.
I am the great Poppini. De great Poppini
at-a your service.
Thursday, August 27, 2009
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
InheritanceMom’s eyesDad’s smile
Dad’s sports obsession
Mom’s love of ROCK
Thursday, August 27, 2009
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!
Wait. How’d he do that? Where’s the bunny gone?
Thursday, August 27, 2009
Sekilas OOA&DPemodelan Sistem Perangkat Lunak
Pertemuan I
Thursday, August 27, 2009
Mengapa OOA&D
• Membuat software yang
• Dirancang dengan baik
• Tangguh
• Dapat dikembangkan lebih lanjut
• dengan teknologi OO (Java, C#)
Thursday, August 27, 2009
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!
• Menyamakan persepsi antara semua pihak
• Memastikan semua berjalan sesuai yang diharapkan
• Bahasa yang sama
Thursday, August 27, 2009
UML
• 1 picture worth 1024 words
• lebih mudah untuk melihat diagram + penjelasan ketimbang hanya narasi berlembar-lembar
• Standar, Open-source
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