Makalah Psbo [PDF]

  • 0 0 0
  • Suka dengan makalah ini dan mengunduhnya? Anda bisa menerbitkan file PDF Anda sendiri secara online secara gratis dalam beberapa menit saja! Sign Up
File loading please wait...
Citation preview

SISTEM BERORIENTASI OBJEK (SBO) DAN UML (Unified Modeling Language)



MAKALAH PEMODELAN SISTEM BERBASIS OBJEK



Diajukan untuk memenuhi mata kuliah PSBO pada program Diploma Tiga (D .III)



1.Frasstio Agustin 2.M. Angga Mulya 3.Yozhua 4.Egy Satrio 5.Reza Okta Permana



(12118397) (18110236) (12119583) (12119027) (12119758)



Jurusan Manajemen Informatika Akademi Manajemen Informatika dan Komputer Bina Sarana Informatika (Dewi Sartika) 2013



KATA PENGANTAR Puji syukur kehadirat Tuhan Yang Maha Kuasa. karena atas rahmatNya penulis dapat menyelesaikan makalah ini tepat waktu. Makalah ini disusun untuk dapat melengkapi nilai mata kuliah PSBO. Makalah ini memuat berbagai macam informasi mengenai Sistem Berorientasi Objek dan UML. Dalam pembuatan makalah ini penulis mengucapkan terimakasih banyak kepada: 1) Bapak Ade Christiam selaku dosen pembimbing yang telah memberikan pengarahan kepada penulis dalam menyelesaikan makalah ini. 2) Rekan-rekan penulis yang sudah membantu. Penulis menyadari bahwa isi makalah ini masih mempunyai banyak kekurangan, untuk itu dengan segala kerendahan hati, penulis mengharapkan banyak kritik dan saran dari pembaca untuk perbaikan makalah ini. Semoga isi dari makalah ini dapat menambah wawasan serta menjadi bahan untuk introspeksi diri bagi pembaca.



Penulis Jakarta, Desember 2013



DAFTAR ISI Kata pengantar…………………………………………………………………………………………………. Daftar isi………………………………………………………………………………………………………….. BAB I PENDAHULUAN………………………………………………………………………………. 1.1 Latar Belakang…………………………………………………………………………………………….. 1.2 Tujuan………………………………………………………………………………………………………… 1.3 Rumusan Masalah………………………………………………………………………………………… BAB II PEMBAHASAN MASALAH…………………………………………………………………… 2.1 Deskripsi SBO dan UML………………………………………………………………………………….. 2.2 Karakteristik Objek dan Kelas Objek…………………………………………………………………. 2.3 Karakteristik Metode Berorientasi Objek………………………………………………………….. 2.4 Diagram UML………………………………………………………………………………………………… 2.5 Hubungan/Relationship…………………………………………………………………………………. 2.6 Langkah-langkah Penggunaan UML ………………………………………………………………… 2.7 Tools yang Mendukung UML …………………………………………………………………………. 2.8 Contoh Kasus…………………………………………………………………………………………………. BAB III PENUTUP…………………………………………………………………………………………. 3.1 Kesimpulan ………………………………………………………………………………………………… 3.2 Saran…………………………………………………………………………………………………………. Daftar Pustaka Lampiran



BAB I PENDAHULUAN 1.1



Latar Belakang



Saat ini piranti lunak semakin luas dan besar lingkupnya, sehingga tidak bisa lagi dibuat asal-asalan. Piranti lunak saat ini seharusnya dirancang dengan memperhatikan hal-hal seperti scalability, security, dan eksekusi yang robust walaupun dalam kondisi yang sulit. Selain itu arsitekturnya harus didefinisikan dengan jelas, agar bug mudah ditemukan dan diperbaiki, bahkan oleh orang lain selain programmer aslinya. Keuntungan lain dari perencanaan arsitektur yang matang adalah dimungkinkannya penggunaan kembali modul atau komponen untuk aplikasi piranti lunak lain yang membutuhkan fungsionalitas yang sama. Pemodelan (modeling) adalah proses merancang piranti lunak sebelum melakukan pengkodean (coding). Model piranti lunak dapat dianalogikan seperti pembuatan blueprint pada pembangunan gedung. Membuat model dari sebuah sistem yang kompleks sangatlah penting karena kita tidak dapat memahami sistem semacam itu secara menyeluruh. Semakin komplek sebuah sistem, semakin penting pula penggunaan teknik pemodelan yang baik. Dengan menggunakan model, diharapkan pengembangan piranti lunak dapat memenuhi semua kebutuhan pengguna dengan lengkap dan tepat, termasuk faktor-faktor seperti scalability, robustness, security, dan sebagainya. Untuk itulah penulis membuat makalah ini agar pembaca dapat memahami lebih dalam tentang sistem berorientasi objek khususnya dalam hal pemrograman.



