A.Kualitas Perangkat Lunak dan Source Code
1.Pengembangan Perangkat Lunak
Proses pengembangan perangkat lunak menurut Dwi Maryono dalam Cakap Mengaplikasikan Informatika
Kelas XII SMA dan MA, adalah proses membagi pekerjaan pengembangan perangkat lunak ke dalam fase yang berbeda.
Tujuannya meningkatkan desain, manajemen produk, dan manajemen proyek. Sedikitnya ada enam metode yang
sering digunakan untuk mengembangkan perangkat lunak.
1.Pengembangan Perangkat Lunak
Proses pengembangan perangkat lunak menurut Dwi Maryono dalam Cakap Mengaplikasikan Informatika
Kelas XII SMA dan MA, adalah proses membagi pekerjaan pengembangan perangkat lunak ke dalam fase yang
berbeda. Tujuannya meningkatkan desain, manajemen produk, dan manajemen proyek. Sedikitnya ada enam metode
yang sering digunakan untuk mengembangkan perangkat lunak.
Metode ini pertama kali dikembangkan oleh Winston W.Royce.
Terdapat lima tahapan proses, yaitu communication, planning,
Construction,dan deployment.
Communication merupakan tahapan yang pemilik proyek
menyampaikan kebutuhan dan permasalahannya kepada pengembang.
Proses perencanaan (Planning) dimulai dengan merumuskan estimasi
kerja,kebutuhan sumber daya, serta perencanaan alur kerja. Dilanjutkan
dengan tahap perancangan struktur data, arsitektur, tampilan, dan
algoritma perangkat lunak.
Setelah itu, rancangan tersebut diaplikasikan pada perangkat keras
komputer dalam bentuk Bahasa pemrograman . Pada tahap
construction mencakup juga tahapan uji coba pengoperasian perangkat
lunak untuk mengetahui kekurangannya.
Prototype merupakan sebuah metode yang pengembang dan client dapat
saling membantu dalam merancang suatu sistem. Pengembang tidak hanya
berperan ditahap awal saja,tetapi akan berlanjut terus hingga pada tahap akhir
dan sistem dapat berjalan dengan baik sesuai dengan perencanaan.
Terdapat beberapa tahapa dalam model prototype sebagai berikut.
1) Membangun Prototype
2) Mengumpulkan Kebutuhan
3) Evaluasi Prototype
4) Pengkodean Sistem
5) Pengujian Sistem
6) Evaluasi Sistem
7) Penggunaan Sistem
Berikut kelebihan metode prototype
1) Terjalin 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 pengembangan sistem
sehingga hasil perangkat lunak mudah disesuaikan dengan
kebutuhan dan keinginan pelanggan.
5) Hemat waktu.
Berikut kekurangan metode Prototype:
1) Proses perancangan dan analisis terlalu singkat.
2) Kurang fleksibel dalam menghadapi
perubahan.
3) Terkadang pengembang membuat kompromi
implementasi menggunakan sistem operasi
yang tidak relevan dan algoritma yang tidak
efisien.
C. Model Rapid Application Development (RAD)
Rapid Application Development merupakan
metode yang menggunakan pendekatan iterative
dan incremental, tetapi lebih minitikberatkan pada
tenggat waktu dan efisiensi biaya yang sesuai
dengan kebutuhan.
Penegmbangan dengan metode RAD dianggap
lebih singkat. Hal ini karena baik pengembang
maupun pelanggan sama sama terlibat aktif di
setiap proses hingga hasilnya dapat tercapai. Selain
itu, tahapan kerja pada metode ini juga lebih
sedikit.
Tahap awal metode RAD yaitu melakukan
identifikasi tujuan yang dilanjutkan dengan
komunikasi dan perancangan, dimana seluruh pihak
terlibat aktif dalam setiap perumusannya. Tahap
kedua yaitu mendesain sistem atau perangkat lunak
sesuai kebutuhan yang juga melibatkan kedua belah
pihak. Pelanggan atau pengguna turut dalam uji
coba perangkat lunak. Apabila terdapat kesalahan
atau mengalami eror, perbaikan langsung di
terapkan.
Saat aplikasi telah sesuai dengan desain perangkat lunak,
telah melalui berbagai perbaikan, barulah proses kerja
menginjak pada tahap terakhir yaitu implementasi. Pada
tahap ini desain perangkat lunak mulai diterjemahkan
dalam bahsa mesin dan bisa digunakan.
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 antatra pengembang
dan pengguna.
3) Membutuhkan sumber daya yang besar untuk proyek
yang besar.
D. Spiral
Model spiral merupakan gabungan dari model prototype
dan model waterfall. Kegunaan dari model ini untuk
melakukan perubahan, penambahan, dan pengembangan
perangkat lunak dengan memaksimalkan aspek kecepatan
dan ketetapan berdasarkan keinginan dan kebutuhan
penggunanya.
Metode spiral menerapkan alur kerja yang kompleks,
panjang, dan memakan waktu lama. Metode ini tidak
cocok untuk proyek kecil-kecilan, apalagi dengan biaya
rendah. Sebaliknya proyek berskala besar dapat di
kerjakan dengan mudah menggunakan metode ini.
E. Agile
Agile merupakan metode pengembangan perangkat
lunak jangka pendek yang didasarkan pada pengembangan
berulang, dimana persyaratan dan solusinya berkembang
melalui kolaborasi antara tim lintas fungsi dengan
penganturan sendiri. Agile memiliki kelebihan, seperti
hemat biaya, menambah produktivitas tim, meningkatkan
kualitas perangkat lunak, dan menambah tingkat kepuasan
konsumen. Adapun kekurangannya, memunculkan
permasalahan dari arsitektur ataupun desain dan sulitnya
memprediksi analisis,desain,dan pengembangan.
F. Scrum
Scrum merupakan metode yang menggunakan teknik
pendekatan agile. Metode ini menggunakan kerangka
kerja dimana orang dapat mengatasi masalah adaptif
yang kompleks, tetapi juga secara produktif dan kreatif
memberikan produk dengan nilai setinggi mungkin.
Kerangka kerja scrum membagi proses pengembangan
menjadi target-target kecil yang dinyatakan dalam
satuan sprint.
Proses pengembangan dimulai dengan merumuskan
target sprint prioritas dari setiap tim, dilanjutkan
dengan pengindentifikasian pekerja spesifik serta
proses pengerjaan sesuai target sprint yang telah
ditentukan.
Setiap sprint berakhir, tim yang terlibat selalu
menyampaikan hasil pekerjaannya. Tahapan ini juga
mencakup evaluasi menyeluruh dan perumusan ide-ide
baru yang mungkin bisa diterapkan pada sprint
berikutnya.

