Archive for the ‘Uncategorized’ Category

IT Forensics

 

What(Apa yang dimaksud IT Forensic)

Forensik IT atau mungkin dikenal dengan computer forensic adalah suatu disipln ilmu turunan keamanan komputer yang membahas tentang temuan bukti digital setelah suatu peristiwa terjadi. Kegiatan forensic computer ini sendiri mencakup proses identifikasi, memelihara, menganalisa, dan mempergunakan bukti digital menurut hukum yang berlaku.

Menurut para ahli, definisi forensic IT diantaranya:

  • Menurut Noblett, yaitu berperan untuk mengambil, menjaga, mengembalikan, dan menyajikan data yang telah diproses secara elektronik dan disimpan di media komputer.
  • Menurut Judd Robin, yaitu penerapan secara sederhana dari penyidikan komputer dan teknik analisisnya untuk menentukan bukti-bukti hukum yang mungkin.
  • Menurut Ruby Alamsyah (salah seorang ahli forensik IT Indonesia), digital forensik atau terkadang disebut komputer forensik adalah ilmu yang menganalisa barang bukti digital sehingga dapat dipertanggungjawabkan di pengadilan. Barang bukti digital tersebut termasuk handphone, notebook, server, alat teknologi apapun yang mempunyai media penyimpanan dan bisa dianalisa.

WHY ( Mengapa IT Forensic dibutuhkan)

Penggunaan IT Forensic memiliki beberapa tujuan antara lain :

  • Mendapatkan fakta-fakta obyektif dari sebuah insiden / pelanggaran keamanan sistem informasi. Fakta-fakta tersebut setelah diverifikasi akan menjadi bukti-bukti (evidence) yang akan digunakan dalam proses hukum.
  • Mengamankan dan menganalisa bukti digital. Dari data yang diperoleh melalui survey oleh FBI dan The Computer Security Institute, pada tahun 1999 mengatakan bahwa 51% responden mengakui bahwa mereka telah menderita kerugian terutama dalam bidang finansial akibat kejahatan komputer. Kejahatan Komputer dibagi menjadi dua, yaitu :
    1. Komputer fraud : kejahatan atau pelanggaran dari segi sistem organisasi komputer.
    2. Komputer crime: kegiatan berbahaya dimana menggunakan media komputer dalam melakukan pelanggaran hukum.

Sedangkan alasan menggunakan IT Forensik antara lain :

  • Dalam kasus hukum, teknik komputer forensik sering digunakan untuk menganalisis sistem komputer milik terdakwa (dalam kasus pidana) atau milik penggugat (dalam kasus perdata).
  • Untuk memulihkan data jika terjadi kegagalan atau kesalahanhardware atau software.
  • Untuk menganalisa sebuah sistem komputer setelah terjadi perampokan, misalnya untuk menentukan bagaimana penyerang memperoleh akses dan apa yang penyerang itu lakukan.
  • Untuk mengumpulkan bukti untuk melawan seorang karyawan yang ingin diberhentikan oleh organisasi.
  • Untuk mendapatkan informasi tentang bagaimana sistem komputer bekerja untuk tujuan debugging, optimasi kinerja, ataureverse-engineering.

WHEN ( Kapan IT Forensik digunakan )

Pada tahun 2002 diperkirakan terdapat sekitar 544 juta orang terkoneksi secara online. Meningkatnya populasi orang yang terkoneksi dengan internet akan menjadi peluang bagi munculnya kejahatan komputer dengan beragam variasi kejahatannya. Dalam hal ini terdapat sejumlah tendensi dari munculnya berbagai gejala kejahatan komputer, antara lain:

  1. Permasalahan finansial. Cybercrime adalah alternatif baru untuk mendapatkan uang. Perilaku semacam carding (pengambil alihan hak atas kartu kredit tanpa seijin pihak yang sebenarnya mempunyai otoritas), pengalihan rekening telepon dan fasilitas lainnya, ataupun perusahaan dalam bidang tertentu yang mempunyai kepentingan untuk menjatuhkan kompetitornya dalam perebutan market, adalah sebagian bentuk cybercrime dengan tendensi finansial.
  2. Adanya permasalahan terkait dengan persoalan politik, militer dan sentimen Nasionalisme. Salah satu contoh adalah adanya serangan hacker pada awal tahun 1990, terhadap pesawat pengebom paling rahasia Amerika yaitu Stealth Bomber. Teknologi tingkat tinggi yang terpasang pada pesawat tersebut telah menjadi lahan yang menarik untuk dijadikan ajang kompetisi antar negara dalam mengembangkan peralatan tempurnya.
  3. Faktor kepuasan pelaku, dalam hal ini terdapat permasalahan psikologis dari pelakunya. Terdapat kecenderungan bahwasanya seseorang dengan kemampuan yang tinggi dalam bidang penyusupan keamanan akan selalu tertantang untuk menerobos berbagai sistem keamanan yang ketat. Kepuasan batin lebih menjadi orientasi utama dibandingkan dengan tujuan finansial ataupun sifat sentimen.

Elemen penting dalam penyelesaian masalah keamanan dan kejahatan dunia komputer adalah penggunaan sains dan teknologi itu sendiri. Dalam hal ini sains dan teknologi dapat digunakan oleh fihak berwenang seperti: penyelidik, kepolisian, dan kejaksaan untuk mengidentifikasi tersangka pelaku tindak kriminal.

