Untuk mempelajari konsep pemodelan berbasis objek, langkah pertama yang harus dilakukan adalah

Untuk mempelajari konsep pemodelan berbasis objek, langkah pertama yang harus dilakukan adalah

Sebelum membuat suatu aplikasi atau perangkat lunak, kita harus merancang terlebih dahulu bentuk dan rancangan bagaimana program pada aplikasi dapat berjalan sesuai keinginan. Prinsip melakukan pemodelan terlebih dahulu ini akan memberikan hasil yang jauh lebih baik. Guna dari pemodelan ini adalah untuk memudahkan kita dalam pekerjaan karena cukup mengikuti alur yang sudah dibuat terlebih dahulu. Hal tersebut cukup efisien dan memiliki fungsi yang berarti dalam pembuatan perangkat lunak dan juga mampu memahami system yang akan dibuat nantinya.

Kita akan mempelajari pengertian dari tiap kata dalam konsep pemodelan berorientasi objek. Dimulai dari kata pemodelan, pemodelan adalah penggambaran atau pendekskripsian mengenai suatu bentuk tertentu. Dalam membuat perangkat lunak, pemodelan akan dilakukan di awal atau lebih tepatnya sebelum pengcodingan dimulai.  Berorientasi objek merupakan saat ketika objek-objek yang memiliki karakteristik tersendiri digunakan dalam pemodelan suatu perangkat lunak. Sehingga dapat disimpulkan bahwa pemodelan dengan sistem orietasi objek akan banyak menggunakan objek.

Pada pemodelan terdapat 3 buah teknik, yaitu

Model objek berisi penggambaran struktur statis dari sebuah objek dan system-sistemnya begitu pula relasinya. Diagram objek merupakan unsur utama dalam model yang satu ini. Diagram objek itu sendiri berarti diagram yang kelasnya saling terhubung atau memiliki relasi dengan kelas yang lain.

Isi dari model dinamik adalah gambaran sifat system yang kerap berubah tiap waktu karena sifatnya yang dinamis. Model dinamik berisi state diagram.

Model yang ketiga ini atau dinamai model fungsional berisi gambaran di dalam data yang nilainya bertransformasi. Data flow diagram merupakan isi dari model ini.

Sebuah model objek menggunakan struktur statis dari suatu system dengan objek sebagai gambaran dalam system tersebut. Pemodelan berorientasi objek memiliki keunggulan dan menjadi yang terpenting karena sifatnya yang mendekati keadaan dalam dunia nyata yang sangat bermanfaat dalam penyajian grafik untuk dapat berkomunikasi dengan baik bersama customer.

Betapa sederhananya tujuan dari kegiatan pemodelan ini, yaitu memberikan gambar grafik berupa objek. Contoh objek sangat banyak, contoh nama: apaf, benda: mobil, rumah, sepeda dan lainnya masih banyak lagi.

Objek adalah suatu konsep abstrak dengan batasan. Dalam dunia nyata terdapat sebuah konsep dan itulah yang disebut dengan objek.

Selain adanya objek, terdapat pula istilah kelas. Atau object class yang mempunyai kumpulan suatu objek dengan attribute prilaku, relasi dan semantic umum.

Diagram objek sendiri memiliki definisi sebagai suatu grafik dengan tujuan sebagai pemodelan objek, kelas yang berelasi dengan yang lainnya.

System dengan prinsip berorientasi objek memiliki banyak keunggulan diantaranya :

  1. Keunggulan pertama terdapat pada perawatannya atau maintenance. Hal itu bisa terjadi karena system berorientasi objek memiliki kelebihan berupa program yang jauh lebih mudah dipahami dan dimengerti.
  2. Dalam pengubahannya, system berorientasi objek juga lebih menyingkat waktu karena pekerjaannya yang tidak memakan waktu.
  3. Objek yang ingin digunakan juga dapat dilakukan seaktif mungkin hal ini menjadikan nilai tambah pada system

Alur kerja dari hasil pemodelan berorientasi objek ini adalah caranya dalam menyelesaikan masalah yang muncul dapat diketahui melalui objek-objek yang terkait dengan masalah tersebut. Sehingga penggunaan object-oriented ini sangatlah menguntungkan dalam upaya pembuatan perangkat lunak.