Kualitas Source Code dan Pengujian Program.pptx

  • 2.
    A.Kualitas Perangkat Lunakdan Source Code 1.Pengembangan Perangkat Lunak Proses pengembangan perangkat lunak menurut Dwi Maryono dalam Cakap Mengaplikasikan Informatika Kelas XII SMA dan MA, adalah proses membagi pekerjaan pengembangan perangkat lunak ke dalam fase yang berbeda. Tujuannya meningkatkan desain, manajemen produk, dan manajemen proyek. Sedikitnya ada enam metode yang sering digunakan untuk mengembangkan perangkat lunak. 1.Pengembangan Perangkat Lunak Proses pengembangan perangkat lunak menurut Dwi Maryono dalam Cakap Mengaplikasikan Informatika Kelas XII SMA dan MA, adalah proses membagi pekerjaan pengembangan perangkat lunak ke dalam fase yang berbeda. Tujuannya meningkatkan desain, manajemen produk, dan manajemen proyek. Sedikitnya ada enam metode yang sering digunakan untuk mengembangkan perangkat lunak. Metode ini pertama kali dikembangkan oleh Winston W.Royce. Terdapat lima tahapan proses, yaitu communication, planning, Construction,dan deployment. Communication merupakan tahapan yang pemilik proyek menyampaikan kebutuhan dan permasalahannya kepada pengembang. Proses perencanaan (Planning) dimulai dengan merumuskan estimasi kerja,kebutuhan sumber daya, serta perencanaan alur kerja. Dilanjutkan dengan tahap perancangan struktur data, arsitektur, tampilan, dan algoritma perangkat lunak. Setelah itu, rancangan tersebut diaplikasikan pada perangkat keras komputer dalam bentuk Bahasa pemrograman . Pada tahap construction mencakup juga tahapan uji coba pengoperasian perangkat lunak untuk mengetahui kekurangannya.
  • 3.
    Prototype merupakan sebuahmetode yang pengembang dan client dapat saling membantu dalam merancang suatu sistem. Pengembang tidak hanya berperan ditahap awal saja,tetapi akan berlanjut terus hingga pada tahap akhir dan sistem dapat berjalan dengan baik sesuai dengan perencanaan. Terdapat beberapa tahapa dalam model prototype sebagai berikut. 1) Membangun Prototype 2) Mengumpulkan Kebutuhan 3) Evaluasi Prototype 4) Pengkodean Sistem 5) Pengujian Sistem 6) Evaluasi Sistem 7) Penggunaan Sistem Berikut kelebihan metode prototype 1) Terjalin 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 pengembangan sistem sehingga hasil perangkat lunak mudah disesuaikan dengan kebutuhan dan keinginan pelanggan. 5) Hemat waktu. Berikut kekurangan metode Prototype: 1) Proses perancangan dan analisis terlalu singkat. 2) Kurang fleksibel dalam menghadapi perubahan. 3) Terkadang pengembang membuat kompromi implementasi menggunakan sistem operasi yang tidak relevan dan algoritma yang tidak efisien.
  • 4.
    C. Model RapidApplication Development (RAD) Rapid Application Development merupakan metode yang menggunakan pendekatan iterative dan incremental, tetapi lebih minitikberatkan pada tenggat waktu dan efisiensi biaya yang sesuai dengan kebutuhan. Penegmbangan dengan metode RAD dianggap lebih singkat. Hal ini karena baik pengembang maupun pelanggan sama sama terlibat aktif di setiap proses hingga hasilnya dapat tercapai. Selain itu, tahapan kerja pada metode ini juga lebih sedikit. Tahap awal metode RAD yaitu melakukan identifikasi tujuan yang dilanjutkan dengan komunikasi dan perancangan, dimana seluruh pihak terlibat aktif dalam setiap perumusannya. Tahap kedua yaitu mendesain sistem atau perangkat lunak sesuai kebutuhan yang juga melibatkan kedua belah pihak. Pelanggan atau pengguna turut dalam uji coba perangkat lunak. Apabila terdapat kesalahan atau mengalami eror, perbaikan langsung di terapkan. Saat aplikasi telah sesuai dengan desain perangkat lunak, telah melalui berbagai perbaikan, barulah proses kerja menginjak pada tahap terakhir yaitu implementasi. Pada tahap ini desain perangkat lunak mulai diterjemahkan dalam bahsa mesin dan bisa digunakan. 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 antatra pengembang dan pengguna. 3) Membutuhkan sumber daya yang besar untuk proyek yang besar.
  • 5.
    D. Spiral Model spiralmerupakan gabungan dari model prototype dan model waterfall. Kegunaan dari model ini untuk melakukan perubahan, penambahan, dan pengembangan perangkat lunak dengan memaksimalkan aspek kecepatan dan ketetapan berdasarkan keinginan dan kebutuhan penggunanya. Metode spiral menerapkan alur kerja yang kompleks, panjang, dan memakan waktu lama. Metode ini tidak cocok untuk proyek kecil-kecilan, apalagi dengan biaya rendah. Sebaliknya proyek berskala besar dapat di kerjakan dengan mudah menggunakan metode ini. E. Agile Agile merupakan metode pengembangan perangkat lunak jangka pendek yang didasarkan pada pengembangan berulang, dimana persyaratan dan solusinya berkembang melalui kolaborasi antara tim lintas fungsi dengan penganturan sendiri. Agile memiliki kelebihan, seperti hemat biaya, menambah produktivitas tim, meningkatkan kualitas perangkat lunak, dan menambah tingkat kepuasan konsumen. Adapun kekurangannya, memunculkan permasalahan dari arsitektur ataupun desain dan sulitnya memprediksi analisis,desain,dan pengembangan. F. Scrum Scrum merupakan metode yang menggunakan teknik pendekatan agile. Metode ini menggunakan kerangka kerja dimana orang dapat mengatasi masalah adaptif yang kompleks, tetapi juga secara produktif dan kreatif memberikan produk dengan nilai setinggi mungkin. Kerangka kerja scrum membagi proses pengembangan menjadi target-target kecil yang dinyatakan dalam satuan sprint. Proses pengembangan dimulai dengan merumuskan target sprint prioritas dari setiap tim, dilanjutkan dengan pengindentifikasian pekerja spesifik serta proses pengerjaan sesuai target sprint yang telah ditentukan. Setiap sprint berakhir, tim yang terlibat selalu menyampaikan hasil pekerjaannya. Tahapan ini juga mencakup evaluasi menyeluruh dan perumusan ide-ide baru yang mungkin bisa diterapkan pada sprint berikutnya.