Bukti digital (Digital Evidence) merupakan salahsatu perangkat vital dalam mengungkap tindak cybercrime. Dengan mendapatkan bukti-bukti yang memadai dalam sebuah tindak kejahatan, Bukti Digital yang dimaksud dapat berupa adalah : E-mail, file-file wordprocessors, spreadsheet, sourcecode dari perangkat lunak, Image, web browser, bookmark, cookies, Kalender.

Ada 4 Elemen Forensik:

1. Identifikasi bukti digital

2. penyimpanan bukti digital

3. analisa bukti digital

4. presentasi bukti digital

WHO ( Siapa ahli  IT Forensik)

Seperti halnya dalam dunia nyata, diperlukan pula ahli Forensik Komputer dalam melaksanakan pekerjaan terkait. Jika dilihat dari kompetensi dan keahliannya, seorang ahli forensic computer yang baik dan lengkap harus memiliki tiga domain atau basis pengetahuan maupun keterampilannya, yaitu:

  1. Segi akademis, paling tidak yang bersangkutan memiliki latar belakang pengetahuan kognitif mengenai cara kerja computer dalam lingkungan jejaring teknologi informasi dan komputasi, terutama berkaitan dengan hal-hal yang bersifat fundamental dalam pengembangan system berbasis digital.
  2. Segi vokasi, dibutuhkan kemampuan untuk melakukan atau kerap disebut sebagai psiko-motorik, karena dalam prakteknya seorang ahli forensic akan melakukan kajian, analisa dan penelitian secara mandiri dengan menggunakan seperangkat peralatan teknis yang spesifik.
  3. Segi profesi, seorang ahli yang baik akan berpegang pada kode etik seorang ahli forensic.

Selain itu, dibutuhkan pula pengalaman yang cukup untuk dapat berkreasi dan berinovasi dalam setiap tantangan kasus forensic. Berdasarkan pengalaman, memang yang paling sulit adalah menyiapkan SDM yang handal di bidang forensic computer.

IT Audit Trail

Audit Trail merupakan salah satu fitur dalam suatu program yang mencatat semua kegiatan yang dilakukan tiap user dalam suatu tabel log secara rinci. Audit Trail secara default akan mencatat waktu , user, data yang diakses dan berbagai jenis kegiatan. Jenis kegiatan bisa berupa menambah, merungubah dan menghapus. Audit Trail apabila diurutkan berdasarkan waktu bisa membentuk suatu kronologis manipulasi data. Dasar ide membuat fitur Audit Trail adalah menyimpan histori tentang suatu data (dibuat, diubah atau dihapus) dan oleh siapa serta bisa menampilkannya secara kronologis. Dengan adanya Audit Trail ini, semua kegiatan dalam program yang bersangkutan diharapkan bisa dicatat dengan baik.

Cara kerja Audit Trail

Audit Trail yang disimpan dalam suatu tabel
1. Dengan menyisipkan perintah penambahan record ditiap query Insert, Update dan Delete
2. Dengan memanfaatkan fitur trigger pada DBMS. Trigger adalah kumpulan SQL statement, yang secara otomatis menyimpan log pada event INSERT, UPDATE, ataupun DELETE pada sebuah tabel.

Fasilitas Audit Trail
Fasilitas Audit Trail diaktifkan, maka setiap transaksi yang dimasukan ke Accurate, jurnalnya akan dicatat di dalam sebuah tabel, termasuk oleh siapa, dan kapan. Apabila ada sebuah transaksi yang di-edit, maka jurnal lamanya akan disimpan, begitu pula dengan jurnal barunya.

Hasil Audit Trail

Record Audit Trail disimpan dalam bentuk, yaitu :

  1. Binary File – Ukuran tidak besar dan tidak bisa dibaca begitu saja
  2. Text File – Ukuran besar dan bisa dibaca langsung
  3. Tabel.


Real Time Audit

Real Time Audit atau biasa yang di sebut dengan RTA adalah sebuah sistem manajemen kegiatan online yang menggabungkan sistem kegiatan manajemen dengan sistem monitoring dan evaluasi. Dalam penggunaannya, RTA sangat membantu dalam penghematan biaya overhead administrasi yang timbul dari penggunaan RTA yang signifikan, seiring dengan meningkatnya kemajuan teknologi, teknik kualitas dari pelaporan dan kontrol manajemen meningkatkan menyediakan kedua manajer dan pemilik modal dengan cara untuk mencari kegiatan yang dibiayai dari sudut pandang beberapa manfaat dengan minimum atau tidak ada konsumsi waktu di bagian aktivitas manajer. Oleh karena itu RTA sangat berguna sekali dalam membantu kita mengaudit suatu administrasi. RTA menggabungkan logis prosedural merekam dan sederhana dari perencanaan dan komitmen dana. prosedur analitik yang sedang berlangsung memberikan alert tepat waktu untuk mencegah pengeluaran yang tidak sesuai.

Dan ilmu yang mempelajari audit sistem informasi yang berhubungan dengan pengumpulan fakta dan bukti pelanggaran keamanan sistem informasi serta validasinya disebut IT Forensik. Dan metode audit yang bisa digunakan adalah COBIT.

sumber :

http://vlyodhart.wordpress.com/tag/forensic/

http://mami96.wordpress.com/2012/02/29/it-audit-trailreal-time-audit-it-forensik/

http://freezcha.wordpress.com/2011/03/20/it-audit-dan-it-forensik-2/

 

Iklan