Melalui system berorientasi objek juga memudahkan untuk berkomunikasi dengan customer dan juga dalam pembuatan data terstruktur  dari system yang akan dibuat.

Selamat mencoba ~

 Penulis : Apaf Nur Fauzia


Sukai/Like Fan Page Facebook Garuda Cyber Indonesia
Subscribe Channel Youtube Garuda Cyber Indonesia
Follow Instagram Garuda Cyber Indonesia
Chat Wa
Untuk mempelajari konsep pemodelan berbasis objek, langkah pertama yang harus dilakukan adalah

Definisi model sendiri mempunyai Pengertian yang beragam sesuai dengan dunianya mulai dari pengertian sehari-hari (everyday sense) sampai technical sense. Contoh dari everyday sense, adalah artis merupakan (foto) model yang mendapat peran untuk memamerkan model-model pakaian karya disainer terkenal. Model matematik hanya salah satu jenis dari model dalam lingkup technical sense. Dalam banyak aplikasi engineering, model didefinisikan sebagai representasi dari sistem yang disederhanakan. Representasi ini pun juga bermacam-macam mulai dari yang bersifat physical, pictorial, verbal, schematic dan symbolic dimana:

a.     Physical yaitu dengan membuat scaleddown version dari sistem yang dipelajari (model pesawat, model kereta api),

b.     Pictorial, yaitu representasi dengan gambar untuk menggambarkan kontur permukaan bumi seperti peta topografi dan bola dunia.

c.     Verbal, yaitu representasi suatu sistem ke dalam kalimat verbal yang mengambarkan ukuran, bentuk dan karakteristik.

d.     Schematic, yaitu representasi dalam bentuk skema figurative misalnya model rangkaian listrik, model Atom Bohr dan lain-lain

e.     Symbolic, yaitu representasi ke dalam simbol-simbol matematik dimana variable hasil karakterisasi proses atau sistem ke dalam variable formulasi menggunakan simbol-simbol matematik.

Jadi Pemodelan merupakan suatu proses dalam representasi abstrak suatu model. Proses pemodelan menampilkan deskripsi suatu proses dari beberapa perspektif tertentu. Proses pemodelan perangkat lunak merupakan aktifitas yang saling terkait (koheren) untuk menspesifikasikan, merancang, implementasi dan pengujian sistem perangkat lunak. (www.ilmukomputer.com, Pemodelan Data, 2005).

Pada tingkat teknik, rekayasa perangkat lunak dimulai dengan serangkaian tugas pemodelan. Model analisis sebenarnya merupakan serangkaian model yang merupakan representasi teknis yang pertama dari system. Di dalam suatu industri dikenal berbagai macam proses, demikian juga Halnya dengan industri perangkat lunak (Mukhamat Djafar, 2015). Perbedaan proses yang digunakan akan menguraikan aktivitas-aktivitas proses dalam cara-cara yang berlainan. Perusahaan yang berbeda menggunakan proses yang berbeda untuk menghasilkan produk yang sama. Tipe produk yang berbeda mungkin dihasilkan oleh sebuah perusahaan dengan menggunakan proses yang berbeda. Namun beberapa proses lebih cocok dari lainnya untuk beberapa tipe aplikasi. Jika proses yang salah digunakan akan mengurangi kualitas kegunaan produk yang dikembangkan. Karena banyaknya variasi dalam model proses yang digunakan maka tidak mungkin menghasilkan gambaran-gambaran yang reliabel untuk alokasi biaya dalam aktivitas-aktivitas ini. Modifikasi perangkat lunak biasanya lebih dari 60 % dari total biaya pembuatan perangkat lunak.

Presentasi ini terus bertambah karena lebih banyak perangkat lunak dihasilkan dan dipelihara. Pembuatan perangkat lunak untuk suatu perubahan adalah penting. Proses perangkat lunak komplek dan melibatkan banyak aktivitas. Proses pemodelan analisis memiliki atribut dan karakteristik seperti:

a.   Understandability, yaitu sejauh mana proses secara eksplisit ditentukan dan bagaimana kemudahan definisi proses itu dimengerti.

