istu dana aditya 1112510811 tugas 1 (individu)

14
MATA KULIAH REKAYASA WEB Dosen : Andry Sunandar TUGAS 1 REKAYASA WEB (INDIVIDU) Nama : Istu Dana Aditya Nim : 1112510811 PROGRAM STUDI SISTEM INFORMASI FAKULTAS TEKNOLOGI INFORMASI

Upload: istudana13

Post on 16-Apr-2017

125 views

Category:

Education


6 download

TRANSCRIPT

Page 1: Istu dana aditya 1112510811 tugas 1 (individu)

MATA KULIAH REKAYASA WEBDosen : Andry Sunandar

TUGAS 1 REKAYASA WEB (INDIVIDU)

Nama : Istu Dana Aditya

Nim : 1112510811

PROGRAM STUDI SISTEM INFORMASIFAKULTAS TEKNOLOGI INFORMASI

UNIVERSITAS BUDILUHURJAKARTA2015

Page 2: Istu dana aditya 1112510811 tugas 1 (individu)

A. METODE WATERFALL1. Sejarah Waterfall

Nama model ini sebenarnya adalah “Linear Sequential Model”. Model

ini sering disebut dengan “classic life cycle” atau model waterfall. Model ini

pertama kali yang diperkenalkan oleh Winston Royce sekitar tahun 1970

sehingga sering dianggap kuno, tetapi merupakan model yang paling

banyak dipakai didalam Software Engineering (SE). Model ini melakukan

pendekatan secara sistematis dan berurutan. Disebut

denganwaterfall karena tahap demi tahap yang dilalui harus menunggu

selesainya tahap sebelumnya dan berjalan berurutan.

2. Definisi Waterfall

Waterfall adalah model yang dikembangkan untuk pengembangan

perangkat lunak dan membuat perangkat lunak. Metode ini berkembang

secara sistematis dari satu tahap ke tahap lain dalam mode seperti air

terjun.

Model ini mengusulkan sebuah pendekatan kepada pengembangan

software yang sistematik dan sekuensial yang mulai dari tingkat kemajuan

sistem pada seluruh analisis, desain, kode, pengujian dan pemeliharaan.

Model ini melingkupi aktivitas-aktivitas sebgai berikut:

Rekayasa dan pemodelan sistem informasi

Analisis kebutuhan

Desain

Coding

Pengujian

Pemeliharaan

Model pengembangan ini bersifat linear dari tahap awal

pengembangan system yaitu tahap perencanaan sampai tahap akhir

pengembangan system yaitu tahap pemeliharaan. Tahapan berikutnya

tidak akan dilaksanakan sebelum tahapan sebelumnya selesai

dilaksanakan dan tidak bisa kembali atau mengulang ke tahap

sebelumnya.

Page 3: Istu dana aditya 1112510811 tugas 1 (individu)

3. Tahapan Metode Waterfall

Berikut ini merupakan tahapan atau fase yang paling umum tentang

model waterfall menurut Pressman:

a. System/Information Engineering and Modeling

Permodelan ini diawali dengan mencari kebutuhan dari

keseluruhan sistem yang akan diaplikasikan ke dalam bentuk

software. Hal ini sangat penting, mengingat software harus dapat

berinteraksi dengan elemen-elemen yang lain seperti hardware,

database, dsb. Tahap ini sering disebut dengan Project Definition.

b. Software Requirements Analysis

Proses pencarian kebutuhan diintensifkan dan difokuskan pada

software. Untuk mengetahui sifat dari program yang akan dibuat,

maka para software engineer harus mengerti tentang domain

informasi dari software, misalnya fungsi yang dibutuhkan, user

interface, dsb. Dari 2 aktivitas tersebut (pencarian kebutuhan sistem

dan software) harus didokumentasikan dan ditunjukkan kepada

pelanggan.

c. Design

Proses ini digunakan untuk mengubah kebutuhan-kebutuhan

diatas menjadi representasi ke dalam bentuk “blueprint” software

sebelum coding dimulai. Desain harus dapat mengimplementasikan

kebutuhan yang telah disebutkan pada tahap sebelumnya. Seperti 2

