Senin, 12 Desember 2011

Perbedaan Sistem Object Oriented dengan Sistem Terstruktur

Kata Pengantar
Puji syukur kami panjatkan kepada Allah swt, Tuhan Yang Maha Esa. Berkat Limpahan karunianya, kami dapat menyelesaikan penulisan makalah perbedaan sistem object oriented dengan sistem terstruktur

Landasan Teori
Pada pemrograman berorientasi objek atau yang biasa disebut OOP (Object-oriented Programming), memiliki keunggulan yaitu memberikan fleksibilitas yang lebih, kemudahan mengubah program, dan digunakan luas dalam teknik piranti lunak skala besar. Lebih jauh lagi, pendukung OOP mengklaim bahwa OOP lebih mudah dipelajari bagi pemula dibanding dengan pendekatan sebelumnya, dan pendekatan OOP lebih mudah dikembangkan dan dirawat.
          Sedangkan pada pemrograman terstruktur begitu terlihat bahwa pada pemrograman ini lebih unggul dalam melakukan pemrograman sederhana karena lebih efisien dan lebih murah dalam hal perawatannya tetapi permodelan ini lebih susah untuk dipahami oleh orang – orang selain pembuat program itu sendiri (contohnya ketika dilakukan tracing program ).

A.    Pengertian pemrograman berorientasi objek
Pemrograman berorientasi objek merupakan paradigma yang berorientasi kepada objek.semua data dan fungsi  didalam paradigma ini dibungkus dalam kelas-kelas atau objek-objek. Bandingkan dengan logika pemrograman terstruktur. Setiap objek dapat menerima pesan,memproses data, dan mengirim pesan ke objek lainnya.

B.    Pengertian Pemrograman Terstruktur

Pengertian program terstruktur adalah suatu proses untuk mengimplementasikan urutan langkah untuk menyelesaikan suatu masalaha dalam bentuk program. Selain pengertian diatas pemrograman terstruktur adalah suatu aktivitas pemrograman dengan memperhatikan urutan langkah-langkah perintah secara sistematis ,logis , dan tersusun berdasarkan algoritma yang sederhana dan mudah dipahami.
Prinsip dari pemrograman Terstruktur adalah jika suatu proses telah sampai pada suatu titik/langkah tertentu , maka proses selanjutnya tidak boleh mengeksekusi langkah sebelumnya/kembali lagi ke baris sebelumnya, kecuali pada langkah – langkah untuk proses berulang (Loop)


C. Dilihat dari pengertian di atas, pemrograman terstruktur memilki beberapa sifat – sifat seperti :
a.  Memuat teknik pemecahan masalah yang logis dan sistematis
b.  Memuat algoritma yang efisien, efektif dan sederhana
c.  Program disusun dengan logika yang mudah dipahami
d. Tidak menggunakan perintah GOTO
e.  Biaya pengujian program relatif rendah
f.  Memiliki dokumentasi yang baik
g.  Biaya perawatan dan dokumentasi yang dibutuhkan relatif rendah

D. Manfaat pemrograman terstruktur:
1.       Meningkatkan kehandalan program
2.       Program mudah dibaca dan ditelusuri
3.       Menyederhanakan kerumitan program 

Ciri-cirinya:                                                    
-      Gunakan rancangan pendekatan dari atas ke bawah ( Top-Down design)
-      Bagi program kedalam modul logika yang sejenis
-     Pada proses sejenis yang sering digunakan, gunakanlah sub program
-  Gunakan pengkodean terstruktur: IF..Then, DO..WHILE, REPEAT..UNTIL,   dan sebagainya
-    Hindarkan perintah GO TO bila tidak diperlukan
-    Buatlah dokumentasi yang akurat,efisien dan berarti

Contoh Bahasa Pemrograman Terstruktur:
1.     COBOL(Common Busines Oriented Language).
2.     FORTRAN(Formula Translator)
3.     BASIC(Beginner All Purpose Symbolic Interchange Code)
4.     Pascal(Dinamakan untuk menghormati Blaise Pascal)
5.     Ada (Dinamakan untuk menghormati Ada Lovelace)
6.     C