Penggunaan Software Open Source dalam Pembuatan Aplikasi

            Open source merupakan software berlisensi non komersial(gratis lisensi), meskipun begitu kekuatan dan kehandalan software-software open source sangat ampuh dan dapat dipercaya yang performansi kerjanya sama dengan software-software komersil lainnya.

            Perangkat lunak open source adalah perangkat lunak yang kode programnya terbuka, artinya kode program itu dapat dilihat dan diperoleh secara bebas.

            Software open source disebarluaskan dengan menggunakan lisensi public, antara lain misalnya lisensi GPL(GNU General Public License). Lisensi model ini memastikan bahwa kode sumber sebuah program open source akan selamanya bersifat open source. (Oleh: Dr. Husni Thamrin Ketua POSS-UMS) [2]

Feature utama dari karakteristik free(open source) adalah kebebasan dari user untuk:

–          Menggunakan software sesuai keinginannya,

–          Memiliki software yang tersedia sesuai kebutuhan,

–          Mendistribusikan software kepada user lainnya. [1]

Di dalam pembuatan suatu aplikasi, pastinya dibutuhkan suatu software(perangkat lunak). Gunanya adalah untuk memudahkan dan membantu dalam pembuatan aplikasi yang akan dibuat.

Kenapa dianjurkan menggunakan software open source dalam membuat aplikasi ?

Penggunaan software open source dalam pembuatan aplikasi dianjurkan karena diantaranya memiliki keuntungan:

–          Software bisa didapatkan secara gratis

–    Dengan adanya software berlisensi open source tersebut, kita dapat memiliki dan menggunakan software tersebut untuk membuat aplikasi.

–          Legalitas dari aplikasi yang dibuat terjamin, dll.

Selain memiliki keuntungan, penggunaan software open source dalam pembuatan aplikasi juga memiliki kerugian,yaitu:

–    Sulit dalam penggunaan softwarenya, tidak banyak referensi yang membahas penggunaan software-software open source, dll.

Sumber referensi:

[1] amalia07.files.wordpress.com/2008/07/os.pdf

[2] mugos.ums.ac.id/pub/buletin/poss-buletin/POSSbuletin.pdf

Computer Vision

Pengertian

Computer vision merupakan proses otomatis yang mengintegrasikan sejumlah besar proses untuk persepsi visual, seperti akuisisi citra, pengolahan citra, pengenalan dan membuat keputusan. Computer vision mencoba meniru cara kerja sistem visual manusia (human vision) yang sesungguhnya sangat kompleks. Untuk itu, computer vision diharapkan memiliki kemampuan tingkat tinggi sebagaimana human visual.

Kemampuan itu diantaranya adalah:

  • Object detection → Apakah sebuah objek ada pada scene? Jika begitu, dimana batasan-batasannya..?
  • Recognation → Menempatkan label pada objek.
  • Description → Menugaskan properti kepada objek.
  • 3D Inference → Menafsirkan adegan 3D dari 2D yang dilihat.
  • Interpreting motion → Menafsirkan gerakan.

Computer Vision sering didefinisikan sebagai salah satu cabang ilmu pengetahuan yang mempelajari bagaimana komputer dapat mengenali obyek yang diamati/ diobservasi. Cabang ilmu ini bersama intelijensia semu (Artificial Intelligence) akan mampu menghasilkan sistem intelijen visual (Visual Intelligence System).

Computer Vision adalah kombinasi antara Pengolahan Citra dan Pengenalan Pola.

  • Pengolahan Citra (Image Processing) merupakan bidang yang berhubungan dengan proses transformasi citra/gambar (image). Proses ini bertujuan untuk mendapatkan kualitas citra yang lebih baik.

Sedangkan,

  • Pengenalan Pola (Pattern Recognition), bidang ini berhubungan dengan proses identifikasi obyek pada citra atau interpretasi citra. Proses ini bertujuan untuk mengekstrak informasi/pesan yang disampaikan oleh gambar/citra.

 

Hirarki pada Computer Vision

Hirarki pada computer vision ada 3 tahap, yaitu:

  • Pengolahan Tingkat Rendah (Image to image) → Menghilangkan noise, dan peningkatan gambar (enchament image).
  • Pengolahan  Tingkat Menengah (Image to dimbolic) → Kumpulan garis / vektor yang merepresentasikan batas sebuah obyek pada citra.
  • Pengolah Tingkat Tinggi (Simbolic to simbolic) → Representasi simbolik batas-batas obyek menghasilkan nama obyek tersebut.

 

Tahapan proses dalam Computer Vision

Sebuah komputer yang menyerupai kemampuan manusia dalam menangkap sinyal visual (human sight) dilakukan dalam empat tahapan proses dasar :

  • Proses penangkapan citra/gambar (image acquisition),
  • Proses pengolahan citra (image processing),
  • Analisa data citra (image analysis) dan
  • Proses pemahaman data citra (image understanding)

 

