Jawaban Tugas Akhir Matrikulasi Semester Ganjil 2009/2010

dokumen-dokumen yang mirip
MEMAHAMI PENGGUNAAN UML

Unified Modelling Language (UML)

PRAKTIKUM REKAYASA PERANGKAT LUNAK MODUL KE - 2 PENGENALAN UML dengan RATIONAL ROSE OLEH: ANISA ISTIQOMAH (KELAS 5 B)

Jenis Metode Pengembangan Perangkat Lunak

Oleh : RAHMADY LIYANTANTO

MAKALAH ANALISIS & PERANCANGAN SISTEM II USE CASE DIAGRAM

PertemuanI. Object Oriented

SEJARAH UML DAN JENISNYA

BAB II LANDASAN TEORI. implementasi serta pasca implementasi.(rizky, 2011:21). performasi dan fungsi yang diinginkan.

BAB III OBJEK DAN METODE PENELITIAN

BAB II TINJAUAN PUSTAKA

BAB III OBJEK DAN METODE PENELITIAN. Universitas Padjadjaran yang beralamat di Jl. Ir H. Djuanda No 4 Bandung.

BAB II LANDASAN TEORI

Unified Modelling Language UML

BAB II TINJAUAN PUSTAKA

SESI PERTAMA. 1.1 UML sebagai standarisasi. 1.2 UML, asal usul INFORMATION SYSTEM DESIGN USING UML YUDHO

BAB II LANDASAN TEORI. pendekatan komponen.dengan pendekatan prosedur, sistem dapat didefinisikan

BAB I PENDAHULUAN 1.1 Latar Belakang

BAB III. Metode Penelitian

Pendahuluan. 1 Pengenalan UML

MODUL 4 Unified Software Development Process (USDP)

BAB II LANDASAN TEORI. Sistem adalah suatu jaringan kerja dari prosedur-prosedur yang saling

BAB III METODOLOGI PENELITIAN

TUGAS I MANAGEMENT PROYEK SOFTWARE ENGINEERING. Disusun Oleh :

1. Analisis Desain 2. UML Sebagai Tools OOA

BAB I PENDAHULUAN. hal proses pengolahan data, baik itu data siswa, guru, administrasi sekolah maupun data

PENGANTAR RUP & UML. Pertemuan 2

BAB I PENDAHULUAN. 1.1 Latar Belakang

BAB 2 LANDASAN TEORI. Teori-teori yang menjadi dasar penulisan adalah sebagai berikut :

BAB II LANDASAN TEORI

Kebutuhan dan Spesifikasi Perangkat Lunak

BAB III METODOLOGI PENELITIAN. dalam pengumpulan data atau informasi guna memecahkan permasalahan dan

UNIFIED MODELING LANGUAGE

BAB II LANDASAN TEORI

Konsep Pemrograman Berorientasi Obyek

Disain System Berorientasi Objek (Unified Modeling Language) ( Studi Kasus : Sistem Informasi Manajemen Perpustakaan )

Yuli Purwati, M.Kom USE CASE DIAGRAM

Pendahuluan Rekayasa Perangkat Lunak II. Alif Finandhita. Teknik Informatika UNIKOM

DIAGRAM SEQUENCE UML

BAB 1 PENDAHULUAN 1.1 Latar Belakang Masalah

Rahmady Liyantanto Blog : liyantanto.wordpress.com

Pemograman Berorientasi Objek

BAB II LANDASAN TEORI. Unified Modeling Language (UML) merupakan sistem arsitektur yang bekerja dalam

REKAYASA PERANGKAT LUNAK II

BAB III METODE PENELITIAN

BAB II LANDASAN TEORI

BAB II LANDASAN TEORI. yang digunakan dalam penyelesaian Tugas Akhir ini, yaitu System Development

Explore Jurnal Sistem Informasi dan Telematika ISSN

Review Rekayasa Perangkat Lunak. Nisa ul Hafidhoh

REKAYASA PERANGKAT LUNAK

BAB I PENDAHULUAN. dalam suatu perusahaan, karena persediaan akan dijual secara terus menerus untuk

RANCANGAN PEMBELAJARAN

RANCANGAN APLIKASI LATIHAN BELAJAR TENSES DENGAN METODE OBJECT ORIENTED DESIGN

LEMBARAN SOAL ULANGAN KENAIKAN KELAS Tahun 2014/ Komunikasi Paket Keahlian

BAB III METODOLOGI PENELITIAN

BAB 1 PENDAHULUAN 1.1 Latar Belakang Masalah

BAB II LANDASAN TEORI

BAB I PENDAHULUAN. peran penting diantaranya adalah mengkoordinasikan, memfasilitasi, dan memberikan

RANCANG BANGUN SISTEM INFORMASI MONITORING PERKEMBANGAN PROYEK BERBASIS WEB (STUDI KASUS: PT. INTI PRATAMA SEMESTA)

