WAHYU IVAN SATYAGRAHA - 5115100155
Terdapat beberapa pengertian mengenai software process menurut
para ahli :
1. Menurut
Reidar Conradi pada bukunya yang berjudul Software
Process Technology: 7th European Workshop, Software Process adalah Proses perangkat lunak yang
direpresentasikan sebagai sebuah proses program dan dapat mengeksekusi secara
otomatis.
2. Menurut Ian Sommerville pada bukunya yang berjudul Software Engineering (9th Edition), Software Process adalah Pendekatan sistematis yang digunakan dalam rekayasa perangkat lunak serta merupakan sebuah aktifitas terurut yang menuju kepada produksi dari pembuatan produk rekayasa perangkat lunak.
2. Menurut Ian Sommerville pada bukunya yang berjudul Software Engineering (9th Edition), Software Process adalah Pendekatan sistematis yang digunakan dalam rekayasa perangkat lunak serta merupakan sebuah aktifitas terurut yang menuju kepada produksi dari pembuatan produk rekayasa perangkat lunak.
3.
Sedangkan menurut M Deploy pada tulisannya yang berjudul Software Engineering Process, Software process adalah serangkaian langkah-langkah
yang terurut untuk membuat sebuah produk rekayasa perangkat lunak. Software
process adalah suatu hirarki yang tiap langkah dapat memiliki sub-sub langkah
dalam proses rekayasa perangkat lunak.
Terdapat 4 aktifitas umum yang mendasar pada semua proses rekayasa perangkat lunak, yaitu:
Terdapat 4 aktifitas umum yang mendasar pada semua proses rekayasa perangkat lunak, yaitu:
Software
specification, yaitu pengguna dan perekayasa menentukan perangkat lunak yang
akan dibuat dan dibatasi pada proyek tersebut.
Software
development, dimana perangkat lunak tersebut dirancang dan diprogram.
Software
validation, dimana perangkat lunak di cek apakah sudah memenuhi apa yang
dibutuhkan oleh pengguna
Software
evolution, dimana perangkat lunak diubah,diperbaiki untuk mengatasi perubahan
pengguna dan mengikuti perkembangan jaman.
Dalam software process terdapat beberapa model, yaitu:
1.
Waterfall, Model ini
adalah model yang pertama kali muncul pada tahun 1970an diperkenalkan oleh
Winston W. Royce. Model ini memisahkan fase spesifikasi dengan fase
pengembangan.
Ada 5 proses penting dalam model Waterfall:
1. Requirement analysis and definition (analis kebutuhan)
2. System and software design (perancangan sistem dan software)
3. Implementation and unit testing (implementasi dan testing)
4. Integration and system testing (integrasi dan pengujian sistem)
5. Operation and maintenance (operasi dan perawatan)
Ada 5 proses penting dalam model Waterfall:
1. Requirement analysis and definition (analis kebutuhan)
2. System and software design (perancangan sistem dan software)
3. Implementation and unit testing (implementasi dan testing)
4. Integration and system testing (integrasi dan pengujian sistem)
5. Operation and maintenance (operasi dan perawatan)
2.
RAD (Rapid Application Development),
Rapid Application Development (RAD) adalah sebuah strategi pengembangan sistem
yang menekankan kecepatan dalam pengembangan melalui keterlibatan pengguna
dalam pembangunan secara cepat, iteratif, dan incremental dari suatu
serangkaian prototype dari suatu sistem yang dapat berkembang menjadi suatu
sistem akhir atau versi tertentu.
3.
Prototyping Model, Pada model ini,
user berperan aktif dalam pembuatan software. model ini digunakan apabila
developer kesulitan dalam pengumpulan kebutuhan dan user juga tidak dapat
menggambarkan software yang diinginkannya, atau dimana user sering menambah dan
mengubah apa yang diinginkannya.
Untuk lebih memahami mengenai pembuatan suatu software dari segi
harga dan SDM, saya mengambil studi kasus pembuatan layanan mobile banking
milik salah satu bank terkemuka di Indonesia. Untuk biaya pembuatan software
mobile banking tersebut, Secara garis besar, ada 3 hal pengeluaran biaya
(project cost), yaitu hardware, software, dan service. Total ke 3 hal tersebut membutuhkan
biaya ratusan hingga milyaran rupiah tergantung dari jumlah orang yang
terlibat, gaji tiap pegawai, dan timeline dari proyek pembuatan software
tersebut.
Terdapat 6 jobdesk di dalam proyek pembuatan software mobile
banking tersebut. Dengan jumlah tim 100 – 200 orang tergantung kebijakan dari
proyek. Ke-6 jobdesk dan tugas nya adalah sebagai berikut :
Project Manager :
1.
Memberikan saran dan panduan mengenai
penerapan fungsional dan teknis sistem kepada Pelanggan
2.
Memberitahukan, membimbing dan mendukung proyek
tim dalam pelaksanaan, penggunaan dan pemeliharaan sistem
3.
Membuat dokumentasi yang tepat mengenai desain,
fungsi dan panduan sistem
Technical Lead (Developer) :
1.
Mengidentifikasi dan menyelesaikan masalah
teknis dan memberikan alternatif solusi teknis kepada Tim
2.
Memimpin perancangan dan finalisasi dokumen
desain teknis TI dan menandatangani nya
3.
Mengatur dan persiapkan dukungan yang
dibutuhkan oleh tim untuk mendefinisikan, mengembangkan, menguji, memindahkan
dan menyebarkan sistem
Developer :
1. Mengembangkan
dan menyesuaikan program dan antarmuka yang dibutuhkan oleh proyek.
2. Mengidentifikasi
dan melaporkan masalah segera ke Project Manager .
3. Mempersiapkan,
berpartisipasi atau memberikan masukan dan panduan mengenai kegiatan desain
teknis.
QA Lead :
1.
Membuat dan menyimpan dokumentasi kontrol QA
2.
menguji ulasan, pengendalian mutu, dan laporan
pengujian lainnya untuk akurasi, kelengkapan dan kepatuhan terhadap
persyaratan.
3.
Berkolaborasi dengan perwakilan QA klien untuk
memastikan kepuasan pelanggan terhadap produk dan layanan perusahaan
QA (Tester) :
1.
Bertanggung jawab dan mengembangkan
Dokumentasi Sistem (Skenario Uji, Script Uji, Rencana Uji, Panduan Pengguna)
berdasarkan Standar Pedoman Dokumentasi
2.
Menyelidiki keluhan pelanggan dan
ketidaksesuaian produk
3.
Melaporkan adanya temuan dan berkoordinasi
dengan Developer untuk perbaikan
Bussiness Analyst :
1.
Mendefinisikan, membuat, dan memelihara
parameter sistem
2.
Terus-menerus memelihara dan memperbarui
Dokumen Spesifikasi Fungsional sepanjang Siklus Hidup Proyek
3.
Melakukan dan memahami kebutuhan pengguna
bisnis
Tidak ada komentar:
Posting Komentar