Saturday 29 October 2011

Sistem Berorientasi Objek dan UML

SISTEM BERORIENTASI OBJEK
    DAN UML










NAMA              : SAIFUL PAHMI
KELAS             : 1IA01
NPM                 : 56411556
PROG.STUDI  : TEKNIK INFORMATIKA


TEKNIK INFORMATIKA
UNIVERSITAS GUNADARMA 
2011



KATA PENGANTAR

Segala puji syukur saya panjatkan kehadirot tuhan yang maha esa atas rahmat dan bimbingan-Nya saya dapat menyusun makalah ini.
            Makalah ini merupakan panduan bagi para mahasiswa, untuk belajar dan mempelajari lebih lanjut tentang SISTEM BERORIENTASI OBJEK   ini. Yang bertujuan dapat menumbuhkan proses belajar mandiri, agar kreativitas dan penguasaan materi pelajaran optimal sesuai dengan yang di harapkan.
            Dengan adanya makalah ini di harapkan dapat membantu mahasiswa  dalam mengetahui tentang system berorientasi objek ini lebih dalam.
            Semoga makalah ini dapat bermanfaat dan senantiasa menjadi sahabat dalam belajar untuk meraih prestasi yang gemilang. Kritik dan saran dari bapak/ ibu dan juga teman-teman tetap saya harapkan guna perbaikan dan penyempurnaan untuk belajar ke depan.



                                                                                                                        Penyusun


                                                                                                                        ( penulis)




DAFTAR ISI

KATA PENGANTAR 
DAFTAR ISI
BAB I          PENDAHULUAN
A.     Latar Belakang
B.     Batasan dan Rumusan Masalah
C.     Tujuan Penulisan
BAB II         PEMBAHASAN
A.     Pengertian Orientasi Objek
B.     Karakteristik Objek dan Kelas Objek
C.     Metodelogi berorientasi objek
D.    Pemodelan berorientasi objek
E.     Struktur objek dan hierarki kelas
F.      Unifed Modeling Language (UML)
BAB III        PENUTUP
   KESIMPULAN
DAFTAR PUSTAKA


BAB I
PENDAHULUAN


       I.            LATAR BELAKANG
Sampai saat ini telah banyak literature sistem informasi yang membahas mengenai keunggulan metodologi berorientasi objek dalam berbagai aplikasi sistem informasi, termasuk didalamnya proses dalam melakukan analisis dan perancangan sistem informasi, bahkan dunia pemrogramanpun mulai beralih dari pendekatan terstruktur menjadi pendekatan objek.
Para pengembang sistem yang telah berpengalaman dalam menggunakan metodologi pengembangan sistem mengakui keunggulan dari metodologi ini, yaitu pemodelan menjadi lebih mudah dan lebih efisien karena dapat dipergunakan kembali (reusability), dan dapat mengintegrasikan berbagai aplikasi dari berbagai sumber (interoperability).
Walaupun metode ini masih terhitung baru, tetapi dalam perkembangannya metode ini telah banyak digunakan untuk kepentingan pembuatan program berbasis objek.
Melihat telah meluasnya program-program aplikasi maupun bahasa pemrograman yang berbasis objek dan pendekatan pengembangan sistem mempunyai hubungan yang erat dengan implementasi sistem yang diwujudkan di dalam bentuk pemrograman, sehingga dipandang perlu untuk memperkenalkan metode berorientasi objek dalam sistem informasi.


    II.            BATASAN DAN RUMUSAN MASALAH
Untuk membatasi permasalahan dalam penulisan maka pengenalan Metodologi berorientasi objek akan mengacu pada perancangan kembali data yang dibuat dalam bentuk Relasional Database atau yang biasa dikenal dengan model ER, Model resource Event dan Agent (REA) ke bentuk pendekatan objek. Sebagai contoh untuk pembahasan ini akan digunakan sistem penjualan sebagai modelnya.
Berdasarkan uraian sebelumnya terlihat bahwa hubungan antara pendekatan terstruktur dengan berorientasi objek ada perbedaan sehingga perlu ada penegasan antara persamaan dan perbedaan diantara pendekatan-pendekatan tersebut, yang akan diuraikan dalam cara migrasi dari pendekatan data ke model objek.

 III.            TUJUAN PENULISAN

Seperti yang telah diuraikan pada latar belakang maka tujuan penulisan paper ini adalah untuk memberikan gambaran ringkas mengenai aplikasi sistem informasii yang berorientasi objek dan bagaimana disain sistem informasi yang menggunakan model objek.

 

 BAB II

PEMBAHASAN

 

A.     Pengertian Orientasi Objek

 