1.     Image Acqusition

  • Image Acqusition pada manusia dimulai dengan mata, kemudian informasi visual diterjemahkan ke dalam suatu format yang kemudian dapat dimanipulasi oleh otak.
  • Senada dengan proses di atas, computer  vision membutuhkan sebuah mata untuk menangkap sebuah sinyal visual.
  • Umumnya mata pada computer vision adalah sebuah kamera video.
  • Kamera menerjemahkan sebuah scene atau image
  • Kemudian sinyal listrik ini diubah menjadi bilangan biner yang akan digunakan oleh komputer untuk pemrosesan.
  • Keluaran dari kamera adalah berupa sinyal analog, dimana frekuensi dan amplitudonya (frekuensi berhubungan dengan jumlah sinyal dalam satu detik, sedangkan amplitudo berkaitan dengan tingginya sinyal listrik yang dihasilkan) merepresentasikan detail ketajaman (brightness) pada scene.
  • Kamera mengamati sebuah kejadian pada satu jalur dalam satu waktu, memindainya dan membaginya menjadi ratusan garis horizontal yang sama.
  • Tiap‐tiap garis membuat sebuah sinyal analog yang amplitudonya menjelaskan perubahan brightness sepanjang garis sinyal tersebut.
  • Karena komputer tidak bekerja dengan sinyal analog, maka sebuah analog‐to‐digital converter (ADC), dibutuhkan untuk memproses semua sinyal tersebut oleh komputer.
  • ADC ini akan mengubah sinyal analog yang direpresentasikan dalam bentuk informasi sinyal tunggal ke dalam sebuah aliran (stream) sejumlah bilangan biner.
  • Bilangan biner ini kemudian disimpan di dalam memori dan akan menjadi data raw yang akan diproses.

2.     Image Processing

  • Tahapan berikutnya computer vision akan melibatkan sejumlah manipulasi utama (initial manipulation) dari data binary tersebut.
  • Image processing membantu peningkatan dan perbaikan kualitas image, sehingga dapat dianalisa dan diolah lebih jauh secara lebih efisien.
  • Imagge processing akan meninggkatkan perbandingan sinyal terhadap noise (signal‐to‐noise ratio = s/n).
  • Sinyal‐sinyal tersebut adalah informasi yang akan merepresentasikan objek yang ada dalam image.
  • Sedangkan noise adalah segala bentuk interferensi, kekurang pengaburan, yang terjadi pada sebuah objek.

3.     Image Analysis

  • Image analysis akan mengeksplorasi scene ke dalam bentuk karateristik utama dari objek melalui suatu proses investigasi.
  • Sebuah program komputer akan mulai melihat melalui bilangan biner yang merepresentasikan informasi visual untuk mengidentifikasi fitur-fitur spesifik dan karakteristiknya.
  • Lebih khusus lagi program image analysis digunakan untuk mencari tepi dan batas‐batasan objek dalam image.
  • Sebuah tepian (edge) terbentuk antara objek dan latar belakangnya atau antara dua objek yang spesifik.
  • Tepi ini akan terdeteksi sebagai akibat dari perbedaan level brightness pada sisi yang berbeda dengan salah satu batasnya.

4.     Image Understanding

  • Ini adalah langkah terakhir dalam proses computer vision, yang mana spesifik objek dan hubungannya diidentifikasi.
  • Pada bagian ini akan melibatkan kajian tentang teknik‐teknik artificial intelligent.
  • Understanding berkaitan dengn template matching yang ada dalam sebuah scene.
  • Metoda ini menggunakan program pencarian (search program) dan teknik penyesuaian pola (pattern matching techniques).

 

Aplikasi Computer Vision

Sebagai teknologi disiplin, visi komputer berusaha untuk menerapkan teori dan model untuk pembangunan sistem visi komputer.

Aplikasi pada visi komputer mencakup berbagai macam sistem, yaitu:

  1. Pengendalian proses (misalnya, sebuah robot industri atau kendaraan otonom).
  2. Mendeteksi peristiwa (misalnya, untuk pengawasan visual atau orang menghitung).
  3. Mengorganisir informasi (misalnya, untuk pengindeksan database foto dan gambar urutan).
  4. Modeling benda atau lingkungan (misalnya, industri inspeksi, analisis gambar medis / topografis).
  5. Interaksi (misalnya, sebagai input ke perangkat untuk interaksi manusia komputer).
  6. Sub-domain visi komputer meliputi adegan rekonstruksi, acara deteksi, pelacakan video, pengenalan obyek, belajar, pengindeksan, gerak estimasi, dan gambar restorasi.

Sumber :

http://muhammadadri.net/wp-content/uploads/2009/04/computer-vision-01.pdf

http://cosaviora.blogspot.com/2010/11/computer-vision.html

http://freezcha.wordpress.com/2010/11/16/computer-vision/

Perbedaan Pendekatan Perancangan Sistem Terstruktur dan Berorientasi Objek

Pendekatan Perancangan Sistem Terstruktur

