• Tidak ada hasil yang ditemukan

Jawaban Tugas Akhir Matrikulasi Semester Ganjil 2009/2010

N/A
N/A
Protected

Academic year: 2021

Membagikan "Jawaban Tugas Akhir Matrikulasi Semester Ganjil 2009/2010"

Copied!
7
0
0

Teks penuh

(1)

Jawaban Tugas Akhir Matrikulasi

Semester Ganjil 2009/2010

Nama Mahasiswa :

Susanto

e-Mail :

[email protected]

Mata Kuliah

:

Intro to Information Object Oriented SE

(Pengantar SE Berorientasi Objek)

Dosen

:

Didik Setiyadi, M.Kom.

e-Mail

:

[email protected]

tembusan

:

[email protected]

---

1. Berikan penjelasan tentang konsep Object Oriented dalam pengembangan

software, mengapa pada saat ini metode yang digunakan menggunakan konsep

object oriented, kenapa tidak menggunakan konsep terstruktur ?.

Jawab :

Paradigma pemrograman adalah pandangan mendasar terkait tentang formulasi sebuah solusi dalam bahasa pemrograman. Paradigma pemrograman menjelaskan tentang perspektif / pandangan pemrogram tentang program yang akan dibuatnya. Saat ini terdapat dua jenis paradigma pemrograman yaitu pemrogram berbasis object (OOP) dan pemrograman terstruktur. Dari kedua jenis paradigm ini yang sering digunakan saat ini adalah pemrograman berbasis object. Model data berorientasi objek dapat dikatakan memberi 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.

Pemrograman terstruktur adalah suatu proses untuk mengimplementasikan urutan langkah untuk menyelesaikan suatu masalah dalam bentuk program. Paradigma ini pertama kali diungkapkan oleh Professor Edsger Djikstra dari Universitas Eindhoven sekitar tahun 1965. Prinsip dari pemrograman terstruktur adalah bahwa Apabila kita sudah sampai pada langkah tertentu, kita tidak boleh mengeksekusi langkah sebelumnya. Hal ini dikecualikan pada langkah-langkah untuk proses berulang. Sedangkan pemrograman berbasis obyek (OOP) mendasarkan pada konsep object dan interaksinya. Pada jenis paradigm ini, program bukan urut-urutan instruksi tapi diselesaikan oleh obyek-obyek yang bekerjasama untuk menyelesaikan masalah. Object Oriented sebagai tool untuk memodelkan sistem di dunia nyata (tujuan bahasa Simula-67) setiap sistem selalu dapat digambarkan melalui object-object penyusunnya dan bagaimana object-object tersebut saling berinteraksi.

Tujuan Pemrograman Terstruktur Tujuan dari pemrograman terstruktur dapat diuraikan sebagai berikut :

a. Untuk meningkatkan kualitas dan kehandalan program b. Untuk memudahkan pemahaman terhadap isi program c. Untuk menyederhanakan program

d. Untuk maintenance (pemeliharaan) program

e. Untuk meningkatkan produktifitas program Sifat-sifat Pemrograman Terstruktur Sifat-sifat dari pemrograman terstruktur dapat diuraikan sebagai berikut :

a. Memuat teknik pemecahan masalah yang logis dan sistematis b. Memuat algoritma yang efisien, efektif dan sederhana

(2)

d. Tidak menggunakan perintah GOTO e. Biaya pengujian program relatif rendah f. Memiliki dokumentasi yang baik

g. Biaya perawatan dan dokumentasi yang dbuthkan relatif rendah

Terdapat beberapa langkah pemrograman terstruktur yaitu : identifikasi masalah, analisis kebutuhan pengguna, penyusunan dan disain algoritma, coding, penyusunan program, evaluasi error, dokumentasi, dan pemeliharaan program. Identifikasi masalah dilakukan untuk memperoleh pemahaman mengenai permasalahan yang ada. Melalui pemahaman ini diharapkan dapat ditemukan solusi optimal dalam memecahkan permasalahan tersebut. Analisis kebutuhan dalam hal ini adalah menentukan spesifikasi fungsi dan fasilitas yang akan diimplementasikan pada program. Analisis kebutuhan pengguna sangat penting dilakukan karena program sepenuhnya disusun untuk memberikan solusi permasalahan pengguna. Analisis kebutuhan dilakukan untuk mengetahui siapa yang akan menggunakan program, apa saja yang akan ditampilkan dan lain-lain. Coding adalah penerjemahan algoritma kedalam kode program. Bahasa pemrograman merupakan jembatan yang menghubungkan manusia dengan komputer. Testing merupakan tahap yang paling penting dalam penyusunan program. Pada tahap ini diharapkan tidak terdapat error sehingga program tidak dapat digunakan, dan permasalahan tidak terpecahkan. Dokumentasi merupakan informasi tambahan untuk lenih memahami kode-kode yang disusun.