1.2



Tujuan



Tujuan penulis melakukan penelitian adalah sebagai berikut: 1) Agar pembaca dapat memahami pengertian OOS (Objet Oriented System) atau Sistem Berorientasi Objek (SBO) dan juga UML (Unified Modeling Language) 2) Agar pembaca dapat mengetahui bagaimana mengaplikasikan konsep SBO secara langsung.



1.3



Rumusan Masalah



Masalah-masalah yang akan dibahas dalam makalah ini adalah sebagai berikut: 1) Apakah yang dimaksud SBO (Sistem Berorientasi Objek) dan UML? 2) Apa saja karakteristik Objek dan Kelas Objek? 3) Apa saja karakteristik Metodologi BO? 4) Apa saja diagram UML? 5) Apa saja hubungan UML? 6) Apa saja langkah-langkah penggunaan UML? 7) Apa saja tools yang mendukung UML?



BAB II PEMBAHASAN MASALAH 2.1



Pengertian



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. Unified Modeling Language (UML) adalah keluarga notasi grafis yang didukung oleh meta-model tunggal, yang membantu pendeskripsian dan desain sistem perangkat lunak, khususnya sistem yang dibangun menggunakan pemrograman berorientasi objek (OO). Definisi ini merupakan definisi yang sederhana. Pada kenyataannya, pendapat orang – orang tentang UML berbeda satu sama lain. Hal ini dikarenakan oleh sejarahnya sendiri dan oleh perbedaan persepsi tentang apa yang membuat sebuah proses rancang – bangun perangkat lunak efektif. Fowler (2004,p1). Unified Modeling Language (UML) merupakan strandar yang relatif terbuka yang dikontrol oleh Object Management Group (OMG), sebuah konsorsium terbuka yang terdiri dari banyak perusahaan. OMG dibentuk untuk membuat standar – standar yang mendukung interoperabilitas, khusunya interoperabilitas sistem berorientasi objek. OMG mungkin lebih dikenal dengan standar – standar COBRA (Common Object Request Broker Architecture). Fowler (2004,p1-2).



2.2



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. 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.



2.3



Metodologi Berorientasi Objek