Pendekatan terstruktur adalah metode perkembangan sistem dengan menyediakan sistem tambahan yang berupa alat – alat dan teknik – teknik. Pada pendekatan terstruktur dibedakan atas dua pendekatan yaitu :
1. Pendekatan berorientasi proses
Pada pendekatan terstruktur yang beorientasi proses yang dilakukan adalah memeriksa input, output dan proses untuk sistem. Pendekatan berorientasi proses bekerja sangat baik jika professional sistem mengetahui lebih lanjut tentang input, proses dan output yang dihasilkan dari sistem .
2. Pendekatan beorientasi data
Pada pendekatan terstruktur beorientasi data yang dilakukan adalah memeriksa keputusan – keputusan yang dibuat sistem dan kemudian bekerja ke belakang untuk mengidentifikasi data yang dibutuhkan untuk mendukung keputusan tersebut. Pendekatan ini digunakan jika proses sistem, seperti input dan output belum ditentukan. Pada kasus ini, professional sistem harus berusaha dengan user menentukan bagaimana sistem nantinya. Fokusnya adalah untuk menentukan kebutuhan data untuk keputusan – keputusan yang akan berbasis pada data.
Ciri-ciri utama teknik terstruktur adalah sebagai berikut :
  • Merancang berdasar modul, Modularisasi adalah proses yang membagi suatu sistem menjadi beberapa modul yang dapat beroperasi secara independen
  • Bekerja dengan pendekatan top-down, Dimulai dari level atas (secara global) kemudian diuraikan sampai tingkat modul (rinci)
  • Dilakukan secara iterasi, Dengan iterasi akan didapat hasil yang lebih baik, terlalu banyak iterasi juga akan menurunkan hasilnya dan menunjukkan bahwa tahap sebelumnya tidak dilakukan dengan baik
  •  Kegiatan dilakukan secara pararel, Pengembangan subsistem-subsistem dapat dilakukan secara pararel, sehingga akan memperpendek waktu pengembangan sistem
Tools Pendekatan Perancangan Terstruktur
  • DFD (Data Flow Diagram )
  • Kamus Data
  • Entity Relationship Diagram (ERD)
  • State Transition Diagram (STD)
Keuntungan pendekatan perancangan  terstruktur :
  • Mengurangi kerumitan masalah (reduction of complexity).
  • Konsep mengarah pada sistem yang ideal (focus on ideal).
  • Standarisasi (standardization).
  • Orientasi ke masa datang (future orientation).
  • Mengurangi ketergantungan pada disainer (less reliance on artistry).
Kekurangan Pendekatan Perancangan Terstruktur :
  • SSAD berorientasi utama pada proses, sehingga mengabaikan kebutuhan non-fungsional.
  • Sedikit sekali manajemen langsung terkait dengan SSAD.
  • Prinsip dasar SSAD merupakan pengembangan non-iterative (waterfall), akan tetapi kebutuhan akan berubah pada setiap proses.
  • Interaksi antara analisis atau pengguna tidak komprehensif, karena sistem telah didefinisikan dari awal, sehingga tidak adaptif terhadap perubahan (kebutuhan-kebutuhan baru).
  • Selain dengan menggunakan desain logic dan DFD, tidak cukup tool yang digunakan untuk mengkomunikasikan dengan pengguna, sehingga sangat sulit bagi pengguna untuk melakukan evaluasi.
  • Pada SAAD sulit sekali untuk memutuskan ketika ingin menghentikan dekomposisi dan mliai membuat sistem.
  • SSAD tidak selalu memenuhi kebutuhan pengguna.
  • SSAD tidak dapat memenuhi kebutuhan terkait bahasa pemrograman berorientasi obyek, karena metode ini memang didesain untuk mendukung bahasa pemrograman terstruktur, tidak berorientasi pada obyek (Jadalowen, 2002).

Pendekatan Perancangan Sistem Berorientasi Objek 

Pendekatan perancangan sistem berorientasi objek adalah suatu teknik pendekatan baru dalam melihat permasalahan dan sistem (sistem perangkat lunak, sistem informasi, atau sistem lainnya). Pendekatan ini memandang sistem yang akan dikembangkan sebagai suatu kumpulan objek-objek dunia nyata.
Terdapat beberapa cara untuk mengabstraksikan dan memodelkan objek-objek tersebut, yaitu abstraksi objek, kelas, hubungan antar kelas sampai abstraksi sistem. Saat mengabstraksikan dan memodelkan objek, data dan proses-proses yang dipunyai oleh objek akan dienkapsulasi (dibungkus) menjadi satu kesatuan.
Dalam rekayasa perangkat lunak, konsep pendekatan berorientasi objek dapat diterapkan pada tahap analisis, perancangan, pemrograman, dan pengujian perangkat lunak. Ada berbagai teknik yang dapat digunakan pada masing-masing tahap tersebut, dengan aturan dan alat bantu pemodelan tertentu.
Tools pendekatan berorientasi objek :
  • Rational Unified Process (RUP) (Rational Software – IBM 2003)
  • Fusion (Coleman 1994)
  • STS development Method 3 (ADM3) (Firesmith 1993)
  • Berard’s object-oriented design (Berard 1991)
  • Booch’s object-oriented design (Booch 1983, 1991)
  • Coad and Yourdon’s object – oriented analysis (Coad & Yourdon 1989)
  • Coad and Yourdon’s object-oriented analysis (OOA) (Coad & Yourdon 1991)
  • Jacobson’s Objectory (Jacobson & Linstrom 1992)
  • Rumbaugh’s object modelling technique (OMT) (Rumbaugh et al. 1991)
  • Object-oriented system analysis (OOA) (Shlaer & Mellor 1988)