aktivitas sebelumnya, maka proses ini juga harus didokumentasikan

sebagai konfigurasi dari software.

d. Coding

Untuk dapat dimengerti oleh mesin, dalam hal ini adalah

komputer, maka desain tadi harus diubah bentuknya menjadi bentuk

yang dapat dimengerti oleh mesin, yaitu ke dalam bahasa

pemrograman melalui proses coding. Tahap ini merupakan

Page 4: Istu dana aditya 1112510811 tugas 1 (individu)

implementasi dari tahap design yang secara teknis nantinya dikerjakan

oleh programmer.

e. Testing / Verification

Sesuatu yang dibuat haruslah diujicobakan. Demikian juga

dengan software. Semua fungsi-fungsi software harus diujicobakan,

agar software bebas dari error, dan hasilnya harus benar-benar sesuai

dengan kebutuhan yang sudah didefinisikan sebelumnya.

f. Maintenance

Pemeliharaan suatu software diperlukan, termasuk di dalamnya

adalah pengembangan, karena software yang dibuat tidak selamanya

hanya seperti itu. Ketika dijalankan mungkin saja masih ada errors

kecil yang tidak ditemukan sebelumnya, atau ada penambahan fitur-

fitur yang belum ada pada software tersebut. Pengembangan

diperlukan ketika adanya perubahan dari eksternal perusahaan seperti

ketika ada pergantian sistem operasi, atau perangkat lainnya.

4. Keuntungan dan Kelemahan Waterfall

a. Keuntungan Waterfall

Merupakan model pengembangan paling handal dan paling lama

digunakan

Cocok untuk sistem software berskala besar

Cocok untuk system software yang bersifat generic

Pengerjaan project system akan terjadwal dengan baik dan mudah

dikontrol

b. Kelemahan Waterfall

Waktu pengembangan membutuhkan proses yang lama

Biaya yang mahal

Waterfall merupakan aliran yang linear, sehingga jika requirement

berubah proses tidak dapat diulang lagi

Tidak cocok untuk pemodelan pengembangan yang memiliki

kompleksitas tinggi

Page 5: Istu dana aditya 1112510811 tugas 1 (individu)

B. METODE SCRUM1. Definisi Scrum

Scrum merupakan framework untuk manajemen pengembangan

software dengan karakteristik cekatan dan bersifat iteratif dan incremental.

Scrum mendefinisikan dirinya fleksible, strategi pengembangan yang

menyeluruh di mana seluruh team bekerja sebagai satu unit dalam

mencapai sebuah gol yang sama.

Dalam menjalankan kerjasama antara anggota team, scrum

menekankan lokasi fisik yang sama atau sarana online yang akrab antara

semua member, dan juga pertemuan muka dengan muka setiap hari

antara semua anggota team.

Prinsip kunci dari scrum adalah memahami bahwa dalam project yang

tengah berlangsung, klien mungkin mengubah apa yang menjadi

kebutuhan dan keinginannya. Perubahan sulit diadaptasi oleh framework

pengembangan aplikasi yang bersifat tradisional.  Scrum menerima

perubahan ini dan memaksimalkan seluruh anggota team untuk

menyesuaikan perubahan mendadak ini.

Scrum mengadopsi permainan Rugby yang begitu mudah

menyesuaikan diri semua anggota team setelah ada sedikit pelanggaran.

Kemudian menyesuaikan diri inilah yang mengimpirasi scrum.

2. Tahapan Metode Scrum

Scrum mempunyai 3 tahapan sebagai berikut:

a. Product Owner

Product Owner bertanggung-jawab untuk memaksimalkan nilai

produk dan hasil kerja Tim Pengembang. Cara pelaksanaannya

sangat bervariasi antar organisasi, Tim Scrum dan individu. Product

Owner merupakan satu-satunya orang yang bertanggung-jawab untuk

mengelola Product Backlog. Pengelolaan Product Backlog mencakup:

Mengekspresikan dengan jelas item Product Backlog

Page 6: Istu dana aditya 1112510811 tugas 1 (individu)

Mengurutkan item di dalam Product Backlog untuk mencapai

tujuan dan misi dengan cara terbaik

Mengoptimalkan nilai dari hasil pekerjaan Tim Pengembang

