Pemodelan object dengan UML (Unified Modelling Language)

Slides:



Advertisements
Presentasi serupa
KEBUTUHAN & SPESIFIKASI SOFTWARE
Advertisements

ANALISIS DAN PEMODELAN BERORIENTASI OBJEK DENGAN UML
U M L Unified Modeling Language
CLASS DIAGRAM.
Unified Modelling Language (UML)
13 KOMPONEN DIAGRAM UML & PROSES MODEL WATERFALL
Pertemuan 6 Structural modelling
Architecture dan design
Interaksi Objek.
Yang akan dipelajari Pengenalan UML Sejarah Singkat UML
Pertemuan 2 Konsep Aplikasi Berbasis Objek, UML dan Rational Rose
Pertemuan 1 Konsep Dasar OOAD
UNIFIED MODELLING LANGUAGE
Rekayasa Perangkat Lunak Proses Rekayasa Perangkat Lunak
Unified Modeling Language
Pertemuan 9 Metodologi Perancangan Multimedia
ANALISIS DAN PEMODELAN BERORIENTASI OBJEK DENGAN UML
UML (Unified Modelling Language)
1 Pertemuan 3 Unified Modeling language (UML) Matakuliah: T0456 ~ Algoritma dan Metode Object Oriented Programming Tahun: 2005 Versi: 5.
RELATIOPNSHIPS IN THE UML
Oleh : Veri Julianto, M.Si
Unified Modeling Language [UML]
UNIFIED MODELLING LANGUAGE
Pertemuan 9 Metodologi Perancangan Multimedia
CLASS DIAGRAM.
Rekayasa Perangkat Lunak UML (Unified Modelling Language)
Analisa dan Perancangan Berbasis Objek
Visual Modelling Teguh Sutanto, S.Kom.,M.Kom.
Analisis dan Perancangan Berorientasi Objek (OOAD)
Thomas Andrianto, S.Si., M.Cs.
Object-Oriented Design (OOD)
Rinci Kembang Hapsari,S.Si, M.Kom
Object Oriented Programming
Notasi Object Oriented System
PENDAHULUAN Object Oriented Programming
UNIFIED MODELING LANGUAGE ( UML )
Pengantar Object Oriented Analysis and Design
PEMODELAN SISTEM INFORMASI BERORIENTASI OBYEK
Object-Oriented Analysis (OOA)
Pemodelan objek.
QUIZ PSBO Total : 35 PG.
PERANCANGAN SISTEM BERORIENTASI OBJEK DENGAN UML
Object oriented analyst and design
KEBUTUHAN & SPESIFIKASI SOFTWARE
Class Diagram Siti Mukaromah, S.Kom.
UML mendukung pengembangan aplikasi
PEMODELAN SYSTEM BERORIENTASI OBYEK (UML)
PENGANTAR KE UML Dewi Sartika, M.kom.
UNIFIED MODELLING LANGUAGE
SOAL PERTEMUAN 1-6 PSBO 4 SKS
PENGANTAR UML Citra N., S.Si, MT UNIKOM.
Pemodelan Berorientasi Objek
Oleh : Sri Herawati, S.Kom
PEMODELAN OBJECT ORIENTED
Soal PSBO Pert.1-6.
Use Case Diagram.
KEBUTUHAN & SPESIFIKASI SOFTWARE
UNIFIED MODELLING LANGUAGE
Pengantar Analisa dan Design Berbasis Objek
Unified Modeling Language (UML)
NOTASI UML DAN DIAGRAM-DIAGRAM UML
Pengantar Objek.
Perancangan Sistem Berorientasi Objek Dengan UML
Pertemuan 8 RPL Oleh : Syukriya al-Asyik S.Kom
Pertemuan 6 Unified Modeling Language (UML)
KEBUTUHAN & SPESIFIKASI SOFTWARE
Analisa Desain Berorientasi Objek
RPL untuk Pemrograman Berorientasi Obyek
TIM RPL Program Studi Teknik Informatika
PERANCANGAN SISTEM BERORIENTASI OBJEK DENGAN UML
Transcript presentasi:

Pemodelan object dengan UML (Unified Modelling Language) Pertemuan ke 9

PEMODELAN BERORIENTASI OBYEK HAK CIPTA DILINDUNGI UNDANG-UNDANG DILARANG KERAS MEMPERBANYAK / MENGCOPY TANPA SEIZIN COPY CENTRE IBII PEMODELAN BERORIENTASI OBYEK Teknik pemodelan object menggunakan tiga macam model penggambaran sistem yaitu: o Model object o Model dinamik o Model use case (use case scenario) Model object menggambarkan struktur statis dari suatu object dalam sistem dan relasinya, digambarkan dengan diagram object (class hierarchy). Institut Bisnis dan Informatika Indonesia

