1. Penggunaan Pemodelan

dokumen-dokumen yang mirip
PERANCANGAN BERORIENTASI OBJEK

PERANCANGAN BERORIENTASI OBJEK

Object Oriented Analaysis Object Oriented Design

PENDAHULUAN. A. Berorientasi Objek. 1. Karakteristik dari Objek

PertemuanI. Object Oriented

Metode Coad -Yourdon

BAB 2 LANDASAN TEORI

Data, dari waktu ke waktu - sedikit berubah

SEJARAH UML DAN JENISNYA

Pengenalan Obyek. Arna Fariza. Materi

OOAD (Object Oriented Analysis and Design) UML part 2 (Activity diagram, Class diagram, Sequence diagram)

Unified Modelling Language UML

TESTING DAN IMPLEMENTASI SISTEM. WAHYU PRATAMA, S.Kom., MMSI.

PENGUJIAN BERORIENTASI OBJEK

1. Konsep dan Prinsip Analisa

MEMAHAMI PENGGUNAAN UML

BAHASA PEMROGRAMAN. Merupakan prosedur/tata cara penulisan program.

BAB III METODOLOGI PENELITIAN. dalam pengumpulan data atau informasi guna memecahkan permasalahan dan

BAB III METODOLOGI PENELITIAN

BAB III OBJEK DAN METODE PENELITIAN. tempat sanggar seni mayang sari di bandung dimana terletak di jalan Moch Toha

Teknik Informatika S1

REKAYASA PERANGKAT LUNAK MATERI TM 12

BAB II TINJAUAN PUSTAKA

: ENDRO HASSRIE NIM : MATKUL : REKAYASA PERANGKAT LUNAK PEMODELAN DATA

BAB 2 LANDASAN TEORI. bersama-sama untuk mencapai tujuan tertentu. bersatu untuk mencapai tujuan yang sama.

Metode Coad -Yourdon Proses Analisis

MODUL 2 CANDIDATE CLASS DAN INTERACTION DIAGRAM

Citra Noviyasari, S.Si, MT SI - UNIKOM

1. SIMULA di perkenalkan pertama kali pada tahun.. a d b e c. 1970

Unified Modelling Language (UML)

Object-Oriented Design

Gambar Use Case Diagram

PENGANTAR RUP & UML. Pertemuan 2

Lampiran 1 - Pengenalan terhadap UML (Unified Model Language)

2.1 Definisi Analisis Kebutuhan Analisis kebutuhan adalah proses menemukan permasalahan dan menghasilkan alternatif pemecahan yang relevan.

BAB III ANALISIS DAN PERANCANGAN SISTEM

BAB III OBJEK DAN METODOLOGI PENELITIAN. sesuai dengan pendapat Sugiyono (2003:58) mendefinisikan bahwa:

BAB IV ANALISIS DAN PERANCANGAN SISTEM

BAB II LANDASAN TEORI

PEMODELAN ANALISIS. Di Susun Oleh : Linda Liana Dosen Pengampu : Wahyu Hari Haji M.Kom

Kegunaan tahap ini adalah untuk memobilisasi dan mengorganisir g SDM yang akan melakukan Reengineering

BAB II LANDASAN TEORI

P10 Konsep & Prinsip Desain. A. Sidiq P.

FASE PENGEMBANGAN. MPSI sesi 7 & 8

BAB II TINJAUAN PUSTAKA. yang ditandai dengan saling berhubungan dan mempunyai satu fungsi atau tujuan

MAKALAH DESAIN PERANGKAT LUNAK. NAMA : RANI JUITA NIM : DOSEN : WACHYU HARI HAJI. S.Kom.MM

DAFTAR ISI. KATA PENGANTAR... i. DAFTAR ISI... iii. DAFTAR GAMBAR... xi. DAFTAR TABEL... xvii. DAFTAR SIMBOL... xx BAB I PENDAHULUAN...

BAB III OBJEK DAN METODE PENELITIAN. Universitas Padjadjaran yang beralamat di Jl. Ir H. Djuanda No 4 Bandung.

BAB IV ANALISIS DAN PERANCANGAN SISTEM. sistem yang telah ada, dimana analisis sistem merupakan proses mempelajari suatu

BAB I PENDAHULUAN. Suatu Perusahaan atau Organisasi tidak dapat terlepas dari kegiatan atau