Objek adalah kombinasi antara struktur data dan perilaku dalam satu entitas dan mempunyai nilai tertentu yang membedakan entitas tersebut. Pengertian berorientasi objek berarti pengorganisasian perangkat lunak sebagai kumpulan dari objek tertentu yang memiliki struktur data dan perilakunya. Konsep fundamental dalam analisis sistem berorientasi objek adalah objek itu sendiri.

B.     Karakteristik Objek dan Kelas Objek

Setiap objek mempunyai identitas yang dapat diukur dan memiliki nilai yang bertujuan untuk membedakan entitas antara satu objek dengan objek lain. Pada objek terdapat sifat konkrit yang melekat pada identitas objek tersebut yang berfungssi untuk membedakan setiap objek walaupun nilai atributnya hampir sama atau identik.

Objek yang terbagi dalam atribut, operasi, metode, hubungan, dan makna yang sama akan membentuk sebuah kelas yang merupakan wadah bagi objek yang dapat digunakan untuk menciptakan objek, atau dengan kata lain suatu kelas objek menggambarkan kumpulan dari objek yang mempunyai sifat (atribut), perilaku umum (operasi), relasi umum dengan objek lain dan semantik umum. Fungsi kelas objek adalah mengumpulkan data (atribut) dan perilaku (operasi) yang mempunyai struktur data sama ke dalam satu grup.

Objek
  • Identitas berarti bahwa data diukur mempunyai nilai tertentu yang membedakan entitas disebut Objek.
  • Objek dapat kongkrit, seperti halnya arsip dalam sistem, atau konseptual seperti kebijakan penjadualan dalam multiprocessing pada sistem operasi.
  •  Setiap objek mempunyai sifat yang melekat pada identitasnya.
  •  Dua objek dapat berbeda walaupun bila semua nilai atributnya


      Kelas Objek
  • Kelas merupakan gambaran sekumpulan Objek yang terbagi dalam atribut, operasi, metode, hubungan, dan makna yang sama.
  • Suatu kegiatan mengumpulkan data (atribut) dan perilaku (operasi) yang mempunyai struktur data sama ke dalam satu grup.
  • Kelas Objek merupakan wadah bagi Objek. Dapat digunakan untuk menciptakan Objek.
  • Objek mewakili fakta/keterangan dari sebuah kelas.

Beberapa istilah yang berhubungan dengan objek antara lain :

  • Atribut 

    Atribut menggambarkan data yang dapat memberikan informasi mengenai kelas atau objek dimana atribut tersebut berada.

1.      Metode


Metode adalah subprogram yang tergabung dalam objek bersama – sama dengan  atribut. Metode dipergunakan untuk pengaksesan terhadap data yang terdapat dalam objek tersebut. Sering juga disebut sebagai procedure atau function.


 


2.      Message


Message merupakan cara untuk berhubungan antara satu objek dengan objek lain dengan cara mengikirimkan pesan oleh suatu objek kepada objek tertentu.


 


3.      Operasi


Fungsi di dalam kelas yang dikombinasikan ke bentuk tingkah laku kelas suatu objek