Dalam dunia pemodelan, metodologi implementasi obyek walaupun terikat kaidah-kaidah standar, namun teknik pemilihan obyek tidak terlepas pada subyektifitas software analyst & designer. Beberapa obyek akan diabaikan dan beberapa obyek menjadi perhatian untuk diimplementasikan di dalam sistem. Hal ini sah-sah saja karena kenyataan bahwa suatu permasalahan sudah tentu memiliki lebih dari satu solusi. Ada 3 (tiga) teknik/konsep dasar dalam OOA/D, yaitu pemodulan (encapsulation), penurunan (inheritance) dan polymorphism. a. Pemodulan (Encapsulation) Pada dunia nyata, seorang ibu rumah tangga menanak nasi dengan menggunakan rice cooker, ibu tersebut menggunakannya hanya dengan menekan tombol. Tanpa harus tahu bagaimana proses itu sebenarnya terjadi. Disini terdapat penyembunyian informasi milik rice cooker, sehingga tidak perlu diketahui seorang ibu. Dengan demikian menanak nasi oleh si ibu menjadi sesuatu yang menjadi dasar bagi konsep information hiding. b. Penurunan (Inheritance) Obyek-obyek memiliki banyak persamaan, namun ada sedikit perbedan. Contoh dengan beberapa buah mobil yang mempunyai kegunaan yang berbeda-beda. Ada mobil bak terbuka seperti truk, bak tertutup seperti sedan dan minibus. Walaupun demikian obyek-obyek ini memiliki kesamaan yaitu teridentifikasi sebagai obyek mobil, obyek ini dapat dikatakan sebagai obyek induk (parent). Sedangkan minibus dikatakan sebagai obyek anak (child), hal ini juga berarti semua operasi yang berlaku pada mobil berlaku juga pada minibus. c. Polymorphism Pada obyek mobil, walaupun minibus dan truk merupakan jenis obyek mobil yang sama, namun memiliki juga perbedaan. Misalnya suara truk lebih keras dari pada minibus, hal ini juga berlaku pada obyek anak (child) melakukan metoda yang sama dengan algoritma berbeda dari obyek induknya. Hal ini yang disebut polymorphism, teknik atau konsep dasar lainnya adalah ruang lingkup / pembatasan. Artinya setiap obyek mempunyai ruang lingkup kelas, atribut, dan metoda yang dibatasi. d. Abstraksi Prinsip untuk merepresentasikan dunia nvata yang kompleks menjadi satu bentuk model yang sederhana dengan mengabaikan aspek-aspek lain yang tidak sesuai dengan permasalahan. e. Reusabilily Pemanfaatan kembali objek yang sudah didefinisikan untuk suatu permasalahan pada permasalahan lainnva yang melibatkan objek tersebut. f. Generalisasi dan Spesialisasi Menunjukkan hubungan antara kelas dan objek yang umum dengan kelas dan objek yang khusus. g. Komunikasi Antar Objek Komunikasi antar objek dilakukan lewat pesan (message) yang dikirim dan satu objek ke objek lainnya.



2.4



Diagram UML



Diagram adalah yang menggambarkan permasalahan maupun solusi dari permasalahan suatu model. UML mempunyai 9 diagram, yaitu: 1. 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 : a. Association, suatu hubungan antara bagian dari dua kelas yang terjadi jika salah satu bagian dari kelas mengetahui kelas yang lain dalam melakukan suatu kegiatan.. b.Aggregation, hubungan association dimana salah satu kelasnya merupakan bagian dari suatu kumpulan dan memiliki titik pusat yang mencakup keseluruhan bagian. c.Generalization, hubungan turunan dengan mengasumsikan satu kelas merupakan suatu kelas super dari kelas yang lain. 2.



3.



Diagram Package dan Object, merupakan kumpulan elemen – elemen logika ML yang bertujuan untuk mengelompokkan Diagramclass yang lebih kompleks.



4. Diagram Sequence, merupakan salah satu diagram Interaction yang menjelaskan bagaimana suatu operasi itu dilakukanyang diatur berdasarkan waktu.



2.5



5.



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



6.



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



7.



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



8.



Diagram Component adalah sebuah kode – kode modul yang merupakan fisik sebenarnya dari diagram Class.



9.



Diagram Deployment menerangkan bahwa konfigurasi fisik software dan hardware.



Hubungan/Relationship



Ada 4 macam hubungan dalam penggunaan UML, yaitu: Dependency, hubungan semantik antara dua objek yang mana sebuahobjek 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 yang menjamin adanya ikatan diantaranya yang diwujudkan diantara interface dan kelas atau elements, serta antarause cases dan collaborations.



2.6



Langkah-langkah menggunakan UML



Berikut ini adalah tips pengembangan piranti lunak dengan menggunakan UML: 1. Buatlah daftar business process dari level tertinggi untuk mendefinisikan aktivitas dan proses yang mungkin muncul. 2. Petakan use case untuk tiap business process untuk mendefinisikan dengan tepat fungsionalitas yang harus disediakan oleh sistem. Kemudian perhalus use case diagram dan lengkapi dengan requirement, constraints dan catatan-catatan lain. 3. Buatlah deployment diagram secara kasar untuk mendefinisikan arsitektur fisik sistem. 4. Definisikan requirement lain (non-fungsional, security dan sebagainya) yang juga harus disediakan oleh sistem. 5. Berdasarkan use case diagram, mulailah membuat activity diagram. 6. Definisikan objek-objek level atas (package atau domain) dan buatlah sequencedan/atau collaboration diagram untuk tiap alir pekerjaan. Jika sebuah use casememiliki kemungkinan alir normal dan error, buatlah satu diagram untuk masing-masing alir. 7. Buatlah rancangan user interface model yang menyediakan antarmuka bagi pengguna untuk menjalankan skenario use case. 8. Berdasarkan model-model yang sudah ada, buatlah class diagram. Setiap package ataudomain dipecah menjadi hirarki class lengkap dengan atribut dan metodanya. Akan lebih baik jika untuk setiap class dibuat unit test untuk menguji fungsionalitas class dan interaksi dengan class lain. 9. Setelah class diagram dibuat, kita dapat melihat kemungkinan pengelompokanclass menjadi komponen-komponen. Karena itu buatlah component diagram pada tahap ini. Juga, definisikan tes integrasi untuk setiap komponen meyakinkan ia berinteraksi dengan baik. 10. Perhalus deployment diagram yang sudah dibuat. Detilkan kemampuan danrequirement piranti lunak, sistem operasi, jaringan, dan sebagainya. Petakan komponen ke dalam node.



