SlideShare uma empresa Scribd logo
1 de 84
ANALISIS & PERANCANGAN
BERORIENTASI OBJEK

Di Sajikan :
Ferly Ardhy, S.Kom., M.TI
Analisis Berientasi Objek
 Tahapan

untuk menganalisis spesifikasi atau
kebutuhan akan sistem yang akan dibangun
dengan konsep berorientasi objek,apakah
benar
kebutuhan
yang
ada
dapat
diimplementasikan
menjadi
sistem
berorientasi objek.

 Analisis

ini sebaiknya dilakukan oleh orangorang
yang
benar-benar
memahami
implementasi sistem yang berbasis atau
berorientasi objek ,karena tanpa pemahaman
ini maka sistem yang dihasilkan bisa jadi
tidak realistis jika diimplementasikan.
OOA

(Object Oriented Analysis)
biasanya menggunkan kartu CRC
untuk membangun kelas-kelas yang
akan digunakan atau menggunakan
UML pada bagian diagram Use
Case,diagram kelas dan diagram
objek.
Sebelum perkembangan UML ada
beberapa bahasa pemodelan yang
berkembang
untuk
memodelkan
sistem berorientasi objek.
Bahasa Pemodelan tersebut :
1. CRC
(Component,Responsibility,Collaborat
or).
2. Metode Booch.
3. OMT (Object Modelling Technique).
4. OOSE (Object Oriented Software
Engineering).
5. Metode Coad Yourdan.
CRC
Merupakan

bagian dari Object-Oriented
Programming,System,Languages And
Application(OOPSLA).
Dibuat untuk bakal yang akan menjadi
kelas yang akan dianalisis.
Berikut Contoh sebuah kartu CRC
Nama kelas

: Manusia

Kelas orang tua :
Kelas Anak

:

Tanggung jawab
Jenis Kelamin
Usia
Menghitung usia pada tahun yang
Diberikan
Kemampuan memasak

Kelas terkait
Masakan Resep
Nama

Kelas (Class Name)
Merupakan nama yang diberikan pada sebuah
kelas.
 Kelas Orang Tua (Superclases)
Merupakan kelas orang tua (dalam hubungan
pewarisan) atau kelas super dari kelas yang dibuat
CRCnya.
Kelas Anak (Subclases)
Merupakan kelas anak (dalam hubungan
pewarisan) atau sub kelas dari kelas yang dibuat
CRCnya.
Tanggung

Jawab (Responsibilities).

Merupakan isi atribut dan operasi yang harus
ada dalam kelas yang bibuat CRCnya.
•

Kolaborator/Kelas yang terkait (Colaborator).
Merupakan kelas yang terkait (untuk bekerja
sama) dengan kelas yang sedang dibuat
CRCnya tetapi bukan kelas orang tua atau
anak. Terkait dalam hubungan memakai dan
dipakai di dalam kelas.
CRC

dibuat perkelas ,keterkaitan antar kelas
dapat dilihat pada kelas kolom super,sub kelas,
dan kolaborator/kelas terkait.

Dalam

sebuah analisis pembuatan kelas , dapat
terdiri dari banyak kartu CRC.
Metode Booch
Dikembangkan

oleh Grady Booch terdiri
dari diagram kelas,objek,transisi status,
interaksi, modul dan proses.
Contoh diagram kelas dari metode
Booch.

Nama Kelas

Nama Kelas
Atribut
Mempunyai

Atribut
Operasi

Operasi

Pewarisan
Dinstansisasi
Digunakan
Nama Kelas
Nama Kelas
Atribut
Operasi

Nama Kelas

Atribut
Operasi

Atribut
Operasi
OMT
Dikembangkan

oleh James Rumbaugh
sebagai metode untuk mengembangkan
sistem berorientasi objek dan untuk
mendukung pemograman berorientasi
objek.
Berikut adalah sebuah contoh.
Nama kelas

Nama kelas

Atribut

Atribut

Operasi

Operasi

Nama kelas
Atribut
Operasi

Nama kelas

Kualifikasi

Atribut
Operasi
Metode Coad Yourdan
Menyediakan

sebuah diagram kelas,
pembuatannya dengan langkah-langkah berkut :
1. Mendefenisikan kelas dan objek
2. Mengidentifikasi struktur kelas dan objek.
3. Mendefenisikan subjek nama kelas.
4. Mendefenisikan atribut.
5. Mendefenisikan operasi/layanan (service).
Nama

Nama

Atribut

Atribut

Layanan

Layanan

Nama

Nama

Atribut

Atribut

Layanan

Layanan

Nama
Atribut
Layanan

Nama
Atribut
Layanan

Nama

Nama

Nama

Atribut

Atribut

Atribut

Layanan

Layanan

Layanan
OOSE
Dikembangkan

oleh Ivar Jacobson
adalah metode disain berorientasi objek
yang melibatkan use case.
Berikut ini contoh diagram use case
pada metodologi OOSE.
Use case

Actor

uses
Use case

uses

uses
uses
Use case

actor

Use case
Metode

yang paling banyak digunakan
adalah menggunakan UML .
Metode-metode yang sudah dibahas
terdahulu menjadi dasar dalam
pengembangan metode UML.
Disain Berorientasi Objek
Adalah

tahapan perantara untuk
memetakan spesifikasi atau kebutuhan
sistem yang akan dibangun dengan konsep
berorientasi objek ke disain pemodelan agar
lebih mudah diimplementasikan dengan
pemograman berorientasi objek.
Pemodelan berprientasi objek biasanya
dituangkan dalam dokumentasi perangkat
lunak dengan menggunakan perangkat
pemodelan berorientasi objek UML.
Kendala

dan permasalahan pembangunan
sistem berorientasi objek biasanya dapat
dikenali dalam tahap analisis.
OOA & OOD dalam proses yang berulangulang sering kali memiliki batasan yang samar
,sehingga kedua tahapan ini disebut OOAD
(Object Oriented Analysis & Design).
CASE Tools
Alat

bantu untuk pengembangan perangkat
lunak agar hasilnya lebih baik dan waktu
pengerjaannya lebih singkat.
Perangkat lunak yang termasuk CASE tools
dapat merupakan perangkat lunak dalam
tahap analisis,disain,dokumentasi maupun
implementasi ke dalam kode program dan
pengujian program.
Pengelompokan CASE Tools
1. Pendukung alur hidup perangkat
lunak.
2. Dimensi Integritas.
3. Dimensi Konstruksi.
4. Dimensi CASE berbasis keilmuan.
Pengertian Pemograman
Berorientasi Objek

Metodologi berorientasi objek adalah suatu
strategi pembangunan perangkat lunak
yang mengorganisasikan perangkat lunak
sebagai kumulan objek yang berisi data
dan operasi yang dilakukan terhadapnya.
Metodologi berorientasi objek merupakan
suatu cara bagaimana sistem perangkat
lunak dibangun melalui pendekatan objek
secara sistematis.

Metode

berorientasi objek meliputi
rangkaian aktivitas analisis
berorientasi objek ,perancangan
berorientasi objek,pemograman
berorientasi objek dan pengujian
berorientasi objek.
Metode berorientasi objek banyak
dipilih karena metodologi lama banyak
menimbulkan masalah.
Keuntungan Metodologi
Berorientasi Objek
1. Meningkatkan produktivitas.
2. Kecepatan pengembangan.
3. Kemudahan pemeliharaan.
4. Adanya konsistensi.
5. Meningkatkan kualitas perangkat
lunak.
Meningkatkan

Produktivitas  karena
kelas dan objek yang ditemukan dalam
masalah masih dapat dipakai ulang untuk
masalah lainnya yang melibatkan objek
tersebut (reusable).
Kecepatan Pengembangan  karena
sistem yang dibangun dengan baik dan
benar pada saat analisis dan perancangan
akan menyebabkan berkurangnya
kesalahan pada saat pengodean
 Kemudahan

pemeliharaan  karena dengan
model objek,pola-pola yang cenderung tetap
dan stabil .
 Adanya Konsistensi  karena sifat pewarisan
dan penggunaan notasi yang sama pada saat
analisis,perancangan maupun pengodean.
 Meningkatkan Kualitas Perangkat Lunak 
karena pendekatan pengembangan lebih dekat
dengan dunia nyata dan adanya konsistensi
pada saat pengembangannya , perangkat lunak
yang dihasilkan akan mampu memenuhi
kebutuhan pemakai .
Bahasa Pemograman yang mendukung pemograman

berorientasi objek :
1. Bahasa Pemograman Smalltalk.
2. Bahasa Pemograman Eiffel.
3. Bahasa Pemograman C++
4. Bahasa Pemograman Java.
5. Bahasa Pemograman PHP (web).
Konsep Dasar Berorientasi Objek
Pendekatan

berorientasi objek
merupakan suatu teknik atau cara
pendekatan dalam melihat
permasalahan dalam sistem.
Pendekatan berorientasi objek akan
memandang sistem yang akan
dikembangkan sebagai suatu
kumpulan objek yang berkorespondensi
dengan objek dunia nyata.
Dalam