b.   Visibility, apakah aktivitas-aktivitas proses mencapai titik akhir dalam hasil yang jelas sehingga kemajuan dari proses Tersebut dapat terlihat nyata/jelas

c.   Supportability, yaitu sejauh mana aktivitas proses dapat didukung oleh CASE

d.   Acceptability, apakah proses yang telah ditentukan oleh insinyur dapat diterima dan digunakan dan mampu bertanggung jawab selama pembuatan produk perangkat lunak

e.   Reliability, apakah proses didesain sedikian rupa sehingga kesalahan proses dapat dihindari sebelum terjadi kesalahan pada produk. Robustness, dapatkah proses terus berjalan walaupun terjadi masalah yang tak diduga.

f.     Maintainability, Dapatkah proses berkembang untuk mengikuti kebutuhan atau perbaikan.

g.   Rapidity, bagaimana kecepatan proses pengiriman sistem dapat secara lengkap memenuhi spesifikasi.

Tetapi Pada saat ini ada dua landskap pemodelan analisis. Yaitu yang pertama analisis terstrutur adalah metode pemodelan klasik. Dimana analisis terstruktur ini merupakan aktifitas pembangunan model, dan yang kedua adalah analisis berorientasi Objek.

II.        Kegiatan Belajar 2 : Kebutuhan Sistem Berorientasi Objek

Untuk mengetahui kebutuhan sistem berorientasi objek, maka perlu dilakukan analisis. Analisis yang dimaksudkan sebagai berikut:

Analisis adalah Penguraian suatu pokok atas berbagai bagiannya dan penelaahan bagian itu sendiri serta hubungan antar bagi an untuk memperoleh pengertian yang tepat dan pemahaman arti keseluruhan. Studi dari suatu permasalahan dengan cara memilah-milah permasalahan tersebut sehingga dapat dipahami dan dievaluasi, sebelum diambil tindakan-tindakan tertentu.

Agar kebutuhan sistem dapat diketahui, perlu digunakan suatu metode dalam analisisisnya. Metodologi adalah cara sistematis untuk mengerjakan pekerjaan analisis dan desain. Dengan metodologi, pihak yang membangun suatu sistem dapat merencanakan dan mengulangi pekerjaan di lain waktu. Metodologi menghilangkan kesalahpahaman dan menghilangkan perbedaan notasi untuk suatu hal yang sama. Metode yang digunakan harus sesuai dengan kebutuhan aplikasi yang akan dibangun. Selain itu metode juga harus mudah digunakan dan dimengerti oleh pengembang perangkat lunak. Metodologi orientasi objek yang digunakan dalam analisis berorientasi objek antara lain:

A.     Metode Booch

Dikenal dengan nama Metode Desain Object Oriented. Metode ini menjadikan proses analisis dan desain ke dalam empat tahapan yang iteratif (dapat berulang), yaitu identifikasi kelas-kelas dan objek-objek, identifikasi semantik dan hubungan objek dan kelas tersebut, perincian interface dan implementasi.

B.      Metode Rumbaugh (Object Modelling Technique – OMT)

Metode ini berdasarkan pada analisis terstruktur dan pemodelan entity-relationship. Tahapan utama dalam metodologi ini adalah analisis, desain sistem dan desain objek, dan implementasi. Keunggulan metode ini adalah dalam penotasian yang mendukung semua konsep object oriented.

C.     Metode Jacobson (Object Oriented Software Engineering – OOSE)

Metode yang mengandung elemen-elemen dari Object Oriented lainnya. Metode ini memberi penekanan lebih pada use-case. OOSE memiliki tiga tahapan yaitu membuat model requirement dan analisis, desain dan implementasi, dan model pengujian (tes model). Keunggulan metode ini adalah mudah untuk dipelajari karena memiliki notasi yang sederhana, mencakup seluruh tahapan dalam rekayasa software.

D.     Metode Coad dan Yourdon

Metode ini didasarkan pada pemodelan Object Oriented dan entity-relationship. Metode ini mempunyai perancangan yang berfokus pada empat komponen yaitu Problem domain componet, Human interaction componet, Data management component dan Task management component.