Berbeda dengan OOP. Suatu program disebut dengan pemrograman berbasis obyek (OOP) karena terdapat :

– Encapsulation (pembungkusan); Encapsulation adalah mekanisme pemrograman yang membungkus kode dan data yang dimanipulasi dan menjaganya supaya terhindar dari interferensi dan penggunaan yang tidak perlu. Salah satu caranya dengan membentuk objek.

– Inheritance (pewarisan); Inheritance memungkinkan programer meletakkan member yang sama dalam satu class dan class-class lain dapat mewarisi member tersebut. Class yang mengandung member yang sama dari beberapa class lain dinamakan superclass atau parent class. Class yang mewarisi dinamakan subclass atau child class. Inheritance menghasilkan class hierarchy.

– Polymorphism (polimorfisme-perbedaan bentuk); Polymorphisme artinya mempunyai banyak bentuk. Dua objek atau lebih dikatakan sebagai polymorphic, bila objek-objek itu mempunyai antar muka yang identik namun mempunyai perilaku-perilaku yang berbeda Kelebihan Object Oriented Sebagai Model Representasi

• Natural: mengikuti cara berpikir manusia (manusia memandang dunianya sebagai kumpulan object yang berinteraksi)

• Abstraksi: menjelaskan makna sebuah entitas secara cepat dan mudah • Enkapsulasi: dapat menyembunyikan detil yang tidak perlu

• Modular: object adalah entitas yang independen Beda nyata antara prosedural dan OOP

• Prosedural Fokus pada bagaimana cara komputer menangani masalah • OOP Fokus pada masalah yang ditangani dengan menggunakan computer

Tetapi, tidak ada jawaban yang benar-benar tepat jika kita diberi pertanyaan: apakah sebaiknya menggunakan OOP atau Procedural Programming? Karena jawabannya sangat relatif, terutama tergantung pada aplikasi yang ingin dibuat. Jika mempertimbangkan pemeliharaan dan

(3)

Procedural Programming. Pada pemrograman terstruktur, jika ingin membuat perubahan maka harus diubah dari awal karena ada yang namanya variable global dan variable local. Hal itu juga dapat menimbulkan kesulitan dalam mencari error. Semua itu juga tergantung pada kita sebagai programer, untuk memilih pendekatan yang cocok dan lebih baik bagi kita dalam mengerjakan sebuah aplikasi.

Sehingga perbandingan antara OOP dengan Procedural Programming, keduanya memiliki struktur yang baik untuk membuat sebuah aplikasi, di mana OOP menekankan pada penggunaan object sementara Procedural Programming menekankan pada penggunaan function/procedure. Kita dapat melihat persamaannya, yaitu diperlukan kemampuan untuk menuliskan kode program secara terstruktur dan rapi, yang sangat penting untuk pembuatan aplikasi yang membutuhkan team work yang baik, ataupun untuk pengembangan aplikasi di masa yang akan datang.

2. Berikan penjelasan tentang salah satu Model Siklus Hidup dalam pengembangan

Software dari beberapa siklus hidup pengembangan yang Saudara ketahui ?.

Jawab :

Software Engineering (SE) terdiri dari 3 elemen kunci, yaitu : 1. Metode

Metode ini terdiri dari serangkaian tugas : • Perencanaan & estimasi proyek

• Analisis kebutuhan sistem dan software • Desain struktur data

• Arsitektur program dan prosedur algoritma • Coding, Testing dan pemeliharaan

2. Peralatan (Tools)

Peralatan software engineering memberikan dukungan atau semiautomasi untuk metode.

Contohnya :

• CASE yaitu suatu software yang menggabungkan software, hardware, dan database software engineering untuk menghasilkan suatu lingkungan software engineering. • Database Software Engineering, adalah sebuah struktur data yang berisi informasi

penting tentang analisis, desain, kode dan testing.

• Analogi dengan CASE pada hardware adalah : CAD, CAM, CAE 3. Prosedur, terdiri dari :