Properti Objek
  1. Layanan (Service)
    • Metode atau operasi yang berfungsi untuk memanipulasi objek itu sendiri. 
    • Fungsi atau transformasi yang dapat dilakukan terhadap objek atau dilakukan   oleh objek. 
    •  Dapat berasal dari:

    • event
    • aktivitas atau aksi keadaan
    • fungsi
    • kelakuan dunia nyata
    Contoh: Read, Write, Move. Copy. Dan sebagainya.
    Klasifikasi Objek

    Objek dapat dibedakan menjadi:
    • ADT (Abstract Data Type), Definisi dan kelas dimana komponen type menjadi atribut dan fungsi primitif menjadi operasi/metode/lavanan.
    • Mesin ,Objek pasif yang punva status yang akan diaktifkan oleh objek lain. Fungsi primitif pada mesin merupakan mekanisme transisi yang mengubah suatu status ke status lain.
    • Proses, Objek aktif yang mempunvai urutan kendall’ (thread of control).

     

    C.     Metodologi Berorientasi Objek

          Dalam metodologi berorientasi objek terdapat tiga cara yang sering digunakan antara lain :
    1. Encapsulation(pengkapsulan)

    • Encapsulation merupakan dasar untuk pembatasan ruang lingkup program terhadap data yang diproses.
    • Data dan prosedur atau fungsi dikemas bersama-sama dalam suatu objek, sehingga prosedur atau fungsi lain dari luar tidak dapat mengaksesnya.
    • Data terlindung dari prosedur atau objek lain, kecuali prosedur yang berada dalam objek itu sendiri.

    2.   Inheritance(Pewarisan)

    • Inheritance adalah teknik yang menyatakan bahwa anak dari objek akan mewarisi data/atribut dan metode dari induknya langsung. Atribut dan metode dari objek dari objek induk diturunkan kepada anak objek, demikian seterusnya.
    • Inheritance mempunyai arti bahwa atribut dan operasi yang dimiliki bersama di antara kelas yang mempunyai hubungan secara hirarki.
    • Suatu kelas dapat ditentukan secara umum, kemudian ditentukan spesifik menjadi subkelas. Setiap subkelas mempunyai hubungan atau mewarisi semua sifat yang dimiliki oleh kelas induknya, dan ditambah dengan sifat unik yang dimilikinya.
    • Kelas Objek dapat didefinisikan atribut dan service dari kelas Objek lainnya.
    • Inheritance menggambarkan generalisasi sebuah kelas

    Contoh :

    • Sedan dan Sepeda Motor adalah subkelas dari Kendaraan Bermotor. 
    • Kedua subkelas mewarisi sifat yang dimiliki oleh Kendaraan Bermotor, yaitu mempunyai mesin dan dapat berjalan. 
    • Kedua subkelas mempunyai sifat masing-masing yang berbeda, misalnya jumlah  roda, dan kemampuan untuk berjalan mundur yang tidak dimiliki oleh sepeda motor.

     

          3.  Polymorphism(Polimorfisme)

    • Polimorfisme yaitu konsep yang menyatakan bahwa seuatu yang sama dapat mempunyai bentuk dan perilaku berbeda.
    • Polimorfisme mempunyai arti bahwa operasi yang sama mungkinmempunyai perbedaan dalam kelas yang berbeda.
    • Kemampuan objek-objek yang berbeda untuk melakukan metode yang pantas dalam merespon message yang sama.
    • Seleksi dari metode yang sesuai bergantung pada kelas yang seharusnya menciptakan Objek

    Keuntungan Metodologi Berorientasi Objek

    • Meningkatkan produktivitas,Karena kelas dan objek yang ditemukan dalam suatu masalah masih dapat dipakai ulang untuk masalah lainnva yang melibatkan objek tersebut (reusable). 
    • Kecepatan pengembangan,Karena sistem yang dibangun dengan baik dan benar pada saat analisis dan perancangan akan menyebabkan berkurangnva kesalahan pada saat pengkodean.  
    • Kemudahan pemeliharaan, Karena dengan model objek. pola-pola yang cenderung tetap dan stabil dapat dipisahkan dan pola-pola yang mungkin sering berubahubah. 
    • Adanva konsistensi,Karena sifat pewarisan dan penggunaan notasi yang sama pada saat analisis, perancangan maupun pengkodean. 
    • Meningkatkan kualitas perangkat lunak, Karena pendekatan pengembangan lebih dekat dengan dunia nvata dan adanva konsistensi pada saat pengembangannva, perangkat lunak yang dihasilkan akan mampu memenuhi kebutuhan pemakai serta mempunvai sedikit kesalahan.

    Beberapa Metode Berorientasi Objek
    Ada beberapa metode pengembangan perangkat lunak berorientasi objek yang sudah dikenal, dan diantaranva adalah:
    • Object Oriented Analysis (OOA) dan Object Oriented Design (OOD) dari Peter Coad dEdward Yourdon [1990].
    • Object Modeling Technique (OMT) dan James Rumbaugh, Michael Blaha, William Premerlan, Frederick Eddy dan William Lorensen [1991]  Object Oriented Software Engineering (OOSE) dan Ivar Jacobson [1992]
    • Booch Method dan Grady Booch [1994]
    • Sritrop dan Steve Cook dan John Daniels [1994].
    • UML (Unified Modeling Language) dari James Rumbaugh. Grady Booch dan Ivar Jacobson [1997].

       

      D. Pemodelan Berorientasi Objek

       

      Sebuah model objek menangkap struktur statis dari sistem dengan menggambarkan objek dalam system. Model berorientasi objek lebih mendekati keadaan nyata, dan dilengkapi dengan penyajian grafis dari sistem yang sangat bermanfaat untuk komunikasi dengan user dan pembuatan dokumentasi struktur dari sistem Dari sisi desain, pemodelan berorientasi objek menggunakan tiga macam model antara lain :


       

           1.    Model Objek

      Model objek yaitu menggambarkan struktur statis dari suatu objek dalam sistem dan relasinya yang berisi diagram objek yaitu suatugraph dimana node-nya adalah kelas yang mempunyai relasi antar kelas.



          2.    Model Dinamik

      Model dinamik yaitu menggambarkan aspek dari sistem yang berubah setiap saat yang dipergunakan untuk menyatakan aspek kontrol dari sistem yang berisi state diagram yaitu suatugraph dimananode-nya adalahstate danarc adalah tarnsisi antarasta te yang disebabkan oleh event.

       

          3.     Model Fungsional

      Model fungsional yaitu menggambrakan transformasi nilai data di dalam sistem yang flow diagram yaitu suatugraph dimananodenya menyatakan proses danarc-nya adalah aliran data.

       

      Untuk mempermudah dalam pemodelan abstrak dan pembuatan perancangan program maka digunakan diagram objek untuk melengkapi notasi grafik dalam pemodelan objek, kelas dan relasinya dengan yang lain.

       

      Perangkat Pemodelan
      • Perangkat pemodelan merupakan salah satu ciri pendekatan terstruktur.
      • Perangkat pemodelan adalah suatu model yang digunakan untuk menguraikan sistem menjadi bagian-bagian yang dapat diatur dan mengkomunikasikan ciri konseptual dan fungsional kepada pengamat.
      • Peran perangkat pemodelan:a.       Komunikasi
              Perangkat pemodelan dapat digunakan sebagai alat komunikasi antara pemakai dengan analis     
              sistem dalam pengembangan sistem.
        b.      Eksperimentasi
              Pengembangan sistem bersifat trial and error
        c.       Prediksi 
              Model meramalkan bagaimana suatu sistem akan bekerja

      Jenis Perangkat Pemodelan

      1. Diagram Arus Data (DFD), Menunjukkan proses yang dijalankan data dalam sistem
      2. Kamus Data, Definisi elemen data dalam sistem
      3. Entity Relationship Diagram (ERD), Model penyimpanan data dalam DFD
      4. State Transition Diagram (STD), Menunjukkan keadaan tertentu dimana suatu sistem dapat ada dan transisi yang  menghasilkan keadaan tertentu yang baru. STD digunakan untuk sistem yang real time.
      5. Unified Modelling Language (UML), Digunakan untuk pemrograman berorientasi objek

      E.   Struktur Objek dan Hirarki Kelas 

             Struktur kelas pada sistem berorientasi objek dibagi atas dua, yaituWhole– Part

      Structuredan Gen – Spec Structure. Pada Whole-Part Structure memperlihatkan hirarki dari suatu   kelas sebagai komponen dari kelas lain yang

       

       

       

       

      disebut juga sebagai sub objek. Contohnya, kelas Mobil adalahWhole dan komponennya Mesin, Rangka, dll merupakan Part1, Part 2, …, Partn. Sedangkan Gen – Spec Structure memperlihatkan kelas sebagai spesialisasi dari kelas di atasnya. Kelas yang mempunyai sifat umum disebutGeneral i zation,

       

      Superclassatau Topclass, sedangkan kelas yang mempunyai sifat khusus

      disebutSpecialization. Contohnya, kelas Mobil adalah Generalization, sedangkan Sedan, Truk, Minibus, dll merupakan Specizlization1, Specialization2, …, Specializationn, yaitu kelas yang mempunyai sifat khusus.

       

      UNIFIED MODELING LANGUAGE (UML)

       

      A.     Pendahuluan

      UML (Unified Modeling Language) adalah metode pemodelan (tools / model) secara visual sebagai sarana untuk merancang dan atau membuat software berorientasi objek dan memberikan standar penulisan sebuah sistem untuk pengembangan sebuah software yang dapat menyampaikan beberapa informasi untuk proses implementasi pengembangan software.


       


      Karena berorientasi objek maka semua elemen dan diagram berbasiskan pada paradigma object oriented, oleh karena itu UML dapat secara langsung dihubungkan ke berbagai bahasa pemograman atau bahkan dihubungkan secara langsung ke dalam sebuah object  oriented database.



       


       

      B.  Konsep Dasar UML 

      Untuk dapat mememahami UML diperlukan pemahaman tentang konsep bahasa pemodelan dan tiga      eleman utama UML.Tiga elemen utama UML antara lain:

      1. Buiding Bloks 

        Building bloks ini terdapat beberapa bagian

      • Benda / Things / Objek

        Objek merupakan bagian paling statik dari sebuah model, yang menjelaskan elemen – elemen lainnya dari sebuah konsep Bentuk dari beberapa objek: 

        • Classes, sekelompok dari object yang mempunyai atribute, operasi, dan hubungan yang semantik 

        • Interfaces, antar-muka yang menghubungkan dan melayani antarkelas dan atau elemen dan mendefinisikan sebuah kelompok dari spesifikasi pengoperasian 

        • Collaboration, interaksi dari sebuah kumpulan kelas – kelas atau  elemen – elemen yang bekerja secara bersama – sama. 

        • Use cases, pembentuk tingkah laku objek dalam sebuah model serta di realisasikan oleh sebuah coll aborati on. 

        • Nodes, bentuk fisik dari elemen – elemen yang ada pada saat dijalankannya sebuah system

        
      2.      Hubungan / Relationship

      Ada 4 macam hubungan dalam penggunaan UML, yaitu;

      • Dependency, hubungan semantik antara dua objek yang mana sebuah objek berubah mengakibatkan objek satunya akan berubah pula.

      • Association, hubungan antar benda secara struktural yang terhubung diantara objek dalam kesatuan objek.

      • Generalizations, hubungan khusus dalam objek anak yang menggantikan objek induk . dan memberikan pengaruhnya dalam hal struktur dan tingkah lakunya kepada objek induk

      • Realizations, hubungan semantik antarpengelompokkan yangmenjamin adanya ikatan diantaranya yang diwujudkan diantara interface dan kelas atau elements, serta antara use casesdan collaborations.

      3.      Bagan atau Diagrams

      Diagram adalah yang menggambarkan permasalahan maupun solusi dari permasalahan suatu model. UML mempunyai 9 diagram, yaitu;

      • Diagram Use Case, menggambarkan apa saja aktifitas yang dilakukan oleh suatu sistem dari sudut pandang pengamatan luar. Diagram Use Case berguna dalam tiga hal : 

        a)      Menjelaskan fasilitas yang ada (requirements) 

        b)      Komunikas dengan klien 

        c)      Membuat test dari kasus – kasus secara umum

      • Diagram Class, memberikan pandangan secara luas dari suatu sistem dengan menunjukan kelas – kelasnya dan hubungan mereka. Diagram Class mempunyai 3 macam relationalships (hubungan),sebagai berikut :

      • Association, suatu hubungan antara bagian dari dua kelas yang terjadi jika salah satu bagian dari kelas mengetahui kelas yang lain dalam melakukan suatu kegiatan..

      • Aggregation, hubungan association dimana salah satu kelasnya merupakan bagian dari suatu kumpulan dan memiliki titik pusat yang mencakup keseluruhan bagian.

         

      • Generalization, hubungan turunan dengan mengasumsikan satu kelas merupakan suatu kelas super dari kelas yang lain.

         

      • Diagram Package dan Object, merupakan kumpulan elemen – elemen logika UML yang bertujuan untuk mengelompokkan Diagram class yang lebih kompleks.

         

      • Diagram Sequence, merupakan salah satu diagram Intera ction yang menjelaskan bagaimana suatu operasi itu dilakukan yang diatur berdasarkan waktu.

         

      • Diagram Collaboration juga merupakan diagramInteraction berfungsi membawa informasi yang sama dengan diagram Sequence, tetapi lebih memusatkan atau memfokuskan pada kegiatan obyek dari waktu informasi itu dikirimkan.

         

      • Diagram State Chart merupakan indikator yang menunjukan kemungkinan dari keadaan obyek dan proses yang menyebabkan perubahan pada keadaannya.

         

      • Diagram Activity, menunjukkan bagaimana aktifitas – aktifitas tersebut bergantung satu sama lain. dan berfokus pada aktifitas – aktifitas yang terjadi yang terkait dalam suatu proses tunggal.

         

      • Diagram Component adalah sebuah kode – kode modul yang merupakan fisik sebenarnya dari diagramClass.

         

      • Diagram Deployment menerangkan bahwa konfigurasi fisiksoftware dan hardware.


      BAB III
      PENUTUP

      A.     KESIMPULAN
      • Rekayasa perangkat lunak beroriantasi objek semuanya berkenaan dengan obje  Objek adalah “ benda “ nyata yang ada di sekeliling kita baik secara fisik ataupun konseptual
      • Bagian dalam suatu objek tersembunyi dari pihak luar. Satu satunya jalan memasuki suatu objek melalui antar muka yang dimiliki objek tersebut
      • Suatu objek dapat menggunakan objek yang lain melalui pesan
      •  Kelas adalah cetak biru untuk objek sejenis.Karakteristik suatu kelas dapat diberikan kepada kelas yang lain melalui pewarisan
      •  Suatu objek dapat dibangun oleh dua atau lebih objek yang lain, proses ini disebut agregasi Secara umum rekayasa perangkat lunak berorientasi objek unggul dari paradigma rekayasa perangkat lunak yang lain



      DAFTAR PUSTAKA



       
      readmore »»