PEMODELAN BERORIENTASI OBYEK HAK CIPTA DILINDUNGI UNDANG-UNDANG DILARANG KERAS MEMPERBANYAK / MENGCOPY TANPA SEIZIN COPY CENTRE IBII PEMODELAN BERORIENTASI OBYEK Model dinamik menggambarkan interaksi antara object dalam system yang digambarkan dengan state diagram. Model ini berhubungan dengan waktu dan sekuen operasi. Model use case (use case scenario) model ini menggambarkan bagaimana sistem bekerja secara keseluruhan dan pada skenario tertentu. Sehingga jika sebuah object merupakan sesuatu yang menyediakan layanan maka harus dapat dibuktikan bahwa semua layanan tersebut ada dalam suatu use case. Model ini digambarkan dengan diagram use case scenario. Institut Bisnis dan Informatika Indonesia

HAK CIPTA DILINDUNGI UNDANG-UNDANG DILARANG KERAS MEMPERBANYAK / MENGCOPY TANPA SEIZIN COPY CENTRE IBII Model Obyek Pada Pengembangan system berorientasi object, terdapat beberapa metode pemodelan, seperti object modeling technique OMT (Rumbaugh -1991), Objectory (Jacobson - 1992), dan OOA-OOD (coad and Yourdon - 1991) Gabungan dari ketiga metode tersebut adalah unified Modeling language (UML) pada tahun 1997. Institut Bisnis dan Informatika Indonesia

UML Unified Modelling Language(UML) adalah bahasa pemodelan visual untuk tujuan umum yang digunakan untuk mespesifikan, visualisasi, membangun dan mendokumentasikan. UML dikembangkan oleh Rational Software Corporation . Object Management Group (OMG) tahun 1997 diajukan sebagai bahasa pemodelan standar.

UML mendukung Object oriented approach untuk production software, dan UML tidak mendukung bahasa pemrograman yang terstruktur misalnya COBOL. UML mendukung fase design fase dari development lifecycle, yaitu seringnya perbaikan design sistem. UML mendukung static struktur dan dinamic behavior dari suatu sistem.

Sejarah UML (Unified Modeling Language) Pada Oktober 1994, Dr. James Rumbaugh bergabung dengan Perusahaan Rational sotware, dimana Grady Booch sudah bekerja disana sebelumnya. Grady Booch mengembangkan Object Oriented Design (OOD) dan Dr. James Rumbaugh mengembangkan Object Modeling Technique (OMT). Duet Mereka pada Oktober 1995 menghasilkan Unified Method versi 0.8. Musim gugur 1995 Dr. Ivar Jacobson ikut pula bergabung dengan duet Rumbaugh-Booch, dengan memperkenalkan tool use case. Trio tersebut pada bulan Juni 1996 menghasilkan Unified Modeling Language (UML) versi 0.9. Sebelumnya Dr. Ivar Jacobson mengembangkan Object Oriented Software Engineering (OOSE)

Sejarah UML (Unified Modeling Language) Trio ini mengembangkan Ratinal Unified Process (RUP) Banyak perusahaan software merasakan bagaimana pentingnya UML dalam tujuan strategis mereka, sehingga beberapa perusahaan membentuk sebuah konsorsium yang terdiri dari perusahaan-perusahaan seperti Microsoft Oracle IBM Hewlett-Packard Intellicorp I-Logix DEC, Digital Equipment Corp. texas instrument Rational software ICON computing MCI systemhouse Unisys Platinum Technology Ptech Taskon and Reich Technologies Softeam

Sejarah UML (Unified Modeling Language) Dari konsorsium tersebut pada bulan Januari 1997 lahirlah UML versi 1.0 Pada bulan September 1997 lahirlah UML versi 1.1, dengan 8 buah diagram, yaitu Use case diagram Activity diagram Sequence diagram Collaboration diagram Class diagram Statechart diagram Component diagram Deployment diagram Grady Booch Ivar Jacobson James Rumbaugh

Sejarah UML (Unified Modeling Language) Pada bulan November 1997 sebuah organisasi non profit standarisasi Object Management Group (OMG) mengakui UML sebagai sebuah bahasa pemodelan standar untuk aplikasi object oriented. OMG didirikan pada bulan April 1989 oleh sebelas perusahaan software, dengan kantor pusat di Needham, MA, USA. (www.omg.org) Pada tahun 1999 lahirlah UML versi 1.3, menjadi 9 buah diagram, dengan penambahan Business use case diagram