E. Sementara itu pemrograman berorientasi objek memliki beberapa keuntungan seperti :


1.maintenance; program lebih mudah dibaca dan dipahami, dan pemrograman berorientasi obyek mengontrol kerumitan program hanya dengan mengijinkan rincian yang dibutuhkan untuk programmer.

2.pengubahan program (berupa penambahan atau penghapusan fitur tertentu, perubahan yang dilakukan antara lain menyangkut penambahan dan penghapusan dalam suatu database program misalnya.


3.dapat digunakannya obyek-obyek sesering yang diinginkan, kita dapat menyimpan obyek-obyek yang yang dirancang dengan baik ke dalam sebuah tolkit rutin yang bermanfaat yang dapat disisipkan kedalam kode yang baru dengan sedikit perubahan atau tanpa perubahan pada kode tersebut.


Contoh bahasa pemrograman berorientasi objek:
2.   Java
3.   C++
6.   SIMULA
7.   Smalltalk

Kesimpulan

jadi, sangat jelas sekali bahwa pemrograman berorientasi objek sangat cocok sekali digunakan dalam kasus pembuatan software yang rumit dan kompleks karena memberikan berbagai kemudahan kepada pemrogram .
Sementara itu pemrograman tersektruktur unggul dalam melakukan pemrograman sederhana karena lebih efisien dan lebih murah dalam hal perawatannya tetapi permodelan ini lebih susah untuk dipahami oleh orang – orang selain pembuat program itu sendiri sedangkan OOP jauh lebih mudah dalam hal perawatannya.


Sumber :
          -http://lecturer.eepis-its.edu/~riyanto/oop1.pdf
          -http://id.wikipedia.org/wiki/Pemrograman_berorientasi_objek
          -http://wilantara.com/pemrograman/22-pemrograman-berorientasi-objek.html
          -http://www.ms-room.com/index.php?topic=3789.0


SIstem Terstruktur DFD dan ERD


Kata Pengantar

Puji syukur kami panjatkan kepada Allah swt, Tuhan Yang Maha Esa. Berkat Limpahan karunianya, kami dapat menyelesaikan penulisan makalah Sistem Terstruktur DFD dan ERD.

Landasan Teori

Suatu yang lazim bahwa ketika menggambarkan sebuah sistem kontekstual Data Flow Diagram yang akan pertama kali muncul adalah interaksi antara sistem dan entitas luar. DFD didisain untuk menunjukkan sebuah sistem yang terbagi-bagi menjadi suatu bagian sub-sistem yang lebih kecil adan untuk menggaris bawahi arus data antara kedua hal yang tersebut diatas. Diagram ini lalu dikembangkan untuk melihat lebih rinci sehingga dapat terlihat model-model yang terdapat di dalamnya.

A.Pengertian DFD


DFD (Data Flow Diagram) merupakan alat perancangan sistem yang berorientasi pada alur data dengan konsep dekomposisi dapat digunakan untuk penggambaran analisa maupun rancangan sistem yg mudah dikomunikasikan oleh profesional sistem kepada pemakai maupun pembuat program.

B.Tujuan DFD
Tujuan DFD adalah :
1. Memberikan indikasi mengenai bagaimana data ditransformasi pada saat data bergerak melalui sistem
2. Menggambarkan fungsi-fungsi(dan sub fungsi) yang mentransformasi aliran data.

C.Adapun simbol-simbol Data Flow Diagram :

1. Kesatuan Luar (External Entity)

Merupakan kesatuan luar (entity) dilingkungan luar sistem yang dapat berupa sekelompok orang, divisi, organisasi, atau sistem lainnya yang berada dilingkungan luarnya yang akan memberikan input atau menerima output dari sistem. Suatu kesatuan luar dapat disimbolkan dengan suatu notasi kotak atau segi empat.
https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgAlkJNHUKvibBRi3nR5ld1zZeWHTxJcnkouRJoMHwWqOVh1oAgGgktJlQOT4QP6Y0LJEY56-EnGPa0RftlmE7kW1cQxxMVyxQ-qpDrWil43AD71e-uvTmyj-TuUTNO891bn9jCoGezn1w/s200/4.jpg 
Gambar 1. External Entity

2. Proses
Adalah kegiatan atau kerja yang dilakukan oleh orang, mesin atau komputer dari hasil suatu arus data yang masuk dalam proses untuk dihasilkan arus data yang akan keluar dari proses atau untuk mengubah input menjadi output. Suatu proses dapat ditunjukkan dengan simbol lingkaran.
https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjXv57wTuuAdlJDkrukHFtFxms0_njg7Rn0HCcQSmvdqLlcHGHt8eTwX8x5VlKSRjEXPrwbScyoCXaiyWyTNkN9rAU_0NADiwCZNTLgtZripXDs6AevBiZue3LkpA9stLbzktGhgRUt2KI/s320/3.jpg
Gambar 2. Process


3. Data Flow (Aliran Data)
Data mengalir melalui sistem, dimulai dengan sebagian input dan diubah atau diproses menjadi output. Arus data (Data Flow) diberi simbol dengan suatu garis panah.
https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh7UiO2JLSz-1lFzI0dodDlwYlBIJwwQATRkZ7hRb2GCLc_F79rwaXHHVaGBYXku-8nFsi7lnieIPW9cWdPhEIUX0fieEqjg-uuuHy73axCKxyyQb7NBJDtWYU566rkDua7avaLyoEfI4g/s320/2.jpg
Gambar 3. Data Flow

4. Data Storage (Penyimpanan Data)
Data disimpan untuk keperluan berikutnya. Simpanan data di DFD disimbolkan dengan sepasang garis horisontal paralel yang tertutup di salah satu ujungnya.
https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEggxBXzhefdSUI1dNgHPxKGBnloHYNWkR7Pzl3_a5MH6uWhmIWQZMVUf0pIZ1Ueb4D8vbBdfS2_42v2GNJRHVKClI-qb7Zsr5KOZWaDAREZmL_bQfV2p5QWUyscTWyvW2aY46N3_A3aCvA/s320/1.jpg

Gambar 4. Data Storage


D.Syarat Pembuatan DFD :
1. Pemberian nama untuk tiap komponen DFD
2. Pemberian nomor pada komponen proses
3. Penggambaran DFD sesering mungkin agar enak dilihat
4. Penghindaran penggambaran DFD yang rumit
5. Pemastian DFD yang dibentuk itu konsiten secara logika


Ada 3 jenis DFD, yaitu ;
§  Context Diagram (CD)
§  DFD Fisik
§  DFD Logis

*Context Diagram (CD)
Jenis pertama Context Diagram, adalah data flow diagram tingkat atas (DFD Top Level), yaitu diagram yang paling tidak detail, dari sebuah sistem informasi yang menggambarkan aliran-aliran data ke dalam dan ke luar sistem dan ke dalam dan ke luar entitas-entitas eksternal. (CD menggambarkan sistem dalam satu lingkaran dan hubungan dengan entitas luar. Lingkaran tersebut menggambarkan keseluruhan proses dalam sistem).
Beberapa hal yang harus diperhatikan dalam menggambar CD;
§  Terminologi sistem :
-       Batas Sistem adalah batas antara “daerah kepentingan sistem”.
-       Lingkungan Sistem adalah segala sesuatu yang berhubungan atau mempengaruhi sistem tersebut.
-       Interface adalah aliran yang menghubungkan sebuah sistem dengan linkungan sistem tersebut.
§  Menggunakan satu simbol proses.
§  Nama/keterangan di simbol proses tersebut sesuai dengan fungsi sistem tersebut,
§  Antara Entitas Eksternal/Terminator tidak diperbolehkan komunikasi langsung
§  Jika terdapat termintor yang mempunyai banyak masukan dan keluaran, diperbolehkan untuk digambarkan lebih dari satu sehingga mencegah penggambaran yang terlalu rumit, dengan memberikan tanda asterik ( * ) atau garis silang ( # ).
§  Jika Terminator mewakili individu sebaiknya diwakili oleh peran yang dipermainkan personil tersebut.
§  Aliran data ke proses dan keluar sebagai output keterangan aliran data berbeda.

 * DFD Fisik
            Adalah representasi grafik dari sebuah sistem yang menunjukan entitas-entitas internal dan eksternal dari sistem tersebut, dan aliran-aliran data ke dalam dan keluar dari entitas-entitas tersebut. Entitas-entitas internal adalah personel, tempat, atau mesin (misalnya, sebuah komputer) dalam sistem tersebut yang mentransformasikan data. Maka DFD fisik tidak menunjukkan apa yang dilakukan, tetapi menunjukkan  dimana, bagaimana, dan oleh siapa proses-proses dalam sebuah sistem dilakukan.
Perlu diperhatikan didalam memberikan keterangan di lingkaran-lingkaran (simbol proses) dan aliran-aliran data (simbol aliran data) dalam DFD fisik menggunakan label/keterangan dari kata benda untuk menunjukan bagaimana sistem mentransmisikan data antara lingkaran-lingkaran tersebut.

* DFD Logis
            Adalah representasi grafik dari sebuah sistem yang menunjukkan proses-proses dalam sistem tersebut dan aliran-aliran data ke dalam dan ke luar dari proses-proses tersebut. Kita menggunakan DFD logis untuk membuat dokumentasi sebuah sistem informasi karena DFD logis dapat mewakili logika tersebut, yaitu apa yang dilakukan oleh sistem tersebut, tanpa perlu menspesifikasi dimana, bagaimana, dan oleh siapa proses-proses dalam sistem tersebut dilakukan.
            Keuntungan dari DFD logis dibandingkan dengan DFD fisik adalah dapat memusatkan perhatian pada fungsi-funsi yang dilakukan sistem.


E. Manfaat DFD
*Data Flow Diagram (DFD) adalah alat pembuatan model yang memungkinkan profesional sistem untuk menggambarkan sistem sebagai suatu jaringan proses fungsional yang dihubungkan satu sama lain
dengan alur data, baik secara manual maupun komputerisasi.

*DFD ini adalah salah satu alat pembuatan model yang sering digunakan, khususnya bila fungsi-fungsi sistem merupakan bagian yang lebih penting dan kompleks dari pada data yang dimanipulasi oleh sistem. Dengan kata lain, DFD adalah alat pembuatan model yang memberikan penekanan hanya pada fungsi sistem.
*DFD ini merupakan alat perancangan sistem yang berorientasi pada alur data dengan konsep dekomposisi dapat digunakan untuk penggambaran analisa maupun rancangan sistem yang mudah dikomunikasikan oleh profesional sistem kepada pemakai maupun pembuat program

F.Pengertian ERD

ERD(Entity Relationship Diagram) merupakan suatu model untuk menjelaskan hubungan antar data dalam basis data berdasarkan objek-objek dasar data yang mempunyai hubungan antar relasi.
ERD untuk memodelkan struktur data dan hubungan antar data, untuk menggambarkannya digunakan beberapa notasi dan simbol. Pada dasarnya ada tiga simbol yang digunakan, yaitu :
A.    Entiti
Entiti merupakan objek yang mewakili sesuatu yang nyata dan dapat dibedakan dari sesuatu yang lain (Fadli, 1999: 30). Simbol dari entiti ini biasanya digambarkan dengan persegi panjang.
B.    Atribut
Setiap entitas pasti mempunyai elemen yang disebut atribut yang berfungsi untuk mendeskripsikan karakteristik dari entitas tersebut. Isi dari atribut mempunyai sesuatu yang dapat mengidentifikasikan isi elemen satu dengan yang lain. Gambar atribut diwakili oleh simbol elips.
C.     Hubungan 
Hubungan antara sejumlah entitas yang berasal dari himpunan entitas yang berbeda. Relasi dapat digambarkan sebagai berikut :

1). Satu ke satu (One to one)
Hubungan relasi satu ke satu yaitu setiap entitas pada himpunan entitas A berhubungan paling banyak dengan satu entitas pada himpunan entitas B.

). Satu ke banyak (One to many)
Setiap entitas pada himpunan entitas A dapat berhubungan dengan banyak entitas pada himpunan entitas B, tetapi setiap entitas pada entitas B dapat berhubungan dengan satu entitas pada himpunan entitas A.