Perancangan Kasus Pengujian

BAB II LANDASAN TEORI

BAB III METODOLOGI PENELITIAN

Pendekatan Berorientasi Objek Dengan Metode Object Oriented Analysis (OOA) Nurhayani

BAB III TAHAPAN ANALISIS DAN PERANCANGAN SISTEM. aplikasi penjualan perangkat komputer pada CV. Data Baru. Tahap-tahap tersebut

Unified Modeling Language

BAB II DASAR TEORI II.1 Pekerjaan II.2 Proses

BAB II TINJAUAN PUSTAKA

Notasi dalam UML. Actor

Perancangan Database adalah proses untuk menentukan isi dan pengaturan data yang dibutuhkan untuk mendukung berbagai rancangan sistem.

Minggu 6 Prinsip & Konsep Desain

DAFTAR SIMBOL. Tabel Notasi Use Case Diagram

MAKALAH REKAYASA PERANGKAT LUNAK ( PEMODELAN DATA )

Yuli Purwati, M.Kom USE CASE DIAGRAM

BAB 3 ANALISIS DAN PERANCANGAN PROGRAM. pengembangan sistem yang lazim disebut Waterfall Model. Metode ini terdiri dari enam

DIAGRAM SEQUENCE UML

METODOLOGI BERORIENTASI OBJEK IIM ABDURROHIM, S.T.,M.T

UJIAN TENGAH SEMESTER PENDEK TAHUN AKADEMIK 2015/2016

Object Oriented Analysis and Design -Pendahuluan- Nisa ul Hafidhoh

Teknik Informatika S1

Pemrograman Web Berbasis Framework. Pertemuan 13 : Pengembangan Project (Bag. 1) Hasanuddin, S.T., M.Cs. Prodi Teknik Informatika UAD

DAFTAR SIMBOL. Notasi Keterangan Simbol. Titik awal, untuk memulai suatu aktivitas. Titik akhir, untuk mengakhiri aktivitas.

MAKALAH ANALISIS & PERANCANGAN SISTEM II USE CASE DIAGRAM

Bab 1a Case Tools - Case Studio 2

BAB II LANDASAN TEORI

11/29/2016. Sequence Diagram. Sequence Diagram. Sequence Diagram. Sequence Diagram. Prodi. Informatika FASILKOM UIGM SHINTA P.

Nama : Rendi Setiawan Nim :

Class dan Objek. Ali Tarmuji ID YM: alitarmuji. T. Informka UAD 1

System Analysis. Sistem dan Teknologi Informasi TIP FTP UB

BAB II LANDASAN TEORI

DAFTAR SIMBOL 1. CLASS DIAGRAM. Nama Komponen Class

Pemrograman Berorientasi Obyek. Ramos Somya

RANCANGAN APLIKASI LATIHAN BELAJAR TENSES DENGAN METODE OBJECT ORIENTED DESIGN

model abstrak grafis teks memahami fungsionalitas sistem media komunikasi

Desain arsitektur adalah untuk mengembangkan struktur program modular dan merepresentasikan hubungan kontrol antar modul. Metode desain yang

BAB I PENDAHULUAN 1.1 Latar Belakang

Gambar 1.1. User Interface ATM

BAB III ANALISA DAN PERANCANGAN SISTEM

BAB II LANDASAN TEORI

DAFTAR ISTILAH. Activity Diagram

ANALISA DAN PERANCANGAN PERANGKAT LUNAK

BAB II TINJAUAN PUSTAKA. 2.1 Komponen Sumber Daya Manusia dalam Ruang Lingkup Fakultas. Nuraeny (2010) mengemuckakan bahwa Sumber Daya Manusia

BAB III LANDASAN TEORI

BAB IV ANALISIS DAN PERANCANGAN SISTEM. menggambarkan aliran-aliran informasi dari bagian-bagian yang terkait, baik dari

Materi 1. 1 Rekayasa Perangkat Lunak

RANCANGAN PEMBELAJARAN

BAB III OBJEK DAN METODE PENELITIAN. Mobil Permata Trans yang beralamatkan di Jalan Raflesia J-4, Komplek Mitra

REKAYASA PERANGKAT LUNAK. 3 sks Sri Rezeki Candra Nursari reezeki2011.wordpress.com

