proses PERANGKAT LUNAK PERTEMUAN 2
LEARNING OUTCOMES Mahasiswa dapat menjelaskan tentang proses-proses yang merupakan kerangka kerja untuk rekayasa perangkat lunak yang diterapkan dalam praktek
Model-model proses
Proses perangkat lunak Merupakan kerangka kerja untuk aktivitas-aktivitas, tindakan-tindakan, dan pekerjaan-pekerjaan yang diperlukan untuk mengembangkan perangkat lunak yang berkualitas tinggi. Kegiatan mendasar yang umum digunakan dalam proses perangkat lunak diantaranya : Spesifikasi perangkat lunak Fungsionalitas perangkat lunak dan batasan kemampuan operasinya harus didefinisikan Pengembangan perangkat lunak Perangkat lunak yang memenuhi spesifikasi harus diproduksi Validasi perangkat lunak Perangkat lunak harus divalidasi untuk menjamin bahwa perangkat lunak bekerja sesuai dengan apa yang diinginkan oleh pelanggan Evolusi perangkat lunak Perangkat lunak harus berkembang untuk memenuhi kebutuhan pelanggan
Tujuan proses perangkat lunak Memperkenalkan model proses perangkat lunak Menggambarkan beberapa model proses dan kapan digunakan Menggambarkan outline model proses untuk rekayasa kebutuhan, pengembangan, pengujian dan evolusi perangkat lunak Mengenalkan CASE (Computer Aided Software Engineering) untuk mendukung proses perangkat lunak
Perbedaan Rekayasa Perangkat Lunak dan Ilmu Komputer Ilmu Komputer berhubungan dengan teori dan metode yang mendasari sistem komputer dan perangkat lunak. Teori ini merupakan suatu model fisik dan analitik untuk menyelesaikan kasus yang spesifik. Rekayasa Perangkat Lunak berhubungan dengan masalah-masalah praktis untuk menghasilkan suatu perangkat lunak. Pendekatan dilakukan dengan model bisnis dan strategi bisnis suatu perangkat lunak.
Perbedaan Rekayasa Perangkat Lunak dan Rekayasa Sistem Rekayasa Sistem berhubungan dengan semua aspek pengembangan sistem berbasis komputer, termasuk perangkat keras, perangkat lunak dan rekayasa proses. Rekayasa Perangkat Lunak adalah bagian dari Rekayasa Sistem
Proses Perangkat Lunak Proses perangkat lunak adalah serangkaian kegiatan yang tujuannya untuk mengembangkan atau evolusi perangkat lunak. Kegiatan-kegiatan tersebut adalah: Spesifikasi perangkat lunak, Pengembangan perangkat lunak, Validasi perangkat lunak, Evolusi perangkat lunak
Model Pengembangan Sistem Model proses perangkat lunak adalah representasi yang disederhanakan dari proses perangkat lunak yang dipresentasikan dari sudut pandang tertentu Paradigma pengembangan model sistem : Waterfall Development Model Evolutionary Development Model Spiral Development Model Incremental Development Model
Waterfall Development Model
Pendekatan Waterfall Model Development activities are performed in sequential order, with possibly minor overlap, and minimal or no iteration between activities. User needs are determined, requirements are defined, and the full system is designed, built, and tested for ultimate delivery at one point in time. Some people refer to this as a stage-wise model.
Evolutionary Development Model Pengembangan Eksplorasi: Sistem berubah dengan adanya fitur-fitur tambahan dari user. Prototype yang dapat dibuang (Throw-Away): Memahami persyaratan user untuk mendapatkan definisi persyaratan yang lebih baik.
Evolutionary Development Model
Evolutionary Development Model Masalah-masalah dalam Pengembangan Evolusioner Proses tidak dapat dilihat Sistem seringkali mempunyai struktur yang tidak baik Mungkin diperlukan alat bantu khusus Model pengembangan evolusioner ini cocok untuk aplikasi yang kecil dan life-cycle yang pendek.
Spiral Development Model
Spiral Development Model Spiral Model Description The development spiral consists of four quadrants Quadrant 1: Determine objectives, alternatives, and constraints. Quadrant 2: Evaluate alternatives, identify, resolve risks. Quadrant 3: Develop, verify, next-level product. Quadrant 4: Plan next phases.
Incremental Development Model
Incremental Development Model Proses perangkat lunak dibagi menjadi serangkaian increment yang dikembangkan secara bergantian. Keuntungan Pengembangan Incremental User tidak perlu menunggu seluruh sistem dikirimkan, karena increment pertama mempunyai persyaratan kritis dan perangkat lunak segera dapat digunakan. User dapat memakai increment pertama sebagai prototype Resiko kegagalan proyek secara keseluruhan lebih rendah Pengujian paling ketat diberlakukan pada increment pertama.
Fase Utama Persyaratan Perangkat Lunak Studi Kelayakan Elisitasi dan Analisis Persyaratan Spesifikasi Persyaratan Validasi Persyaratan
Spesifikasi Persyaratan Perangkat Lunak Studi Kelayakan Elisitasi dan Analisis Persyaratan Spesifikasi Validasi Laporan Model Sistem User dan Sistem Dokumen
Kegiatan Perancangan Perangkat Lunak Perancangan Arsitektural Spesifikasi Abstrak Perancangan Interface Perancangan Komponen Perancangan Struktur Data Perancangan Algoritma
Perancangan dan Implementasi Perangkat Lunak Spesifikasi Persyaratan Perancangan Arsitektural Abstrak Interface Komponen Struktur Data Algoritma Arsitektur Sistem Perangkat Lunak Struktur data
Validasi Perangkat Lunak Pengujian Unit Pengujian Modul Pengujian Sub Sistem Pengujian Sistem 1 Pengujian Sistem 2 Pengujian Komponen Pengujian Integrasi Pengujian User
Evolusi Perangkat Lunak Definisi Persyaratan Sistem Nilai Sistem Yang Ada Pengajuan Perubahan Modifikasi Baru