rekayasa perangkat lunak konsep
pendekatan berorientasi objek dapat
diterapkan
pada
tahap
analisis,perancangan, pemograman dan
pengujian perangkat lunak.
Ada berbagai teknik yang dapat digunakan
pada masing-masing tahap tersebut dengan
aturan dan alat bantu pemodelan tertentu.
Sistem

berorientasi objek merupakan sebuah
sistem yang dibangun dengan berdasarkan
metode berorientasi objek
adalah sebuah
sistem
yang
komponennya
dibungkus
(enkapsulasi) menjadi kelompok data dan
fungsi.
Setiap komponen dalam sistem tersebut dapat
mewarisi atribut dan sifat dari komponen lain
dan dapat berinteraksi satu sama lain.
Konsep Dasar Metodologi
Berorientasi Objek
1. Kelas (Class)
9. Reusability
2. Objek (Object)
10. Generalisasi
3. Metode (Method)
11. Komunikasi
4. Atribut (Attribute)
12. Polymorfisme
5. Abstraksi (Abstraction) 13. Package
6. Enskapsulasi (Encapsulation)
7. Pewarisan (Inheritance)
8. Antarmuka
Kelas

(Class)  kumpulan objek-objek
dengan karakter yang sama. Sebuah kelas
mempunyai
sifat(atribut),kelakuan
(operasi/metode),hubungan
(relationship)
dan arti. Suatu kelas dapat diturunkan dari
kelas yang lain,dimana atribut dan kelas
semula dapat diwariskan ke kelas yang baru.
Kelas adalah sebuah struktur tertentu dalam
pembuatan
perangkat
lunak.
Kelas
merupakan bentuk struktur pada kode
program yang menggunakan metodologi
berorientasi objek.
Objek

(Object)  abstraksi dan sesuatu
yang
mewakili
dunia
nyata.
Objek
merupakan suatu entitas yang mampu
menyimpan
informasi
(status)
dan
mempunyai operasi (kelakuan) yang dapat
diterapkan.
Metode  operasi atau metode pada kelas
hampir sama dengan fungsi atau prosedur
pada metodologi terstruktur. Operasi
merupakan fungsi atau transformasi yang
dapat dilakukan terhadap objek atau
dilakukan objek.
Atribut

 variabel global yang dimiliki kelas.
Atribut dapat berupa nilai atau elemen –
elemen data yang dimiliki oleh objek dalam
kelas. Atribut dipunyai secara individu oleh
suatu objek misalnya berat,jenis.
Abstraksi  prinsip untuk merepresentasikan
dunia nyata yang kompleks menjadi suatu
bentuk model yang sederhana dengan
mengabaikan aspek-aspek lain yang tidak
sesuai dengan masalah.
Enskapsulasi

 pembungkusan atribut
data dan layanan (operasi-operasi) yang
dipunyai objek untuk menyembunyikan
implementasi dan objek sehingga objek
lain tidak mengetahui cara kerjanya.
Pewarisan

mekanisme
yang
memungkinkan satu objek mewarisi
sebagian atau seluruh dan objek lain
sebagai bagian dari dirinya.
Antar

muka  biasanya digunakan agar
kelas yang lain tidak mengakses langsung
ke suatu kelas.
Reusability  pemanfaatan kembali objek
yang sudah didefenisikan untuk suatu
permasalahan pada permasalahan lainnya
yang melibatkan objek tersebut.
Generalisasi & spesialisasi  menunjukan
hubungan antar kelas dan objek yang umum
dengan kelas dan objek yang khusus.
Komunikasi

Antar Objek  dilakukan lewat
pesan (message) yang dikirim dari satu
objek ke objek lainnya.
Polimorfisme  kemampuan suatu objek
untuk digunakan di banyak tujuan yang
berbeda dengan nama yang sama sehingga
menghemat program.
Package  sebuah kontainer atau kemasan
yang dapat digunakan untuk mengelompok
kelas-kelas yang bernama sama disimpan
dalam package yang berbeda.
Perbandingan Pendekatan OO &
Terstruktur
Perbedaan

yang paling dasar dari
pendekatan terstruktur dan pendekatan OO
adalah pada metode berorientasi fungsi
atau aliran data dekomposisi permasalahan
dilakukan berdasarkan fungsi atau proses
secara hierarki mulai dari konteks sampai
proses yang lebih kecil.
Pada
metode
berorientasi
objek
dekomposisi
permasalahan
dilakukan
berdasarkan objek-objek yang ada dalam
sistem.
Pendekatan

terstruktur mempunyai kelebihan
dalam kemudahan untuk memahami sistem.
Konsep dekomposis permasalahan mulai dari
paling dasar (diagram konteks) sampai paling
detail cukup memudahkan dalam pemahaman
bentuk sistem khususnya bagi user yang
mempunyai pemahaman tentang sistem yang
cukup rendah.
Pendekatan

berorientasi objek mempunyai
kelebihan dalam peningkatan produktivitas karena
mempunyai reusability yang cukup tinggi dibanding
dengan pendekatan lain.
Kelas-kelas dalam pemograman berorientasi objek
dapat dengan mudah dimanfaatkan untuk sistem
lain yang dikembangkan.
Sistem
akademik

Dekomposisi berdasarkan objek atau
konsep
Dosen

Jadwal

Mahasiswa

Metodologi berorientasi Objek

Dekomposisi berdasarkan fungsi atau proses
Konteks

Kuliah

Kontrak
kuliah

Pengam
bilan
kuliah

Penjad
walan

Metodologi Berorientasi Fungsi

Penilaia
n
PEMODELAN BISNIS & UML
Pemodelan

adalah gambaran realita yang
simpel dan dituangkan dalam bentuk
pemetaan dengan aturan tertentu.
Pemodelan digunakan untuk
merencanakan suatu hal agar kegagalan
dan resiko yang mungkin terjadi dapat
diminimalisir.
Pemodelan pada pembangunan perangkat
lunak digunakan untuk memvisualisasikan
perangkat lunak yang akan dibuat.
Perangkat

Pemodelan adalah suatu model
yang digunakan untuk menguraikan sistem
menjadi bagian-bagian yang dapat diatur
dan mengkomunikasikan ciri konseptual dan
fungsional kepada pengamat.
Salah satu perangkat pemodelan adalah
UML (Unified Modelling Language).
Peran Perangkat Pemodelan :
1. Komunikasi
2. Eksperimentasi
3. Prediksi
Mengapa Perlu Pemodelan Bisnis???
Untuk

memperoleh pemahaman yang lebih
baik tentang visi, misi dan tujuan organisasi.
Sebagai sarana melakukan rekayasa ulang
(reengginering) proses bisnis.
Sebagai sarana pelatihan tentang proses
bisnis organisasi
Sebagai kontek solusi perangkat lunak.
Unified Modelling Language
Pada

perkembangan teknik pemograman
berorientasi objek muncullah sebuah
standarisasi bahasa pemodelan untuk
pembangunan perangkat lunak yaitu UML.
UML muncul karena adanya kebutuhan
pemodelan visual untuk menspesifikasikan,
menggambarkan ,membangun dari sistem
perangkat lunak.
UML

merupakan bahasa visual untuk
pemodelan dan komunikasi mengenai
sebuah sistem dengan menggunakan
diagram dan teks-teks pendukung.
UML hanya berfungsi untuk melakukan
pemodelan.
Secara fisik UML adalah sekumpulan
spesifikasi
yang
dikeluarkan
Object
Management Group (OMG).
UML2.3 Diagram

Structure
Diagrams

Class Diagram

Object Diagram

Component
Diagram

Composite
structure diagram

Package Diagram

Deployment
diagram

Bahavior
Diagram

Intraction
Diagram

Use case
diagram

Sequence
diagram

Activity diagram

Communication
diagram

State machine
diagram

Timing diagram

Interaction
Overview diagram
Structure

Diagram yaitu kumpulan diagram yang
digunakan untuk menggambarkan suatu struktur
statis dari sistem yang dimodelkan.

Behavior

Diagram yaitu kumpulan diagram yang
dgunakan untuk menggambarkan kelakuan sistem
atau rangkaian perubahan pada sebuah sistem.

Interaction

Diagram yaitu kumpulan diagram yang
digunakan untuk menggambarkan interaksi sistem
dengan sistem lain maupun interaksi antar sub sistem
pada suatu sistem.
Class Diagram
Menggambarkan

struktur sistem dari
segi pendefenisian kelas-kelas yang akan
dibuat untuk membangun sistem.
Kelas memiliki apa yang disebut atribut
dan metode atau operasi.
Atribut merupakan variabel –variabel
yang dimiliki suatu kelas & operasi atau
metode adalah fungsi-fungsi yang
dimiliki suatu kelas.
Kelas-kelas yang ada pada struktur sistem harus dapat melakukan

fungsi-fungsi sesuai