BAB II LANDASAN TEORI

BAB II LANDASAN TEORI

Transkripsi:

2. PEMODELAN BERORIENTASI OBJEK A. Pemodelan sebagai Teknik Desain Teknik pemodelan objek menggunakan tiga macam model untuk menggambarkan sistem, yaitu model objek, model dinamik, dan model fungsional. Model objek menggambarkan objek dalam sistem dan relasinya, model dinamik menggambarkan interaksi antara objek dalam sistem, sedangkan model fungsional menggambarkan transformasi data dalam sistem. Setiap pemodelan dapat dilakukan selama tahap pengembangan dan rincian kebutuhan implementasi sebagai kemajuan pengembangan. Uraian yang lengkap dari kebutuhan sistem membutuhkan tiga macam model tersebut. Model objek menggambarkan struktur statis dari suatu objek dalam sistem dan relasinya. Model objek berisi diagram objek. Diagram objek adalah graph di mana node-nya adalah kelas yang mempunyai relasi antara kelas. Model dinamik menggambarkan aspek dari sistem yang berubah setiap saat. Model dinamik dipergunakan untuk menyatakan aspek kontrol dari sistem. Model dinamik berisi state diagram. State diagram adalah graph di mana nodenya adalah state dan arc adalah transisi antara state yang dsisebabkan oleh event. Model fungsional menggambarkan transformasi nilai data di dalam sistem. Model fungsional berisi data flow diagram (diagram alir data). Diagram alir data adalah suatu graph di mana node-nya adalah proses dan arc-nya adalah aliran data. Sebuah model adalah abstraksi yang perlu dipahami sebelum membangunnya. Karena sebuah model menghilangkan rincian yang tidak penting, hal ini membuat lebih mudah untuk dimanipulasi dari pada entitas. Pengembangan sistem perangkat keras dan perangkat lunak berarti membangun sistem yang kompleks, pengembang harus membuat abstraksi dalam berbagai pandangan yang berbeda dari sistem, membangun model dengan 13

menggunakan notasi yang tepat, meneliti kembali model tersebut untuk menegaskan kebutuhan sistem dan secara garis besar menambahkan rincian untuk mentransformasikan model ke dalam suatu aplikasi. 1. Penggunaan Pemodelan Pemodelan memerlukan abstraksi, dengan tujuan membatasi aspek yang penting untuk beberapa kebutuhan dan mengabaikan aspek yang tidak penting. Abstraksi harus selalu dapat dipergunakan untuk banyak kebutuhan, karena kebutuhan membedakan hal yang penting dan tidak penting. Semua abstraksi adalah tidak lengkap dan tidak akurat. Semua kata yang dipergunakan oleh manusia dan bahasa adalah abstraksi - deskripsi tidak lengkap dari dunia nyata. Model yang baik menangkap aspek krusial dari masalah dan menghilangkan yang lain. Sebagian besar bahasa komputer, sebagai contoh, merupakan alat yang miskin untuk memodelkan algoritma karena menekankan pada spesifikasi dari rincian implementasi yang tidak relevan pada algoritma. Desainer membuat banyak macam model untuk berbagai kebutuhan sebelum membangun seuatu. Suatu contoh pemodelan, model pesawat terbang untuk testing aliran angin, sketsa dengan pensil untuk komposisi dari lukisan cat minyak, blueprint dari bagian mesin, storyboard dari iklan dan outline dari buku. Model menyajikan berbagai kebutuhan, di antaranya: Testing entitas sebelum dibangun Kemajuan komputasi memperbolehkan simulasi dari banyak struktur fisik tanpa harus membuat model secara fisik. Tidak hanya simulasi yang memerlukan biaya murah, tetapi dilengkapi dengan informasi yang tidak mungkin diakses atau diukur dari model fisik. Komunikasi dengan kustomer Arsitek dan desainer produk membuat model untuk memperlihatkan kepada kustomernya. Model tiruan memperlihatkan produk yang menyerupai keadaan sebenarnya. 14

