Uploaded by User9463

TEKNIK SDLC

advertisement
TUGAS
PENJELASAN TEKNIK SDLC
OLEH :
HENRY ARIO HAFITZ
191041120006
PROGRAM STUDI S-1 SISTEM INFORMASI
FAKULTAS ILMU KOMPUTER
UNIVERSITAS UBUDIYAH INDONESIA
2019
1. V-Model
V-Model adalah jenis model SDLC dimana proses dijalankan secara
berurutan membentuk huruf V. V-Model juga dikenal sebagai model
Verifikasi dan Validasi. V-Model memiliki tahapan yang harus diselesaikan
untuk masuk ke tahapan berikutnya.
a.) Verifikasi, ini melibatkan Teknik analisis statis (tinjauan) yang
dilakukan tanpa mengeksekusi kode. Ini adalah proses evaluasi dari
fase pengembangan produk untuk menemukan apakah memenuhi
persyaratan yang ditentukan.
b.) Validasi, ini melibatkan teknik analisis dinamis, pengujian yang
dilakukan adalah dengan mengeksekusi kode. Validasi disini
dimaksudkan
untuk
mengevaluasi
perangkat
lunak
setelah
selesainya tahap pengembangan untuk menentukan apakah
perangkat lunak sudah sesuai.
1
Jadi, V-Model berisi fase verifikasi di satu sisi dan fase validasi di sisi
lain. Fase verifikasi dan validasi digabung dengan fase pengkodean
dalam bentuk-V, sehingga disebut V-Model.
Keuntungan menggunakan V-Model :
-
Model ini sangat terukur dimana setiap tahapan diselesaikan satu per
satu.
-
V-Model digunakan untuk proyek-proyek dimana persyaratan
proyek yang sudah jelas
-
Sederhana dan mudah dimengerti
-
Model ini berfokus pada kegiatan verifikasi dan validasi sehingga
membuat kemungkinan produk berjalan dengan baik
-
Dengan tahapan yang terukur, manajemen proyek dapat melacak
progress dari proyek secara akurat.
Kekurangan menggunakan V-Model :
-
Resiko tinggi
-
Tidak cocok untuk proyek yang kompleks dan berorientasi pada
objek
-
Tidak cocok untuk proyek yang tidak memiliki persyaratan yang
tidak jelas.
-
Sulit untuk dikerjakan semua tahapan secara bersamaan
Contoh penggunaan V-Model digunakan dalam proyek teknologi
informasi di negara Jerman. Hal ini berlaku terutama untuk proyek
teknologi informasi pada pada sektor pertahanan negara Jerman.
2. Big Bang Model
Big Bang Model adalah model SDLC di mana tidak ada langkah dan
prosedur pengembangan formal yang diikuti dan sangat sedikit perencanaan
yang diperlukan sebelum memulai pengembangan proyek. Dalam model
big-bang SDLC, pelanggan juga tidak mengerti dengan jelas tentang
kebutuhan fungsionalnya tentang sistem yang dikembangkan. Persyaratan
2
pelanggan tidak tetap dan bervariasi dengan waktu dan pelanggan percaya
sistem diimplementasikan dengan cepat tanpa banyak analisis. Biasanya
model Big Bang SDLC diikuti untuk proyek-proyek kecil di mana tim
pengembangan sangat kecil.
Big Bang Model ini ideal untuk pengembangan proyek kecil dengan satu
atau dua orang bekerja sama.
Keuntungan dari Big Bang Model :
Keuntungan dari Big Bang adalah sangat sederhana dan mudah
diimplementasikan. Model ini membutuhkan perencanaan yang sangat
sedikit atau tidak sama sekali. Tidak diperlukan prosedur formal sebelum
memulai proyek apa pun sehingga model ini mudah dikelola. Ini sangat
ideal untuk proyek berulang atau kecil dengan risiko minimum.
Kerugian dari Big Bang Model :
Karena tidak ada perencanaan awal yang diperlukan sebelum memulai
proyek maka model Big Bang adalah model yang sangat berisiko tinggi.
Selain itu jika perubahan dalam persyaratan atau persyaratan yang disalah
pahami bisa saja proyek harus di ubah total.
3
3. Rapid Application Development (RAD)
RAD adalah SDLC yang pertama kali diusulkan oleh IBM pada tahun
1980an, proyek pengembangan software yang dapat menggunakan model
ini adalah proyek yang dapat di pecah menjadi modul-modul kecil, dimana
setiap modul dapat ditugaskan secara terpisah ke tim. Modul-modul ini
kemudian digabungkan sehingga program dapat selesai.
Model RAD ini mrip seperti model Waterfall, dimana memiliki tahapan
yaitu menganalisis, merancang, mengkodekan dan kemudian menguji, dll.
Fitur lain yang mencolok dari model ini adalah rentang waktu pengerjaan
yang pendek
Model ini terdiri dari 4 fase dasar:
-
Perencanaan kebutuhan
-
Deskripsi pengguna
-
Konstruksi
-
Cut over
4
Keuntungan menggunakan RAD :
-
Feedback dari pemilik proyek tersedia pada tahap awal
-
Rentang waktu pengerjaan yang cepat
-
Progress dari pengerjaan dapat di ukur melalui berbagai tahapan
-
Dapat digunakan untuk memodifikasi sistem yang lama
Kekurangan menggunakan RAD :
-
Hanya sistem yang dapat dimodulasi yang dapat menggunakan
model ini
-
Keterlibatan
pemilik
proyek
diperlukan
sepanjang
proses
pengerjaan
-
Membutuhkan tim yang sangat professional
Contoh penggunaan model RAD adalah dalam pembuatan sistem informasi
manajemen, dimana terdapat berbagai modul, dan model RAD dipakai
untuk mempersingkat waktu pengerjaan.
4. Case Tools
Case Tools merupakan suatu teknik yang digunakan untuk membantu satu
atau beberapa fase dalam life-cycle software, termasuk fase analisis, desain,
implementasi dan maintenance dari software tersebut.
Case Tools memiliki beberapa kategori, diantaranya :
-
Information engineering-supporting products
-
Structured diagramming-supporting products.
-
Application-code-generating products.
Manfaat dari Case Tools dalam software engineering adalah sebagai
berikut:
-
Case tools memperbesar kemungkinan otomatisasi pada setiap fase
life-cycle software.
-
Case tools sangat membantu dalam meningkatkan kualitas design
model
suatu
software
sebelum
software
itu
5
dibangun/dikembangkan, baik itu untuk software yang dibangun
dalam simple maupun complex environment.
CASE tools diklasifikasikan sebagai berikut:
1. Upper CASE. CASE tools yang didesain untuk mendukung
perencanaan, identifikasi, dan seleksi proyek (permulaan dari
perencanaan proyek), tepatnya pada fase analisis dan desain dari suatu
system development life cycle (SDLC). Tools yang termasuk kelas ini
adalah jenis Diagramming tools, Form and report generators, dan
Analysis tools. Contoh CASE tools: Cradle, PRO-IV Workbench,
ProKit*WORKBENCH.
2. Lower CASE. CASE tools yang didesain untuk mendukung tahap
implementasi dan maintenance dari SDLC. Tools yang termasuk kelas
ini adalah jenis Code generators. Contoh CASE tools: Level/l-User
Sensitive CASE, PRO-IV application Development.
3. Cross life-cycle CASE/Integrated CASE (I-CASE). CASE tools yang
dirancang untuk mendukung aktifikas-aktifitas yang terjadi pada
beberapa fase dari SDLC. Mengkombinasikan Upper dan Lower CASE
menjadi satu. Tools yang termasuk kelas ini adalah jenis Project
management tools. Contoh CASE tools: Rational Rose, Poseidon,
ArgoUML, Catalyze, in-Step, Juggler, PRINCE.
6
Keuntungan teknologi CASE adalah sebagai berikut :
-
Perbaikan produktivitas.
-
Perbaikan kualitas program.
-
Penghematan biaya
-
Perbaikan prosedur pengendalian
-
Penyederhanaan dokumentasi
5. Formal Method
Fomal Method adalah teknik yang digunakan untuk memodelkan sistem
yang kompleks sebagai entitas matematika. Dengan membangun model
matematis yang ketat dari sistem yang kompleks, programmer tidak hanya
dapat memverifikasi properti sistem dengan cara yang lebih menyeluruh
tetapi juga menggunakan bukti matematika sebagai pelengkap pengujian
sistem untuk memastikan sistem berjalan dengan benar.
Formal Method mengadopsi pendekatan tiga langkah untuk pemodelan dan
evaluasi
sistem.
Selama
spesifikasi
formal,
pengembang
akan
mendefinisikan suatu sistem menggunakan bahasa pemodelan — biasanya
dengan menggunakan sintak formal dan matematis dan semantik yang
menghilangkan ketidaktepatan. Ini mirip dengan menuliskan spesifikasi
7
sistem. Berdasarkan spesifikasi, para pengembang mengembangkan
seperangkat teorema tentang perilaku suatu sistem. Teorema-teorema ini
diverifikasi melalui bukti matematis — untuk memastikan bahwa sistem
berjalan konsisten secara logis dan memang sesuai harapan. Karena hal ini
memungkinkan pengembang untuk menemukan kelemahan dalam
perancangan bahkan sebelum desain diimplementasikan ke dalam kode, hal
itu mencegah kesalahan fatal yang muncul di tahap pengembangan
selanjutnya. Akhirnya, setelah model ditentukan dan diverifikasi,
implementasi dapat dimulai dengan mengubah spesifikasi menjadi kode.
Kelebihan model ini adalah pengurangan waktu dan peningkatan
produktivitas yang besar. Sementara kekurangan model ini adalah
kemungkinan akan sulit memanfaatkan alat bantu/peralatan/tools 4GT
dibandingkan
dengan
menggunakan
bahasa
pemrograman
yang
konvensional, selain itu terdapat juga masalah dalam hal kode sumber yang
tidak efisien. Di samping itu, pemeliharaan sistem software besar yang
dikembangkan oleh 4GT juga masih sedang dalam proses pengkajian.
Contoh penggunaan Formal Method adalah pengembangan sistem pada
pesawat terbang.
6. Agile Method
Pada awalnya model waterfall sangat populer untuk menyelesaikan proyek.
Tetapi saat ini pengembang menghadapi berbagai masalah saat
menggunakannya untuk mengembangkan perangkat lunak. Kesulitan utama
termasuk menangani permintaan perubahan dari pelanggan selama
pengembangan proyek dan biaya tinggi dan waktu yang diperlukan untuk
memasukkan perubahan ini. Untuk mengatasi kelemahan model Waterfall
ini, pada pertengahan 1990-an model Pengembangan Perangkat Lunak
Agile diusulkan.
8
Agile Method dirancang untuk membantu proyek beradaptasi dengan
mengubah permintaan dengan cepat. Jadi, tujuan utama model Agile adalah
untuk memfasilitasi penyelesaian proyek yang cepat.
Agile Method mengadopsi pengembangan berulang. Setiap bagian
inkremental dikembangkan melalui iterasi. Setiap iterasi dimaksudkan
untuk menjadi kecil dan mudah dikelola dan yang dapat diselesaikan dalam
beberapa minggu saja.
Kelebihan Agile Method
-
Meningkatkan kepuasan kepada klien
-
Pembangunan system dibuat lebih cepat
-
Mengurangi resiko kegagalan implementasi software dari segi nonteknis
-
Jika pada saat pembangunan system terjadi kegagalan,kerugian dar
segi materi relative kecil.
9
7. Extreme Programming ( XP )
Extreme programming (XP) adalah salah satu kerangka pengembangan
perangkat lunak yang paling penting dari model Agile. Ini digunakan untuk
meningkatkan kualitas perangkat lunak dan responsif terhadap kebutuhan
pelanggan. Model pemrograman ekstrem merekomendasikan untuk
mengambil implementasi terbaik yang telah bekerja dengan baik di masa
lalu dalam proyek pengembangan program ke tingkat ekstrem.
Beberapa implementasi yang baik yang telah diakui dalam model
pemrograman
ekstrem
dan
disarankan
untuk
memaksimalkan
penggunaannya diberikan di bawah ini:
-
Peninjauan Kode: Peninjauan kode mendeteksi dan memperbaiki
kesalahan secara efisien.
-
Pengujian: Menguji kode membantu menghilangkan kesalahan dan
meningkatkan keandalannya
-
Pengembangan inkremental: Pengembangan inkremental sangat
baik karena feedback pelanggan diperoleh dan berdasarkan pada tim
10
pengembangan ini muncul peningkatan baru setiap beberapa hari
setelah setiap iterasi.
-
Kesederhanaan: Kesederhanaan membuatnya lebih mudah untuk
mengembangkan kode berkualitas baik serta untuk menguji dan
men-debug itu.
-
Desain: Desain berkualitas baik penting untuk mengembangkan
perangkat lunak berkualitas baik.
-
Pengujian integrasi: Membantu mengidentifikasi bug pada
antarmuka berbagai fungsi. Pemrograman ekstrem menunjukkan
bahwa pengembang harus mencapai integrasi berkelanjutan dengan
membangun dan melakukan pengujian integrasi beberapa kali.
8. Secrum Method
Scrum adalah iteratif dan pengembangan perangkat lunak kerangka kerja
tambahan tangkas untuk proyek-proyek perangkat lunak dan mengelola
produk atau pengembangan aplikasi. Scrum adalah sebuah framework yang
mengimplementasikan proses Agile Development. Untuk menjelaskan
bagaimana Scrum mengubah paradigma dalam proses bekerjaWalaupun
sebenarnya metode ini biasanya digunakan secara tim, tapi tidak ada
larangan untuk menggunakannya secara perorangan. Metode Scrum
membagi proses development menjadi beberapa Sprint.
11
Berikut ini uraian dari tahap-tahap pengembangan perangkat lunak dengan
menggunakan metode Scrum :
1.
Product Backlog
Bagian pertama ini adalah kumpulan dari hal-hal yang
diperlukan dan yang harus tersedia dalam produk. Produk
backlog berada dalam tanggung jawab product owner. Product
Backlog adalah daftar utama dari semua fungsi yang
diinginkan
dalam
produk.
Metodologi
Scrum
tidak
mengharuskan dokumentasi semua persyaratan pada awal
proyek.
2.
Sprint Backlog
Perencanaan Sprint dilakukan dalam pertemuan atau meeting
antara pemilik produk dan tim developer yang akan
berkolaborasi
untuk
memilih
product
backlog
untuk
dimasukan kedalam proses sprint. Hasil dari pertemuan
tersebut adalah Sprint Backlog.
3.
Sprint
Sprint adalah sebuah kerangka waktu yang berdurasi maksimal
1 bulan untuk mengembangkan produk yang berpontensi
untuk dirilis.
4.
Increment
Increment merupakan hasil dari seluruh hal dalam Product
Backlog yang telah selesai dikerjakan pada seluruh Sprint.
Pada akhir Sprint, Increment harus sudah benar-benar selesai,
yang berarti harus dalam keadaan yang useable.
Keuntungan Scrum :
-
Scrum membantu perusahaan dalam menghemat waktu dan uang.
-
Metode scrum membolehkan perusahaan dimana persyaratan bisnis
sulit untuk diukur menjadi mudah dikembangkan.
12
-
Pergerakan pengembangan cutting edge dapat dengan cepat
dikodekan dan diuji menggunakan metode ini. bagaikan kesalahan
yang mudah untuk diperbaiki.
-
Scrum merupakan sebuah metode yang mudah dikontrol yang mana
peningkatan pekerjaan dapat terjadi setiap periode waktu yang
ditentukan
-
Seperti metodologi agile lainnya, scrum juga merupakan metode
iteratif yang membutuhkan feedback secara kontinu dari user.
Kerugian Scrum :
-
Scrum adalah salah satu penyebab utama scope creep karena kecuali
ada tanggal akhir tertentu, stakeholder proyek manajemen akan
tergoda untuk terus menuntut fungsi baru disampaikan.
-
Jika tugas tidak didefinisikan dengan baik, perkirakan biaya proyek
dan waktu tidak akan akurat. Dalam kasus seperti itu, tugas dapat
tersebar di beberapa sprint.
-
Jika anggota tim tidak berkomitmen, maka proyek tidak akan selesai
atau bahkan gagal
-
Proyek yang kecil dapat bergerak dengan sangat baik karena hanya
diselesaikan oleh tim yang kecil
-
Metode ini hanya membutuhkan anggota tim yang berpengalaman,
jika tim berisi orang - orang yang masih pemula maka proyek tidak
dapat selesai sesuai waktunya
13
Download