Sejarah UML (Unified Modeling Language) Pada May 2001 lahirlah UML versi 1.4, menjadi 10 buah diagram, dengan penambahan Object Diagram Pada tahun 2002 lahirlah UML versi 2.0, menjadi 13 buah diagram,dengan penambahan dan penggantian yaitu : Use case diagram Activity diagram Sequence diagram Communication Diagram (Collaboration diagram in versi 1.x) Class diagram State Machine Diagram (Statechart diagram in versi 1.x) Component diagram Deployment diagram Composite Structure Diagram Interaction Overview Diagram Package Diagram Timing Diagram

Komponen-Komponen UML Business Use Case Diagram Use Case Diagram Activity Diagram Sequence Diagram Collaboration Diagram Class Diagram Statechart Diagram Component Diagram Deployment Diagram

Class? Class, seperti juga objek), adalah sesuatu yang membungkus (encapsulate) informasi (atribut) dan perilaku (operasi) dalam dirinya Sistem Tradisional Memisahkan informasi-2 pada basisdata dan perilaku yang mengaksesnya di sisi aplikasi pengakses Object Oriented Menggabungkan potongan-2 informasi dengan perilaku-2 yang akan mengaksesnya  Class

Notasi Kelas dan Object HAK CIPTA DILINDUNGI UNDANG-UNDANG DILARANG KERAS MEMPERBANYAK / MENGCOPY TANPA SEIZIN COPY CENTRE IBII Notasi Kelas dan Object Atributes, berupa data atau informasi yang dipunyai oleh setiap object dalam kelas tersebut. Nama_kelas Atributes Methods Fungsi (methods) adalah kemampuan dari object untuk memproses data, menginputkan data dan mendisplaynya. Institut Bisnis dan Informatika Indonesia

Notasi Kelas dan Object HAK CIPTA DILINDUNGI UNDANG-UNDANG DILARANG KERAS MEMPERBANYAK / MENGCOPY TANPA SEIZIN COPY CENTRE IBII Notasi Kelas dan Object Nama Kelas Contoh: Mahasiswa NIM Nama Jurusan Atributes Entry() Update() Report() Methods Institut Bisnis dan Informatika Indonesia

Atribut Adalah informasi-informasi yang berkaitan degan suatu class. Contoh: Class Mahasiswa, mempunyai atribut: NIM, nama, tgl_lahir, alamat, dls

Derajat pembungkusan (visibility) atribut Secara garis besar, dalam pemrograman berorentasi objek dikenal 3 derajat pembungkusan (yang lebih dikenal dengan sebutan visibility): 1. Private. 2. Public 3. Protected