Visualisasi Storyboard dari film televisi memperlihatkan kepada kustomer bagaimana gagasan penulis digambarkan sebagai aliran tampilan yang akan dibuat. Reduksi dari kompleksitas Model mengurangi kompleksitas dengan membedakan sejumlah sedikit dari yang penting. 2. Teknik Pemodelan Model mempunyai dua dimensi - suatu pandangan tentang sistem (model objek, model dinamik, atau model fungsional) dan tahapan dari pengembangan (analisa, desain atau implementasi). Model objek Tujuan dari pembuatan model adalah menangkap konsep dari dunia nyata yang penting ke dalam aplikasi. Dalam pemodelan masalah engineering, model objek harus dapat mudah dikenal oleh engineer, dalam pemodelan tentang masalah bisnis, mengacu pada istilah bisnis, dalam pemodelan user interface digunakan istilah domain aplikasi. Model desain menjelaskan bagaimana memecahkan masalah dan mungkin berisi pembangunan komputer. Model objek digambarkan secara grafik dengan diagram objek yang berisi objek dan kelas. Kelas-kelas diatur dalam hirarki yang dapat menggunakan bersama struktur dan peri laku umum yang berhubungan dengan kelas lain. Kelas menentukan nilai atribut yang dibawa oleh setiap objek (instance) dan operasi di mana objek melakukannya. 15

Model dinamik Model dinamik menggambarkan aspek dari sistem yang berhubungan dengan waktu serta sekuens dari operasi. Model dinamik menangkap kontrol, di mana aspek dari sistem digambarkan serta sekuens dari operasi yang terjadi tanpa memperhatikan operasi apakah yang dikerjakan, terhadap apa operasi dilakukan, atau bagaimana diimplementasikan. Model dinamik digambarlan secara grafik dengan state diagram. Setiap state diagram memperlihatkan sekuens state dan event diperbolehkan dalam sistem untuk satu kelas dari objek. State diagram juga menunjuk pada model lain. Aksi dalam state diagram berhubungan dengan model fungsional, event dalam state diagram menjadi operasi pada obyek dalam model obyek. Model fungsional Model fungsional menggambarkan aspek dari sistem yang berhubungan dengan transformasi dari nilai - fungsi, pemetaan, batasan dan ketergantungan fungsional. Model fungsional menangkap apakah yang dikerjakan oleh sistem tanpa memperhatikan bagaimana dan kapan dikerjakan. Model fungsional digambarkan dengan diagram alir data. Diagram alir data memperlihatkan ketergantungan antara nilai dan perhitungan nilai output dari nilai input dan fungsi, tanpa memperhatikan kapan dan bila fungsi tersebut dieksekusi. Fungsi meminta suatu aksi dalam model dinamik dan diperlihatkan sebagai operasi pada objek dalam objek model. Hubungan antara model Setiap model menggambarkan satu aspek dari sistem, tetapi mengandung hubungan dengan model lain. Model objek menggambarkan struktur data dimana model dinamik dan fungsional melakulkan operasi terhadapnya. Operasi dalam model objek berhubungan dengan event pada model dinamik dan fungsi pada model fungsional. Model dinamik menggambarkan struktur kontrol terhadap model objek. Hal ini menunjukkan keputusan yang tergantung pada nilai objek dan yang mana menyebabkan aksi yang menyebabkan berubahnya nilai objek dan meminta fungsi. Model fungsional menggambarkan fungsi yang meminta operasi pada model objek dan aksi pada model dinamik. 16

B. Model Berorientasi Objek Sebuah model objek menangkap struktur statis dari sistem dengan menggambarkan objek dalam sistem, hubungan antara objek, serta atribut dan operasi yang merupakan karakteristik setiap kelas dan objek. Model objek adalah hal yang paling penting dari ketiga model. Model berorientasi objek lebih mendekati keadaan nyata, dan dilengkapi dengan penyajian grafik dari sistem yang sangat bermanfaat untuk komunikasi dengan kustomer dan pembuatan dokumentasi struktur dari sistem. 1. Objek dan Kelas Objek Tujuan dari pemodelan objek adalah menggambarkan objek, sebagai contoh, Joe Smith, Simplex company, proses nomor 7648 adalah objek. Suatu objek adalah sesuatu yang sederhana yang membuat pengertian dalam konteks aplikasi. Objek didefinisikan sebagai konsep, abstraksi atau benda dengan dengan batasan dan arti untuk suatu masalah. Objek menjelaskan dua tujuan, yaitu pengertian tentang dunia nyata dan dilengkapi dengan dasar praktek untuk implementasi komputer. Dekomposisi dari suatu masalah ke dalam objek tergantung pada keputusan dan kenyataan dari masalah tersebut. Tak ada sesuatu penyajian yang sempurna. Semua objek mempunyai identitas yang berbeda dengan lainnya. Dua apel dengan warna, permukaan dan tekstur yang sama adalah tetap sebagai individual apel. Seseorang dapat makan satu dan makan yang lainnya. Hal yang sama, kembar identik merupakan dua orang yang berbeda, walaupun mereka nampak seperti sama. Istilah identitas berarti bahwa objek dibedakan oleh sifat yang melekat dan bukan dengan uraian sifat yang dimilikinya. Kadang-kadang objek berarti suatu barang, pada saat lain menunjuk pada suatu kelompok barang yang sama. Bila kita menginginkan untuk menunjuk 17