Kelebihan pendekatan berorientasi objek :
  • Dibandingkan dengan metode SSAD, OOAD lebih mudah digunakan dalam pembangunan system
  • Dibandingkan dengan SSAD, waktu pengembangan, level organisasi, ketangguhan,dan penggunaan kembali (reuse) kode program lebih tinggi dibandingkan dengan metode OOAD (Sommerville, 2000).
  • Tidak ada pemisahan antara fase desain dan analisis, sehingga meningkatkan komunikasi antara user dan developer dari awal hingga akhir pembangunan sistem.
  • Analis dan programmer tidak dibatasi dengan batasan implementasi sistem, jadi desain dapat diformliasikan yang dapat dikonfirmasi dengan berbagai lingkungan eksekusi.
  • Relasi obyek dengan entitas (thing) umumnya dapat di mapping dengan baik seperti kondisi pada dunia nyata dan keterkaitan dalam sistem. Hal ini memudahkan dalam mehami desain (Sommerville, 2000).
  • Memungkinkan adanya perubahan dan kepercayaan diri yang tinggi terhadap kebernaran software yang membantu untuk mengurangi resiko pada pembangunan sistem yang kompleks (Booch, 2007).
  • Encapsliation data dan method, memungkinkan penggunaan kembali pada proyek lain, hal ini akan memperingan proses desain, pemrograman dan reduksi harga.
  • OOAD memungkinkan adanya standarisasi obyek yang akan memudahkan memahami desain dan mengurangi resiko pelaksanaan proyek.
  • Dekomposisi obyek, memungkinkan seorang analis untuk memcah masalah menjadi pecahan-pecahan masalah dan bagian-bagian yang dimanage secara terpisah. Kode program dapat dikerjakan bersama-sama. Metode ini memungkinkan pembangunan software dengan cepat, sehingga dapat segera masuk ke pasaran dan kompetitif. Sistem yang dihasilkan sangat fleksibel dan mudah dalam memelihara.
Kekurangan Pendekatan Berorientasi Objek :
  • Pada awal desain OOAD, sistem mungkin akan sangat simple.
  • Pada OOAD lebih fockus pada coding dibandingkan dengan SSAD.
  • Pada OOAD tidak menekankan pada kinerja team seperti pada SSAD.
  • Pada OOAD tidak mudah untuk mendefinisikan class dan obyek yang dibutuhkan sistem.
  • Sering kali pemrogramam berorientasi obyek digunakan untuk melakukan anlisisis terhadap fungsional siste, sementara metode OOAD tidak berbasis pada fungsional sistem.
  • OOAD merupakan jenis manajemen proyek yang tergolong baru, yang berbeda dengan metode analisis dengan metode terstruktur. Konsekuensinya adalah, team developer butuh waktu yang lebih lama untuk berpindah ke OOAD, karena mereka sudah menggunakan SSAD dalam waktu yang lama ( Hantos, 2005).
  • Metodologi pengembangan sistem dengan OOAD menggunakan konsep reuse. Reuse merupakan salah satu keuntungan utama yang menjadi alasan digunakannya OOAD. Namun demikian, tanpa prosedur yang emplisit terhadap reuse, akan sangat sliit untuk menerapkan konsep ini pada skala besar (Hantos, 2005).

Perbedaan Pendekatan Terstruktur dengan Pendekatan Berorientasi Objek

Sumber :

http://tikknara.blogspot.com/2011/11/pendekatan-perancangan-sistem.html

dewiar.staff.gunadarma.ac.id/Downloads/files/410/M6-Perancangan%2BUmum.pdf

Java

Java adalah Bahasa Pemrograman yang dapat dijalankan pada berbagai Platform (MultiPlatform). Java dapat digunakan baik di Komputer, perangkat mobile, atau perangkat-perangkat lain yang dapat didukung oleh pemrograman java. Java adalah Bahasa pemrograman berorientasi objek yang Dikembangkan oleh Sun Microsystem dan diciptakan oleh James Gosling.

Definisi yang lain, Definisi Dari Sun Microsystem, Java adalah nama untuk sekumpulan teknologi untuk membuat dan menjalankan perangkat lunak pada komputer standalone ataupun pada lingkungan jaringan.

 

Dalam Penerapannya, Setiap Bahasa pemrograman pasti memiliki Kelebihan. Dibawah ini merupakan Kelebihan-kelebihan yang dimiliki Java, Yaitu:

  • MultiPlatform

Dapat dijalankan di beberapa platform / system operasi komputer.

  • Object Oriented Programming (OOP) /Pemrograman Berorientasi Objek

Artinya semua aspek yang terdapat di Java adalah Objek.

  • Perpustakaan Kelas yang lengkap
  • Bergaya C++

Sintaks pada Java seperti bahasa pemrograman C++ sehingga menarik para pemrogram C++ untuk pindah ke Java.

  • Pengumpulan sampah otomatis
  • Bersifat Portable
  • Tangguh
  • Aman

 

Perbandingan Bahasa Java dengan Bahasa Pemrograman Lain:

 

Perbandingan Java dengan C++

Java

C++

Pada awalnya diciptakan untuk mendukung komputasi jaringan. Dirancang terutama untuk pemrograman system
Murni pemrograman berorientasi objek. Merupakan pemrograman procedural dan juga pemrograman berorientasi objek.
Berjalan di mesin virtual. Berhadapan langsung dengan fasilitas tingkat rendah dari sistem.
Garbage collection secara otomatis (bisa dilakukan secara manual) dan tidak memiliki konsep destruktor. Manajemen memori Eksplisit, meskipun ada framework (kerangka kerja) pihak ketiga untuk melakukan pengumpulan sampah (garbage collection), serta mendukung desktruktor.
Library standar telah berkembang pada masing-masing rilis. Library Standar C++ memiliki lingkup dan fungsionalitas yang terbatas.
Single inheritance dari kelas Multiple inheritance, termasuk warisan virtual.
Tidak terdapat mekanisme fungsi pointer Terdapat mekanisme fungsi pointer
Memiliki Javadoc sebagai standar dokumentasi. Tidak memiliki standar dokumentasi.
Source code dikompilasi ke dalam kode byte untuk JVM . Tergantung pada platform Java tapi kode sumber biasanya tertulis untuk tidak tergantung pada sistem operasi fitur khusus. Source code C++ dapat ditulis untuk menjadi platform independen dan ditulis untuk mengambil keuntungan dari fitur spesifik platform. Biasanya dikompilasi ke dalam kode mesin asli.

 

 