Mulailah membangun sistem. Ada dua pendekatan yang dapat digunakan : Pendekatan use case, dengan meng-assign setiap use case kepada tim pengembang tertentu untuk mengembangkan unit code yang lengkap dengan tes. Pendekatan komponen, yaitu meng-assign setiap komponen kepada tim pengembang tertentu. Lakukan uji modul dan uji integrasi serta perbaiki model berserta codenya. Model harus selalu sesuai dengan code yang aktual. Piranti lunak siap dirilis.



2.7



Tools yang mendukung UML



Saat ini banyak sekali tool pendesainan yang mendukung UML, baik itu tool komersial maupun opensource. Beberapa diantaranya adalah:  Rational Rose (www.rational.com)  Together (www.togethersoft.com)  Object Domain (www.objectdomain.com)  Jvision (www.object-insight.com)  Objecteering (www.objecteering.com)



 



MagicDraw (www.nomagic.com/magicdrawuml) Visual Object Modeller (www.visualobject.com)



2.8



Contoh Kasus



Adapun prosedur Proses pembuatan Daftar Data Pegawai dan Gaji pada sekolah “X” adalah sebagai berikut : 1. Proses Absensi Pegawai melakukan absensi harian melalui form daftar hadir pegawai. Berdasarkan form daftar hadir pegawai tersebut bagian Tata Usaha (TU) akan membuat Rekap Absen (RA) harian untuk diserahkan kepada Administrasi. 2. Proses Pemberian Rekap Biodata Pegawai (RBP) Pegawai memberikan data pribadi pegawai, data pendidikan, data keluarga yang dijadikan satu menjadi data pegawai kepada bagian Tata Usaha yang kemudian diarsipkan menjadi Rekap Biodata Pegawai (RBP). Lalu Rekap Biodata Pegawai (RBP) diserahkan kepada bagian administrasi untuk proses pengolahan Daftar Data Pegawai Dan Gaji (DDPG). 3. Proses Pengolahan Daftar Data Pegawai dan Gaji (DDPG) Setelah bagian administrasi menerima Rekap Biodata Pegawai (RBP) dan Rekap Absen (RA) akan mengolah kedua data tersebut untuk dibuatkan menjadi Daftar Data Pegawai dan Gaji (DDPG) yang kemudian diserahkan kepada Kepala Sekolah untuk ditanda tangani atau di Acc.



4. Proses Pembuatan Laporan Daftar Data Pegawai dan Gaji (DDPG) yang sudah diterima dan ditanda tangani oleh Kepala Sekolah akan diserahkan kembali kepada bagian Administrasi untuk dibuatkan Laporan Data Pegawai (LDP) dan Laporan Gaji Pegawai (LGP). Setelah bagian administrasi menerima Daftar Data Pegawai dan Gaji yang sudah di Acc akan membuatkan Laporan Data Pegawai (LDP) dan Laporan Gaji Pegawai (LGP) yang nantinya akan diserakan kepada Kepala Sekolah.selain itu bagian Administrasi akan membuatkan slip gaji untuk diserahkan kepada pegawai. SOAL 1. 2.



Rancanglah Use Case diagram System dari kasus diatas! Buat minimal 1 Activity diagram dari use case yg telah anda buat! (bukan use case Login)



Gambar Use Case Diagram system uc Use Case Model



Rekap Biodata Pegaw ai