dengan tepat suatu barang, maka digunakan istilah object instance, dan object class untuk menunjukkan satu grup dari barang yang sama. Kelas Suatu object class menggambarkan kumpulan dari objek yang mempunyai sifat (atribut), peri laku umum (operasi), relasi umum dengan objek lain dan semantik umum. Orang, perusahaan, binatang, proses dan window adalah objek. Setiap orang mempunyai umur, IQ dan mungkin pekerjaan. Setiap proses mempunyai pemilik, prioritas, list dari sumber daya yang dibutuhkan. Objek dan object classes sering sama sebagai benda dalam deskripsi masalah. Istilah Kelas sering digunakan dari pada Kelas-obyek. Objek dalam kelas mempunyai atribut dan pola peri laku yang sama. Sebagian besar objek diturunkan sifatnya dari perbedaan nilai atributnya dan relasi dengan objek lain. Bagaimanapun juga, terdapat kemungkinan adanya objek dengan nilai atribut dan relasi yang identik. Setiap objek mengetahui kelasnya. Sebagian besar bahasa pemrograman berorientasi objek dapat menentukan kelas yang dimiliki oleh objek dalam run time-nya. Bila objek difokuskan pada pemodelan objek, bagaimana dengan kelas? Dengan mengumpulkan objek ke dalam kelas, kita membuat abstraksi suatu masalah. Abstraksi memberikan pemodelan yang mempunyai kehandalan untuk membuat generlisasi dari beberapa hal yang spesifik menjadi suatu yang lebih umum. Definisi umum (seperti nama kelas dan nama atribut) cenderung untuk disimpan sekali dalam kelas dari pada dalam objek. Operasi dapat ditulis sekali untuk setiap kelas, sehingga semua objek dalam kelas dapat memperoleh keuntungan dengan penggunaan kembali. 18

2. Diagram Objek Diagram objek melengkapi notasi grafik untuk pemodelan objek, kelas dan relasinya dengan yang lain. Diagram objek bermanfaat untuk pemodelan abstrak dan membuat perancangan program. Diagram objek sederhana, mudah dipahami dan bekerja dengan baik dalam praktek. Terdapat dua macam diagram objek, yaitu diagram kelas dan diagram instance. Diagram kelas adalah skema, pola, atau template untuk menjelaskan banyak kemungkinan data dari instance. Diagram kelas menjelaskan klas-objek. Diagram instance menjelaskan bagaimana satu set objek tertentu berhubungan dengan yang lainnya. Diagram instance menggambarkan object instance. Diagram instance bermanfaat untuk membuat dokumentasi dari suatu kasus. Diagram objek dipergunakan mulai fase analisa, desain dan implementasi. Beberapa notasi untuk objek di antaranya adalah notasi Coad/ Yourdon, notasi Rumbaugh, notasi Booch dan notasi Firesmith. Menurut Coad/ Yourdon notasi untuk diagram objek adalah sebagai berikut. Kelas dan objek Konsep fundamental dalam analisa ber-orientasi objek adalah objek itu sendiri. Sebuah objek adalah sebuah entitas yang mencakup data dan metode. Sebelum menentukan Kelas-&-Objek, terlebih dulu dimulai dengan menentukan arti dari Kelas dan Objek. Objek adalah abstraksi dari suatu problem, menggambarkan kemampuan dari sistem untuk menyimpan informasi tentang objek tersebut. Objek merupakan pembungkusan (encapsulation) antara atribut dengan metode. Metode yang biasa disebut juga service dapat berupa fungsi atau prosedur. Kelas merupakan satu atau lebih objek dengan persamaan atribut dan metode, sedangkan Kelas-&-Objek adalah kelas dengan satu atau lebih 19

