Kualitas Source Code dan Pengujian
Program
Nama pembuat :
Monyca
Melisa
1. Pengembangan Perangkat Lunak
Proses pengembangan perangkat lunak menurut Dwi Maryono adalah proses membagi pekerjaan pengembangan
perangkat lunak ke dalam fase yang berbeda. Tujuannnya meningkatkan desain, manajemen produk, dan manajemen
proyek.
Enam metode yang sering digunakan untuk mengembangkan perangkat lunak
a. Model Air Terjun Klasik ( Waterfall )
Metode ini pertama dikembangkan oleh Winston W. Royco. Terdapat lima tahapan proses, yaitu communication,
planning, modelling, construction, dan deployment.
Requirement
Analysis
System Design
Implementation
Testing
Deployment
Maintenance
Model waterfall
Communication merupakan tahapan yang pemilik proyek menyampaikan kebutuhan dan permasalahannya
kepada pengembang.
Proses perancangan (planning) dimulai dengan merumuskan estimasi kerja, kebutuhan sumber daya, serta
perencanaan alur kerja.
b. prototype
prototype merupakan sebuah metode yang pengembang dan client dapat saring membantu dalam
merancang suatu sistem. Pengembangan tidak hanya berperan ditahan awal saja, tetapi akan berlanjut terus
hingga pada tahap akhir dan sistem dapat berjalan dengan baik sesuai dengan perencanaan.
Model Prototype
Beberapa tahapan dalam model prototype
1) Menggumpulkan kebutuhan
Pengembangan dan client membahas mengenai sesuatu yang akan dibutuhkan dalam perancangan sistem tersebut,
seperti proses I/O, fitur-fitur yang ada pada sistem, dan sebagainya.
2) Membangun Prototype
Setelah kebutuhan sistem terdata, pengembang akan membuat perancangan sistem secara sederhana terlebih dahulu.
3) Evaluasi prototype
Mengevaluasi hasil prototype yang telah dibuat oleh pengembang (apakah sudah sesuai dengan permintaan client).
4) Pengkodean sistem
Jika sistem sudah melalui tahap evaluasi prototype dan tidak yang perlu diperbaiki lagi, pengembang akan melakukan
proses pengkodean sistem.
5) Pengujian sistem
Akan dilakukan suatu pengujian untuk mengetahui seberapa besar keberhasilan sistem tersebut.
6) Evaluasi sistem
Tugas client mengevaluasi sistem untuk mengurangi risiko terjadi eror pada sistem agar sistem dapat dikatakan user
friendly.
7) Penggunaaan sistem
Sistem yang sudah lolos melalui semua tahapan, artinya sistem sudah siap digunakan secara umum oleh user.
Kelebihan dan kekurangan metode atau model prototype.
Kelebihan :
1) Terjalinnya komunikasi yang baik antara pelanggan dan pengembang.
2) Memudahkan pengembang dalam menentukan kebutuhan pelanggan.
3) Penentuan kebutuhan lebih mudah diwujudkan.
4) Adanya partisipasi aktif client dalam pengembang sistem sehinggga hasil perangkat lunak mudah disesuaikan dengan
kebutuhan dan keinginan pelanggan.
5) Hemat waktu.
Kekurangan :
1) Proses perancangan dan analisis terlalu singkat.
2) Kurang fleksibel dalam menghadapi perubahan.
3) Terkadang pengembang membuat kompromi implementasi menggunkan sistem operasi yang tidak relevan dan algoritma
yang tidak efesien.
c. Model Rapid Application Development (RAD)
Merupakan metode yang menggunakan pendekatan interatif dan incremental, tetapi lebih menitikberatkan pada tenggat
waktu dan efisiensi biaya yang sesuai dengan kebutuhan.
Kelebihan :
1) Adanya prototype.
2) Proses pengembangan lebih cepat.
3) Pengurangan penulisan kode yang kompleks karena keberadaan reuse code.
Kekurangan :
1) Kurang relevan untuk proyek skala besar.
2) Diperlukan komitmen yang kuat antara pengembang dan pengguna.
3) Membutuhkan sumber daya yang besar untuk proyek yang besar.
d. Spiral
Metode ini pertama kali diperkenalkan oleh Barry Boehm. Menurut Barry Boehm model ini sangat berguna untuk
melakukan pembanggunan proyek- proyek besar dan prosesnya dilakukan dengan memperhatikan risiko proyek sehingga
pada akhirnya akan menghasilkan model proses yang tepat sesuai kebutuhan pengguna.
Model spiral merupakan gabungan dari model prototype dan model waterfall. Metode spiral menerapkan alur kerja
yang komplek, panjang, dan memakan waktu lama.
e. Agile
Agile merupakan metode pengembang perangkat lunak jangka pendek yang didasarkan pada pengembangan
berulang, dimana persyaratan dan solusintya berkembang melalui kolaborasi antara tim lintas fungsi dengan pengaturan
sendiri.
*Kelebihan : hemat biaya, menambah produktivitas tim, meningkatkan kualitas perangkat lunak, dan menambah tingkat
kepuasan konsumen.
*Kekurangan : memunculkan permasalahan dari arsitektur ataupun desain dan sulitnya memprediksi analisis, desain, dan
pengembang.
f. Scrum
Scrum merupakan metode yang menggunkan teknik pendekatan agile. Metode ini menggunakan kerangka kerja dimana
orang dapat mengatasi masalah adaptif yang komplek, tetapi juga secara produktif dan kreatif memberikan produk dengan
nilai setinggi mungkin.