BAB I PENDAHULUAN. 1.1 Latar Belakang

BAB I PENDAHULUAN. 1.1.Latar Belakang

DAFTAR ISI... LEMBAR JUDUL LEMBAR PENGESAHAN... SURAT PERNYATAAN... ABSTRAK... ABSTRACT... KATA PENGANTAR... DAFTAR TABEL... DAFTAR GAMBAR...

MATERI PEMODELAN PERANGKAT LUNAK KELAS XI RPL

BAB 1 PENDAHULUAN Latar Belakang

Bab 3 Metode dan Perancangan Sistem

BAB II LANDASAN TEORI

BAB III OBJEK DAN METODOLOGI PENELITIAN. sesuai dengan pendapat Sugiyono (2003:58) mendefinisikan bahwa:

METODOLOGI BERORIENTASI OBJEK IIM ABDURROHIM, S.T.,M.T

Rekayasa Perangkat Lunak (Software Engineering)

METODE DAN TEKNIK PENGEMBANGAN SISTEM INFORMASI

BAB I PENDAHULUAN 1.1 Latar Belakang

Teknik Informatika S1

TUGAS KELOMPOK MANAJEMEN PROYEK SOFTWARE ENGINEERING. Disusun oleh :

BAB III LANDASAN TEORI

BAB I PENDAHULUAN. menggunakan beberapa komputer yang terhubung dalam Local Area Network

UNIFIED MODELLING LANGUAGE (UML) APLIKASI PENJUALAN PADA TOKO BUKU (STUDI KASUS)

Konsep Pemrograman Berbasis Obyek

BAB II LANDASAN TEORI. pengenalan komputer aplikasi merupakan sistem yang dirancang dan disusun

Rancang Bangun Aplikasi Manajemen Data Siswa (Studi Kasus SMK Negeri 1 Karawang)

BAB II LANDASAN TEORI

PENGEMBANGAN PERANGKAT LUNAK

DAFTAR ISI... LEMBAR JUDUL LEMBAR PENGESAHAN... SURAT PERNYATAAN... ABSTRAK... ABSTRACT... KATA PENGANTAR... DAFTAR TABEL... DAFTAR GAMBAR...

BAB I PENDAHULUAN.

PERANCANGAN SISTEM INFORMASI SUMBER DAYA MANUSIA DI PT INFOMEDIA SOLUSI HUMANIKA BANDUNG

RENCANA PEMBELAJARAN SEMESTER (RPS)

BAB II TINJAUAN PUSTAKA

BAB III LANDASAN TEORI

BAB II LANDASAN TEORI

BAB II TINJAUAN PUSTAKA

Pengantar Analisis dan Desain Berbasis Obyek. Object Oriented Analysis and Design

MEDIA PEMBELAJARAN PENGENALAN BAGIAN-BAGIAN OTAK MANUSIA

Pengantar Analisis dan Desain Berbasis Obyek (Object Oriented Analysis and Design)

BAB III LANDASAN TEORI

OBJECT ORIENTED PROGRAMMING

REKAYASA PERANGKAT LUNAK. 3 sks Sri Rezeki Candra Nursari reezeki2011.wordpress.com

BAB II LANDASAN TEORI. terpadu untuk mengembangkan rencana rencana strategis yang diarahkan pada

IMPLEMENTASI ALGORITMA MINIMAX PADA PERMAINAN TIC-TAC-TOE SKALA 9X9

BAB I PENDAHULUAN. Berkembangnya usaha-usaha perdagangan yang sangat pesat pada saat

Bagian 7 ANALISIS DESAIN PADA PEMROGRAMAN BERORIENTASI OBJECT DENGAN UML

BAB 1 PENDAHULUAN. masyarakat dengan Kuliah Kerja Nyata (KKN) merupakan suatu bentuk kegiatan

Transkripsi:

Jawaban Tugas Akhir Matrikulasi Semester Ganjil 2009/2010 Nama Mahasiswa : Susanto e-mail : ntbsanto@yahoo.com Mata Kuliah : Intro to Information Object Oriented SE (Pengantar SE Berorientasi Objek) Dosen : Didik Setiyadi, M.Kom. e-mail : didik.setiyadi@eresha.ac.id tembusan : academic@eresha.ac.id ------------------------------------------------------------------------------------------------------------------------ 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?. 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 c. Program disusun dengan logika yang mudah dipahami 1

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 pengembangan aplikasi yang efisien di masa yang akan datang, mungkin dapat memilih pendekatan OOP. Tetapi, jika aplikasi tersebut merupakan program sederhana yang dapat dibuat dengan mudah dan cepat dengan function/procedure, maka digunakan pendekatan 2

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

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

3. Berikan penjelasan tentang konsep UML (Unified Modeling Language), jelaskan 9 (sembilan) Diagram yang ada pada UML?. 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 5

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. 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 : Activity diagram : 6

Swimlane diagram : Class diagram analisa : -- ooooo -- 7