Memastikan Product Backlog transparan, jelas, dan dapat dilihat

semua pihak, dan menunjukkan apa yang akan dikerjakan oleh

Tim Scrum selanjutnya

Memastikan Tim Pengembang dapat memahami item dalam

Product Backlog hingga batasan yang diperlukan

Product Owner dapat saja mengerjakan pekerjaan-pekerjaan di

atas, atau menyerahkan pengerjaannya kepada Tim Pengembang,

namun satu-satunya pihak yang bertanggung jawab tetaplah Product

Owner. Product Owner adalah satu orang dan bukan berupa sebuah

komite. Product Owner dapat mengejawantahkan aspirasi dari komite

ke dalam Product Backlog, namun mereka yang ingin merubah

prioritas item Product Backlog, harus melakukannya melalui Product

Owner.

Agar Product Owner berhasil menjalankan tugasnya, seluruh

organisasi harus menghormati setiap keputusan yang ia buat.

Keputusan dari Product Owner ini dapat dilihat dari isi dan urutan

Product Backlog. Tidak ada seseorang pun yang dapat memerintah

Tim Pengembang untuk mengerjakan kebutuhan lain selain Product

Owner. Dan Tim Pengembang pun tidak diperbolehkan untuk

melakukan apa yang diperintahkan oleh pihak lain selain Product

Owner.

b. Team Member

Tim Pengembang terdiri dari para profesional yang bekerja untuk

menghasilkan tambahan potongan produk (selanjutnya disebut

Inkremen) “Selesai”, yang berpotensi untuk dirilis di setiap akhir Sprint.

Hanya anggota Tim Pengembang yang mengembangkan Inkremen

ini.

Tim Pengembang dibentuk dan didukung oleh organisasi untuk

mengatur dan mengelola pekerjaannya secara mandiri. Sinergi yang

Page 7: Istu dana aditya 1112510811 tugas 1 (individu)

ada di dalam tim akan meningkatkan efisiensi dan efektifitas dari Tim

Pengembang secara keseluruhan. Tim Pengembang memiliki

karakteristik sebagai berikut:

Mereka mengatur dirinya sendiri. Tidak ada satu orang pun

(bahkan Scrum Master) yang memerintah Tim Pengembang

bagaimana cara merubah Product Backlog menjadi Inkremen

yang berpotensi untuk dirilis

Tim Pengembang berfungsi antar-lintas, sebagai sebuah tim,

memiliki semua keahlian yang dibutuhkan untuk menghasilkan

produk

Scrum tidak mengenal adanya jabatan tertentu untuk anggota Tim

Pengembang selain Pengembang, apapun pekerjaan yang

dikerjakan oleh masing-masing anggota tim; tidak ada

pengecualian untuk aturan yang satu ini

Tim Pengembang tidak mengenal adanya sub-tim yang

dikhususkan untuk bidang tertentu seperti pengujian atau analisa

bisnis; tidak ada pengecualian untuk aturan yang satu ini

Anggota Tim Pengembang boleh memiliki spesialisasi keahlian

dan fokus di satu area tertentu, namun akuntabilitas dari hasil dari

pekerjaan secara keseluruhan adalah milik Tim Pengembang.

c. Scrum Master

Scrum Master akan mencegah hal-hal yang mengalihkan focus

team. Scrum master akan membuat suasana kondusif supaya team

dapat bekerja sama dalam mencapai goal. Scrum Master bertanggung

jawab untuk memastikan Scrum telah dipahami dan dilaksanakan.

Scrum Master melakukannya dengan memastikan Tim Scrum

mengikuti teori, praktik, dan aturan main Scrum. Scrum Master adalah

seorang pemimpin yang melayani Tim Scrum.

Scrum Master membantu pihak di luar Tim Scrum, untuk

memahami apakah interaksi mereka dengan Tim Scrum bermanfaat

atau tidak. Scrum Master membantu setiap pihak untuk merubah

interaksi-interaksi yang tidak bermanfaat sehingga bisa

memaksimalkan nilai yang dihasilkan oleh Tim Scrum.

Page 8: Istu dana aditya 1112510811 tugas 1 (individu)

