pemodelansi

advertisement
OBJECT ORIENTED MODELLING
INFORMATION SYSTEM
START WITH PROGRAMMING
The world of analysis and design start from programming language, start from :
 Unstructured Programming
 The power of Go To Statement
 Example Language programming : Gwbasic, Basic, etc
 Structured Programming
 Eliminate Go To concept
 Dissociation between Data and function
 Example Language programming : Clipper, C, Fortran, COBOL, etc
 Object Oriented Programming
 First introduced by SIMULA 67 language
 Combining data and function become a class (Encapsulation)
 The others programming language like Smalltalk, Java, Prolog, etc
 Visual OO Programming
 Was introduce in 1991 by Microsoft with Visual Basic
 Using GUI (Graphical User Interface) Concept
 Others are Visual C++, Visual Foxpro 3.0, Visual Objects, power
builder, borland delphi, dot net, ect
2
THE DIFFERENTIATION BETWEEN STRUCTURED
AND OBJECT ORIENTED DESIGN (1)
Study Case : Library
Void main( )
{ String kodebook,judul,pengarang,penerbit ;
String nmpmj, alpmj,umur,jk;
void entrybuku( )
void updatebuku( )
void entrypeminjam( )
void updatepeminjam( )
void prosespinjam( )
}
Class peminjam
{ String nmpmj, alpmj,umur,jk :
void entrypeminjam( )
void updatepeminjam( )
void prosespinjam( )
}
class buku
{ String kodebook,judul,pengarang,penerbit
;
Anggota
Denda
void entrybuku( )
void updatebuku( )
1
0..2
}
1
Transaksi
-NoID : char(6)
#Nama : char(20)
#Alamat : char (40)
#noktp : char (20)
-Bayar : Num(8)
-jenis : char(1) {Jenis : 0=hilang,1=rusak,2=telat}
+denda()
+ang()
1..*
1
-notran :char(5)
-Tgltrans : date
-Tglbalik : date
+trans()
+transb()
Pembaca
peminjam
1
M
lakukan
Transaksi
+pembaca()
Baca buku
1..*
Baca
N
book
Entitas Relationship Diagram
-Tglbaca : date
-jambaca : char(5)
+bacadong()
Entity Class Diagram
1..*
Balikin buku
Petugas
1..*
pinjam
1
-Kodepet : char (6)
-Nama : char (20)
-alamat : char (30)
+getpet()
1
Pinjam
-Tglkembali : date
1..*
1
M
1 1..3
+pinjem()
+balik()
0..*
1
Buku
-Kodebuku : char(7)
-judul : char(40)
-penerbit : char (30)
-edisi : num(4)
-pengarang:char(40)
-harga:num(8)
+getbuku()
3
THE DIFFERENTIATION BETWEEN STRUCTURED
AND OBJECT ORIENTED DESIGN (2)
Study Case : Library
Class peminjam
{ String nmpmj, alpmj,umur,jk :
void entrypeminjam( )
void updatepeminjam( )
void prosespinjam( )
}
class buku
{ String kodebook,judul,pengarang,penerbit ;
void entrybuku( )
<<include>>
Pinjam
void updatebuku( )
Buku
}
Void main( )
{ String kodebook,judul,pengarang,penerbit ;
String nmpmj, alpmj,umur,jk;
void entrybuku( )
void updatebuku( )
void entrypeminjam( )
void updatepeminjam( )
void prosespinjam( )
}
DataPeminjam
1.0 P
peminjam
Entry Data
Buku
<<extend>>
Daftar
Anggota Baru
Peminjam
Anggota
Kembalikan
buku
Update
Anggota
<<extend>>
Petugas
Bayar
Denda
Kepala
Perpustakaan
DataBUku
2.0 P
Buku
Baca Di
tempat
Update Buku
Peminjam
bukupinjaman
peminjam
3.0 P
Pinjam Buku
Diagram Overview
Baca bukan
anggota
Transaksi
Pinjam
Pembaca
Pencetakan
Laporan
<<system>>
BAAK
<<time>>
4
WHY WE LEARN THIS SUBJECT ?
• Mempelajari cara menggunakan alat untuk menganalisis dan
merancang sistem informasi
• Ada beberapa hubungan antara subjek satu dengan subjek
lainnya
• Belajar bagaimana kita melakukan implementasi terhadap
bahasa pemrograman
• OO Analisis dan desain merupakan subjek bagaimana belajar
analisis dan desain atau membangun sistem informasi
Programming
Language
OO Modelling
Information
System
OO
Analysis & Design
5
ADA GARIS MERAH ANTARA DESAIN DAN IMPLEMENTASI
Kita harus menerapkan sesuatu yang telah kita rancang dan
Kita harus merancang sesuatu yang telah kita terapkan
Kd_dokter
Nm_dokter
Kd_plg
Nm_plg
Usia
Telp
almt
Dokter
1
1
1..*
pelanggan
No_resep (fk)
Kd_obat (fk)
Jml_obat
Aturan
Harga_psn
No_kwit
Tgl_kwit
No_resep (fk)
No_resep
1..* Tgl_resep
Kd_dokter (fk)
Kd_plg(fk) 1
resep
No_ref (fk)
Kd_rek (fk)
Tgl
posisi
Jml
1..*
Kd_obat
Nm_obat
Jns_obat
obat
Satuan
1..*
Har-Sat
No_sln_rsp (fk)
Kd_obat (fk)
catat
Jml_obat
Aturan
1..*
1..*
kwitansi
1..*
isi
1..*
1
1
1..*
1..*
1..*
jurnal
rekening
Kd_rek
Nm_rek
D_k
1..*
No_nota
nota Tgl_nota
1
salinanresep
No_sln_resep
Tgl_sln_resep
No_resep (fk)
ada
No_nota (fk)
Kd_obat (fk)
qty_obat
Jml_beli
6
APA ITU UML
UML ADALAH UNIFIED MODELING LANGUAGE
UML DICIPTAKAN OLEH GRANDY BOOCH, IVAR JACOBSON DAN
JIM RUMBAUGH
BAHASA STANDAR PEMODELAN VISUAL (VISUAL MODELING) DALAM
REKAYASA SOFTWARE
TOOL PEMODELAN VISUAL MENGGUNAKAN RATIONAL ROSE,
DAN VISIO 2000
RATIONAL ROSE DAPAT MENDUKUNG
- ROUNDTRIP ENGINEERING, DAPAT MEN-GENERATE KODE DARI MODEL
YANG DIBUAT
- REVERSE ENGINEERING, DARI SOURCE CODE YANG ADA UNTUK
MENGHASILKAN GAMBARAN ARSITEKTUR DARI SOFTWARE APLIKASI.
7
TEKNOLOGI OBJECT ORIENTED
PARADIGMA BARU DALAM REKAYASA SOFTWARE YANG DIDASARKAN PADA
OBJEK DAN KLASS
OBJECT ORIENTED MEMANDANG SOFTWARE BAGIAN PER BAGIAN YANG
DIGAMBARKAN DALAM SUATU OBJEK
SATU OBJEK DALAM SEBUAH MODEL MERUPAKAN SUATU FOKUS SELAMA
PROSES ANALISIS, DESAIN, DAN IMPLEMENTASI
SATU OBJEK DITEKANKAN PADA STATE, PRILAKU(BEHAVIOR), DAN
INTERAKSI ANTAR OBJEK
OBJECT ORIENTED DAPAT DIGUNAKAN MEMBANGUN APLIKASI YANG
SANGAT LUAS
8
KONSEP UML
UML DIGUNAKAN UNTUK
- MENAMPILKAN BATASAN DARI SEBUAH SISTEM DAN FUNGSI UTAMA
DENGAN MENGGUNAKAN USE CASES AND ACTORS
- ILUSTRASI USE CASE DI REALISASIKAN DENGAN INTERACTION DIAGRAMS
- MENJELASKAN STRUKTUR YANG TETAP DARI SEBUAH SISTEM
MENGGUNAKAN KELAS DIAGRAM
- PHYSICAL IMPLEMENTATION ARCHITECTURE DIJELASKAN
MENGGUNAKAN COMPONENT DAN DEPLOYMENT DIAGRAMS
9
OBJECT ORIENTDED ANALYSIS DAN AND DESIGN (OOAD)
OBJECT ORIENTED ANALYSIS :
METODE ANALISIS YANG MEMERIKSA REQUIREMENTS(SYARAT/KEPERLUAN
YANG HARUS DI PENUHI SISTEM) DARI SUDUT PANDANG KELAS – KELAS
DAN OBJEK – OBJEK YANG DITEMUKAN DALAM RUANG LINGKUP
PERMASALAHAN
OBJECT ORIENTED DESIGN :
METODE UNTUK MENGARAHKAN ARSITEKTUR SOFTWARE YANG DIDASARKAN
PADA MANIPULASI OBJEK – OBJEK SISTEM ATAU SUBSISTEM.
10
KONSEP DASAR OOAD
OBJEK (OBJECT) ADALAH “BENDA” SECARA FISIK ATAU KONSEPTUAL YANG
DAPAT DI TEMUI DISEKELILING KITA. MISALNYA HARDWARE, SOFTWARE,
DOKUMENT DAN MANUSIA BAHKAN KONSEP.
OBJECT
11
KONSEP DASAR OOAD
OBJECT MEMILIKI STATE
STATE ADALAH HIMPUNAN DARI KEADAAN YANG MENGGAMBARKAN OBJEK
TERSEBUT
STATE DINYATAKAN DENGAN ATTRIBUTE
ATTRIBUTE ADALAH NILAI INTERNAL SUATU OBJECT YANG MENCERMINKAN
KARAKTERISTIK OBJEK , KONDISI SESAAT, KONEKSI DENGAN OBJECT LAIN
DAN IDENTITAS
PERUBAHAN STATE DICERMINKAN OLEH PRILAKU ( BEHAVIOR )
BEHAVIOR SUATU OBJEK MENDEFINISIKAN BAGAIMANA SEBUAH OBJEK
BERTINDAK (BERAKSI) DAN MEMBERI REAKSI
INTERFACE ADALAH PINTU UNTUK MENGAKSES SERVIS OBJEK.
12
ATTRIBUTE
KAWAT
KAWATPER
KACA
STATE
TERANG
REDUP
OBJECT
LAMPU
13
KONSEP DASAR OOAD
KELAS (CLASS) ADALAH DEFINISI UMUM (POLA, TEMPLATE ATAU
CETAK BIRU) UNTUK HIMPUNAN OBJEK BISNIS
KELAS MEMILIKI ATTRIBUT DAN PRILAKU, BEHAVIORS, SERVICE ATAU
MESSAGE
CONTOH KELAS
BINATANG, MAHASISWA DAN LAIN- LAIN
ENCAPSULATION ADALAH PENYATUAN ANTARA DATA DAN PROSES
ASSOCIATION ADALAH HUBUNGAN ANTAR OBJEK YANG SALING
MEMBUTUHKAN
AGGREGATION ADALAH BENTUK KHUSUS DARI ASOSIASI YANG
MENGGAMBARKAN SELURUH BAGIAN SUATU OBJEK YANG MERUPKAN
BAGIAN DARI OBJEK LAINNYA
CONTOH
OBJEK TANGGAL DAPAT DISUSUN DARI OBJEK HARI, OBJEK BULAN, DAN
OBJEK TAHUN.
14
TOOL OF UML
• USE CASES
• CLASS DIAGRAMS
• INTERACTION DIAGRAMS
• SEQUENCE DIAGRAMS
• COLLABORATION DIAGRAMS
• PACKAGE DIAGRAMS
• STAT DIAGRAMS
• ACTIVITY DIAGRAMS
• DEPLOYMENT DIAGRAMS
15
KOMPONEN USE CASE
ACTOR
NewClass
USE CASE
HUBUNGAN ANTARA ACTOR DAN USE CASE
16
ACTOR
ACTOR ADALAH SESEORANG ATAU SESUATU YANG BERINTERAKSI
DENGAN SISTEM SAAT PENGEMBANGAN
ACTOR DAPAT BERUPA ORANG, STAFF, STUDENT, SISTEM
(BILLING SYSTEM)
ACTOR ADALAH YANG MELAKSANAKAN ATAU YANG MENGGUNAKAN
SISTEM
CONTOH
STAFF
TERIMA PERMOHONAN KKP
MAHASISWA
17
USE CASE
USE CASE ADALAH POLA DARI PERUBAHAN SISTEM YANG DITAMPILKAN
SETIAP USE CASE ADALAH SEBUAH URUTAN DARI HUBUNGAN TRANSAKSI
YANG DIKERJAKAN OLEH ACTOR DAN SISTEM DALAM SEBUAH DIALOG
SEBUAH ALUR DOCUMENT DIBUATKAN USE CASE, PEMBUATAN DI AWALI
DARI ACTOR
DETIL DARI SISTEM HARUS DIJELASKAN KE ACTOR SAAT USE CASE DI
JALANKAN
CONTOH
STAFF  MEMELIHARA KURIKULUM
DOSEN  MEMINTA ABSEN
MAHASISWA  MEMELIHARA JADWAL
BILLING SYSTEM  MENERIMA INFORMASI TAGIHAN DARI MAHASISWA
18
USE CASE
USE CASE DIAGRAM DIBUAT UNTUK MENGGAMBARKAN HUBUNGAN
ACTOR DAN USE CASE
MINTA JADWAL
MAHASISWA
PELIHARA JADWAL
DOSEN
BILLING SISTEM
PELIHARA KURIKULUM
MAHASISWA
19
HUBUNGAN ANTARA USE CASE
USE CASE DAPAT DIHUBUNGKAN DENGAN USE CASE LAIN
JENIS HUBUNGAN TERSEBUT ADLAH :
A. USES : SATU ATAU LEBIH USE CASE YANG BERHUBUNGAN AKAN
TETAPI MERUPAKAN SATU KESATUAN
B. EXTENDS : SATU ATAU LEBIH USE CASE YANG BERHUBUNGAN TAPI
BERSIFAT OPTIONAL
USES
MINTA JADWAL
LOGON VALIDATION
DOSEN
20
HUBUNGAN ANTARA USE CASE
EXTENDS
MINTA JADWAL
LOGON VALIDATION
DOSEN
21
ACTIVITY DIAGRAM
• Activity diagrams menggambarkan berbagai alir aktivitas dalam
sistem yang sedang dirancang, bagaimana masing-masing alir
berawal, decision yang mungkin terjadi, dan bagaimana
mereka berakhir. Activity diagram juga dapat menggambarkan
proses paralel yang mungkin terjadi pada beberapa eksekusi.
• Activity diagram merupakan state diagram khusus, di mana
sebagian besar state adalah action dan sebagian besar transisi
di-trigger oleh selesainya state sebelumnya (internal
processing). Oleh karena itu activity diagram tidak
menggambarkan behaviour internal sebuah sistem (dan
interaksi antar subsistem) secara eksak, tetapi lebih
menggambarkan proses-proses dan jalur-jalur aktivitas dari
level atas secara umum.
22
ACTIVITY DIAGRAM
• Sebuah aktivitas dapat direalisasikan oleh satu use case atau
lebih. Aktivitas menggambarkan proses yang berjalan, sementara
use case menggambarkan bagaimana aktor menggunakan sistem
untuk melakukan aktivitas.
• Sama seperti state, standar UML menggunakan segiempat
dengan sudut membulat untuk menggambarkan aktivitas.
Decision digunakan untuk menggambarkan behaviour pada
kondisi tertentu. Untuk mengilustrasikan proses-proses paralel
(fork dan join) digunakan titik sinkronisasi yang dapat berupa
titik, garis horizontal atau vertikal.
• Activity diagram dapat dibagi menjadi beberapa object swimlane
untuk menggambarkan objek mana yang bertanggung jawab
untuk aktivitas tertentu.
23
ACTIVITY DIAGRAM
Pengembalian buku
24
INTERACTION DIAGRAMS
INTERACTION DIAGRAMS MENGGAMBARKAN INTERAKSI ANTAR
KUMPULAN OBJECT PADA SEBUAH USE CASES
INTERAACTION DIAGRAMS DUA TIPE DIAGRAM YAITU :
- SEQUENCE DIAGRAMS
- COLLABORATION DIAGRAMS
COLLABORATION DIAGRAM MENGGAMBARKAN INTERAKSI ANTAR OBJEK
DAN HUBUNGAN DENGAN OBJEK LAINNYA
25
SEQUENCE DIAGRAM
SEQUENCE DIAGRAM MENGGAMBARKAN INTERAKSI ANTAR OBJEK YANG
DISUSUN DALAM URUTAN WAKTU
SIMBOL YANG DIGUNAKAN PADA SEQUENCE DIAGRAM
OBJEK
GARIS KEHIDUPAN/LIFE LINE
TIME/WAKTU
MESSAGES/PESAN
26
SEQUENCE DIAGRAM
CONTOH SEQUENCE DIAGRAM
PESAN
OBJEK
:NAME1
:NAME2
GARIS
KEHIDUPAN
ACTOR
MESSAGE1()
ACTOR YANG
MENJALANKAN
OBJEK
27
CLASS DIAGRAM
CLASS ADALAH DEFINISI UMUM (POLA, TAMPLETE ATAU CETAK BIRU
CLASS MERUPAKAN ABSTRAKSI DARI ENTITAS DUNIA NYATA
CLASS DAPAT JUGA MENGGAMBARKAN GROUP DARI OBJECT
CONTOH CLASS : BINATANG, MAHASISWA, DOSEN DLL
CLASS MEMILIKI : NAMA CLASS, ATTRIBUT DAN SERVICE ATAU BEHAVIORS
28
CLASS DIAGRAM
ATTRIBUTE ADALAH NILAI INTERNAL YANG MENCERMINKA KARAKTERISTIK
DARI OBJECT
OPERATION OBJECT MENDEFINISIKAN BAGAIMANA SEBUAH OBJECT
BERTINDAK DAN MEMBERI REAKSI
CONTOH
NAMA CLASS
ATTRIBUTE
OPERATION
29
CLASS DIAGRAM
CLASS
MAHASISWA
NIM
NAMA
TAMBAH
EDIT
HAPUS
OBJECT
HESTI:MAHASISWA
NIM : 0222500022
NAMA : HESTI
TAMBAH
EDIT
HAPUS
30
CLASS DIAGRAM
OPERATION DAPAT DITEMUKAN PADA INTERACTION DIAGRAMS
PESAN PADA INTERACTION DIAGRAMS MERUPAKAN OPERATION
PARAMETER PADA PESAN ADALAH ATTRIBUTE
REGISFORM
CONTOH
REGISFORM
NAME
NAMECOURSE
REGISMANAGER
ADD(JOE, MATH)
REGISMANAGER
ADD(NAME, NAMECOURSE)
31
INHERITANCE
HUBUNGAN ANTARA SUPER CALSS DENGAN SUBCLASS
SAAT SATU CLASS YANG MEMPUNYAI SPECIALISASI DENGAN CLASS LAIN
BENTUK INI DISEBUT JUGA SPECIALIZATION
Mobil
Sedan
Truk
Bis
32
AGGREGATION
BENTUK KUHSUS DARI ASSOCIATION YANG MENGGAMBARKAN SLURUH BAGIAN
SUATU OBJEK MERUPAKAN BAGIAN DARI OBJEK LAIN
Room
Door
Universitas
Fakultas
Jurusan
33
ASSOCIATIONS
• HUBUNGAN ANTAR CLASS
Pinjaman
Nasabah
PENAMAAN ASSOCIATION:
• HINDARI PENAMAAN YANG TIDAK BERARTI SEPERTI
• BERHUBUNGAN_DENGAN
• TERKAIT_DENGAN
• TERSAMBUNG_DENGAN
• NAMA YANG TIDAK MEMILIK SUBYEK ATAU KATA KERJA
• PUNYA
• DAPAT
• JUAL
34
Download