Kualitas Source Code dan Pengujian Program P.pptx

  • 1.
    Kualitas Source Codedan Pengujian Program Nama pembuat : Monyca Melisa
  • 2.
    1. Pengembangan PerangkatLunak Proses pengembangan perangkat lunak menurut Dwi Maryono adalah proses membagi pekerjaan pengembangan perangkat lunak ke dalam fase yang berbeda. Tujuannnya meningkatkan desain, manajemen produk, dan manajemen proyek. Enam metode yang sering digunakan untuk mengembangkan perangkat lunak a. Model Air Terjun Klasik ( Waterfall ) Metode ini pertama dikembangkan oleh Winston W. Royco. Terdapat lima tahapan proses, yaitu communication, planning, modelling, construction, dan deployment. Requirement Analysis System Design Implementation Testing Deployment Maintenance Model waterfall
  • 3.
    Communication merupakan tahapanyang pemilik proyek menyampaikan kebutuhan dan permasalahannya kepada pengembang. Proses perancangan (planning) dimulai dengan merumuskan estimasi kerja, kebutuhan sumber daya, serta perencanaan alur kerja. b. prototype prototype merupakan sebuah metode yang pengembang dan client dapat saring membantu dalam merancang suatu sistem. Pengembangan tidak hanya berperan ditahan awal saja, tetapi akan berlanjut terus hingga pada tahap akhir dan sistem dapat berjalan dengan baik sesuai dengan perencanaan. Model Prototype
  • 4.
    Beberapa tahapan dalammodel prototype 1) Menggumpulkan kebutuhan Pengembangan dan client membahas mengenai sesuatu yang akan dibutuhkan dalam perancangan sistem tersebut, seperti proses I/O, fitur-fitur yang ada pada sistem, dan sebagainya. 2) Membangun Prototype Setelah kebutuhan sistem terdata, pengembang akan membuat perancangan sistem secara sederhana terlebih dahulu. 3) Evaluasi prototype Mengevaluasi hasil prototype yang telah dibuat oleh pengembang (apakah sudah sesuai dengan permintaan client). 4) Pengkodean sistem Jika sistem sudah melalui tahap evaluasi prototype dan tidak yang perlu diperbaiki lagi, pengembang akan melakukan proses pengkodean sistem. 5) Pengujian sistem Akan dilakukan suatu pengujian untuk mengetahui seberapa besar keberhasilan sistem tersebut. 6) Evaluasi sistem Tugas client mengevaluasi sistem untuk mengurangi risiko terjadi eror pada sistem agar sistem dapat dikatakan user friendly. 7) Penggunaaan sistem Sistem yang sudah lolos melalui semua tahapan, artinya sistem sudah siap digunakan secara umum oleh user.
  • 5.
    Kelebihan dan kekuranganmetode atau model prototype. Kelebihan : 1) Terjalinnya komunikasi yang baik antara pelanggan dan pengembang. 2) Memudahkan pengembang dalam menentukan kebutuhan pelanggan. 3) Penentuan kebutuhan lebih mudah diwujudkan. 4) Adanya partisipasi aktif client dalam pengembang sistem sehinggga hasil perangkat lunak mudah disesuaikan dengan kebutuhan dan keinginan pelanggan. 5) Hemat waktu. Kekurangan : 1) Proses perancangan dan analisis terlalu singkat. 2) Kurang fleksibel dalam menghadapi perubahan. 3) Terkadang pengembang membuat kompromi implementasi menggunkan sistem operasi yang tidak relevan dan algoritma yang tidak efesien. c. Model Rapid Application Development (RAD) Merupakan metode yang menggunakan pendekatan interatif dan incremental, tetapi lebih menitikberatkan pada tenggat waktu dan efisiensi biaya yang sesuai dengan kebutuhan. Kelebihan : 1) Adanya prototype. 2) Proses pengembangan lebih cepat. 3) Pengurangan penulisan kode yang kompleks karena keberadaan reuse code.
  • 6.
    Kekurangan : 1) Kurangrelevan untuk proyek skala besar. 2) Diperlukan komitmen yang kuat antara pengembang dan pengguna. 3) Membutuhkan sumber daya yang besar untuk proyek yang besar. d. Spiral Metode ini pertama kali diperkenalkan oleh Barry Boehm. Menurut Barry Boehm model ini sangat berguna untuk melakukan pembanggunan proyek- proyek besar dan prosesnya dilakukan dengan memperhatikan risiko proyek sehingga pada akhirnya akan menghasilkan model proses yang tepat sesuai kebutuhan pengguna. Model spiral merupakan gabungan dari model prototype dan model waterfall. Metode spiral menerapkan alur kerja yang komplek, panjang, dan memakan waktu lama. e. Agile Agile merupakan metode pengembang perangkat lunak jangka pendek yang didasarkan pada pengembangan berulang, dimana persyaratan dan solusintya berkembang melalui kolaborasi antara tim lintas fungsi dengan pengaturan sendiri. *Kelebihan : hemat biaya, menambah produktivitas tim, meningkatkan kualitas perangkat lunak, dan menambah tingkat kepuasan konsumen. *Kekurangan : memunculkan permasalahan dari arsitektur ataupun desain dan sulitnya memprediksi analisis, desain, dan pengembang.
  • 7.
    f. Scrum Scrum merupakanmetode yang menggunkan teknik pendekatan agile. Metode ini menggunakan kerangka kerja dimana orang dapat mengatasi masalah adaptif yang komplek, tetapi juga secara produktif dan kreatif memberikan produk dengan nilai setinggi mungkin.