kelompok 5 new

22
APSI “Pemograman Berorientasi Objek” OLEH KELOMPOK 5 : ANNISYAH JANUARTI (E1E1 13 004) USWATUN HASANAH (E1E1 13 0 MUH. SHOLEH (E1E1 13 060 RISWAN M. RIZAL (E1E1 13 0 RIDWAN BOKI (E1E1 1

Upload: kadek-edy-sutrawan

Post on 05-Nov-2015

228 views

Category:

Documents


4 download

DESCRIPTION

uml

TRANSCRIPT

APSI

Pemograman Berorientasi ObjekOLEH KELOMPOK 5 :

ANNISYAH JANUARTI (E1E1 13 004)USWATUN HASANAH (E1E1 13 0MUH. SHOLEH (E1E1 13 060RISWAN M. RIZAL (E1E1 13 0RIDWAN BOKI (E1E1 1FAKULTAS TEKNIK JURUSAN INFORMATIKA

UNIVERSITAS HALU OLEO

KENDARI

2015

BAB I

PENDAHULUAN

1.1 Latar Belakang

UML adalah bahasa spesifikasi standar untuk mendokumentasikan, menspesifikasikan, dan membangun sistem perangkat lunak.

Unified Modeling Language (UML) adalah himpunan struktur dan teknik untuk pemodelan desain program berorientasi objek (OOP) serta aplikasinya. UML adalah metodologi untuk mengembangkan sistem OOP dan sekelompok perangkat tool untuk mendukung pengembangan sistem tersebut. UML mulai diperkenalkan oleh Object Management Group, sebuah organisasi yang telah mengembangkan model, teknologi, dan standar OOP sejak tahun 1980-an. Sekarang UML sudah mulai banyak digunakan oleh para praktisi OOP. UML merupakan dasar bagi perangkat (tool) desain berorientasi objek dari IBM.UML adalah suatu bahasa yang digunakan untuk menentukan, memvisualisasikan, membangun, dan mendokumentasikan suatu sistem informasi. UML dikembangkan sebagai suatu alat untuk analisis dan desain berorientasi objek oleh Grady Booch, Jim Rumbaugh, dan Ivar Jacobson. Namun demikian UML dapat digunakan untuk memahami dan mendokumentasikan setiap sistem informasi. Penggunaan UML dalam industri terus meningkat. Ini merupakan standar terbuka yang menjadikannya sebagai bahasa pemodelan yang umum dalam industri peranti lunak dan pengembangan sistem.

2.1 TujuanAdapun tujuan dari modul ini yaitu menjelaskan UML dan sistem orientasi objek agar dapat di mengerti kegunaan dan fungsi dari UML dan Pemrograman berorientasi objek.

BAB II

PEBAHASAN

2.1 Pemrograman Beriorentasi Objek

Pemrograman Berorientasi Objek (Object Oriented Programming/OOP) merupakan pemrograman yang berorientasikan kepada objek, dimana semua data dan fungsi dibungkus dalam class-class atau object-object.

Masing-masing object harus berisikan informasi mengenai dirinya sendiri dan dapat dihubungkan dengan Object yang lain. Pemrograman berorientasi objek berbeda dengan pemrograman prosedural yang hanya menggunakan satu halaman kebawah untuk mengerjakan banyak perintah atau statement.a. AttributeAtribut dari sebuah kelas adalah variabel global yang dimiliki sebuah kelas, Atribut dapat memiliki hak akses private, public maupun protected.

Atribut juga biasa disebut state/ properties/ field merupakan bagian yang dimiliki oleh sebuah class yang tidak melakukan operasi, tetapi kepadanya dilakukan operasi sehingga dapat merubah nilai dari attribute tersebut.

b. Method

Method adalah fungsi atau prosedur yang dibuat oleh seorang programmer didalam suatu Class. Dengan kata lain, method pada sebuah kelas hampir sama dengan fungsi atau prosedur pada pemrograman prosedural.Pada sebuah method di dalam sebuah kelas juga memiliki izin akses seperti halnya atribut pada kelas, izin akses itu antara lain private, public dan protected yang memiliki arti sama pada izin akses atribut.

c. Class

Class merupakan model yang berisi kumpulan attribute dan method dalam suatu unit untuk suatu tujuan tertentu. Method dalam sebuah class dapat merubah attribute yang dimiliki oleh class tersebut. Sebuah class merupakan dasar dari modularitas dan struktur dalam pemrograman berorientasi object.

Class didefinisikan sebagai sebuah blueprint(denah), atau prototipe, yang mendefiniskan variabel-variabel dan metode-metode yang umum untuk semua objek dari n jenis tertentu (n maksudnya jumlah tertentu). Sebuah kelas menyerupai sebuah struktur yang merupakan tipe data sendiri, misalkan tipe data titik yang terdiri dari koordinat x dan y.d. Object

Object merupakan perwujudan dari class, setiap object akan mempunyai attribute dan method yang dimiliki oleh class-nya, contohnya: amir, ahmad, yani merupakan object dari class manusia. Setiap object dapat berinteraksi dengan object lainnya meskipun berasal dari class yang berbeda.

Object merupakan sesuatu yang memiliki identitas (nama), pada umumnya juga memiliki data tentang dirinya maupun object lain dan mempunyai kemampuan untuk melakukan sesuatu dan bisa bekerja sama dengan objek lainnya.

Konsep-konsep dalam OOP/PBO :

Abstraction

Adalah suatu cara untuk melihat suatu object dalam bentuk yang lebih sederhana. Sebagai contoh kita tidak melihat sebuah mobil sebagai ribuan komponen elektronik, sistem mekanik dengan empat buah ban, jok, stir kemudi dan sebagainya. Dengan Abstraction, suatu sistem yang kompleks dapat dipandang sebagai kumpulan subsistem-subsistem yang lebih sederhana, seperti halnya mobil merupakan suatu sistem yang terdiri atas berbagai subsistem, seperti subsistem kemudi, subsistem pengereman dan sebagainya. Encapsulation

Merupakan suatu mekanisme untuk menyembunyikan atau memproteksi suatu proses dari kemungkinan interferensi atau penyalahgunaan dari luar sistem dan sekaligus menyederhanakan penggunaan sistem tersebut.Memastikan pengguna sebuah objek tidak dapat mengganti keadaan dalam dari sebuah objek dengan cara yang tidak layak. Hanya metode dalam objek tersebut yang diberi ijin untuk mengakses keadaannya. Setiap objek mengakses interface yang menyebutkan bagaimana objek lainnya dapat berinteraksi dengannya. Objek lainnya tidak akan mengetahui dan tergantung kepada representasi dalam objek tersebut.

Inheritance

Merupakan konsep mewariskan attribute dan method yang dimiliki oleh sebuah class kepada class turunannya. Dengan konsep ini class yang dibuat cukup mendefinisikan attribute dan method yang spesifik didalamnya, sedangkan attribute dan method yang lebih umum akan didapatkan dari class yang menjadi induknya. PolymorphismMerupakan konsep yang memungkinkan digunakannya suatu interface yang sama untuk memerintah suatu object agar melakukan suatu tindakan yang mungkin secara prinsip sama tetapi secara proses berbeda.Polimorfisme melalui pengiriman pesan. Tidak bergantung kepada pemanggilan subrutin, bahasa orientasi objek dapat mengirim pesan, dengan metode tertentu yang berhubungan dengan sebuah pengiriman pesan tergantung kepada objek tertentu di mana pesan tersebut dikirim.2.2 UMLa. Sejarah UMLPada Oktober 1994, Dr. James Rumbaugh bergabung dengan Perusahaan Rational software, 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). 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 instrumentDari 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 :

1. Use case diagram

2. Activity diagram

3. Sequence diagram 4. Collaboration diagram

5. Class diagram

6. Statechart diagram

7. Component diagram

8. Deployment diagram

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.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.b. Definisi UML (Unified Modeling Language)UML (Unified Modeling Language) adalah sebuah bahasa yang berdasarkan grafik/gambar untuk memvisualisasi, menspesifikasikan, membangun, dan pendokumentasian dari sebuah sistem pengembangan software berbasis OO (Object-Oriented). UML tidak hanya merupakan sebuah bahasa pemograman visual saja, namun juga dapat secara langsung dihubungkan ke berbagai bahasa pemograman, seperti JAVA, C++, Visual Basic, atau bahkan dihubungkan secara langsung ke dalam sebuah object-oriented database.2.3 Bagian-Bagian UMLBagian-bagian utama dari UML adalah view, diagram, model element, dan general mechanism.

1. ViewViewdigunakan untuk melihat sistem yang dimodelkan dari beberapa aspek yang berbeda.Viewbukan melihat grafik, tapi merupakan suatu abstraksi yang berisi sejumlah diagram. Beberapa jenisviewdalam UML antara lain : use case view, logical view, component view, concurrency view, dandeployment view.

a. Use case View mendeskripsikan fungsionalitas sistem yang seharusnya dilakukan sesuai yang diinginkanexternal actors.b. Logical View mendeskripsikan bagaimana fungsionalitas dari sistem, struktur statis (class, object, dan relationship) dan kolaborasi dinamis yang terjadi ketikaobjectmengirim pesan keobjectlain dalam suatu fungsi tertentu.c. Component View mendeskripsikan implementasi dan ketergantungan modul. d. Concurrency View membagi sistem ke dalam proses dan prosesor. e. Deployment View mendeskripsikan fisik dari sistem seperti komputer dan perangkat (nodes) dan bagaimana hubungannya dengan yang lain.2. DIAGRAMa. Use Case DiagramUse case adalah abstraksi dari interaksi antara system dan actor.

Gambar 2.3.1 Use Case DiagramDiagram Use Case berguna dalam tiga hal :

Menjelaskan fasilitas yang ada (requirements). Use Case baru selalu menghasilkan fasilitas baru ketika sistem di analisa, dan design menjadi lebih jelas. Komunikasi dengan klien. Penggunaan notasi dan simbol dalam diagram Use Case membuat pengembang lebih mudah berkomunikasi dengan klien-kliennya. Membuat test dari kasus-kasus secara umum. Kumpulan dari kejadian-kejadian untuk Use Case bisa dilakukan test kasus layak untuk kejadian-kejadian tersebut.

b. Activity DiagramPada dasarnya diagram Activity sering digunakan oleh flowchart. Diagram ini berhubungan dengan diagram Statechart. Diagram Statechart berfokus pada obyek yang dalam suatu proses (atau proses menjadi suatu obyek), diagram Activity berfokus pada aktifitas-aktifitas yang terjadi yang terkait dalam suatu proses tunggal.Contoh Diagram Activity Pengambilan Uang melalui ATM :

Gambar 2.3.2 Activity Diagramc. Sequence DiagramDiagram Class dan diagram Object merupakan suatu gambaran model statis. Namun ada juga yang bersifat dinamis, seperti Diagram Interaction. Diagram sequence merupakan salah satu diagram Interaction yang menjelaskan bagaimana suatu operasi itu dilakukan; message (pesan) apa yang dikirim dan kapan pelaksanaannya. Diagram ini diatur berdasarkan waktu.

Contoh diagram Sequence untuk pembuatan Hotel Reservation.

Gambar 2.3.3 Sequence Diagramd. Communication Diagram (Collaboration diagram in versi 1.x)Collaboration diagram menggambarkan interaksi antar objek seperti sequence diagram, tetapi lebih menekankan pada peran masing-masing objek. Setiap message memiliki sequence number, di mana message dari level tertinggi memiliki nomor 1. Messages dari level yang sama memiliki prefiks yang sama.

Contoh Diagram Collaboration Pemesanan kamar di Hotel.

Gambar 2.3.4 Communication Diagrame. Class DiagramClass adalah sebuah spesifikasi yang jika diinstansiasi akan menghasilkan sebuah objek dan merupakan inti dari pengembangan dan desain berorientasi objek. Class menggambarkan keadaan (atribut/properti) suatu sistem, sekaligus menawarkan layanan untuk memanipulasi keadaan tersebut (metoda/fungsi). Class memiliki tiga area pokok :

1. Nama (dan stereotype)

2. Atribut

3. MetodaContoh class diagram pada sistem ATM

Gambar 2.3.5 Class DiagramHubungan Antar Class :1. Asosiasi, yaitu hubungan statis antar class .2. Agregasi, yaitu hubungan yang menyatakan bagian (terdiri atas..).3. Pewarisan, yaitu hubungan hirarkis antar class .

4. Hubungan dinamis, yaitu rangkaian pesan ( message ) yang di-passing dari satu class kepada class lain. f. State Machine Diagram (Statechart diagram in versi 1.x)Statechart diagram menggambarkan transisi dan perubahan keadaan (dari satu state ke state lainnya) suatu objek pada sistem sebagai akibat daristimuli yang diterima. Pada umumnya statechart diagram menggambarkan class tertentu (1 class dapat memiliki lebih dari satu statechart diagram ).

Gambar 2.3.6 State Machine Diagram (in versi 1.x)g. Component DiagramComponent diagram menggambarkan struktur dan hubungan antar komponen piranti lunak, termasuk ketergantungan ( dependency ) di antaranya. Komponen dapat juga berupa interface , yaitu kumpulan layanan yang disediakan sebuah komponen untuk komponen lain.

Gambar 2.3.7 Component Diagramh. Deployment DiagramDeployment/physical diagram menggambarkan detail bagaimana komponen di-deploy dalam infrastruktur sistem, di mana komponen akan terletak (pada mesin, server atau piranti keras apa), bagaimana kemampuan jaringan pada lokasi tersebut, spesifikasi server, dan hal-hal lain yang bersifat fisikal Sebuah node adalah server, workstation , atau piranti keras lain yang digunakan untuk men- deploy komponen dalam lingkungan sebenarnya. Hubungan antar node (misalnya TCP/IP) dan requirement dapat juga didefinisikan dalam diagram ini.

Gambar 2.3.8 Deployment Diagrami. Composite Structure DiagramDiagram struktur komposit adalah diagram yang menunjukkan struktur internal classifier, termasuk poin interaksinya ke bagian lain dari sistem. Hal ini menunjukkan konfigurasi dan hubungan bagian, yang bersama-sama melakukan perilaku classifie. Diagram struktur komposit merupakan jenis diagram struktur statis dalam Unified Modeling Language (UML), yang menggambarkan struktur internal kelas dan kolaborasi.

Struktur komposit dapat digunakan untuk menjelaskan :

- Struktur dari bagian-bagian yang saling berkaitan

- Run-time struktur yang saling berhubunganContoh : Deskripsi dari bagian-bagian mesin yang saling berhubungan untuk melakukan fungsi mesin.

Gambar 2.3.9 Composite Structure Diagramj. Interaction Overview DiagramInteraction Overview Diagram adalah pencangkokan secara bersama antara activity diagram dengan sequence diagram. Interaction Overview Diagram dapat dianggap sebagai activity diagram dimana semua aktivitas diganti dengan sedikit sequence diagram, atau bisa juga dianggap sebagai sequence diagram yang dirincikan dengan notasi activity diagram yang digunakan untuk menunjukkan aliran pengawasan.

Gambar 2.3.10 Interaction Overview Diagramk. Object DiagramObject diagram merupakan sebuah gambaran tentang objek-objek dalam sebuah sistem pada satu titik waktu. Karena lebih menonjolkan perintah-perintah 29 daripada class, object diagram lebih sering disebut sebagai sebuah diagram perintah.

Gambar 2.3.11 Object Diagraml. Package DiagramDiagram objek melengkapi notasi grafik untuk pemodelan objek, kelas dan relasinya dengan yang lain. Diagram objek bermanfaat untuk pemodelan abstrak dan membuat perancangan program.Contoh Diagram Package.

Gambar 2.3.12 Package DiagramAda jenis khusus dari diagram Class yaitu diagram Object. Kegunaannya untuk penjelasan yang sedikit dengan relasi yang sulit, khususnya relasi rekursif. Lihat gambar dibawah, diagram Class kecil menunjukkan bahwa department dapat mengandung banyak department yang lain.

Class yang relasinya rekursif.

Gambar 2.3.13 Other Class Diagram m. Timing DiagramTiming Diagram adalah bentuk lain dari interaction diagram, dimana fokus utamanya lebih ke waktu. Timing diagram sangat berdaya guna dalam menunjukkan faktor pembatas waktu diantara perubahan state pada objek yang berbeda.

Gambar 2.3.14 Timing Diagram2.4 Tujuan Penggunaan UML1. Memberikan bahasa pemodelan yang bebas dari berbagai bahas pemrograman dan proses rekayasa.

2. Menyatukan praktek-praktek terbaik yang terdapat dalam pemodelan.

3. Memberikan model yang siap pakai, bahsa pemodelan visual yang ekspresif untuk mengembangkan dan saling menukar model dengan mudah dan dimengerti secara umum.

4. UML bisa juga berfungsi sebagai sebuah (blue print) cetak biru karena sangat lengkap dan detail. Dengan cetak biru ini maka akan bias diketahui informasi secara detail tentang coding program atau bahkan membaca program dan menginterpretasikan kembali ke dalam bentuk diagram (reserve enginering).BAB III

KESIMPULAN DAN SARAN

KESIMPULAN

Jadi baik UML (unified modeling language) dan PBO (pemrograman berorientasi objek) itu sangat membantu dalam pembuatan sketsa atau blue print dari sebuah proyek. Dengan UML dan PBO itu bisa lebih efisien dibidang waktu dsb.

SARAN

Semoga di masa depan akan ada UML atau PBO yang lebih mutakhir lagi. Sehingga dapat mempermudah pekerjaan kita.DAFTAR PUSTAKA

https://mustainronggolawe.wordpress.com/2013/11/01/sistem-berorientasi-objek-uml/http://arditoadi.blogspot.com/2012/01/makalah-sistem-orientasi-objek.htmlhttp://arditoadi.blogspot.com/2012/01/makalah-sistem-orientasi-objek.htmlhttp://ervinanto.blogspot.com/2011/12/sistem-berorientasi-objek-dan-uml.htmlhttp://mgmppaismkpurbalingga.blogspot.com/2012/05/cara-membuat-modul-pembelajaran.htmlhttp://ammidiana.blogspot.com/2011/11/sistem-berorientasi-objek.html