• urut-urutan di mana metode tersebut diterapkan

• dokumen, laporan-laporan, formulir-formulir yang diperlukan • mengontrol kualitas software

• mengkoordinasi perubahan yang terjadi pada software

Salah satu Model Siklus Hidup dalam pengembangan Software (Perangkat Lunak) : 1. Model Waterfall - Classic Life Cycle Paradigm

(4)

Keterangan :

a. System Engineering

Karena software merupakan bagian terbesar dari sistem, maka pekerjaan dimulai dengan cara menerapkan kebutuhan semua elemen sistem dan mengalokasikan sebagian kebutuhan tersebut ke software. Pandangan terhadap sistem adalah penting, terutama pada saat software harus berhubungan dengan elemen lain, seperti Hardware, Software, dan Database.

b. Analisis kebutuhan software

Suatu proses pengumpulan kebutuhan software untuk mengerti sifat-sifat program yang dibentuk software engineering, atau analis harus mengerti fungsi software yang diinginkan, performance dan interface terhadap elemen lainnya. Hasil dari analisis ini didokumentasikan dan direview / dibahas / ditinjau bersama-sama customer.

c. Design

Proses desain menterjemahkan kebutuhan ke dalam representasi software yang dapat diukur kualitasnya sebelum mulai coding. Hasil dari desain ini didokumentasikan dan menjadi bagian dari konfigurasi software.

d. Coding

Bentuk rancangan diubah menjadi suatu bahasa pemrograman yang dapat dimengerti oleh mesin komputer.

e. Testing

Segera sesudah objek program dihasilkan, pengetesan program dimulai. Proses testing difokuskan pada logika internal software. Jaminan bahwa semua pernyataan atau statements sudah dites dan lingkungan external menjamin bahwa definisi input akan menghasilkan output yang diinginkan.

f. Maintenance

Software yang sudah dikirim ke customer data berubah karena • Software mengalami error

• Software harus diadaptasi untuk menyesuaikan dengan lingkungan external, misalnya adanya sistem operasi baru atau peripheral baru.

• Software yang lebih disempurnakan karena adanya permintaan dari customer. Masalah yang dihadapi dari model siklus hidup klasik adalah :

• Proyek yang sebenarnya jarang mengikuti aliran sequential yang ditawarkan model ini. Iterasi (Pengulangan) selalu terjadi dan menimbulkan masalah pada aplikasi yang dibentuk oleh model ini.

• Seringkali pada awalnya customer sulit menentukan semua kebutuhan secara explisit (jelas).

• Customer harus sabar karena versi program yang jalan tidak akan tersedia sampai proyek software selesai dalam waktu yang lama.

(5)

3. Berikan penjelasan tentang konsep UML (Unified Modeling Language), jelaskan 9

(sembilan) Diagram yang ada pada UML ?.

Jawab :

Konsep UML (Unified Modeling Language) adalah pertama, scalability dimana objek lebih mudah dipakai untuk menggambarkan sistem yang besar dan komplek. Kedua, dynamic modeling, dapat dipakai untuk pemodelan sistem dinamis dan real time.

