Upload
vokien
View
222
Download
3
Embed Size (px)
Citation preview
Pertemuan 5 dan 6@HSIRAIT
Keyword: HSIRAIT
Keterkaiatan RPL dengan Ilmu lainMethod AgileMethod Prototipe
Tujuan PerkuliahanUntuk menjelaskan bagaimana pengembangan
proses bertingkat ( incremental development ) memberikan hasil yang cepat dalam pembuatan perangkat lunak
Membahas esensi dari metode agile development Menjelaskan prinsip dan praktek dari extreme
programmingmenjelaskan peran prototype dalam proses
software
Keyword: HSIRAIT
TopikKeterkaiatan RPL dengan Ilmu lainMethod AgileMethod Prototipe
Keyword: HSIRAIT
RPL dengan Ilmu lain bidang ilmu manajemen meliputi
akuntansi, finansial, pemasaran, manajemen operasi, ekonomi, analisis kuantitatif, manajemen sumber daya manusia, kebijakan, dan strategi bisnis
bidang ilmu matematika meliputi aljabar linier, kalkulus, peluang, statistik, analisis numerik, dan matematika diskrit
bidang ilmu manajemen proyek meliputi semua hal yang berkaitan dengan proyek, seperti ruang lingkup proyek, anggaran, tenaga kerja, kualitas, manajemen resiko dan keandalan, perbaikan kualitas, dan metode-metode kuantitatif
bidang ilmu ergonomika menyangkut hubungan ( interaksi) antar manusia dengan komponen-komponen lain dalam sistem komputer
bidang ilmu rekayasa sistem meliputi teori sistem, analisis biaya-keuntungan, pemodelan, simulasi, proses, dan operasi bisnis
Keyword: HSIRAIT
Perkembangan RPLTahun Kejadian
1940an Komputer pertama yang membolehkan pengguna menulis kode
program langsung
1950an Generasi awal interpreter dan bahasa macro Generasi pertama
compiler
1960an Generasi kedua compiler Komputer mainframe mulai
dikomersialkan Pengembangan perangkat lunak pesanan
Konsep Software Engineering mulai digunakan
1970an Perangkat pengembang perangkat lunak Perangkat
minicomputer komersial
1980an Perangkat Komputer Personal (PC) komersial Peningkatan
permintaan perangkat lunak
1990an Pemrograman berorientasi obyek (OOP) Agile Process dan
Extreme Programming Peningkatan drastis kapasitas memori
Peningkatan penggunaan internet
2000an Platform interpreter modern (Java, .Net, PHP, dll) Outsourcing
Keyword: HSIRAIT
Model Pengembangan RPLWaterfallIncremental Prototyping ModelSpiral ModelRational Unified Process (RUP)Extreme Programming (XP)
Keyword: HSIRAIT
Model Rapid Aplication Development (RAD)
Adalah model proses pengembangan perangkat lunak yang bersifat inkremental terutama untuk waktu pengerjaan yang pendek. Model RAD adalah adaptasi dari waterfall model versi kecepatan tinggi.
Cat:Model RAD membagi tim pengembangan menjadi beberapa tim untuk mengerjakan beberapa komponen masing-masing tim pengerjaan dapat dilakukan secara pararel.
Keyword: HSIRAIT
Ilustrasi Model RAD
Keyword: HSIRAIT
DefenisiPemodelan Bisnis yaitu pemodelan yang dilakukan untuk
memodelkan fungsi bisnis untuk mengetahui informasi apa yang terkait proses bisnis, informasi apa saja yang harus dibuat, siapa yang membuat informasi itu, proses apa saja yang terkait informasi itu.
Pemodelan data yaitu memodelkan data apa saja yang dibutuhkan berdasarkan pemodelan bisnis dan mendenisikan atribut-atributnya beserta relasinya dengan data-data yang lain.
Pemodelan proses yaitu mengimplementasikan fungsi bisnis yang sudah didefinisikan terkait dengan pendefenisi an data.
Pembuatan aplikasi yaitu mengimplementasikan pemodelan proses dan data menjadi program
Keyword: HSIRAIT
Kelemahan RADUntuk pembuatan sistem perangkat lunak dengan
skala besar maka RAD akan memerlukan sumber daya manusia yang cukup besar.
Jika tidak ada persetujuan untuk pengembangan PL secara dengan cepat(Rapid) maka proyek dengan model ini akan gagal.
Jika sistem PL yang akan dibuat tidak bisa dimodelkan (dibagi-bagi menjadi beberapa komponen) maka model RAD tidak dapat digunakan.
Model RAD tidak cocok digunakan untuk sistem PL yang memiliki resiko teknis tinggi, mis menggunakan teknologi baru yang belum banyak dikenal.
Keyword: HSIRAIT
Kriteria Proyek RADAnggota tim sudah berpengalaman
mengembangkan PL yang sejenis.Pengembangan sudah memiliki komponen-
komponen sistem yg bisa digunakan kembali dalam proyek tersebut.
Keyword: HSIRAIT
Pengembangan Model RADAgile Software (Pengembangan Perangkat
Lunak “Tangkas”)dimana interaksi antar anggota tim dan pelanggan dianggap sebagai hal yang penting lebih dari perangkat ataupun proses pengembangan PL. Hal ini ditujukan agar pengembangan bersifat sangat tangkas dalam menengani perubahan yang terjadi. Contoh pengembangan perangkat lunak “Tangkas” adalah scrum dan pemrograman ekstrim.
Keyword: HSIRAIT
Pengembangan Scrum (semua Tim)Semua tim terlibat didalam prioyek secara
overlapping (tumpang tindih) sesuai dengan kebutuhan sumber daya pada proyek agar dapat meningkatkan kecepatan pengembangan dan fleksibilitas. Peran tim sudah ditentukan
Keyword: HSIRAIT
Extreme ProgrammingMengizinkan tim pengembangan untuk
berkomunikasi langsung dengan pelanggan (customer) atau user maupun sesama pembuat program.
Ciri khas model ini adalah komunikasi yang dilakukan setiap hari atau setiap ditemukan hal-hal yang kurang jelas. Model sangat mengandalkan adanya umpan balik sehingga dibutuhkan anggota-anggota tim yang berkualitas.
Keyword: HSIRAIT
Extreme Programming
Keyword: HSIRAIT
Keunggulan Extreme ProgrammingMenjalin komunikasi yang baik dengan klien.
(Planning Phase)2. Menurunkan biaya pengembangan
(Implementation Phase)3. Meningkatkan komunikasi dan sifat saling
menghargai antar developer. (Implementation Phase)
4. XP merupkan metodologi yang semi formal. (Planning Phase)
5. Developer harus selalu siap dengan perubahan karena perubahan akan selalu diterima, atau dengan kata lain fleksibel. (Maintenance Phase)
Keyword: HSIRAIT
kelemahanTidak bisa membuat kode yang detail di awal
(prinsip simplicity dan juga anjuran untuk melakukan apa yang diperlukan hari itu juga).
XP juga memiliki keunggulan yang sekaligus menjadi kelemahannya, yaitu XP tidak memiliki dokumentasi formal yang dibuat selama pengembangan. Satu-satunya dokumentasi adalah dokumentasi awal yang dilakukan oleh user.
http://www.agilemodeling.com/artifacts/userStory.htm
Keyword: HSIRAIT
Pertemuan 9
Keyword: HSIRAIT
Model IteratifMengombinasikan proses-proses pada model
air terjun dan iteratif pada model prototipe. Model inkremental akan menghasilkan versi-versi perangkat lunak yang sudah mengalami penambahan fungsi untuk setiap pertambahannya(inkremen/increment)
Keyword: HSIRAIT
Model Iteratif
Keyword: HSIRAIT
Incremental (Defenisi)Pengembangan dibagi menjadi bagian2 yang
dapat berkembang secara bertambah (increments)
Setiap bagian harus memenuhi fungsi-fungsi yang diperlukan
Kebutuhan pengguna diprioritaskan dan prioritas tertinggi didahulukan dalam pengembangan
Begitu dimulai, kebutuhan yang telah tertangani akan dibekukan sehingga memberikan tempat bagi kebutuhan lain untuk dapat berevolusi
Keyword: HSIRAIT
Kelebihan dan KekuranganKebutuhan pengguna / customer dipenuhi pada setiap
bagian yang selesai terlebih dahuluBagian yang selesai terlebih dahulu menjadi prototipe Resiko rendahBagian yang punya prioritas tertinggi dapat dites secara
intensivePermasalahanBatasan proses tidak jelasSistem kurang terstrukturKemampuan aplikasiUntuk sistem dengan interaksi skala kecil dan mediumUntuk antarmuka userUntuk sistem dengan masa penggunaan pendek
Keyword: HSIRAIT
Keyword: HSIRAIT
PrototipeMembuat sebuah contoh
prototipe untuk menunjukkan kebutuhan dan desain ke pemakai
Harus ada versi yang dapat dijalankan sebagai prototipe sebelum sistem dikembangkan (bisa berupa contoh sistem lain)
Harus ada implementasi sistem yang dikembangkan sebelum dibuat sebuah sistem final
Keyword: HSIRAIT
Mock-upSesuatu yang digunakan sebagai model
desain yang digunakan untuk mengajar, demontrasi, evaluasi desain, promosi, atau keperluan lain.
Keyword: HSIRAIT
Kelemahan PrototipePelanggan dapat sering mengubah-ubah menambah-
tambah spesifikasi kebutuhan karena menganggap aplikasi seudah dengan cepat dikembangkan, karena adanya iterasi ini dapat menyebabkan pengembangan banyak mengalah dengan pelanggan.
Pengembangan lebih sering mengambil kompromi dengan pelanggan untuk mendapatkan prototipe dengan waktu yang cepat sehingga pengembangan lebih sering melakukan segala cara(tanpa idealis) guna menghasilkan prototipe untuk didemonstrasikan. Hal ini dapat menyebakan kualitas PL kurang baik.
Model prototipe kurang cocok untuk aplikasi dengan skala besar
Keyword: HSIRAIT
KeuntunganCocok digunakan untuk menjabarkan kebutuhan
pelanggan secara lebih detail karena pelanggan sering kali kesulitan menyampaikan kebutuhannya secara detail tanpa melihat gambaran yang jelas.
Kegunaan sistem yang lebih baikKesesuaian sistem yang lebih dekat dengan
kebutuhan user.Kualitas desain yang lebih baikKeterpeliharaan yang lebih baikUsaha pengembangan yang lebih ringan
Keyword: HSIRAIT
Keyword: HSIRAIT
Model SpiralMendefinisikan kebutuhan dengan sedetail
mungkinPembuatan desain untuk sistem yang baruProses direpresentasikan dalam aktivitas
berbentuk spiralSetiap perulangan (loop) dalam spiral
merepresentasikan sebuah fase dalam prosesFase-fase tidak fix (spesikasi -design loop)
dipilih sesuai dengan yang diperlukanResiko selalu secara transparan dimonitor
dan dipecahkan selama proses berlangsungKeyword: HSIRAIT
Model Spiral
Keyword: HSIRAIT
Interface GenerationBanyak aplikasi yang berdasarkan seputar form yang kompleks, dan mengembangkan form tersebut secara manual sangat memakan waktu.
Environment RAD menyediakan dukungan untuk men-generate interface seperti:Bentuk interaktif pembuatan form dengan menggunakan teknik drag and drop
Hubungan antar form dimana urutan dari tampilan form dapat dispesifikasikan.
Verifikasi form
Keyword: HSIRAIT
Visual ProgrammingBahasa pemrograman yang digunakan untuk mengembangkan prototipe dengan mengembangkan antarmuka ( VB )
Banyak library component yang digunakan untuk mendukung sistem
Keyword: HSIRAIT
Visual programming with reuse
Keyword: HSIRAIT
Permasalahan pada Visual Development
Sulit untuk berkoordinasi dengan teamKetergantungan dengan software dapat menimbulkan kesulitan untuk melakukan maintenance
Keyword: HSIRAIT
Soal LatihanApa resiko yang dihadapi jika pengembangan
aplikasi (RPL) tidak mengikuti tahapan-tahapan SDLC
Mengapa waterfall model sebagai SDLC yang paling sederhana dan hanya cocok digunakan untuk aplikasi sekala kecil.
Mengapa ketika menerapkan metode prototipe, pada tahap awal harus benar-benar diperjelas batasan-batasan/ruang lingkup/spesifikasi perangkat lunak secara umum.
Mengapa metode RAD bisa memberikan hasil yang lebih cepat dibandingkan metode waterfall?
Keyword: HSIRAIT