E.      Metode Wirfs-Brock

Responsibility Driven Design/-Class Responsibility Collaboration (RDD/CFC) Metode ini diarahkan pada desain, tetapi sangat berguna untuk memunculkan ide dalam tahap analisis. Keunggulannya adalah mudah digunakan, metode ini juga mengidentifikasikan hirarki kelas dan subsistem-subsistem.

F.       Metode Shlair-Mellor Object Oriented Analysis/Design (OOA/D)

Metode yang menggunakan teknik pemodelan informasi tradisional yang menjelaskan entitas dalam sistem, menggunakan state diagram untuk memodelkan keadaan (state) entitas, menggunakan data flow diagram untuk memodelkan alur data dalam sistem. Metode ini menghasilkan tiga jenis model yaitu: information model, state model dan process model. Keunggulan metode ini adalah dalam memandang masalah dari sudut pandang yang berbeda, mudah dibuat (dikonversi) dari metode struktural.

III.        Kegiatan Belajar 4 : Alur Kerja Sistem Berorientasi Objek

Siklus pemodelan atau hubungan dengan langkah-langkah pemodelan dalam mengembangkan suatu sistem sebagai berikut:

a)   Rekayasa pemodelan sistem

Yaitu menyangkut pengumpulan kebutuhan (requirement gathering) pada level sistem dengan sejumlah analisis serta top desain.

b)   Analisis

Yaitu kebutuhan Perangkat Lunak, proses requirement gathering difokuskan, khususnya pada Perangkat lunak. Untuk memahami sifat program yang dibangun, analis harus memahami domain informasi, tingkah laku, unjuk kerja, dan interface yang diperlukan. Kebutuhan sistem maupun Perangkat Lunak didokumentasikan dan direview bersama user

c)    Desain

Memiliki fokus terhadap 4 hal, yaitu:

1)   Desain database.

2)   Arsitektur Perangkat Lunak.

3)   Arsitektur interface

4)   Algoritma prosedural.

Proses desain menerjemahkan kebutuhan kedalam representasi Perangkat Lunak sebelum dimulai coding.

IV.        Kegiatan Belajar 5 : Unified Modeling Language (UML)

Unified Modeling Language (UML) adalah notasi yang lengkap untuk membuat visualisasi model suatu sistem. Sistem informasi dan fungsi, tetapi secara normal digunakan untuk memodelkan sistem komputer (Kasman Arif, 2014). Didalam pemodelan objek guna menyajikan sistem yang berorientasi pada objek dan pada orang lain, akan sangat sulit dilakukan jika pemodelan tersebut dilakukan dalam bentuk kode bahasa pemrograman. Kesulitan yang muncul adalah timbulnya ketidakjelasan dan salah interprestasi didalam pembacaan kode pemrograman untuk pemodelan objek tersebut (Verdi Yasin, 2012)

Unified Modeling Language (UML) adalah bahasa pemodelan untuk sistem atau perangkat lunak yang berparadigma berorientasi objek” (Adi Nogroho, 2010: 6). Unified Modeling Language (UML) disebut bahasa pemodelan bukan metode.

Bahasa pemodelan (sebagaian besar grafik) merupakan notasi dari metode yang digunakan untuk mendesain secara cepat. Bahasa pemodelan merupakan bagian terpenting dari metode. Ini merupakan bagian kunci untuk komunikasi. Pemodelan ini merupakan bahasa standar untuk digunakan dalam visualisasi, spesifikasi, pembentukan dan pendokumentasian alat – alat dari sistem perangkat lunak.

1.      UML sebagai bahasa pemodelan

Unified Modeling Language (UML) merupakan bahasa pemodelan yang memiliki pembendaharan kata dan cara untuk mempresentasikan secara fokus pada konseptual dan fisik dari suatu sistem. Contoh untuk sistem software yang intensif membutuhkan bahasa yang menunjukkan pandangan yang berbeda dari arsitektur sistem, ini sama seperti menyusun atau mengembangkan sistem development life cycle. Dengan Unified Modeling Language (UML) akan memberitahukan kita bagaimana untuk membuat dan membaca bentuk model yang baik, tetapi Unified Modeling Language (UML) tidak dapat memberitahukan model apa yang akan dibangun dan kapan akan membangun model tersebut.