Sumber :

http://id.wikipedia.org/wiki/Java

http://bebas.vlsm.org/v06/Kuliah/SistemOperasi/BUKU/SistemOperasi-4.X-1/ch04.html

http://maasdianto.web.id/java-and-c-dalam-perbandingan/

Algoritma Bresenham

Posisi suatu piksel dapat diketahui atau dihitung, salah satunya dengan menggunakan Algoritma Bresenham dengan cara:

1. Input 2 endpoint, simpan endpoint kiri sebagai (x0,y0).

2. Plot titik pertama tersebut.

3. Hitung konstanta ∆x, ∆y, 2∆y, 2∆y-2∆x dan nilai awal parameter keputusan p0=2∆y-∆x.

4. Untuk setiap xk pada garis, mulai dari k = 0. Ujilah:

Jika pk < 0, plot (xk+1,yk) dan pk+1 = pk+2∆y

Jika pk ≥ 0, plot (xk+1,yk+1) dan pk+1 = pk+2∆y-2∆x

5. Ulangi langkah 4, ∆x kali.

 

Contoh soal:

Hitung posisi pixel hingga membentuk sebuah garis yang menghubungkan titik (10 , 4) dan (16 ,8) !

Jawab :

(x0,y0) = (10,4)

∆x =16-10=6  ,  ∆y=8-4=4  ,  2∆y=8  ,  2∆y-2∆x=8-12= -4

p0=2∆y-∆x=8-6=2

 

Cara mencarinya:

  • k=0

pk=p0=2

2 > 0 maka xk+1,yk+1 = 10+1,4+1= 11,5

  • k=1

pk=p0+1=pk+2∆y-2∆x

p1= 2+(-4)=-2

-2 < 0 maka xk+1,yk = 11+1,5 = 12,5

  • k=2

pk=p1+1=pk+2∆y

p2=-2+8=6

6 > 0 maka xk+1,yk+1 = 12+1,5+1 = 13,6

  • k=3

pk=p2+1=pk+2∆y-2∆x

p3=6+(-4)=2

2 > 0 maka xk+1,yk+1 = 13+1,6+1 = 14,7

  • k=4

pk=p3+1=pk+2∆y-2∆x

p4=2+(-4)=-2

-2 < 0 maka xk+1,yk = 14+1,7 =15,7

  • k=5

pk=p4+1=pk+2∆y

p5=-2+8=6

6 > 0 maka xk+1,yk+1 = 15+1,7+1 = 16,8

 

k

pk

xk+1,yk+1

0

2

11 , 5

1

-2

12 , 5

2

6

13 , 6

3

2

14 , 7

4

-2

15 , 7

5

6

16 , 8

Teori Tingkah laku konsumen: Teori nilai Guna (Utility)

Teori tingkah laku konsumen dapat dibedakan dalam dua macam pendekatan: Pendekatan Nilai guna (utiliti) cardinal dan pendekatan nilai guna ordinal. Dalam pendekatan nilai guna cardinal dianggap manfaat atau kenikmatan yang diperoleh seorang konsumen dapat dinyatakan secara kuantitatif. Dalam pendekatan nilai guna ordinal, Manfaat atau kenikmatan yang diperoleh masyarakat dari mengkonsumsikan barang-barang tidak dikuantifikasi. Tingkah laku seorang konsumen untuk memilih barang-barang yang akan memaksimumkan kepuasannya ditunjukkan dengan bantuan Kurva kepuasan sama yaitu kurva yang menggambarkan gabungan barang yang akan memberikan nilai guna (kepuasan) yang sama.

Teori Nilai Guna (utility)

Didalam teori ekonomi kepuasan atau kenikmatan yang diperoleh seseorang dari mengkonsumsikan barang-barang dinamakan nilai guna atau utility. Kalau kepuasan itu semakin tinggi maka makin tinggilah nilai gunanya atau utilitinya.

Nilai guna dibedakan diantara dua pengertian: nilai guna total dan nilai guna marjinal. Nilai guna total dapat diartikan sebagai jumlah seluruh kepuasan yang diperoleh dari mengkonsumsikan sejumlah barang tertentu. Sedangkan nilai guna marjinal berarti pertambahan (atau pengurangan) kepuasan sebagai akibat dan pertambahan (atau pengurangan) penggunaan satu unit barang tertentu.

Hipotesis Utama Teori Nilai Guna

Hipotesis utama teori nilai guna, atau lebih dikenal sebagai Hukum nilai guna marjinal yang semakin menurun, menyatakan bahwa tambahan nilai guna yang diperoleh seseorang dari mengkonsumsikan suatu barang akan menjadi semakin sedikit apabila orang tersebut terus menerus menambah konsumsinya ke atas barang tersebut. Pada akhirnya tambahan nilai guna akan menjadi negatif yaitu apabila konsumsi ke atas barang tersebut ditambah satu unit lagi, maka nilai guna total akan menjadi semakin sedikit. Pada hakikatnya hipotesis tersebut menjelaskan bahwa pertambahan yang terus-menerus dalam megkonsumsi suatu barang tidak secara terus-menerus menambah kepuasan yang dinikmati orang yang mengkonsumsikannya.