3). Banyak ke banyak (Many to many)
Setiap entitas pada himpunan entitas A dapat berhubungan dengan banyak entitas pada himpunan entitas B.


G.Tujuan ERD
Tujuan ERD adalah untuk menunjukkan objek data dan relationship yang ada pada objek tersebut.


H.Langkah Pembuatan ERD
*Menentukan Entity
*Menentukan Relasi
*Gambar ERD sementara
*Isi Kardinalitas (jumlah entity)
*Tentukan Primary Key
*Gambar ERD Berdasarkan Primary key
*Menentukan Attribut
*Pemetaan Attribut
*Gambar ERD dengan Attribut
*Periksa Hasil


I.Simbol-simbol ERD




Entitas : Suatu objek yang dapat di identifikasi dalam lingkungan pemakai.




Relasi : Menunjukan adanya hubungan diantara sejumlah entitas yang berbeda.







Atribut : Mendeskripsikan karakter entitas (atribut yang berfungsi sebagai key diberi garis bawah.


Garis : Sebagai penghubung antar relasi dengan entitas, relasi dan entitas dengan atribut


Kesimpulan

DFD mempunyai banyak persamaan dengan ERD, walau sebagian besar memiliki kemiripan, DFD biasanya lebih cendrung mengacu pada alur data sistem yang biasa digunakan untuk penggambaran analisa, sedangkan ERD itu lebih mengacu pada sistem database, serta menganalisis objek-objek yang biasanya memiliki hubungan antar relasi.



 Sumber

Pemrograman Berorientasi objek



 Kata Pengantar

Puji syukur kami panjatkan kepada Allah swt, Tuhan Yang Maha Esa. Berkat Limpahan karunianya, kami dapat menyelesaikan penulisan makalah Pemrograman Berorientasi Objek.


Landasan Teori

Object Oriented Programming merupakan sebuah konsep pemrograman, dengan kata lain yaitu cara berpikir tentang aplikasi yang mempelajari pemikiran bahwa aplikasi bukan sekedar prosedur melainkan sebagai object yang nyata. Objek yang dimaksud yaitu memiliki pengertian suatu modul yang mengkombinasikan antara data dan kode program yang bekerja sama dalam program yang mengalami proses satu sama lain.
Object oriented programming yang paling populer adalah java dan C++, tetapi visual basic pun sudah ikut menambahkan kemampuan ini sejak meluncurkan VB 4.0Dengan OOP setiap objek dapat menangani data, mendapatkan pesan, dan transfer pesan ke objek lainnya.
Pemrograman berorientasi objek telah mengambil arah yang berbeda, dan menekankan pada objek dan informasi. Dengan pemrograman berorientasi objek, masalah akan dipecah menjadi beberapa unit. Unit ini disebut objek. Dasar dari OOP adalah penekanan pada objek dan kelas.



Pembahasan

A.Pengertian dari Object Oriented Programming

Object Oriented Programming merupakan pengembangan suatu software yang didasarkan kepada interaksi objek dalam penyelesaian suatu proses. Interaksi tersebut mengambil form dari pesan-pesan dan mengirimkannya kembali antar objek tersebut, objek akan merespon pesan tersebut menjadi sebuah metode/tindakan.
Ada perdebatan tentang definisi yang tepat untuk diberikan kepada pemrograman berorientasi objek. Ada juga telah beberapa perdebatan tentang gagasan utama di balik konsep tersebut. Singkatnya, pemrograman berorientasi objek adalah teknik menulis teks aplikasi yang dibagi menjadi beberapa modul.
 Ada beberapa karakteristik umum yang ditemukan dibahasa pemrograman berorientasi objek. Yaitu pengelompokan data dan fungsi, pemisahan interface dengan implementasi, dan berbagai kode. Pada tingkat yang paling dasar, pemrograman berorientasi objek adalah metode yang berbeda untuk memecahkan masalah.


B. Sejarah pemrograman berorientasi objek

Dasar Pemrograman Berorientasi Objek dimulai pada awal 1960-an. Bahasa pemrograman pertama yang dirancang untuk tujuan menciptakan simulasi, dan dikembangkan oleh Kristen Nygaard dan Ole-Johan Dahl di Norwegia.
Istilah Pemrograman Berorientasi Objek pertama kali digunakan oleh Xerox PARC dalam bahasa pemrograman Smalltalk. Hal ini digunakan untuk merujuk kepada proses menggunakan benda sebagai dasar untuk perhitungan. Smalltalk terinspirasi oleh proyek 67simula.

Simula 67 adalah sistem inovatif yang telah mengilhami sejumlah besar bahasa pemrograman lain, dan beberapa diantaranya termasuk Pascal dan Lisp. Pada 1980-an, pemrograman berorientasi objek telah menonjol, dan faktor utama dalam hal ini adalah C++. Pemrograman berorientasi objek juga penting bagi pengembangan antarmuka pengguna grafis.


C. UML dalam pengembangan OOP

Penggunaan bahasa pemograman yang memiliki paradigma bahasa pemograman berbasiskan objek, dalam tahap awal perencanaan pengembangannya harus senantiasa melalui tahap pemodelan. Pemodelan dilakukan setidaknya dikarenakan mempertimbangkan beberapa faktor, yaitu:
  • Perlu adanya dokumentasi yang spesifik akan program, namun mudah dimengerti sebagai bahan pegangan oleh pengembang program maupun diskusi dengan client.
  • Pemodelan dilakukan sebagai upaya mereduksi kesalahan program sejak awal untuk menekan beban biaya dan waktu yang dibutuhkan.
  • Sebagai bahan evaluasi efektif dan efisien secara terus-menerus dalam upaya perampungan program yang akan di kembangkan.
UML mendeskripsikan OOP (Object Oriented Programming) dengan beberapa diagram, diantaranya:

Diagram struktur:
1. Diagram kelas
2. Diagram obyek
3. Diagram komponen
4. Diagram deployment

Diagram perilaku:
1. Diagram use-case
2. Diagram urutan/sekuen
3. Diagram kolaborasi
4. Diagram statechart
5. Diagram aktivitas


D.Masalah pemrograman berorientasi objek
 Ada sejumlah kesalahan yang dapat membuat programmer ketika mereka menggunakan bahasa pemrograman berorientasi objek. Salah satu contoh dari hal ini adalah melihat jenis objek bukannya keanggotaan itu adalah terkait dengan. Ketika ini terjadi, keuntungan dari polimorfisme dan pewarisan melemah. Ini hanyalah salah satu dari banyak masalah programmer mungkin menghadapi ketika mencoba untuk membuat sebuah aplikasi dengan pendekatan pemrograman berorientasi objek. Salah satu ciri dari OOP adalah bahwa ia mendukung apa yang disebut sentralitas kode. Kode sentralitas terhubung ke warisan. Banyak kritikus menunjukkan bahwa sentralitas kode membuat kode lebih mahal untuk menjaga.
Biaya yang terlibat dengan kode mempertahankan dapat menjadi tinggi dengan aplikasi besar yang terlibat. Jika ada masalah di tingkat yang lebih tinggi dari sistem, hal ini dapat menyebabkan masalah serius. Industri teknologi informasi adalah salah satu yang memiliki turn over tinggi, dan karyawan baru tidak akan begitu akrab dengan kode. Beberapa pengembang yang menjaga kelas tingkat yang lebih rendah telah dikenal untuk menghindari membuat perubahan dalam kode dalam rangka untuk memperbaiki bug. Ini pengembang dapat meminta orang lain untuk memperbaiki masalah. Namun, sentralitas kode dapat diperoleh dengan teknik yang aman. Hal lain yang banyak kritikus menunjukkan tentang OOP adalah bahwa daftar pilihan eksklusif mungkin tidak sesuai dengan perubahan yang terjadi dalam dunia nyata.



Kesimpulan

Pemrograman Berorientasi Objek mempunyai konsep yang tinggi di bidang  teknologi informasi, hal tersebut meliputi pembuatan program-program, khususnya bagi para pengguna grafis, dari sekian banyak bahasa yang mendukung OOP,pada saat ini OOP yang familiar digunakan adalah C++, java, dan Visual basic.



Sumber :