Pemodelan Sistem Perangkat Lunak -...

Preview:

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/

riyono@ukdw.ac.id

facebook.com/riyono

riyono@gmail.com

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: riyono@ukdw.ac.id

• sebelum pertemuan berikutnya

Thursday, August 27, 2009

Recommended