objek di dalamnya. Nama Kelas adalah kata benda tunggal, atau kata sifat dan kata benda. Nama dari Kelas-&Objek harus dapat menjelaskan Objek tunggal dari suatu Kelas. Contohnya, bila setiap Objek menjelaskan sesuatu yang dikirimkan, maka menggunakan "Item Pengiriman" (setiap Objek adalah satu item), lebih baik dari pada menggunakan nama "Pengiriman". (dimana dapat berarti cara pengiriman misalnya pengiriman menggunakan pesawat atau kapal). Nama Kelas-&-Objek sebaiknya mudah dibaca, seperti penggunaan huruf kapital dan huruf kecil pada umunya. Notasi untuk Kelas-&-Objek dapat dilihat pada Gambar 4. Gambar 4. Notasi untuk kelas dan kelas-&-objek (Coad, 1991) Struktur objek dan hirarki kelas Setelah menentukan Kelas maka langkah berikutnya adalah menyusunnya sehingga merupakan suatu hirarki, yang selanjutnya sangat menentukan penerapan dari inheritance. Whole-Part Structure memperlihatkan hirarki dari suatu kelas sebagai komponen dari kelas lain yang juga disebut sub objek. Notasi untuk Whole-Part Structure seperti dalam Gambar 5. Gen-Spec Structure memperlihatkan kelas sebagai spesialisasi dari kelas di atasnya. Kelas yang mempunyai sifat umum disebut Generalization, Superclass atau Topclass, sedangkan kelas yang mempunyai sifat khusus disebut Spezialization. Notasi untuk Gen-Spec Structure seperti dalam Gambar 6. 20

Gambar 5. Notasi untuk whole-part structure Gambar 6. Notasi untuk gen-spec structure 21

Atribut Atribut menggambarkan data yang dapat memberikan informasi mengenai kelas atau objek di mana atribut tersebut berada. Seperti terlihat pada Gambar 7, dalam notasi untuk kelas dan objek ditempatkan daftar dari atribut. Gambar 7. Notasi untuk atribut Metode Metode (method) disebut juga service atau operator adalah prosedur atau fungsi seperti yang terdapat dalam bahasa Pascal pada umumnya, tetapi cara kerjanya agak berlainan. Metode adalah subprogram yang tergabung dalam objek bersama-sama dengan atribut. Metode dipergunakan untuk pengaksesan terhadap data yang terdapat dalam objek tersebut. Metode tidak perlu mempunyai nama yang unik, dapat digunakan beberapa metode dengan nama yang sama untuk mengakses beberapa objek yang berbeda dan juga pada hirarki yang berbeda. Penulisan nama untuk metode dapat juga dibuat berbeda. Pada dasarnya sistem akan mengetahui metode yang mana dapat mengakses suatu objek, yaitu metode yang terdapat di dalam objek itu sendiri. 22

Banyak cara yang dapat digunakan untuk menjelaskan detail metode antara lain penggunaan bahasa umum, pseudocode dan decision tree. Beberapa metode dapat digambarkan dengan menuliskan daftar seperti pada Gambar 8. Gambar 8. Notasi untuk metode Penggunaan bahasa umum lebih sesuai untuk menjelaskan detail proses atau menjelaskan diagram alir data, tetapi tidak sesuai untuk menjelaskan proses secara detail. Pseudocode dapat dipergunakan untuk menjelaskan metode pada pemrograman berorientasi objek. Karena satu objek memiliki beberapa metode, penulisan pseudocode harus menyebutkan metode dan objeknya. Decision tree digunakan untuk menjelaskan aturan bisnis yang kompleks yang sulit dijelaskan dengan pseudocode. Message Message (pesan) merupakan cara untuk berhubungan antara satu objek dengan objek lain. Suatu pesan dikirimkan oleh suatu objek kepada objek tertentu dapat digambarkan sebagai anak panah, seperti pada Gambar 9. Objek pengirim mengirimkan pesan kepada objek penerima supaya objek penerima melaksanakan salah satu metode yang dimilikinya. 23

Gambar 9. Notasi untuk message 24