Testing dan Implementasi Sistem Kontrak Perkuliahan
Review Rekayasa Perangkat Lunak
Manajemen Kualitas
Teknik & Strategi Testing
Implementasi Sistem
Suplement
Rekayasa Perangkat Lunak Dr. Karmilasari
Jurusan : S1 Sistem Informasi
1
Testing dan Implementasi Sistem
Rekayasa Perangkat Lunak
Kontrak Perkuliahan
Review Rekayasa Perangkat Lunak
Manajemen Kualitas
Teknik & Strategi Testing
Implementasi Sistem
Suplement
Rekayasa Perangkat lunak perangkat lunak pada dasarnya merupakan : Bagaimana dengan kemampuan beradaptasi
1. Aplikasi dari suatu pendekatan yang sistematik, disiplin dan dapat diukur pada pengembangan, operasi dan perawatan perangkat lunak, yaitu : penerapan rekayasa pada perangkat lunak 2. Studi pendekatan-pendekatan seperti pada (1)
Jurusan : S1 Sistem Informasi
2
Testing dan Implementasi Sistem Kontrak Perkuliahan
Review Rekayasa Perangkat Lunak
Manajemen Kualitas
Teknik & Strategi Testing
Implementasi Sistem
Suplement
Rekayasa Perangkat Lunak
Lapisan Rekayasa Perangkat Lunak
Perkakas Metode Proses Fokus pada Kualitas
Jurusan : S1 Sistem Informasi
3
Testing dan Implementasi Sistem Kontrak Perkuliahan
Review Rekayasa Perangkat Lunak
Manajemen Kualitas
Teknik & Strategi Testing
Implementasi Sistem
Suplement
Rekayasa Perangkat Lunak
Kerangka Kerja PROSES Perangkat Lunak Kerangka Kerja Aktivitas • pekerjaan • produk-produk kerja • batu pijakan proyek (milestones) & penyebarannya • titik kualitas (QA)
Aktivitas Penyangga Adaptasi terhadap proses PL merupakan hal yang esensial bagi keberhasilan suatu proyek
• Komunikasi • Perencanaan • Pemodelan • Analisis Kebutuhan • Perancangan • Konstruksi • Pembentukan kode • Pengujian • Penyerahan PL ke pengguna ( deployement) • Penelusuran dan kendali proyek PL • Manajemen risiko • Penjaminan kualitas PL • Ulasan/tinjauan teknis • Pengukuran • Manajemen konfigurasi PL • Manajemen penggunaan ulang •Persiapan produk kerja dan produksi Jurusan : S1 Sistem Informasi
4
Testing dan Implementasi Sistem
Rekayasa Perangkat Lunak
Kontrak Perkuliahan
Review Rekayasa Perangkat Lunak
Manajemen Kualitas
Teknik & Strategi Testing
Implementasi Sistem
Suplement
MODEL Proses Preskriptif Menetapkan satu kumpulan elemen-elemen proses yang telah ditentukan dan satu aliran kerja proses yang dapat diprediksi
Jurusan : S1 Sistem Informasi
5
Testing dan Implementasi Sistem Kontrak Perkuliahan
Review Rekayasa Perangkat Lunak
Manajemen Kualitas
Teknik & Strategi Testing
Implementasi Sistem
Suplement
Rekayasa Perangkat Lunak
Model Air Terjun (Waterfall) Com m unic a t ion proje c t init ia t ion re quire m e nt ga t he ring
Planning estimating scheduling tracking
Mode ling analysis design
Const r uc t ion code t est
De ploy m e nt de liv e ry s upport f e e dba c k
Jurusan : S1 Sistem Informasi
6
Testing dan Implementasi Sistem Kontrak Perkuliahan
Review Rekayasa Perangkat Lunak
Manajemen Kualitas
Implementasi Sistem
Teknik & Strategi Testing
Suplement
Rekayasa Perangkat Lunak
Model Inkremental
increment # n Com m un ic a t i on P la n ni ng M o de li ng a nal y s is d es i gn
Co n s t ru c t i o n c od e t es t
De p l o y m e n t de liv e ry fe e db a c k
deliv ery of nt h increment
increment # 2 Com m u ni c a t i on P la n ni ng M o de li ng a naly s is d es ig n
Co n s t ru c t i o n c ode
De p l o y m e n t
t es t
d e l i v e ry
deliv ery of 2nd increment
f e e db a c k
increment # 1 Com m u ni c a t i on P la n ni ng M o de li ng a naly s is d es ig n
Co n s t ru c t i o n c ode
De p l o y m e n t
t es t
d e l i v e ry f e e db a c k
deliv ery of 1st increment
project calendar t ime Jurusan : S1 Sistem Informasi
7
Testing dan Implementasi Sistem Kontrak Perkuliahan
Review Rekayasa Perangkat Lunak
Manajemen Kualitas
Teknik & Strategi Testing
Implementasi Sistem
Suplement
Model RAD (Rapid Application Development) Rekayasa Perangkat Lunak
Team # n M o d e lin g busines s m odeling dat a m odeling proc es s m odeling
Co n s t r u ct io n com ponent reuse aut om at ic c ode generat ion t es t ing
Team # 2
Com mu nicat ion
Mo d el ing b usin e ss m o de li ng d at a m o de li ng p ro ce ss m o d el in g
Plann ing Co nst ruct io n
Team # 1
co m p on e nt reu se a ut om a t ic co d e g e ne ra t i on t e st in g
Mode lin g
De p loym e nt int egrat ion deliv ery feedback
business modeling dat a modeling process modeling
Co nst ru ct ion component reuse aut omat ic code generat ion t est ing
6 0 - 9 0 days
Jurusan : S1 Sistem Informasi
8
Testing dan Implementasi Sistem Kontrak Perkuliahan
Review Rekayasa Perangkat Lunak
Manajemen Kualitas
Teknik & Strategi Testing
Implementasi Sistem
Suplement
Rekayasa Perangkat Lunak
Model Evolusioner : PROTOTIPE Q u ick p l an
Com mu nicat ion
Mo d e l in g Q u i ck d e si g n
Deployment De live r y & Fe e dback
Con st r uct ion of pr ot ot ype
Jurusan : S1 Sistem Informasi
9
Testing dan Implementasi Sistem Kontrak Perkuliahan
Review Rekayasa Perangkat Lunak
Manajemen Kualitas
Teknik & Strategi Testing
Implementasi Sistem
Suplement
Rekayasa Perangkat Lunak
Model Evolusioner : SPIRAL planning estimation scheduling risk analysis
communication modeling analysis design start
deployment delivery feedback
construction code test
Jurusan : S1 Sistem Informasi
10
Testing dan Implementasi Sistem
Rekayasa Perangkat Lunak
Kontrak Perkuliahan
Review Rekayasa Perangkat Lunak
Manajemen Kualitas
Model Evolusioner : KONKUREN
Implementasi Sistem
Teknik & Strategi Testing
Suplement
none Modeling act ivit y
represents the state of a sof tware engineering act ivity or t ask
Under development
A wait ing changes
Under review Under revision Baselined
Done
Jurusan : S1 Sistem Informasi
11
Testing dan Implementasi Sistem Kontrak Perkuliahan
Review Rekayasa Perangkat Lunak
Manajemen Kualitas
Teknik & Strategi Testing
Implementasi Sistem
Suplement
Rekayasa Perangkat Lunak
Model Proses Lain : PROSES TERPADU (Unified Process /UP) Suatu proses perangkat lunak yang bersifat “dikendalikan” oleh use case, berpusat pada arsitektur, bersifat iteratif melalui penambahan sedikit demi sedikit (incremental) menggunakan Unified Modelling Languange (UML) Elab o r at io n Incep t io n
co nst r uct io n Release soft ware increment
t r ansit io n Jurusan : S1 Sistem Informasi
p r o d uct io n
12
Testing dan Implementasi Sistem Kontrak Perkuliahan
Review Rekayasa Perangkat Lunak
Manajemen Kualitas
Teknik & Strategi Testing
Implementasi Sistem
Suplement
Rekayasa Perangkat Lunak
Penerapan Rekayasa Perangkat Lunak •
Intisari penerapan rekayasa PL : – – – –
•
Memahami permasalahan (komunikasi dan analisis) Merencanakan suatu solusi (pemodelan dan dan perancangan PL) Menjalankan rencana (pembuatan kode) Menguji keakuratan hasil (uji coba dan jaminan kualitas / quality assurance)
Prinsip dasar penerapan rekayasa PL : 1. 2. 3. 4. 5. 6. 7. 8.
Bagi dan pecahkan Memahami penggunaa abstraksi Berusaha untuk konsisten Berforkus pada pengalihan informasi Kembangkan PL yang menekankan pada modularitas yang efektif Mencari pola Jika mungkin, lihatlah permasalahan dan penelisaian dari berbagai sudut pandang berbeda Ingatlah bahwa seseorang akan melakukan pemeliharaan terhadap PL yang dikembangkan Jurusan : S1 Sistem Informasi
13
Testing dan Implementasi Sistem Kontrak Perkuliahan
Review Rekayasa Perangkat Lunak
Manajemen Kualitas
Teknik & Strategi Testing
Implementasi Sistem
Suplement
Rekayasa Perangkat Lunak
Kerangka umum proses rekayasa PL • Komunikasi • Perencanaan • Pemodelan • Konstruksi • Penyebaran PL kepada Pengguna / Deployment
Jurusan : S1 Sistem Informasi
14
Testing dan Implementasi Sistem Kontrak Perkuliahan
Review Rekayasa Perangkat Lunak
Manajemen Kualitas
Teknik & Strategi Testing
Implementasi Sistem
Suplement
Rekayasa Perangkat Lunak
Penerapan KOMUNIKASI • • • • • • • • • •
Mendengarkan Mempersiapkan diri sebelum berkomunikasi Memfasilitasi komunikasi Bertemu muka Membuat catatan dan dokumentasi Kolaborasi dengan pelanggan/pengguna Tetap fokus Membuat gambar untuk memperjelas maksud Melakukan pergerakan ke pembahasan lain Bernegosiasi dengan berbagai pihak untuk memberikan hasil terbaik
Jurusan : S1 Sistem Informasi
15
Testing dan Implementasi Sistem Kontrak Perkuliahan
Review Rekayasa Perangkat Lunak
Manajemen Kualitas
Teknik & Strategi Testing
Implementasi Sistem
Suplement
Rekayasa Perangkat Lunak
Penerapan PERENCANAAN • • • • • • • • • •
Memahami ruang lingkup proyek Melibatkan pelanggan/pengguna/stakeholder Mengenali rencana sebagai suatu yang bersifat iteratif Memperkirakan segala sesuatu dari apa yang kita ketahui Mempertimbangkan resiko Realistis Melakukan penyesuaian secara granular dari apa yang direncanakan Mendefinisikan kualitas yang ingin dicapai Mendefinisikan bagaimana mengakomodasi perubahan Disiplin pada jalur yang telah direncanakan
Jurusan : S1 Sistem Informasi
16
Testing dan Implementasi Sistem Kontrak Perkuliahan
Review Rekayasa Perangkat Lunak
Manajemen Kualitas
Teknik & Strategi Testing
Implementasi Sistem
Suplement
Penerapan PEMODELAN
Rekayasa Perangkat Lunak
•
Prinsip Pemodelan (untuk metode Agile / proses cepat) : 1. Tujuan utama tim PL adalah mengembangkan PL, bukan membuat model 2. Jangan membuat model lebih banyak dari yang kita perlukan 3. Berusahalah membuat model sederhana yang menjelaskan permasalahan atau perangkat lunak 4. Kembangkan model-model sedemikian rupa sehingga perubahan memungkinkan 5. Berusahalan untuk menetapkan suatu keguanaan eksplisit untuk masing- masing model yang dibuat 6. Adaptasi model yang kita kembangkan dengan perubahan yang terjadi pada sistem 7. Cobalah untuk mengembangkan model-model yang bermanfaat, tetapi lupakan tentang model-model yang sempurna 8. Jangan kaku dengan sintaks model. Jika model saat ini dapat mengkomunikasikan isi dengan baik, penampilan adalah nomor dua 9. Jika secara institusi kita merasa bahwa model tidak benar meski kelihatannya di atas kertas tidak ada masalah, kita mungkin memiliki alasan untuk mempertimbangkannya ulang 10.Dapatkan umpan balik sesegera mungkin Jurusan : S1 Sistem Informasi
17
Testing dan Implementasi Sistem Kontrak Perkuliahan
Review Rekayasa Perangkat Lunak
Manajemen Kualitas
Teknik & Strategi Testing
Implementasi Sistem
Suplement
Rekayasa Perangkat Lunak
Penerapan PEMODELAN • Prinsip Pemodelan Spesifikasi Kebutuhan : 1. Ranah informasi dari suatu permasalahan harus ditampilkan 2. Fungsi-fungsi yang dilakukan PL harus didefinisikan 3. Perilaku PL akibat kejadian-kejadian (Event) yang bersifat eksternal harus direpresentasikan 4. Model yang menjelaskan informasi, fungsi dan perilaku harus dipisahkan dalam bentuk yang tidak menyingkapkan rinciannya dan harus digambarkan dalam bentuk perlapisan atau hirarki 5. Pekerjaan analisis seharusnya bergerak dari informasi yang bersifat esensial menuju rincian implementasi
Jurusan : S1 Sistem Informasi
18
Testing dan Implementasi Sistem Kontrak Perkuliahan
Review Rekayasa Perangkat Lunak
Manajemen Kualitas
Teknik & Strategi Testing
Implementasi Sistem
Suplement
Penerapan PEMODELAN
Rekayasa Perangkat Lunak
•
Prinsip Pemodelan Rancangan : 1. 2. 3. 4. 5.
6. 7. 8. 9.
Rancangan harus bisa dilacak balik ke model spesifikasi kebutuhan Selallu pertimbangkan arsitektur sistem/perangkat luank yang akan dikembangkan Perancangan data sama pentingnya dengan perancangan fungsi-fungsi Antarmuka-antarmuka (baik yang bersifat internal maupun yang bersifat eksternal) harus dirancanga secara hati-hati Perancangan antarmuka pengguna seharusnya disesuaikan dnegan kebutuhan pengguna. Meski demikian, dalam setiap kasus, antarmuka harus dibuat dengan menekankan kemudahan penggunaanya Perancangan peringkat komponen sebaiknya mandiri secara fungsional Kompoenen-komponen seharusnya bersifat saling tidak bergantung satu sama lain dan juga tidak bergantung pada lingkungan eksternal Representasi rancangan (model) seharusnya dapat dipahami dengan mudah Perancangan seharusnya dikembangkan secara iteratif, dimana dalam masingmasing iterasi, perancang seharusnya menekankan kesederhanaan Jurusan : S1 Sistem Informasi
19
Testing dan Implementasi Sistem Kontrak Perkuliahan
Review Rekayasa Perangkat Lunak
Manajemen Kualitas
Teknik & Strategi Testing
Implementasi Sistem
Suplement
Rekayasa Perangkat Lunak
Penerapan KONSTRUKSI • Persiapan sebelum membuat kode/program : – Memahami masalah yang akan dicarikan solusinya (berdasarkan komunikasi dan pemodelan) – Memahami dasar dari prinsip perancangan dan konsepnya – Memilih bahasa pemrograman yang tepat dengan PL yang akan dibangun dan lingkungan tempat PL tersebut akan dioperasikan – Memilih lingkungan pemrograman yang menyediakan perkakas yang memudahkan programmer bekerja – Membuat serangkaian unit test yang diterapkan pada saat program selesai
Jurusan : S1 Sistem Informasi
20
Testing dan Implementasi Sistem Kontrak Perkuliahan
Review Rekayasa Perangkat Lunak
Manajemen Kualitas
Teknik & Strategi Testing
Implementasi Sistem
Suplement
Rekayasa Perangkat Lunak
Penerapan KONSTRUKSI • Prinsip pada saat membuat kode/program : – Membatasi algoritma dengan mengikuti pemrograman terstruktur* – Memilih struktur data yang sesuai dengan perancangan yang telah dibuat – Memahami arsitektur PL dan menciptakan antarmuka yang konsisten dengan arsitektur tersebut – Menjaga agar logika kondisional sesederhana mungkin – Membuat pengulangan bersarang dalam cara yang mudah diuji – Memilih nama variabel yang bermakna dan mengikuti standar lokal – Menulis program dan mendokumentasikannya – Membuat visual layout (indent, baris kosong) yang membantu pemahaman
Jurusan : S1 Sistem Informasi
21
Testing dan Implementasi Sistem Kontrak Perkuliahan
Review Rekayasa Perangkat Lunak
Manajemen Kualitas
Teknik & Strategi Testing
Implementasi Sistem
Suplement
Rekayasa Perangkat Lunak
Penerapan KONSTRUKSI • Prinsip Validasi setelah kode/program pertama kali selesai : – Melakukan pelacakan program apabila dumungkinkan – Melakukan test unit dan memperbaiki kesalahan yang ditemukan – Melakukan refaktor program
• Prinsip Pengujian : – – – –
Semua uji harus direncanakan Pengujian dilakukan dari yang “kecil” hingga yang “besar” Terkadang pengujian mendalam sukar dilakukan Memberlakukan prinsip PARETO (untuk banyak kejadian, sekitar 80% daripada efeknya disebabkan oleh 20% dari penyebabnya)
Jurusan : S1 Sistem Informasi
22
Testing dan Implementasi Sistem Kontrak Perkuliahan
Review Rekayasa Perangkat Lunak
Manajemen Kualitas
Teknik & Strategi Testing
Implementasi Sistem
Suplement
Rekayasa Perangkat Lunak
Penerapan DEPLOYMENT (penyebaran PL) • • • •
Mengelola ekpektasi pelanggan setiap ada kenaikan Sebuah paket pengiriman yang lengkap harus dirakit dan diuji Ada pihak yang mendukung penyebaran PL Bahan ajar harus diberikan kepada pengguna akhir
Jurusan : S1 Sistem Informasi
23
Testing dan Implementasi Sistem
Rekayasa Perangkat Lunak
Kontrak Perkuliahan
Review Rekayasa Perangkat Lunak
Manajemen Kualitas
Teknik & Strategi Testing
Implementasi Sistem
Suplement
Pertanyaan Dan Diskusi ......
Jurusan : S1 Sistem Informasi
24