View
234
Download
0
Category
Preview:
Citation preview
Review Materi PL
Materi Pemrograman Lanjut
Class & Object
Inheritance
Abstraction
Encapsulation
Polymorphism
Interface
Message
Exception
2
Pemrograman
Berorientasi
Objek
Pemrograman dan
Pemodelan Berbasis Objek
Pemrograman Berbasis Objek
Bertitik berat pada teknik – teknik
pemrograman untuk pembangunan aplikasi
yang menggunakan konsep berorientasi objek
Bisa dilakukan dengan berbagai bahasa
pemrograman yang mendukung
pengembangan aplikasi berorientasi objek
3
Pemrograman dan
Pemodelan Berbasis Objek
Pemodelan Berorientasi Objek
Bertitik berat pada metode analisis dan desain
sistem yang menggunakan konsep berorientasi
objek
Pemodelan ini pada umumnya adalah langkah
awal pada
pembangunan sebuah sistem sebelum
dilakukan implementasi
pembangunan,
tidak terkecualipada sistem komputer
4
Model : representasi abstrak dari sesuatu yang nyata ataupun yang tidak nyata
Model : representasi dari sebuah obyek, sistem atau ide dalam bentuk yang berbeda dari aslinya
Model : sebuah obyek yang dibuat untuk merepresentasikan sesuatu untuk kemudahan pemahaman
Model : a theoretical construct that represents processes, with a set of variables and a set of logical & quantitative relationships between them
Contoh
model jembatan, model arus lalu lintas, model pesawat terbang, model proses pengembangan PL
7Definisi Model
Catatan :
Kita biasanya membangun model sistem yang
kompleks karena kita tidak dapat memahami
sistem tersebut secara keseluruhan
Kita membangun model untuk dapat
memahami sistem yang sedang kita
kembangkan secara lebih baik
8Model
Pemodelan = proses membuat model
Dalam perspektif rekayasa sistem, pemodelan sistem adalah proses membangun atau membentuk sebuah model dari suatu sistem nyata dalam bahasa formal tertentu
Pada dasarnya pemodelan sistem memiliki 4 tujuan utama :
Membantu kita untuk memvisualisasikan sistem yang kita inginkan
Memungkinkan kita untuk mendefinisikan struktur dan perilaku sistem
Memberikan kita template yang akan memandu kita dalam melakukan konstruksi sistem
Memberikan kita dokumentasi atas keputusan yang kita buat
9Pemodelan
Model yang kita buat mempengaruhi
bagaimana cara penyelesaian masalah yang
terkait
Setiap model dapat dinyatakan pada
berbagai tingkatan presisi
Model terbaik adalah yang “terhubung”
dengan realitas yang ada
Tidak ada istilah 1 model tunggal cukup untuk
menggambarkan semuanya
10Prinsip Pemodelan Visual
Sebuah “evolusi” alami dari teknologi
berorientasi objek
Enkapsulasi logika bisnis melalui pemodelan
UML
Penggunaan pemodelan ini untuk
mengotomatisasi pengembangan aplikasi,
pen-generasi-an kode, pengujian dan
pemeliharaan dari sistem
11Model-Driven Development
13Model-Driven Architecture
Transformation RulesTransformation Rules
PSM PSMPSM
Platform Specific Model –Design/
Implementation
PSM PSMPSM
Platform Specific Model –Design/
Implementation
Auto
mate
d G
enera
tion
Auto
mate
d G
enera
tion
Transformation RulesTransformation Rules
Platform Independent
Model –Analysis/Design
PIM PIM
Platform Independent
Model –Analysis/Design
PIM PIM
Computation Independent Model –
Domain Model, Business Model,
Requirements, etc.
CIM
Computation Independent Model –
Domain Model, Business Model,
Requirements, etc.
CIM
Code, Files, Artifacts
Transformation Rules
Code, Files, Artifacts
Transformation Rules
Code, Files, Artifacts
Transformation Rules
An architectural style based on OMG initiative
Karakteristik penting dari suatu entitas yang
membedakannya dari semua jenis entitas lain
Sifatnya tergantung pada perspektif
pengamat
Bentuknya masih
belum dalam
wujud nyata,
namun
menunjukkan
esensi ideal dari
sesuatu
16Abstraction
Menyembunyikan implementasi dari “klien”
Klien dapat mengakses implementasi melalui
interface
Meningkatkan resiliency sistem
Misalnya, dapat “beradaptasi” dari perubahan
17Encapsulation
“Memecah” sesuatu yang kompleks menjadi
pecahan yang kecil – kecil
Membantu orang – orang untuk memahami
sistem yang kompleks
18Modularity
19Hierarchy
Decreasing
abstraction
Increasing
abstractionAsset
RealEstate
Savings
BankAccount
Checking Stock
Security
Bond
Elements at the same level of the hierarchy should be at the same level of abstraction
Unified Modelling Language (UML) adalah
sebuah "bahasa" yg telah menjadi standar
dalam industri untuk visualisasi, merancang
dan mendokumentasikan sistem perangkat
lunak
Dengan menggunakan UML kita dapat
membuat model untuk semua jenis aplikasi
perangkat lunak, dimana aplikasi tersebut
dapat berjalan pada perangkat keras, sistem
operasi dan jaringan apapun, serta ditulis
dalam bahasa pemrograman apapun
21UML
UML adalah bahasa untuk :
Memvisualisasi / Visualizing
Menspesifikasi / Specifying
Mengkontruksi / Constructing
Mendokumentasikan / Documenting
“...sebuah artifact dari sistem perangkat
lunak”
22UML
UML dapat menggambarkan arsitektur sistem,
kebutuhan sistem, pengujian sistem,
perencanaan proyek, dan manajemen
perilisan
23UML
24UML
Use Case Diagram
Actor A
Use Case 1
Use Case 2
Use Case 3
Actor B
Class Diagram
GrpFile
read( )
open( )
creat e( )
fillFile( )
rep
Repos it ory
name : char * = 0
readDoc( )
readFile( )
( from Pers is t ence)
FileM gr
fet chDoc( )
sort ByName( )
Document Lis t
add( )
delet e( )
Document
name : int
docid : int
numField : int
get ( )
open( )
close( )
read( )
sort FileLis t ( )
creat e( )
fillDocument ( )
fLis t
1
FileLis t
add( )
delet e( )
1
File
read( )
read() fill t he
code..
Sequence Diagram
user
mainWnd fileMgr :
FileMgr
repositorydocument :
Document
gFile
1: Doc view request ( )
2: fet chDoc( )
3: creat e ( )
4: creat e ( )
5: readDoc ( )
6: fillDocument ( )
7: readFile ( )
8: fillFile ( )
9: sort ByName ( )
ƯÁ¤¹®¼¿¡ ´ëÇÑ º¸ ±â¸ ¦
»ç¿ëÀÚ °¡ ¿äûÇÑ´Ù .
ÈÀÏ °ü¸ ®ÀÚ ´Â Àоî¿Â
¹®¼ÀÇ Á¤º¸ ¸ ¦ ÇØ´ç ¹®¼
°´Ã¼¿¡ ¼³Á¤À» ¿äûÇÑ´Ù .
ȸ é °´Ã¼´Â ÀоîµéÀÎ
°´Ã¼µé¿¡ ´ëÇØ ÀÌ ¸ §º°·Î
Á¤·ÄÀ» ½ÃÄÑ È¸ é¿¡
º¸ ¿©ÁØ´Ù .
Deployment Diagram
W indow 95
¹®¼°ü¸ ®
Ŭ¶óÀÌ ¾ðÆ®.EXE
W indow s
NT
¹®¼°ü¸ ® ¿£Áø.EXE
W indow s
NT
W indow s95
Solaris
ÀÀ¿ë¼¹ö.EXE
Alpha
U NI X
I BM
M ainframe
µ¥ ÀÌ Å̧ º£ÀÌ ½º¼¹ö
W indow s95
¹®¼°ü¸ ® ¾ÖÇÃ̧ ´
ºÐ»ê ȯ°æÀÇ ÇÏ µå¿þ¾î¹× ³×Æ®¿÷À̧ ·Î ÀÇ Á¤º¸ ½Ã½ºÅÛ ¿¬°á ¸ ðµ¨
- À©µµ¿ì 95 : Ŭ¶óÀÌ ¾ðÆ®
- À©µµ¿ì NT: ÀÀ¿ë¼¹ö
- À̄ ´Ð½º ¸ Ó½Å: ÀÀ¿ë ¼¹ö ¹× µ¥ ÀÌ Å̧ ¼¹ö, Åë½Å ¼¹ö
- I BM ¸ ÞÀÎ ÇÁ·¹ÀÓ: µ¥ ÀÌ Å̧ ¼¹ö, Åë½Å ¼¹ö
25UML
A Language Is
Not Enough to
Build a System
Modeling
LanguageUnified
Process
Team-Based
Development
Recommended