UML (Unified Modeling Language) adalah sebuah bahasa yang berdasarkan grafik/gambar untuk memvisualisasi, menspesifikasikan, membangun, dan pendokumentasian dari sebuah sistem pengembangan software berbasis OO (Object-Oriented). UML sendiri juga memberikan standar penulisan sebuah system blue print, yang meliputi konsep bisnis proses, penulisan kelas-kelas dalam bahasa program yang spesifik, skema database, dan komponen-komponen yang diperlukan dalam sistem software (http://www.omg.org). Pendekatan analisa & rancangan dengan menggunakan model OO mulai diperkenalkan sekitar pertengahan 1970 hingga akhir 1980 dikarenakan pada saat itu aplikasi software sudah meningkat dan mulai komplek. Jumlah yang menggunakaan metoda OO mulai diuji cobakandan diaplikasikan antara 1989 hingga 1994, seperti halnya oleh Grady Booch dari Rational Software Co., dikenal dengan OOSE (Object-Oriented Software Engineering), serta James Rumbaugh dari General Electric, dikenal dengan OMT (Object Modelling Technique). Kelemahan saat itu disadari oleh Booch maupun Rumbaugh adalah tidak adanya standar penggunaan model yang berbasis OO, ketika mereka bertemu ditemani rekan lainnya Ivar Jacobson dari Objectory mulai mendiskusikan untuk mengadopsi masing-masing pendekatan metoda OO untuk membuat suatu model bahasa yang uniform / seragam yang disebut UML (Unified Modeling Language) dan dapat digunakan oleh seluruh dunia.

UML (Unified Modeling Language) sebagai sebuah bahasa yang memberikan vocabulary dan tatanan penulisan kata-kata dalam ‘MS Word’ untuk kegunaan komunikasi. Sebuah bahasa model adalah sebuah bahasa yang mempunyai vocabulary dan konsep tatanan / aturan penulisan serta secara fisik mempresentasikan dari sebuah sistem. Seperti halnya UML adalah sebuah bahasa standard untuk pengembangan sebuah software yang dapat menyampaikan bagaimana membuat dan membentuk model-model, tetapi tidak menyampaikan apa dan kapan model yang seharusnya dibuat yang merupakan salah satu proses implementasi pengembangan software. UML tidak hanya merupakan sebuah bahasa pemograman visual saja, namun juga dapat secara langsung dihubungkan ke berbagai bahasa pemograman, seperti JAVA, C++, Visual Basic, atau bahkan dihubungkan secara langsung ke dalam sebuah object-oriented database. Begitu juga mengenai pendokumentasian dapat dilakukan seperti; requirements, arsitektur, design, source code, project plan, tests, dan prototypes.

9 (sembilan) diagram yang ada pada UML : • use-case, • class • object • state • sequence • collaboration • activity • component • deployment diagram

(6)

4. Dari rancangan database yang terbentuk dari ujian Intro Database yang sesuai

dengan ruang lingkup system yang dikembangkan. Sebagai seorang analis sistem,

Anda diminta untuk:

a. Membuat diagram use-case dari sistem yang dikembangkan tersebut. Anda

diminta melakukan beberapa asumsi, termasuk aktor atau peran yang

terlibat dalam use-case.

b. Buatlah diagram sequence untuk paling sedikit 2 (dua) proses yang terlibat

dalam sistem tersebut.

Jawab :

Toko Bandung Collection Mataram adalah toko yang begerak di bidang fashion masa kini.barang-barang yang dijual di toko ini berupa baju, celana dan yang berhubungan dengan style zaman sekarang.

Kegiatan yang dilakukan dalam system penjualan si toko fashion Bandung Collection Mataram ini antara lain :

1. pelanggan datang langsung ke toko untuk membeli barang secara cash dan dapat membawa pulang langsung barangnya.

2. kemudian pelanggan mendapat nota dari penjual. Barang yang sudah dicatat pada nota mempunyai asumsi barang ada di stock.

Use case diagram :

(7)

Swimlane diagram :

Class diagram analisa :

Referensi

Dokumen terkait

orientasi sebagai parameter untuk menghasilkan ciri penting dari citra masukan serta hasil dari ekstraksi tersebut menjadi nilai masukan pada proses klasifikasi

Analisis ragam (Lampiran 6) menunjukkan bahwa lama perendaman asam yang berbeda tidak memberikan berpengaruh nyata (P>0,05) terhadap tingkat kerenyahan pada kerupuk

CT scan dan MRI dapa dilakukan dengan indikasi tertentu, seperti: pasien baru pertama kali mengalami sakit kepala, ada perubahan dalam frekuensi serta derajat keparahan sakit

Sedangkan rendahnya rata-rata konsentrasi oksigen terlarut di zona lakustrin karena zona lakustrin memiliki kedalaman yang tinggi sehingga cahaya matahari yang masuk ke

Sehingga, dengan semakin besarnya rasio DER menunjukkan hutang yang dimiliki oleh perusahaan berlebihan dan mengindikasikan adanya kemungkinan bahwa emiten obligasi atau

Tersangka Agung erlangga, 20, warga Tanah Abang, Jakarta Pusat, yang sudah tidak diperdaya dibawa ke Polsek Tebet untuk diperiksa.. Semen- tara korban Sri Sudewi

Berdasarkan uraian tersebut, diadakanlah penelitian sebagai upaya konkret untuk menciptakan pembelajaran matematika yang efektif dengan menggunakan pendekatan

Diversifikasi produk merupakan suatu penganekaragaman produk yang selama ini sudah kita pasarkan. Apabila produk kita dapat beraneka ragam maka kita akan dapat