dengan kebutuhan sistem.
Susunan struktur kelas yang baik pada diagram kelas sebaiknya memiliki jenis kelas
berikut :
1. Kelas Main  kelas yang memiliki fungsi awal dieksekusi ketika sistem dijalankan.
2. Kelas yang menangani tampilan Sistem  kelas yang mendefenisikan dan mengatur
tampilan pemakai.
3. Kelas yang diambil dari Pendefenisian Use Case  kelas yang menangani fungsi- fungsi
yang harus ada diambil dari pendefenisian use case.
4. Kelas yang diambil dari Pendefenisian Data  Kelas yang digunakan untuk
membungkus data .
Dalam

mendefenisikan metode yang ada
dalam
kelas
perlu
memperhatikan
Cohesion & Coupling.
Cohesion adalah ukuran seberapa dekat
keterkaitan instruksi di dalam sebuah
metode terkait satu sama lain.
Coupling adalah ukuran seberapa dekat
keterkaitan instruksi antara metode yang
satu dengan metode yang lain dalam
sebuah kelas.
Simbol
Kelas

Deskripsi
Kelas pada struktur sistem

Nama_kelas
+atribut
+operasi()

Antarmuka/Interface

Sama dengan konsep interface
dalam pemograman berorientasi
objek

nama_interface
Asosiasi/Association

Relasi antara kelas dengan makna
umum, asosiasi biasanya juga
disertai dengan multiplicity

Asosiasi berarah / dircted
association

Relasi antara kelas dengan makna
kelas yang satu digunakan oleh
kelas yang lain, asosiasi biasanya
juga disertai dengan multiplicity

Generalisasi

Relasi antar kelas dengan makna
generalisasi-spesialisasi (umum
khusus)

Kebergantungan

Relasi antar kelas dengan makna
kebergantungan antar kelas

………………………………
Simbol
Agregrasi / aggregation

Deskripsi
Relasi antar kelas dengan
makna
Semua bagian (whole part)
Object Diagram
Diagram

objek menggambarkan
struktur sistem dari segi penamaan
objek dan jalannya objek dalam sistem.
Pada diagram objek harus dipastikan
semua kelas yang sudah didefenisikan
pada diagram kelas harus dipakai
objeknya,karena jika tidak
pendefenisian kelas tidak dapat
dipertanggung jawabkan.
Untuk

apa mendefenisikan sebuah kelas
sedangkan pada jalannya sistem ,objeknya
tidak dipakai .
Hubungan
link pada diagram objek
merupakan hubungan memakai dan dipakai
dimana dua objek akan dihubungkan oleh
link jika ada objek yang dipakai oleh objek
lainnya.
Simbol

Deskripsi

Objek
Nama objek

: nama kelas

Atribut

Objek dari kelas yang
berjalan saat sistem
dijalankan

= nilai

Link

Relasi antar objek
Component Diagram
Untuk

menunjukkan organisasi dan
ketergantungan di antara kumpulan
komponen dalam sebuah sistem.
Diagram komponen fokus pada komponen
sistem yang dibutuhkan dan ada dalam
sistem.
Diagram komponen juga dapat digunakan
untuk memodelkan hal-hal berikut :
1. Source Code program
2. Komponen executable yang dilepas ke
user
3. Basis Data secara fisik.
4. Framework Sistem.
Framework
perangkat
lunak
merupakan
kerangka kerja yang dibuat untuk memudahkan
pengembangan dan aplikasi.
Server
Controller

client
Aplikasi
client

Model

View
Simbol

Deskripsi

Package

Package merupakan sebuah bunkusan
dari satu atau lebih komponen

Komponen

Komponen sistem

Kebergantungan / dependency

Kebergantungan antar komponen arah
panah mengarah pada komponen yang
dipakai

………………………………..
Antarmuka / interface

Sama dengan konsep interface pada
pemograman berorientasi objek, yaitu
sebagai antarmuka komponen agar
tidak mengakses langsung komponen

Name_interface
Link

Relasi antar komponen
Composite Structure Diagram
Muncul

pada UML versi 2.0 digunakan untuk
menggambarkan struktur dari bagian-bagian
yang saling terhubung maupun
mendeskripsikan struktur pada saat berjalan
(run time) dari instance yang saling terhubung.
Contoh penggunaannya untuk menggambarkan
deskripsi bagian mesin yang saling terkait
untuk menjalankan fungsi mesin tersebut.
Simbol
Property

Deskripsi
Property adalah satu set dari suatu
instances

Role of theproperty instances for the
container(optional)
type or class of the property
instances (obligatory)

Rolename: Type name

Connector
connector type (opsional)
[multeplicity1] [multeplicity2]
roleName1
roleName2
ConnName: ConnType

RoleName: peran / nama /
Identitas dari property(opsional)
TypeName: tipe kelas dari
property (harus ada)

Connector adalah cara komunikasi
dari 2 buah instance
ConnName: nama connector
(opsional)
ConnType : tipe connector
(opsional)

Connecor name (opsional)

Port

Port adalah cara yang digunakan
dalam diagram composite
structure tanpa menampilkan
detail internet dari suatu system
Simbol

Deskripsi

Port instance name (optional)
port type (optional)

portName: EntityName[n]
property
Port multeplicity (optional)
PortName: EntityName[n]

Port digambarkan dalam bentuk
kotak kecil yang menempel atau di
dalam suatu property

Port digambarkan menempel
property jika fungsi tersebut dapat
diakses public.cSedangkan port
digambarkan di dalam suatu
property jika fungsi tersebut
bersifat protected.
Package Diagram
Menyediakan

cara
mengumpulkan
elemen- elemen yang saling terkait
dalam diagram UML.
Hampir semua diagram pada UML dapat
dikelompokkan menggunakan package
diagram.
Simbol

Deskripsi

Package

Package
merupakan sebuah
bungkusan dari
suatu atau lebih
kelas atau elemen
diagram UML
lainnya.

package

Elemen dalam package digambarkan di dalam package
utilitles
Timer

Queue

Semaphore

Elemen dalam package digambarkan di luar package
Utilitles

Timer
-Timeout:int

Queue
-numelements:Int

semaphore
+take() : int
Deployment Diagram
Menunjukkan

konfigurasi komponen dalam
proses eksekusi aplikasi.
Diagram ini juga dapat digunakan
memodelkan:
1. Sistem tambahan (embedded system).
2. Sistem Client/server.
3. Sistem terdistribusi murni.
4. Rekayasa ulang aplikasi.
Simbol

Deskripsi

Package

Package merupakan sebuah bungkusan dari
satu atau lebih node
package
package

Node

Nama_node
Nama_node

Kebergantungan / dependency

Biasanya mengacu pada perangkat
keras(hardware), perangkat lunak yang tidak
dibuat sendiri (software), jika di dalam node
disertakan komponen untuk
mengkonsistnkan rancangan maka
komponen yang telah didefinisikan
sebelumnya pada diagram komponen

Kebergantungan antar node, arah panah
mengarah pada node yang dipakai

……………………………..
Link

Relasi antar node
Use Case Diagram
Merupakan

pemodelan untuk kelakuan
(behavioral) sistem yang akan dibuat.
Use Case Diagram digunakan untuk
mengetahui fungsi apa saja yang ada
dalam sistem dan siapa yang berhak
menggunakan fungsi – fungsi itu.
Ada dua hal utama pada Use Case
Diagram yaitu Aktor dan Use Case.
Aktor

merupakan orang,proses atau sistem lain yang
berinteraksi dengan sistem yang akan dibuat diluar sistem.
Use Case merupakan fungsionalitas yang disediakan
sistem sebagai unit-unit yang saling bertukar pesan antar
unit atau aktor.
Simbol
Use case
Nama use case

Deskripsi
Fungsionalitas yang disediakan sistem sebagai unit-unit yang saling
bertukar pesan antar unit atau aktor; biasanya dinyatakan dengan
mengunakan kata kerja di awal di awal frase nama use case

Aktor / actor

Orang, proses, atau sistem lain yang berinteraksi dengan sistem
informasi yang akan dibuat di luar sistem informasi yang akan dibuat
itu sendiri, jadi walaupun simbol dari aktor adalah gambar orang, tapi
aktor belum tentu merupakan orang; biasanya dinyatakan
menggunakan kata benda di awal frase nama aktor

Asosiasi / association

Komunikasi antara aktor dan use case yang berpartisipasi pada use
case atau use case memiliki interaksi dengan aktor

Ekstensi / extend

Relasi use case tambahan ke sebuah use case di mana use case yang
ditambahkan dapat berdiri sendiri walau tanpa use case tambahan itu;
mirip dengan prinsip inheritance pada pemograman berorientasi
objek; biasanya use
Simbol
<<extend>>
…………………..

Deskripsi
Case tambahan memiliki nama depan yang sama dengan use
case yang ditambahkan, misal
Validasi
username
<<extend>>

Validasi user
<<extend>>

Validasi sidik
jari

Arah panah mengarah pada use case yang ditambahkan

Generalisasi / generalization

Hubungan generalisasi dan spesialisasi (umum-khusus) antara
dua buah use case dimana fungsi yang satu adalah fungsi yang
lebih umum dari lainnya, misalnya:
Ubah data
Mengola
data
Simbol
<<include>>
……………………….
<<uses>>