Cara Memaksimumkan Nilai Guna

Kerumitan yang ditimbulkan untuk menentukan susunan atau komposisi dan jumlah barang yang akan mewujudkan nilai guna yang maksimum bersumber dari perbedaan harga-harga berbagai barang. Kalau harga barang adalah bersamaan, nilai guna akan mencapai tingkat yang maksimum apabila nilai guna marjinal dari setiap barang adalah sama.

Syarat Pemaksimuman Nilai Guna

Dalam keadaan dimana harga-harga berbagai macam barang adalah berbeda. Syarat yang harus dipenuhi agar barang-barang yang dikonsumsikan akan memberikan nilai guna yang maksimum adalah: Setiap rupiah yang dikeluarkan untuk membeli unit tambahan berbagai jenis barang akan memberikan nilai guna marjinal yang sama besarnya.

Teori Nilai Guna dan Teori Permintaan

Dengan menggunakan teori nilai guna dapat diterangkan sebabnya kurva permintaan bersifat menurun dari kiri atas ke kanan bawah yang menggambarkan bahwa semakin rendah harga suatu barang, semakin banyak permintaan ke atasnya. Ada 2 faktor yang menyebabkan permintaan keatas suatu barang berubah apabila harga barang itu mengalami perubahan: Efek penggantian dan Efek pendapatan.

Efek Penggantian

Perubahan suatu barang mengubah nilai guna marjinal per rupiah dari barang yang mengalami perubahan harga tersebut. Kalau harga mengalami kenaikan, nilai guna marjinal per rupiah yang diwujudkan oleh barang tersebut menjadi semakin rendah. Misal, harga barang A bertambah tinggi, maka sebagai akibatnya sekarang MU barang A/PA menjadi lebih kecil dari semula. Kalau harga barang-barang lainnya tidak mengalami perubahan lagi maka perbandingan diantara nilai guna marjinal barang-barang itu dengan harganya (atau nilai guna marjinal per rupiah dan barang-barang itu) tidak mengalami perubahan. Dengan demikian, untuk barang B misalnya, MU barang B/PB yang sekarang adalah sama dengan sebelumnya. Berarti sesudah harga barang A naik, keadaan yang berikut berlaku:

Dalam keadan seperti diatas, nilai guna akan menjadi bertambah banyak (maka kepuasan konsumen akan menjadi bertambah tinggi) sekiranya konsumen itu membeli lebih banyak barang B dan mengurangi pembelian barang A. kedaan diatas menunjukkan bahwa kalau harga naik, permintaan terhadap barang yang mengalami kenaikan harga tersebut akan menjadi semakin sedikit.

Dengan cara yang sama sekarang tidak susah untuk menunjukkan bahwa penurunan harga menyebabkan permintaan ke atas barang yang mengalami penurunan harga itu akan menjadi bertambah banyak. Penurunan harga menyebabkan barang itu mewujudkan nilai guna marjinal per rupiah yang lebih tinggi daripada nilai guna marjinal per rupiah dari barang-barang lainnya yang tak berubah harganya. Maka, karena membeli barang tersebut akan memaksimumkan nilai guna, permintaan ke atas barang tersebut menjadi bertambah banyak apabila harganya bertambah rendah.

Efek Pendapatan

Kalau pendapatan tidak mengalami perubahan maka kenaikan harga menyebabkan pendapatan riil menjadi semakin sedikit. Dengan perkataan lain, kemampuan pendapatan yang diterima untuk membeli barang-barang menjadi bertambah kecil dari sebelumnya. Maka kenaikan harga menyebabkan konsumen mengurangi jumlah berbagai barang yang dibelinya, termasuk barang yang mengalami kenaikan harga. Penurunan harga suatu barang menyebabkan pendapatan riil bertambah, dan ini akan mendorong konsumen menambah jumlah barang yang dibelinya. Akibat dari perubahan harga kepada pendapatan ini, yang disebut efek pendapatan, lebih memperkuat lagi efek panggantian didalam mewujudkan kurva permintaan yang menurun dari kiri atas ke kanan bawah.

Surplus Konsumen

Teori nilai guna dapat pula menerangkan tentang wujudnya kelebihan kepuasan yang dinikmati oleh para konsumen. Kelebihan kepuasan ini, dalam analisis ekonomi, dikenal sebagai surplus konsumen. Surplus konsumen pada hakikatnya berarti perbedaan diantara kepuasan yang diperoleh seseorang didalam mengkonsumsikan sejumlah barang dengan pembayaran yang harus dibuat untuk memperoleh barang tersebut. Kepuasan yang diperoleh selalu lebih besar daripada pembayaran yang dibuat.

Contoh: Seorang konsumen pergi ke pasar membeli mangga dan bertekad membeli satu buah yang cukup besar apabila harganya Rp.1500. Sesampainya dipasar ia mendapati bahwa mangga yang diinginkannya hanya berharga Rp.1000. jadi, ia dapat memperoleh mangga yang diinginkannya dengan harga Rp.500 lebih murah daripada harga yang bersedia dibayarkannya. Nilai Rp.500 ini dinamakan Surplus Konsumen.

Sumber :

Sukirno, Sadono. 2005.MikroEkonomi Teori Pengantar, Edisi Ketiga.Jakarta: PT RajaGrafindo Persada.