2.      UML sebagai bahasa untuk mengambarkan sistem

UML tidak hanya merupakan rangkain simbol grafikal, cukup dengan setiap simbol pada notasi UML merupakan penerapan simantik yang baik. UML menggambarkan modael yang dapat dimengerti dan dipresentasikan kedalam model tekstual bahasa pemrograman. Contohnya kita dapat menduga suatu model dari sistem yang berbasis web tetapi tidak secara langsung dipegang dengan mempelajari code dari sistem.

3.      UML sebagai bahasa untuk menspesifikasikan sistem

UML membangun model yang sesuai dan lengkap. Pada faktanya UML menunjukan semua spesifikasi keputusan analisis, desain dan implementasi yang penting yang harus dibuat pada saat pengembangan dan penyebaran dari sistem software intensif.

4.      UML sebagai bahasa untuk pendokumentasian sistem

UML menunjukan dokumentasi dari arsitektur sistem dan detail dari semuanya. Tujuan Unified Modeling Language (UML) diantaranya adalah.

a.     Memberikan model yang siap pakai, bahasa pemodelan visual yang ekspresif untuk mengembangkan sistem dan yang dapat saling menukar model dengan mudah dan dimengerti secara umum.

b.     Memberikan bahasa pemodelan yang bebas dari berbagai bahasa pemrograman dan proses rekayasa.

c.     Menyatukan praktek – praktek terbaik yang terdapat dalam pemodelan.

5.      UML dengan aplikasi StarUML

Pemodelan merupakan suatu hal yang tidak bisa dilepaskan dari pembangunan aplikasi. Sebagai cikal-bakal dari suatu aplikasi, proses memodelkan tentu bukan hal yang mudah. Namun seiring berkembangnya teknologi, pemodelan yang notabene memakan banyak waktu bisa diselesaikan lebih cepat dan terorganisasi. Hal tersebut bisa terjadi dengan bantuan aplikasi pemodelan.

StarUML adalah software permodelan yang mendukung UML (Unified Modeling Language). Berdasarkan pada UML version 1.4 dan dilengkapi 11 macam diagram yang berbeda, mendukung notasi UML 2.0 dan juga mendukung pendekatan MDA (Model Driven Architecture) dengan dukungan konsep UML. StarUML dapat memaksimalkan produktivitas dan kualitas dari suatu software project.

Tugas:

1.          Silakan Download StarUML dari website resminya. Gunakan fasilitas pencarian untuk menemukan web tersebut.

2.          Instalasilah StarUML di komputer Anda, sebelum melanjutkan ke materi berikut.

Jika dikomputer Anda telah terpasang StarUML, maka silakan melanjutkan ke bahasan berikut.

V.        Kegiatan Belajar 5 : Use Case Diagram

1)    Use Case Diagram

Use Case diagram merupakan suatu diagram yang menggambarkan fungsionalitas yang diharapkan dari sebuah sistem. Sebuah use case dapat memrepresentasikan interaksi antara aktor dengan sistem. Use Case Diagram adalah abstraksi dari interaksi antara system dan actor. Use case bekerja dengan cara mendeskripsikan tipe interaksi antara user sebuah system dengan systemnya sendiri melalui sebuah cerita bagaimana sebuah system dipakai. Use case merupakan kontruksi untk mendeskripsikan bagaimana system akan terlihat di mata user. Sedangkn use case diagram memfalisitasi komunikasi di antara analis dan pengguna serta analis dan client.

Penjelasan bagian bagian use case diagram, ada 6 tool yang terpenting pada use case diagram :

a)      System

Menyatakan batasan sistem dalam relasi dengan actor-actor yang menggunakannya (di luar sistem) dan fitur-fitur yang harus disediakan (dalam sistem). Digambarkan dengan segi empat yang membatasi semua use case dalam sistem terhadap pihak mana sistem akan berinteraksi. Sistem disertai label yang menyebutkan nama dari sistem, tapi umumnya tidak digambarkan karena tidak terlalu memberi arti tambahan pada diagram.

b)      Actor