Deskripsi
Fungsinya atau sebagaisyarat dijalankan use case ini
Ada dua sudut pandang yang cukup besar mengenai include di use case:
•
Include berarti use case yang ditambahkan akan
Selalu dipanggil saat use case tambahan dijalankan,
Misal pada kasus beikut:

Validasi
<<include>>
username

•

include berarti uselogin yang tambahan akan selalu
case
melakukan pengecekan apakah use case yang ditambahkan
telah dijalankan sebelum use case tambahan dijalankan
s
sebelum use case
tambahan dijalankan, misal pada khusus berikut:
<<include>>
Validasi
user

Kedua intepretasi di atas dapat dianut salah satu atau keduanya tergantung
Ubah data
pada pertimbangan dan interpretasi yang dibutuhkan
Activity Diagram
Menggambarka

work flow (aliran kerja) atau
aktivitas sebuah sistem.
Menggambarkan aktivitas sistem bukan
apa yang dilakukan aktor,jadi aktivitas yang
dilakukan sistem.
Simbol

Deskripsi

Status awal

Status awal aktivitas sistem, sebuah diagaram aktivitas
memiliki sebuah status awal

Aktivitas

Aktivitas yang dilakukan sistem, aktivitasi biasanya
diawali dengan kata kerja
Aktivitas

Percabangan / decision

Asosiasi percabangan dimana jika ada pilihan aktivitas
lebih dari satu
Simbol

Deskripsi

Penggabungan / Join

Asosiasi penggabungan dimana lebih dari satu
aktivitas digabungkan menjadi satu

Status akhir

Status akhir yang dilakukan sistem, sebuah
diagram aktivitas memiliki sebuah status akhir

Swimlane

Memisahkan organisasi bisnis yang bertanggung
jawab terhadap aktivitas yang terjadi
nama swimlane

atau
State Machine Diagram
Menggambarkan

perubahan status dari
sebuah mesin atau sistem.
Perubahan tersebut digambarkan dalam
sebuah graf berarah.
Cocok digunakan untuk menggambarkan
alur interaksi pengguna dengan sistem.
Simbol

Deskripsi

Start (Initial state)

Start atau initial state adalah state atau
keadaan awal pada saat sistem mulai
kehidupan.

End (Final state)

End atau final state adalah state
keadaaan akhir dari daur hidup suatu
sistem.

Event

Event adalah kegiataan yang
menyebabkan berubahnya status mesin.
Even t

State
State

State atau status adalah keadaan sistem
pada waktu tertentu. State dapat
berubah jika ada event tertentu yang
memicu perubahan tersebut
Sequence Diagram
Menggambarkan

kelakuan objek
pada use case dengan
mendeskripsikan waktu hidup objek
dan message yang dikirimkan dan
diterima antar objek.
Dalam menggambarkan diagram ini
harus diketahui objek-objek yang
terlibat dalam sebuah use case
beserta metode- metode yang dimiliki
kelas.
Simbol
Aktor

Nama aktor
Atau

Nama aktor

Deskripsi
Orang,proses,atau sistem lain yang berinteraksi
dengan sistem informasi yang akan dibuat diluar
sistem informasi yang akan dibuat itu sendiri,
jadi walaupun simbol dari aktor adalah gambar
orang, tapi aktor belum tentu merupakan
orang; biasanya dinyatakan menggunakan kata
benda di awal frase name aktor

Tanpa waktu aktif

Garis hidup / lifeline

Enyatakan kehidupan suatu objek

Objek

Menyatakan objek yang berinteraksi pesan
Nama objek: nama Kelas

Waktu aktif

Menyatakan objek dalam keadaan aktif dari
berinteraksi pesan
Simbol

Dskripsi
Objek yang lain, arah panah mengarah pada
objek yang dibuat
Communication Diagram
Merupakan

penyederhanaan
dari
Diagram Kolaborasi .
Menggambarkan
interaksi
antar
objek/bagian dalam bentuk urutan
pengiriman pesan.
Diagram
ini
merepresentasikan
informasi yang diperoleh dari diagram
kelas.
Dalam Diagram ini yang dituliskan
adalah operasi/metode yang dijalankan
antar objek.
Timing Diagram
Merupakan

diagram yang fokus pada
penggambaran terkait batas waktu.
Digunakan
untuk
menggambarkan
tingkah laku sistem dalam periode
waktu tertentu.
Interaction Overview Diagram
Bentuk

Diagram Aktivitas yang setiap titik
merepresentasikan diagram interaksi.
Notasi pada Interaction Overview Diagram
sama dengan Diagram Aktivitas.

Mais conteúdo relacionado

Mais procurados

Mais procurados (19)

Modul Unified modeling language (UML)
Modul Unified modeling language (UML)Modul Unified modeling language (UML)
Modul Unified modeling language (UML)
 
[PBO] Pertemuan 1 (praktik) - Pengenalan java
[PBO] Pertemuan 1 (praktik) - Pengenalan java[PBO] Pertemuan 1 (praktik) - Pengenalan java
[PBO] Pertemuan 1 (praktik) - Pengenalan java
 
Analisis Sistem Informasi [Materi VII]
Analisis Sistem Informasi [Materi VII]Analisis Sistem Informasi [Materi VII]
Analisis Sistem Informasi [Materi VII]
 
Pengenalan UML (Unified Modelling Language)
Pengenalan UML (Unified Modelling Language)Pengenalan UML (Unified Modelling Language)
Pengenalan UML (Unified Modelling Language)
 
Pemrograman Berorientasi Objek "Pengenalan Dasar Pemrograman JAVA"
Pemrograman Berorientasi Objek "Pengenalan Dasar Pemrograman JAVA"Pemrograman Berorientasi Objek "Pengenalan Dasar Pemrograman JAVA"
Pemrograman Berorientasi Objek "Pengenalan Dasar Pemrograman JAVA"
 
Pengantar Pemrograman Berorientasi Objek
Pengantar Pemrograman Berorientasi ObjekPengantar Pemrograman Berorientasi Objek
Pengantar Pemrograman Berorientasi Objek
 
UML
UMLUML
UML
 
Tugas Praktikum Pemrograman Berorientasi Objek
Tugas Praktikum Pemrograman Berorientasi ObjekTugas Praktikum Pemrograman Berorientasi Objek
Tugas Praktikum Pemrograman Berorientasi Objek
 
Uml
UmlUml
Uml
 
[PBO] Pertemuan 4 - Getter Setter
[PBO] Pertemuan 4 - Getter Setter[PBO] Pertemuan 4 - Getter Setter
[PBO] Pertemuan 4 - Getter Setter
 
Pertemuan 1 konsep dasar pemrograman berorientasi objek
Pertemuan 1 konsep dasar pemrograman berorientasi objekPertemuan 1 konsep dasar pemrograman berorientasi objek
Pertemuan 1 konsep dasar pemrograman berorientasi objek
 
BAB 1 PBO C++ Struktur
BAB 1 PBO C++ StrukturBAB 1 PBO C++ Struktur
BAB 1 PBO C++ Struktur
 
Pemrograman Berorientasi Objek "Pengenalan JAVA"
Pemrograman Berorientasi Objek "Pengenalan JAVA"Pemrograman Berorientasi Objek "Pengenalan JAVA"
Pemrograman Berorientasi Objek "Pengenalan JAVA"
 
MATERI UML(Unified Modelling Language)
MATERI UML(Unified Modelling Language)MATERI UML(Unified Modelling Language)
MATERI UML(Unified Modelling Language)
 
Unified modeling language
Unified modeling languageUnified modeling language
Unified modeling language
 
Modul praktikum PBO
Modul praktikum PBOModul praktikum PBO
Modul praktikum PBO
 
Pemograman berorientasi objek
Pemograman berorientasi objekPemograman berorientasi objek
Pemograman berorientasi objek
 
UML (Unified Modeling Language) - Rekayasa Perangkat Lunak
UML (Unified Modeling Language) - Rekayasa Perangkat LunakUML (Unified Modeling Language) - Rekayasa Perangkat Lunak
UML (Unified Modeling Language) - Rekayasa Perangkat Lunak
 
UML & Use Case Diagram
UML & Use Case DiagramUML & Use Case Diagram
UML & Use Case Diagram
 

Destaque

Document flowchart
Document flowchartDocument flowchart
Document flowchart
mariobopass
 
Persiapan, pengertian, jenis,dan presentasi yang efektif
Persiapan, pengertian, jenis,dan presentasi yang efektifPersiapan, pengertian, jenis,dan presentasi yang efektif
Persiapan, pengertian, jenis,dan presentasi yang efektif
mariobopass
 
Transformasi(translasi rotasi-dilatasi)
Transformasi(translasi rotasi-dilatasi)Transformasi(translasi rotasi-dilatasi)
Transformasi(translasi rotasi-dilatasi)
mariobopass
 
Analisa dan perancangan sistem informasi 1
Analisa dan perancangan sistem informasi 1Analisa dan perancangan sistem informasi 1
Analisa dan perancangan sistem informasi 1
mariobopass
 
Analisis sistem
Analisis sistemAnalisis sistem
Analisis sistem
robbiazie
 