1. Private. Atribut (juga operasi) yang bersifat private tersembunyi dalam class, sehingga class-2 yang lainnya tidak dapat mengakses dan memanfaatkannya. Notasi: tanda minus (-) 2. Public. Atribut (juga operasi) yang bersifat public tampak bagi semua class sehingga dapat diakses dan dimanfaatkan oleh semua class yang ada Notasi: tanda plus (+) 3. Protected. Atribut (juga operasi) yang bersifat protected hanya dapat diakses oleh anggota class yang bersangkutan serta class-class lain yang mnejadi turunannya dalam hierarki pewarisan (inheritance). Notasi: tanda pagar (#)

Contoh class dengan atribut Pegawai PegawaiID:int=0 NoKTP:String Nama:String Alamat:String Gaji:double Kota:String + promosi() - mutasi

HAK CIPTA DILINDUNGI UNDANG-UNDANG DILARANG KERAS MEMPERBANYAK / MENGCOPY TANPA SEIZIN COPY CENTRE IBII Notasi Struktur Istilah struktur digunakan untuk menjelaskan hubungan generalisasi spesifikasi (gen-spek) dan hubungan keseluruhan sebagian (wholepart). Stuktur gen-spek menjelaskan hubungan kelas satu dengan yang lain yang memakai hubungan “is a” atau “is a kind of” Contoh: A car is a kind of vehicle Struktur whole-part menjelaskan struktur kepemilikan “has a/an” Contoh: A Car has a body Institut Bisnis dan Informatika Indonesia

Notasi Struktur Gen-Spek HAK CIPTA DILINDUNGI UNDANG-UNDANG DILARANG KERAS MEMPERBANYAK / MENGCOPY TANPA SEIZIN COPY CENTRE IBII Notasi Struktur Gen-Spek Generalisasi Spesifikasi 1 Spesifikasi 2 Contoh: Kendaraan Kecepatan GantiKecepatan() Mobil Sepeda Motor Kereta Api Mesin Gigi Tak Gerbong Institut Bisnis dan Informatika Indonesia

Notasi Struktur Whole-part HAK CIPTA DILINDUNGI UNDANG-UNDANG DILARANG KERAS MEMPERBANYAK / MENGCOPY TANPA SEIZIN COPY CENTRE IBII Whole Part 1 Part 2 Contoh: Mobil Roda Mesin Body Institut Bisnis dan Informatika Indonesia

Finding Classes Ditemukan dalam bentuk kata benda dalam skenario use case Menemukan segala sesuatu yang bersifat umum dari objek-objek yang ada pada sequence diagram dan collaboration diagram

Relasi Antar Class Jenis Relasi: Assosiasi Dependensi Aggregasi Relasi realisasi Generalisasi

Assosiasi Koneksi yang saling terkait antar class yang ada Digambarkan dengan sebuah garis lurus Assosiasi dapat berupa dua arah (bidirectional) atau searah (unidirectional) A B A B

Contoh Assosiasi Obat Penjualan KodeObat:String NoPenjualan:String NamaObat:String JenisObat:String Kemasan:String Pembuat:String Satuan:String NoPenjualan:String TglPenjualan:String NoResep:String Sales:String + tambahObat() + ambilPenjualan()

Assosiasi Assosiasi bisa juga bersifat ke dirinya sendiri atau refleksif. Suatu assosiasi refleksif yaitu membuat satu instanisasi dalam class yang berhubungan dengan class yang sama A

Dependensi Selalu searah (unidirectional) Menunjukan bahwa suatu class tidak instanisasi (sebagai variabel instan) oleh class lain. Relasi dependensi diperlukan ketika suatu class diperlukan sebagai parameter atau nilai balik dalam operasi suatu class tertentu. Digambarkan sebagai arah panah dengan garis putus-putus. A B

Obat Penjualan KodeObat:String NamaObat:String JenisObat:String Kemasan:String Pembuat:String Satuan:String NoPenjualan:String TglPenjualan:String NoResep:String Sales:String + tambahObat() + ambilPenjualan()

Aggregasi Relasi antara “keseluruhan” dengan “bagian” Merupakan bentuk yang lebih kuat dari assosiasi. Contoh: Sebuah class mobil, class mesin, class roda dan class lainnya dibutuhkan oleh mobil. Sebuah mobil akan terbentuk oleh sebuah mesin, 4 roda, dan lainnya. Keseluruhan Bagian

Pintu Mobil Mesin Roda

Relasi Realisasi Digunakan untuk relasi antara class dan interface-nya, paket dan interface-nya, suatu komponen dan interface-nya, atau antar sebuah use case dan use case realization Dengan kata lain, relasi ini menunjukkan sebuah interface dan implementasinya Class

Generalisasi Digunakan untuk memperlihatkan relasi pewarisan sifat antara dua model elemen (aktor, use case, class atau paket)

Pegawai PegawaiID:String Nama:String Alamat:String NomorKTP:String + Promosi() + Mutasi() Pegawai Tetap - Gaji:double Pegawai Kontrak - Tarif:double

Menemukan Relasi Menguji model elemen yang telah dibuat sebelumnya Informasi tentang relasi banyak terdapat di sequential diagram dan collaboration diagram

Langkah-langkah mencari relasi: 1. Menguji sequential & collaboration diagram yang sudah dibuat. Jika class A mengirimkan pesan ke class B dalam sequence dan collaboration diagram, harus ada relasi antar class tsb. Biasanya relasi yang ditemukan denga cara ini bertipe assosiasi atau dependensi. 2. Ujilah classes dalam model dan cari hubungan “keseluruhan” – “bagian”

Langkah-langkah mencari relasi: 4. Ujilah classes dalam model untuk mencari relasi generalisasi. Cobalah temukan class yang mungkin mempuyai tipe yang berbeda 5. Ujilah classes yang sudah ditemukan, adakah yang merupakan relasi generalisasi tambahan. Temukan class yang digunakan bersama-sama.

Multiplicity Memberikan gambaran sejumlah instan yang akan ditampung dalam class Multiplicity Arti * Banyak Nol 1 Satu 0..* Nol atau banyak 1..1 Hanya satu 1..* Satu atau banyak

Contoh multiplicity Has married to teaches serves has Wife Husband Teacher Student teaches Bank teller Customer serves House Chimney has 1 5..7 1..* 0..1

Contoh 1 ScheduleAlgorithm RegistrationForm RegistrationManager Course Student CourseOffering Professor addStudent(Course, StudentInfo) name numberCredits open() addStudent(StudentInfo) major location tenureStatus ScheduleAlgorithm RegistrationUser

Contoh 2