Aktor adalah segala hal diluar sistem yang akan menggunakan sistem tersebut untuk melakukan sesuatu. Bisa merupakan manusia, sistem, atau device yang memiliki peranan dalam keberhasilan operasi dari sistem. Cara mudah untuk menemukan aktor adalah dengan bertanya hal-hal berikut: SIAPA yang akan menggunakan sistem? APAKAH sistem tersebut akan memberikan NILAI bagi aktor?

c)      Use case

Mengidentifikasi fitur kunci dari sistem. Tanpa fitur ini, sistem tidak akan memenuhi permintaan user/actor. Setiap use case mengekspresikan goal dari sistem yang harus dicapai. Diberi nama sesuai dengan goal-nya dan digambarkan dengan elips dengan nama di dalamnya. Fokus tetap pada goal bukan bagaimana mengimplementasikannya walaupun use case berimplikasi pada prosesnya nanti. Setiap use case biasanya memiliki trigger/pemicu yang menyebabkan use case memulai (misalnya,Pasien mendaftar dan membuat janji baru atau meminta untuk membatalkan atau mengubah janji yang sudah ada ).ada 2 triger pertama triger eksternal, seperti pelanggan memesan atau alarm kebakaran berbunyi, kedua triger temporal, seperti tanggal pengembalian buku terlewati di perpustakaan atau keterlambatan bayar sewa.

d)      Assosiation

Mengidentifikasikan interaksi antara setiap actor tertentu dengan setiap use case tertentu. Digambarkan sebagai garis antara actor terhadap use case yang bersangkutan. Asosiasi bisa berarah (garis dengan anak panah) jika komunikasi satu arah, namun umumnya terjadi kedua arah (tanpa anak panah) karena selalu diperlukan demikian.

e)      Dependency

v Dependensi <<include>>

ü Mengidentifikasi hubungan antar dua use case di mana yang satu memanggil yang lain.

ü Jika pada beberapa use case terdapat bagian yang memiliki aktivitas yang sama maka bagian aktivitas tersebut biasanya dijadikan use case tersendiri dengan relasi dependensi setiap use case semula ke use case yang baru ini sehingga memudahkan pemeliharaan.

ü Digambarkan dengan garis putus-putus bermata panah dengan notasi <<include>> pada garis.

ü Arah mata panah sesuai dengan arah pemanggilan.

v Dependensi <<extend>>

ü Jika pemanggilan memerlukan adanya kondisi tertentu maka berlaku dependensi <<extend>>.

ü Note: konsep “extend” ini berbeda dengan “extend” dalam Java!

ü Digambarkan serupa dengan dependensi <<include>> kecuali arah panah berlawanan

f)        Generalization

Mendefinisikan relasi antara dua actor atau dua use case yang mana salah satunya meng-inherit dan menambahkan atau override sifat dari yang lainnya. Penggambaran menggunakan garis bermata panah kosong dari yang meng-inherit mengarah ke yang di-inherit

Berikut contoh sederhana cara membuat use case diagram dengan starUML:

1)  Buka aplikasi starUML

2)  Pada tampilan awal, pilih model yang terletak pada toolbar, lalu Add Diagram dan pilih Use Case Diagram

Gambar 1. 1. Memulai Use Case Diagram

3)  Maka tampilan toolbox pada sebelah kiri akan berubah menjadi gambar di bawah ini.

Gambar 1. 2. Toolbox use case diagram

4)  Klik pada gambar aktor dan taruh kursor pada samping toolbox. Maka akan muncul gambar orang yang disebut dengan actor dan beri nama actor.

Gambar 1. 3. Pemberian nama actor

5)  Selanjutnya pilih usecase pada menu toolbox, tekan tiga kali pada lembar kerja untuk membuat tiga use case dan beri nama pada setiap use case.

Gambar 1. 4. Objek Use Case

6)  Untuk membuat garis hubung antara actor dan use case pilih directed association tekan kursor pada gambar actor lalu arahkan pada usecase dan lepas, maka garis akan terhubung.

7)  Pastikan pada model explorer akan tersimpan nama dan use case diagram yang telah dibuat.

8)  Jika telah selesai simpan file dengan cara pilih file  save as.