Powerpoint sidang proposal
Powerpoint sidang proposalPowerpoint sidang proposal
Powerpoint sidang proposal
Romli Muhajir
 
Perancangan dan Analisa Sistem
Perancangan dan Analisa SistemPerancangan dan Analisa Sistem
Perancangan dan Analisa Sistem
guestb7aaaf1e
 

Destaque (9)

Document flowchart
Document flowchartDocument flowchart
Document flowchart
 
Persiapan, pengertian, jenis,dan presentasi yang efektif
Persiapan, pengertian, jenis,dan presentasi yang efektifPersiapan, pengertian, jenis,dan presentasi yang efektif
Persiapan, pengertian, jenis,dan presentasi yang efektif
 
Transformasi(translasi rotasi-dilatasi)
Transformasi(translasi rotasi-dilatasi)Transformasi(translasi rotasi-dilatasi)
Transformasi(translasi rotasi-dilatasi)
 
Matriks
MatriksMatriks
Matriks
 
Selesain 2
Selesain 2Selesain 2
Selesain 2
 
Analisa dan perancangan sistem informasi 1
Analisa dan perancangan sistem informasi 1Analisa dan perancangan sistem informasi 1
Analisa dan perancangan sistem informasi 1
 
Analisis sistem
Analisis sistemAnalisis sistem
Analisis sistem
 
Powerpoint sidang proposal
Powerpoint sidang proposalPowerpoint sidang proposal
Powerpoint sidang proposal
 
Perancangan dan Analisa Sistem
Perancangan dan Analisa SistemPerancangan dan Analisa Sistem
Perancangan dan Analisa Sistem
 

Semelhante a Apsi 2

Abu yanto tugas resume aplinet
Abu yanto tugas resume aplinetAbu yanto tugas resume aplinet
Abu yanto tugas resume aplinet
abuyanto
 
Pemograman berorientasi obyek kelompok 6
Pemograman berorientasi obyek kelompok 6Pemograman berorientasi obyek kelompok 6
Pemograman berorientasi obyek kelompok 6
ゴースト アノン
 
8_REKAYASA_PERANGKAT_LUNAK_08_pptx.pptx
8_REKAYASA_PERANGKAT_LUNAK_08_pptx.pptx8_REKAYASA_PERANGKAT_LUNAK_08_pptx.pptx
8_REKAYASA_PERANGKAT_LUNAK_08_pptx.pptx
SlametRiyadi660097
 
Analisa dan Perancangan Sistem Informasi
Analisa dan Perancangan Sistem InformasiAnalisa dan Perancangan Sistem Informasi
Analisa dan Perancangan Sistem Informasi
RAHASIA
 

Semelhante a Apsi 2 (20)

APBO Pertemuan Rev01.pptx
APBO Pertemuan Rev01.pptxAPBO Pertemuan Rev01.pptx
APBO Pertemuan Rev01.pptx
 
Abu yanto tugas resume aplinet
Abu yanto tugas resume aplinetAbu yanto tugas resume aplinet
Abu yanto tugas resume aplinet
 
Uts pemrograman berbasis obj
Uts pemrograman berbasis objUts pemrograman berbasis obj
Uts pemrograman berbasis obj
 
Pemograman berorientasi obyek kelompok 6
Pemograman berorientasi obyek kelompok 6Pemograman berorientasi obyek kelompok 6
Pemograman berorientasi obyek kelompok 6
 
8_REKAYASA_PERANGKAT_LUNAK_08_pptx.pptx
8_REKAYASA_PERANGKAT_LUNAK_08_pptx.pptx8_REKAYASA_PERANGKAT_LUNAK_08_pptx.pptx
8_REKAYASA_PERANGKAT_LUNAK_08_pptx.pptx
 
Pengantar Pengembangan Sistem Berorientasi Objek.pptx
Pengantar Pengembangan Sistem Berorientasi Objek.pptxPengantar Pengembangan Sistem Berorientasi Objek.pptx
Pengantar Pengembangan Sistem Berorientasi Objek.pptx
 
Aps12 design object_modeling
Aps12 design object_modelingAps12 design object_modeling
Aps12 design object_modeling
 
1. Pengantar Objek.ppt
1. Pengantar Objek.ppt1. Pengantar Objek.ppt
1. Pengantar Objek.ppt
 
Materi-1-sd-2-Pengenalan-PBO.pptx
Materi-1-sd-2-Pengenalan-PBO.pptxMateri-1-sd-2-Pengenalan-PBO.pptx
Materi-1-sd-2-Pengenalan-PBO.pptx
 
Tugas pbo
Tugas pboTugas pbo
Tugas pbo
 
Pbo perbandingan antara pemrograman procedural dengan pemrograman beroriant...
Pbo   perbandingan antara pemrograman procedural dengan pemrograman beroriant...Pbo   perbandingan antara pemrograman procedural dengan pemrograman beroriant...
Pbo perbandingan antara pemrograman procedural dengan pemrograman beroriant...
 
Apsi 1
Apsi 1Apsi 1
Apsi 1
 
Pengenalan OOP
Pengenalan OOPPengenalan OOP
Pengenalan OOP
 
Rational Unified Process
Rational Unified ProcessRational Unified Process
Rational Unified Process
 
Analisa dan Perancangan Sistem Informasi
Analisa dan Perancangan Sistem InformasiAnalisa dan Perancangan Sistem Informasi
Analisa dan Perancangan Sistem Informasi
 
Unified Modelling Language (UML)
Unified Modelling Language (UML)Unified Modelling Language (UML)
Unified Modelling Language (UML)
 
Pendekatan - pendekatan Pengembangan Sistem
Pendekatan - pendekatan Pengembangan SistemPendekatan - pendekatan Pengembangan Sistem
Pendekatan - pendekatan Pengembangan Sistem
 
Pertemuan 2 Konsep Dasar Pemrograman OOP
Pertemuan 2 Konsep Dasar Pemrograman OOPPertemuan 2 Konsep Dasar Pemrograman OOP
Pertemuan 2 Konsep Dasar Pemrograman OOP
 
Part 8 - Object Oriented Programming
Part 8 - Object Oriented ProgrammingPart 8 - Object Oriented Programming
Part 8 - Object Oriented Programming
 
10. unified modeling language
10. unified modeling language10. unified modeling language
10. unified modeling language
 