C. METODE SVN1. Definisi SVN

Subversion, atau dikenal juga dengan nama SVN, adalah suatu

perangkat lunak sumber terbuka pengontrol versi yang dapat mengatur

proses pengembangan perangkat lunak yang dilakukan oleh suatu

kelompok pemrogram yang terpisah menjadi runut dan teratur. Subversion

diciptakan oleh CollabNet yang memegang merek dagang “Subversion”

dan sampai sekarang masih memelihara proyek ini. Subversion tersedia

dalam versi Linux, Windows, FreeBSD, OpenBSD, Solaris, Mac OS X dan

OS/400. Subversion dirancang khusus sebagai pengganti modern dari

CVS. Untuk mencegah corrupt dalam database, SVN menggunakan

konsep operasi atom. Perubahan yang dilakukan terhadap sumber

diterapkan atau tidak, yang berarti tidak ada perubahan parsial pada

sumber aslinya. Contoh program dari SVN ini adalah tortoisesvn.

2. Keunggulan dan Kelemahan SVN

a. Keunggulan SVN

Sistem baru berdasarkan CVS

Menerapkan operasi atom

Murah dalam pengoperasian

Sistem terpusat, tidak mendukung peer to peer

Berbagai macam plug-in untuk ide

b. Kekurangan SVN

Masih ada bug dalam renam file maupun direktori

Perintah manajemen repositori tidak banyak

Kecepatan kompresi data lambat

Ketika server down, maka client tidak dapat mengakses

Page 9: Istu dana aditya 1112510811 tugas 1 (individu)

D. METODE GIT1. Definisi GIT

Git adalah sistem kendali kode sumber (revision control system, atau

version control system, atau VCS). Git pertama kali didesain dan dikoding

oleh Bapak Linux sendiri, Linus Torvalds, tahun 2005 untuk menggantikan

VCS komersial BitKeeper yang kala itu digunakan untuk mengatur kode

sumber Linux. Karena tidak menemukan sistem lain yang lebih cepat

untuk menangani kode sebesar kernel Linux, maka Linus menulis VCS

sendiri. Karenanya, salah satu fitur utama git sejak awal adalah

kecepatannya. Berbeda dari sistem kode sumber yang sudah terlebih dulu

popular sebelumnya yaitu CVS dan Subversion, git tidak bersifat

tersentralisasi melainkan terdistribusi. Artinya, setiap pengembang tidak

hanya menyimpan working copy di komputer lokalnya, tapi juga

menyimpan repositori, yang berisi sejarah lengkap perubahan.

Sementara di sistem tersentralisasi, hanya ada satu repositori tunggal

(umumnya di server yang dapat diakses oleh semua pengembang lewat

jaringan). Karena masing-masing pengembang memiliki repositori, maka

komit dapat dilakukan secara offline di repository lokal di komputer sendiri,

tidak harus terhubung ke repositori sentral di jaringan. Saat ingin

bertukar/mensinkronisasi hasil kerja dengan pengembang lainlah, baru

kita terkonek ke jaringan dan melakukan merging atau patching. Contoh

program dari Git adalah gibak, bup dan eigen class.

Konsep Git dari awal adalah pada kecepatannya dan sistemnya

terdistriusi yang memungkinkan untuk menjadikan Git bukan hanya

digunakan oleh programmer untuk memanajemem kode sumber program,

tetapi juga dapat digunakan oleh “pemakai biasa” untuk mengatur

berbagai jenis data. Oleh karena kecepatannya, maka Git sangat bagus

dalam kompresi data dibandingkan dengan VCS lain.

2. Keunggulan dan Kelemahan GIT

a. Keunggulan GIT

Kecepatan stabil

Page 10: Istu dana aditya 1112510811 tugas 1 (individu)

Design sederhana

Sistem terdistribusi, peer to peer

Mendukung dalam pengembangan non-linear

Murah dalam pengoperasian

Mendukung dalam proyek besar seperti Kernel Linux

Akses menggunakan command line

Penyimpanan murni berbasis file

b. Kelemahan GIT

Tidak optimal untuk pengembang tunggal

Dukungan unuk window terbatas dibandingkan Linux