Daftar Hadir



Staff T.U



Pegaw ai



Print Slip Gaj i



«include»



«include»



«include»



Pengolahan Data & Gaj i Pegaw ai



Bagian Administrasi



Laporan Kepala Sekolah



Laporan Data Pegaw ai



Laporan Gaj i Pegaw ai



Keterangan Aktor 1.



Pegawai : pegawai dapat melakukan daftar hadir langsung pada sistem aplikasi



2.



Staff TU : staff TU bertugas untuk melakukan rekap biodata pegawai, staff TU tidak perlu melakukan rekap daftar hadir karena sistem sudah secara otomatis menghasilkan rekap daftar hadir



3.



Bagian Administrasi : Bagian Administrasi dalam melakukan pengolahan data pegawai dan gaji (PDPG) memerlukan data rekap daftar hadir dan biodata pegawai. Setelah PDPG telah mendapatkan validasi/persetujuan dari kepala sekolah, bagisn administrasi baru dapat mencetak slip gaji pegawai. Selain itu tugas bagian administrasi juga harus membuat laporan yakni Laporan data Pegawai (LDP) dan Laporan gaji Pegawai (LGP)



4.



Kepala Sekolah : kepala sekolah dapat mengakses aplikasi Pengolahan Data Pegawai dan Gaji untuk melakukan proses validasi. Selain itu kepala sekolah juga dapat melihat Laporan Data Pegawai (LDP) dan laporan Gaji Pegawai (LDG).



Activity diagram Use case : rekap biodata pegawai act Activ ity Staff T.U



Petugas Menginput Data Pegaw ai



Sistem Aplikasi



Sistem Aplikasi Telah Dibuka



Sistem Menyimpan Data Pegaw ai ke Database



Sistem Otomatis Menyimpan Rekap Biodata Pegaw ai



BAB III PENUTUP 3.1 Kesimpulan Objek adalah model eksekusi. Sementara kelas adalah deskripsi statik dan objek yang mungkin lahir pada saat eksekusi. Pada saat eksekusi yang kita punva adalah objek, sementara dalam pemodelan (analisis dan perancangan) dan teks program yang kita lihat adalah kelas. Unified Modeling Language (UML) adalah bahasa pemodelan umum yang digunakan untuk melakukan spesifikasi, visualisasi, konstruksi dan dokumentasi artifak dari software system. UML bukanlah sebuah standar proses pengembangan dalam metode pengembangan sistem tertentu, namun pada umumnya UML dipakai dalam memodelkan sistem yang dibangun berbasiskan objek. Dengan menggunakan UML kita dapat membuat model untuk semua jenis aplikasi piranti lunak, dimana aplikasi tersebut dapat berjalan pada piranti keras, sistem operasi dan jaringan apapun, serta ditulis dalam bahasa pemrograman apapun.



3.2 Saran UML adalah suatu bahasa perancangan modern yang paling umum dipakai pada saat ini, dimana UML ini sering dikaitkan dengan bahasa pengembangan piranti lunak berbasis objek. Dengan menggunakan UML sebagai bahasa perancangan maka kita dapat membuat suatu rancangan piranti lunak yang dimana bahasa tersebut menyatukan berbagai praktik-praktik terbaik dalam permodelan, sehingga hasil rancangan kita dapat dimengerti secara umum dan universal. Dengan menggunakan UML, maka kita dapat berinteraksi lebih mudah dengan para perancang piranti lunak yang lain, karena kita memakai bahasa perancangan UML yang bersifat universal, dan diketahui oleh hampir semua perancang piranti lunak. Sehingga kita dapat saling bertukar pikiran atas rancangan yang kita buat dengan perancang lain, dan menghilangkan gap dalam perbedaan bahasa permodelan.



Daftar Pustaka wsilfi.staff.gunadarma.ac.id/Downloads/files/…/Pengenalan+UML.pdf erwinharianto.files.wordpress.com/2009/06/totolan-erwin-uml.doc http://id.wikipedia.org/wiki/UML http://www.gangsir.com/download/4PendekatanPengembanganSistemBerorientasiObjekdanPenggunaanAlatalatPemodelan.pdf http://www.scribd.com/doc/26601970/SISTEM-BERORIENTASI-OBJEK