Apsi 2

  • 1. ANALISIS & PERANCANGAN BERORIENTASI OBJEK Di Sajikan : Ferly Ardhy, S.Kom., M.TI
  • 2. Analisis Berientasi Objek  Tahapan untuk menganalisis spesifikasi atau kebutuhan akan sistem yang akan dibangun dengan konsep berorientasi objek,apakah benar kebutuhan yang ada dapat diimplementasikan menjadi sistem berorientasi objek.  Analisis ini sebaiknya dilakukan oleh orangorang yang benar-benar memahami implementasi sistem yang berbasis atau berorientasi objek ,karena tanpa pemahaman ini maka sistem yang dihasilkan bisa jadi tidak realistis jika diimplementasikan.
  • 3. OOA (Object Oriented Analysis) biasanya menggunkan kartu CRC untuk membangun kelas-kelas yang akan digunakan atau menggunakan UML pada bagian diagram Use Case,diagram kelas dan diagram objek. Sebelum perkembangan UML ada beberapa bahasa pemodelan yang berkembang untuk memodelkan sistem berorientasi objek.
  • 4. Bahasa Pemodelan tersebut : 1. CRC (Component,Responsibility,Collaborat or). 2. Metode Booch. 3. OMT (Object Modelling Technique). 4. OOSE (Object Oriented Software Engineering). 5. Metode Coad Yourdan.
  • 5. CRC Merupakan bagian dari Object-Oriented Programming,System,Languages And Application(OOPSLA). Dibuat untuk bakal yang akan menjadi kelas yang akan dianalisis. Berikut Contoh sebuah kartu CRC
  • 6. Nama kelas : Manusia Kelas orang tua : Kelas Anak : Tanggung jawab Jenis Kelamin Usia Menghitung usia pada tahun yang Diberikan Kemampuan memasak Kelas terkait Masakan Resep
  • 7. Nama Kelas (Class Name) Merupakan nama yang diberikan pada sebuah kelas.  Kelas Orang Tua (Superclases) Merupakan kelas orang tua (dalam hubungan pewarisan) atau kelas super dari kelas yang dibuat CRCnya. Kelas Anak (Subclases) Merupakan kelas anak (dalam hubungan pewarisan) atau sub kelas dari kelas yang dibuat CRCnya.
  • 8. Tanggung Jawab (Responsibilities). Merupakan isi atribut dan operasi yang harus ada dalam kelas yang bibuat CRCnya. • Kolaborator/Kelas yang terkait (Colaborator). Merupakan kelas yang terkait (untuk bekerja sama) dengan kelas yang sedang dibuat CRCnya tetapi bukan kelas orang tua atau anak. Terkait dalam hubungan memakai dan dipakai di dalam kelas.
  • 9. CRC dibuat perkelas ,keterkaitan antar kelas dapat dilihat pada kelas kolom super,sub kelas, dan kolaborator/kelas terkait. Dalam sebuah analisis pembuatan kelas , dapat terdiri dari banyak kartu CRC.
  • 10. Metode Booch Dikembangkan oleh Grady Booch terdiri dari diagram kelas,objek,transisi status, interaksi, modul dan proses. Contoh diagram kelas dari metode Booch.
  • 11.  Nama Kelas Nama Kelas Atribut Mempunyai Atribut Operasi Operasi Pewarisan Dinstansisasi Digunakan Nama Kelas Nama Kelas Atribut Operasi Nama Kelas Atribut Operasi Atribut Operasi
  • 12. OMT Dikembangkan oleh James Rumbaugh sebagai metode untuk mengembangkan sistem berorientasi objek dan untuk mendukung pemograman berorientasi objek. Berikut adalah sebuah contoh.
  • 13. Nama kelas Nama kelas Atribut Atribut Operasi Operasi Nama kelas Atribut Operasi Nama kelas Kualifikasi Atribut Operasi
  • 14. Metode Coad Yourdan Menyediakan sebuah diagram kelas, pembuatannya dengan langkah-langkah berkut : 1. Mendefenisikan kelas dan objek 2. Mengidentifikasi struktur kelas dan objek. 3. Mendefenisikan subjek nama kelas. 4. Mendefenisikan atribut. 5. Mendefenisikan operasi/layanan (service).
  • 16. OOSE Dikembangkan oleh Ivar Jacobson adalah metode disain berorientasi objek yang melibatkan use case. Berikut ini contoh diagram use case pada metodologi OOSE.
  • 18. Metode yang paling banyak digunakan adalah menggunakan UML . Metode-metode yang sudah dibahas terdahulu menjadi dasar dalam pengembangan metode UML.
  • 19. Disain Berorientasi Objek Adalah tahapan perantara untuk memetakan spesifikasi atau kebutuhan sistem yang akan dibangun dengan konsep berorientasi objek ke disain pemodelan agar lebih mudah diimplementasikan dengan pemograman berorientasi objek. Pemodelan berprientasi objek biasanya dituangkan dalam dokumentasi perangkat lunak dengan menggunakan perangkat pemodelan berorientasi objek UML.
  • 20. Kendala dan permasalahan pembangunan sistem berorientasi objek biasanya dapat dikenali dalam tahap analisis. OOA & OOD dalam proses yang berulangulang sering kali memiliki batasan yang samar ,sehingga kedua tahapan ini disebut OOAD (Object Oriented Analysis & Design).
  • 21. CASE Tools Alat bantu untuk pengembangan perangkat lunak agar hasilnya lebih baik dan waktu pengerjaannya lebih singkat. Perangkat lunak yang termasuk CASE tools dapat merupakan perangkat lunak dalam tahap analisis,disain,dokumentasi maupun implementasi ke dalam kode program dan pengujian program.
  • 22. Pengelompokan CASE Tools 1. Pendukung alur hidup perangkat lunak. 2. Dimensi Integritas. 3. Dimensi Konstruksi. 4. Dimensi CASE berbasis keilmuan.
  • 23. Pengertian Pemograman Berorientasi Objek Metodologi berorientasi objek adalah suatu strategi pembangunan perangkat lunak yang mengorganisasikan perangkat lunak sebagai kumulan objek yang berisi data dan operasi yang dilakukan terhadapnya. Metodologi berorientasi objek merupakan suatu cara bagaimana sistem perangkat lunak dibangun melalui pendekatan objek secara sistematis. 
  • 24. Metode berorientasi objek meliputi rangkaian aktivitas analisis berorientasi objek ,perancangan berorientasi objek,pemograman berorientasi objek dan pengujian berorientasi objek. Metode berorientasi objek banyak dipilih karena metodologi lama banyak menimbulkan masalah.
  • 25. Keuntungan Metodologi Berorientasi Objek 1. Meningkatkan produktivitas. 2. Kecepatan pengembangan. 3. Kemudahan pemeliharaan. 4. Adanya konsistensi. 5. Meningkatkan kualitas perangkat lunak.
  • 26. Meningkatkan Produktivitas  karena kelas dan objek yang ditemukan dalam masalah masih dapat dipakai ulang untuk masalah lainnya yang melibatkan objek tersebut (reusable). Kecepatan Pengembangan  karena sistem yang dibangun dengan baik dan benar pada saat analisis dan perancangan akan menyebabkan berkurangnya kesalahan pada saat pengodean
  • 27.  Kemudahan pemeliharaan  karena dengan model objek,pola-pola yang cenderung tetap dan stabil .  Adanya Konsistensi  karena sifat pewarisan dan penggunaan notasi yang sama pada saat analisis,perancangan maupun pengodean.  Meningkatkan Kualitas Perangkat Lunak  karena pendekatan pengembangan lebih dekat dengan dunia nyata dan adanya konsistensi pada saat pengembangannya , perangkat lunak yang dihasilkan akan mampu memenuhi kebutuhan pemakai .
  • 28. Bahasa Pemograman yang mendukung pemograman berorientasi objek : 1. Bahasa Pemograman Smalltalk. 2. Bahasa Pemograman Eiffel. 3. Bahasa Pemograman C++ 4. Bahasa Pemograman Java. 5. Bahasa Pemograman PHP (web).
  • 29. Konsep Dasar Berorientasi Objek Pendekatan berorientasi objek merupakan suatu teknik atau cara pendekatan dalam melihat permasalahan dalam sistem. Pendekatan berorientasi objek akan memandang sistem yang akan dikembangkan sebagai suatu kumpulan objek yang berkorespondensi dengan objek dunia nyata.
  • 30. Dalam rekayasa perangkat lunak konsep pendekatan berorientasi objek dapat diterapkan pada tahap analisis,perancangan, pemograman dan pengujian perangkat lunak. Ada berbagai teknik yang dapat digunakan pada masing-masing tahap tersebut dengan aturan dan alat bantu pemodelan tertentu.
  • 31. Sistem berorientasi objek merupakan sebuah sistem yang dibangun dengan berdasarkan metode berorientasi objek adalah sebuah sistem yang komponennya dibungkus (enkapsulasi) menjadi kelompok data dan fungsi. Setiap komponen dalam sistem tersebut dapat mewarisi atribut dan sifat dari komponen lain dan dapat berinteraksi satu sama lain.
  • 32. Konsep Dasar Metodologi Berorientasi Objek 1. Kelas (Class) 9. Reusability 2. Objek (Object) 10. Generalisasi 3. Metode (Method) 11. Komunikasi 4. Atribut (Attribute) 12. Polymorfisme 5. Abstraksi (Abstraction) 13. Package 6. Enskapsulasi (Encapsulation) 7. Pewarisan (Inheritance) 8. Antarmuka
  • 33. Kelas (Class)  kumpulan objek-objek dengan karakter yang sama. Sebuah kelas mempunyai sifat(atribut),kelakuan (operasi/metode),hubungan (relationship) dan arti. Suatu kelas dapat diturunkan dari kelas yang lain,dimana atribut dan kelas semula dapat diwariskan ke kelas yang baru. Kelas adalah sebuah struktur tertentu dalam pembuatan perangkat lunak. Kelas merupakan bentuk struktur pada kode program yang menggunakan metodologi berorientasi objek.
  • 34. Objek (Object)  abstraksi dan sesuatu yang mewakili dunia nyata. Objek merupakan suatu entitas yang mampu menyimpan informasi (status) dan mempunyai operasi (kelakuan) yang dapat diterapkan. Metode  operasi atau metode pada kelas hampir sama dengan fungsi atau prosedur pada metodologi terstruktur. Operasi merupakan fungsi atau transformasi yang dapat dilakukan terhadap objek atau dilakukan objek.
  • 35. Atribut  variabel global yang dimiliki kelas. Atribut dapat berupa nilai atau elemen – elemen data yang dimiliki oleh objek dalam kelas. Atribut dipunyai secara individu oleh suatu objek misalnya berat,jenis. Abstraksi  prinsip untuk merepresentasikan dunia nyata yang kompleks menjadi suatu bentuk model yang sederhana dengan mengabaikan aspek-aspek lain yang tidak sesuai dengan masalah.
  • 36. Enskapsulasi  pembungkusan atribut data dan layanan (operasi-operasi) yang dipunyai objek untuk menyembunyikan implementasi dan objek sehingga objek lain tidak mengetahui cara kerjanya. Pewarisan  mekanisme yang memungkinkan satu objek mewarisi sebagian atau seluruh dan objek lain sebagai bagian dari dirinya.
  • 37. Antar muka  biasanya digunakan agar kelas yang lain tidak mengakses langsung ke suatu kelas. Reusability  pemanfaatan kembali objek yang sudah didefenisikan untuk suatu permasalahan pada permasalahan lainnya yang melibatkan objek tersebut. Generalisasi & spesialisasi  menunjukan hubungan antar kelas dan objek yang umum dengan kelas dan objek yang khusus.
  • 38. Komunikasi Antar Objek  dilakukan lewat pesan (message) yang dikirim dari satu objek ke objek lainnya. Polimorfisme  kemampuan suatu objek untuk digunakan di banyak tujuan yang berbeda dengan nama yang sama sehingga menghemat program. Package  sebuah kontainer atau kemasan yang dapat digunakan untuk mengelompok kelas-kelas yang bernama sama disimpan dalam package yang berbeda.
  • 39. Perbandingan Pendekatan OO & Terstruktur Perbedaan yang paling dasar dari pendekatan terstruktur dan pendekatan OO adalah pada metode berorientasi fungsi atau aliran data dekomposisi permasalahan dilakukan berdasarkan fungsi atau proses secara hierarki mulai dari konteks sampai proses yang lebih kecil. Pada metode berorientasi objek dekomposisi permasalahan dilakukan berdasarkan objek-objek yang ada dalam sistem.
  • 40. Pendekatan terstruktur mempunyai kelebihan dalam kemudahan untuk memahami sistem. Konsep dekomposis permasalahan mulai dari paling dasar (diagram konteks) sampai paling detail cukup memudahkan dalam pemahaman bentuk sistem khususnya bagi user yang mempunyai pemahaman tentang sistem yang cukup rendah.
  • 41. Pendekatan berorientasi objek mempunyai kelebihan dalam peningkatan produktivitas karena mempunyai reusability yang cukup tinggi dibanding dengan pendekatan lain. Kelas-kelas dalam pemograman berorientasi objek dapat dengan mudah dimanfaatkan untuk sistem lain yang dikembangkan.
  • 42. Sistem akademik Dekomposisi berdasarkan objek atau konsep Dosen Jadwal Mahasiswa Metodologi berorientasi Objek Dekomposisi berdasarkan fungsi atau proses Konteks Kuliah Kontrak kuliah Pengam bilan kuliah Penjad walan Metodologi Berorientasi Fungsi Penilaia n
  • 43. PEMODELAN BISNIS & UML Pemodelan adalah gambaran realita yang simpel dan dituangkan dalam bentuk pemetaan dengan aturan tertentu. Pemodelan digunakan untuk merencanakan suatu hal agar kegagalan dan resiko yang mungkin terjadi dapat diminimalisir. Pemodelan pada pembangunan perangkat lunak digunakan untuk memvisualisasikan perangkat lunak yang akan dibuat.
  • 44. Perangkat Pemodelan adalah suatu model yang digunakan untuk menguraikan sistem menjadi bagian-bagian yang dapat diatur dan mengkomunikasikan ciri konseptual dan fungsional kepada pengamat. Salah satu perangkat pemodelan adalah UML (Unified Modelling Language). Peran Perangkat Pemodelan : 1. Komunikasi 2. Eksperimentasi 3. Prediksi
  • 45. Mengapa Perlu Pemodelan Bisnis??? Untuk memperoleh pemahaman yang lebih baik tentang visi, misi dan tujuan organisasi. Sebagai sarana melakukan rekayasa ulang (reengginering) proses bisnis. Sebagai sarana pelatihan tentang proses bisnis organisasi Sebagai kontek solusi perangkat lunak.
  • 46. Unified Modelling Language Pada perkembangan teknik pemograman berorientasi objek muncullah sebuah standarisasi bahasa pemodelan untuk pembangunan perangkat lunak yaitu UML. UML muncul karena adanya kebutuhan pemodelan visual untuk menspesifikasikan, menggambarkan ,membangun dari sistem perangkat lunak.
  • 47. UML merupakan bahasa visual untuk pemodelan dan komunikasi mengenai sebuah sistem dengan menggunakan diagram dan teks-teks pendukung. UML hanya berfungsi untuk melakukan pemodelan. Secara fisik UML adalah sekumpulan spesifikasi yang dikeluarkan Object Management Group (OMG).
  • 48. UML2.3 Diagram Structure Diagrams Class Diagram Object Diagram Component Diagram Composite structure diagram Package Diagram Deployment diagram Bahavior Diagram Intraction Diagram Use case diagram Sequence diagram Activity diagram Communication diagram State machine diagram Timing diagram Interaction Overview diagram
  • 49. Structure Diagram yaitu kumpulan diagram yang digunakan untuk menggambarkan suatu struktur statis dari sistem yang dimodelkan. Behavior Diagram yaitu kumpulan diagram yang dgunakan untuk menggambarkan kelakuan sistem atau rangkaian perubahan pada sebuah sistem. Interaction Diagram yaitu kumpulan diagram yang digunakan untuk menggambarkan interaksi sistem dengan sistem lain maupun interaksi antar sub sistem pada suatu sistem.
  • 50. Class Diagram Menggambarkan struktur sistem dari segi pendefenisian kelas-kelas yang akan dibuat untuk membangun sistem. Kelas memiliki apa yang disebut atribut dan metode atau operasi. Atribut merupakan variabel –variabel yang dimiliki suatu kelas & operasi atau metode adalah fungsi-fungsi yang dimiliki suatu kelas.
  • 51. Kelas-kelas yang ada pada struktur sistem harus dapat melakukan fungsi-fungsi sesuai dengan kebutuhan sistem. Susunan struktur kelas yang baik pada diagram kelas sebaiknya memiliki jenis kelas berikut : 1. Kelas Main  kelas yang memiliki fungsi awal dieksekusi ketika sistem dijalankan. 2. Kelas yang menangani tampilan Sistem  kelas yang mendefenisikan dan mengatur tampilan pemakai. 3. Kelas yang diambil dari Pendefenisian Use Case  kelas yang menangani fungsi- fungsi yang harus ada diambil dari pendefenisian use case. 4. Kelas yang diambil dari Pendefenisian Data  Kelas yang digunakan untuk membungkus data .
  • 52. Dalam mendefenisikan metode yang ada dalam kelas perlu memperhatikan Cohesion & Coupling. Cohesion adalah ukuran seberapa dekat keterkaitan instruksi di dalam sebuah metode terkait satu sama lain. Coupling adalah ukuran seberapa dekat keterkaitan instruksi antara metode yang satu dengan metode yang lain dalam sebuah kelas.
  • 53. Simbol Kelas Deskripsi Kelas pada struktur sistem Nama_kelas +atribut +operasi() Antarmuka/Interface Sama dengan konsep interface dalam pemograman berorientasi objek nama_interface Asosiasi/Association Relasi antara kelas dengan makna umum, asosiasi biasanya juga disertai dengan multiplicity Asosiasi berarah / dircted association Relasi antara kelas dengan makna kelas yang satu digunakan oleh kelas yang lain, asosiasi biasanya juga disertai dengan multiplicity Generalisasi Relasi antar kelas dengan makna generalisasi-spesialisasi (umum khusus) Kebergantungan Relasi antar kelas dengan makna kebergantungan antar kelas ………………………………
  • 54. Simbol Agregrasi / aggregation Deskripsi Relasi antar kelas dengan makna Semua bagian (whole part)
  • 55. Object Diagram Diagram objek menggambarkan struktur sistem dari segi penamaan objek dan jalannya objek dalam sistem. Pada diagram objek harus dipastikan semua kelas yang sudah didefenisikan pada diagram kelas harus dipakai objeknya,karena jika tidak pendefenisian kelas tidak dapat dipertanggung jawabkan.
  • 56. Untuk apa mendefenisikan sebuah kelas sedangkan pada jalannya sistem ,objeknya tidak dipakai . Hubungan link pada diagram objek merupakan hubungan memakai dan dipakai dimana dua objek akan dihubungkan oleh link jika ada objek yang dipakai oleh objek lainnya.
  • 57. Simbol Deskripsi Objek Nama objek : nama kelas Atribut Objek dari kelas yang berjalan saat sistem dijalankan = nilai Link Relasi antar objek
  • 58. Component Diagram Untuk menunjukkan organisasi dan ketergantungan di antara kumpulan komponen dalam sebuah sistem. Diagram komponen fokus pada komponen sistem yang dibutuhkan dan ada dalam sistem. Diagram komponen juga dapat digunakan untuk memodelkan hal-hal berikut : 1. Source Code program 2. Komponen executable yang dilepas ke user
  • 59. 3. Basis Data secara fisik. 4. Framework Sistem. Framework perangkat lunak merupakan kerangka kerja yang dibuat untuk memudahkan pengembangan dan aplikasi.
  • 61. Simbol Deskripsi Package Package merupakan sebuah bunkusan dari satu atau lebih komponen Komponen Komponen sistem Kebergantungan / dependency Kebergantungan antar komponen arah panah mengarah pada komponen yang dipakai ……………………………….. Antarmuka / interface Sama dengan konsep interface pada pemograman berorientasi objek, yaitu sebagai antarmuka komponen agar tidak mengakses langsung komponen Name_interface Link Relasi antar komponen
  • 62. Composite Structure Diagram Muncul pada UML versi 2.0 digunakan untuk menggambarkan struktur dari bagian-bagian yang saling terhubung maupun mendeskripsikan struktur pada saat berjalan (run time) dari instance yang saling terhubung. Contoh penggunaannya untuk menggambarkan deskripsi bagian mesin yang saling terkait untuk menjalankan fungsi mesin tersebut.
  • 63. Simbol Property Deskripsi Property adalah satu set dari suatu instances Role of theproperty instances for the container(optional) type or class of the property instances (obligatory) Rolename: Type name Connector connector type (opsional) [multeplicity1] [multeplicity2] roleName1 roleName2 ConnName: ConnType RoleName: peran / nama / Identitas dari property(opsional) TypeName: tipe kelas dari property (harus ada) Connector adalah cara komunikasi dari 2 buah instance ConnName: nama connector (opsional) ConnType : tipe connector (opsional) Connecor name (opsional) Port Port adalah cara yang digunakan dalam diagram composite structure tanpa menampilkan detail internet dari suatu system
  • 64. Simbol Deskripsi Port instance name (optional) port type (optional) portName: EntityName[n] property Port multeplicity (optional) PortName: EntityName[n] Port digambarkan dalam bentuk kotak kecil yang menempel atau di dalam suatu property Port digambarkan menempel property jika fungsi tersebut dapat diakses public.cSedangkan port digambarkan di dalam suatu property jika fungsi tersebut bersifat protected.
  • 65. Package Diagram Menyediakan cara mengumpulkan elemen- elemen yang saling terkait dalam diagram UML. Hampir semua diagram pada UML dapat dikelompokkan menggunakan package diagram.
  • 66. Simbol Deskripsi Package Package merupakan sebuah bungkusan dari suatu atau lebih kelas atau elemen diagram UML lainnya. package Elemen dalam package digambarkan di dalam package utilitles Timer Queue Semaphore Elemen dalam package digambarkan di luar package Utilitles Timer -Timeout:int Queue -numelements:Int semaphore +take() : int
  • 67. Deployment Diagram Menunjukkan konfigurasi komponen dalam proses eksekusi aplikasi. Diagram ini juga dapat digunakan memodelkan: 1. Sistem tambahan (embedded system). 2. Sistem Client/server. 3. Sistem terdistribusi murni. 4. Rekayasa ulang aplikasi.
  • 68. Simbol Deskripsi Package Package merupakan sebuah bungkusan dari satu atau lebih node package package Node Nama_node Nama_node Kebergantungan / dependency Biasanya mengacu pada perangkat keras(hardware), perangkat lunak yang tidak dibuat sendiri (software), jika di dalam node disertakan komponen untuk mengkonsistnkan rancangan maka komponen yang telah didefinisikan sebelumnya pada diagram komponen Kebergantungan antar node, arah panah mengarah pada node yang dipakai …………………………….. Link Relasi antar node
  • 69. Use Case Diagram Merupakan pemodelan untuk kelakuan (behavioral) sistem yang akan dibuat. Use Case Diagram digunakan untuk mengetahui fungsi apa saja yang ada dalam sistem dan siapa yang berhak menggunakan fungsi – fungsi itu. Ada dua hal utama pada Use Case Diagram yaitu Aktor dan Use Case.
  • 70. Aktor merupakan orang,proses atau sistem lain yang berinteraksi dengan sistem yang akan dibuat diluar sistem. Use Case merupakan fungsionalitas yang disediakan sistem sebagai unit-unit yang saling bertukar pesan antar unit atau aktor.
  • 71. Simbol Use case Nama use case Deskripsi Fungsionalitas yang disediakan sistem sebagai unit-unit yang saling bertukar pesan antar unit atau aktor; biasanya dinyatakan dengan mengunakan kata kerja di awal di awal frase nama use case Aktor / actor Orang, proses, atau sistem lain yang berinteraksi dengan sistem informasi yang akan dibuat di luar sistem informasi yang akan dibuat itu sendiri, jadi walaupun simbol dari aktor adalah gambar orang, tapi aktor belum tentu merupakan orang; biasanya dinyatakan menggunakan kata benda di awal frase nama aktor Asosiasi / association Komunikasi antara aktor dan use case yang berpartisipasi pada use case atau use case memiliki interaksi dengan aktor Ekstensi / extend Relasi use case tambahan ke sebuah use case di mana use case yang ditambahkan dapat berdiri sendiri walau tanpa use case tambahan itu; mirip dengan prinsip inheritance pada pemograman berorientasi objek; biasanya use
  • 72. Simbol <<extend>> ………………….. Deskripsi Case tambahan memiliki nama depan yang sama dengan use case yang ditambahkan, misal Validasi username <<extend>> Validasi user <<extend>> Validasi sidik jari Arah panah mengarah pada use case yang ditambahkan Generalisasi / generalization Hubungan generalisasi dan spesialisasi (umum-khusus) antara dua buah use case dimana fungsi yang satu adalah fungsi yang lebih umum dari lainnya, misalnya: Ubah data Mengola data
  • 73. Simbol <<include>> ………………………. <<uses>> Deskripsi Fungsinya atau sebagaisyarat dijalankan use case ini Ada dua sudut pandang yang cukup besar mengenai include di use case: • Include berarti use case yang ditambahkan akan Selalu dipanggil saat use case tambahan dijalankan, Misal pada kasus beikut: Validasi <<include>> username • include berarti uselogin yang tambahan akan selalu case melakukan pengecekan apakah use case yang ditambahkan telah dijalankan sebelum use case tambahan dijalankan s sebelum use case tambahan dijalankan, misal pada khusus berikut: <<include>> Validasi user Kedua intepretasi di atas dapat dianut salah satu atau keduanya tergantung Ubah data pada pertimbangan dan interpretasi yang dibutuhkan
  • 74. Activity Diagram Menggambarka work flow (aliran kerja) atau aktivitas sebuah sistem. Menggambarkan aktivitas sistem bukan apa yang dilakukan aktor,jadi aktivitas yang dilakukan sistem.
  • 75. Simbol Deskripsi Status awal Status awal aktivitas sistem, sebuah diagaram aktivitas memiliki sebuah status awal Aktivitas Aktivitas yang dilakukan sistem, aktivitasi biasanya diawali dengan kata kerja Aktivitas Percabangan / decision Asosiasi percabangan dimana jika ada pilihan aktivitas lebih dari satu
  • 76. Simbol Deskripsi Penggabungan / Join Asosiasi penggabungan dimana lebih dari satu aktivitas digabungkan menjadi satu Status akhir Status akhir yang dilakukan sistem, sebuah diagram aktivitas memiliki sebuah status akhir Swimlane Memisahkan organisasi bisnis yang bertanggung jawab terhadap aktivitas yang terjadi nama swimlane atau
  • 77. State Machine Diagram Menggambarkan perubahan status dari sebuah mesin atau sistem. Perubahan tersebut digambarkan dalam sebuah graf berarah. Cocok digunakan untuk menggambarkan alur interaksi pengguna dengan sistem.
  • 78. Simbol Deskripsi Start (Initial state) Start atau initial state adalah state atau keadaan awal pada saat sistem mulai kehidupan. End (Final state) End atau final state adalah state keadaaan akhir dari daur hidup suatu sistem. Event Event adalah kegiataan yang menyebabkan berubahnya status mesin. Even t State State State atau status adalah keadaan sistem pada waktu tertentu. State dapat berubah jika ada event tertentu yang memicu perubahan tersebut
  • 79. Sequence Diagram Menggambarkan kelakuan objek pada use case dengan mendeskripsikan waktu hidup objek dan message yang dikirimkan dan diterima antar objek. Dalam menggambarkan diagram ini harus diketahui objek-objek yang terlibat dalam sebuah use case beserta metode- metode yang dimiliki kelas.
  • 80. Simbol Aktor Nama aktor Atau Nama aktor Deskripsi Orang,proses,atau sistem lain yang berinteraksi dengan sistem informasi yang akan dibuat diluar sistem informasi yang akan dibuat itu sendiri, jadi walaupun simbol dari aktor adalah gambar orang, tapi aktor belum tentu merupakan orang; biasanya dinyatakan menggunakan kata benda di awal frase name aktor Tanpa waktu aktif Garis hidup / lifeline Enyatakan kehidupan suatu objek Objek Menyatakan objek yang berinteraksi pesan Nama objek: nama Kelas Waktu aktif Menyatakan objek dalam keadaan aktif dari berinteraksi pesan
  • 81. Simbol Dskripsi Objek yang lain, arah panah mengarah pada objek yang dibuat
  • 82. Communication Diagram Merupakan penyederhanaan dari Diagram Kolaborasi . Menggambarkan interaksi antar objek/bagian dalam bentuk urutan pengiriman pesan. Diagram ini merepresentasikan informasi yang diperoleh dari diagram kelas. Dalam Diagram ini yang dituliskan adalah operasi/metode yang dijalankan antar objek.
  • 83. Timing Diagram Merupakan diagram yang fokus pada penggambaran terkait batas waktu. Digunakan untuk menggambarkan tingkah laku sistem dalam periode waktu tertentu.
  • 84. Interaction Overview Diagram Bentuk Diagram Aktivitas yang setiap titik merepresentasikan diagram interaksi. Notasi pada Interaction Overview Diagram sama dengan Diagram Aktivitas.

Notas do Editor

  1. d