modul rpl (final 2013)
DESCRIPTION
Rekayasa perangkat lunakTRANSCRIPT
Yusi Tyroni Mursityo, S.Kom, MS
SEMESTER
GANJIL
2013-2014
MODUL PRAKTIKUM
REKAYASA PERANGKAT LUNAK
Kata Pengantar
Alhamdulillah, segala puji kita panjatkan kehadirat Tuhan Yang Maha Esa
yang telah memberikan rahmat dan hidayah-Nya sehingga kami dapat menyelesaikan
Modul Praktikum ini. Diharapkan modul ini dapat menjadi pegangan baik bagi
mahasiswa dan asisten mahasiswa dalam proses penyelesaian praktikum Mata Kuliah
Rekayasa Perangkat Lunak di lingkungan Program Teknologi Informasi dan Ilmu
Komputer Universitas Brawijaya.
Bersama ini kami juga menyampaikan terima kasih kepada semua pihak yang
telah membantu hingga terselesaikannya modul ini. Semoga segala yang telah kita
kerjakan merupakan bimbingan yang lurus dari Yang Maha Kuasa.
Dalam penyusunan modul praktikum ini tentu jauh dari sempurna, oleh karena
itu segala kritik dan saran sangat kami harapkan demi perbaikan dan penyempurnaan
modul ini dan untuk pelajaran bagi kita semua dalam pembuatan modul-modul yang
lain di masa mendatang. Semoga dengan adanya modul ini kita dapat belajar bersama
demi kemajuan kita dan kemajuan ilmu pengetahuan.
Malang, September 2013
Penyusun.
ii
DAFTAR ISI
Kata Pengantar ......................................................................................................................................... i
DAFTAR ISI ........................................................................................................................................... ii
Rancangan Pelaksanaan Praktikum Rekayasa Perangkat Lunak 2013-2014 ......................................... iii
BAB I ...................................................................................................................................................... 1
PENGENALAN DOKUMEN ReadySET ............................................................................................... 1
BAB II ..................................................................................................................................................... 3
PROJECT PLANNING .......................................................................................................................... 3
BAB III ................................................................................................................................................... 7
REQUIREMENTS AND SPECIFICATION .......................................................................................... 7
BAB IV ................................................................................................................................................. 10
ARCHITECTURE AND DESIGN ....................................................................................................... 10
BAB V .................................................................................................................................................. 13
PROTOYPING ..................................................................................................................................... 13
BAB VI ................................................................................................................................................. 17
IMPLEMENTATION AND TESTING ................................................................................................ 17
BAB VII ................................................................................................................................................ 20
DEPLOYMENT AND INSTALLATION ............................................................................................ 20
BAB VIII .............................................................................................................................................. 22
OPERATIONS AND SUPPORT.......................................................................................................... 22
BAB IX ................................................................................................................................................. 24
CONTINUOUS OR FINAL ................................................................................................................. 24
DAFTAR PUSTAKA ........................................................................................................................... 26
iii
Rancangan Pelaksanaan Praktikum Rekayasa Perangkat Lunak 2013-2014
Pertemuan ke-
Topik Substansi Metode
1 Pendahuluan, Pengantar Praktikum dan Dokumen readySET
o Penjelasan proses praktikum dan penilaian
o Pengenalan dokumen ReadySET o Pembentukan tim kerja o Penentuan topik yang akan dibahas
oleh masing-masing tim
Ceramah, Tanya Jawab, Diskusi Kelompok
2 Pematangan Topik Proyek Perangkat Lunak
o Penjelasan tentang “perencanaan proyek”:
Overview
Proposal
Project Plan
Legal Issues
Quality Assurance (QA) Plan o Penentuan proyek PL
Ceramah, Tanya Jawab, Diskusi Kelompok
3 Requirements and Specification I
o Penjelasan tentang “kebutuhan dan spesifikasi”:
User Needs
Software Requirements Specification
Ceramah, Tanya Jawab, Diskusi Kelompok
4 Requirements and Specification II
o Penjelasan tentang “kebutuhan dan spesifikasi”:
Software Requirements Specification
o Mendiskusikan bentuk prototype o Membuat prototype dari produk
yang diusulkan
Ceramah, Tanya Jawab, Diskusi Kelompok
5 Delivery I o Peserta praktikum mempresentasikan dokumen yang telah dikerjakan (Project Planning, Requirements and Specification, Prototype)
Presentasi kelompok
6 Architecture and Design
o Penjelasan tentang “arsitektur dan desain”:
Design
Architecture
Ceramah, Tanya Jawab, Diskusi Kelompok
iv
7 UJIAN TENGAH SEMESTER
8 Implementation I o Penjelasan tentang “implementasi”:
Construction Environment
Ceramah, Tanya Jawab, Diskusi Kelompok
9 Implementation II o Penjelasan tentang “implementasi”:
User Guide
Ceramah, Tanya Jawab, Diskusi Kelompok
10 Testing o Penjelasan tentang “testing”:
Test suite
Ceramah, Tanya Jawab, Diskusi Kelompok
11 Deployment and Installation
o Penjelasan tentang “persiapan dan instalasi”:
Release Checklist
Installation / Quick start guide
Project Plan
Release notes
Demo Script
Ceramah, Tanya Jawab, Diskusi Kelompok
12 Operations and Support
o Penjelasan tentang “pengoperasian dan bantuan”:
FAQ / Troubleshooting
Implementation notes
Ceramah, Tanya Jawab, Diskusi Kelompok
13 Delivery II o Peserta praktikum mempresentasikan dokumen lanjutan yang telah dikerjakan (Implementation and testing, Deployment and Installation, Operations and Support)
Presentasi kelompok
14 Continuous or Final o Penjelasan tentang “status final”:
Glossary
Status Report
Review Meeting Notes
Software Development Methodology
Ceramah, Tanya Jawab, Diskusi Kelompok
15 UJIAN AKHIR SEMESTER
1
BAB I
PENGENALAN DOKUMEN ReadySET
1. Tujuan Materi
Tujuan dari materi pengenalan dokumen readySET adalah:
a. Mahasiswa mampu mengenali pembuatan dokumentasi untuk pengembangan
perangkat lunak.
b. Mahasiswa mampu mengenali template dokumen readySET
2. Dasar Teori
Pengembangan perangkat lunak adalah sebuah pekerjaan untuk merancang dan
mewujudkan sebuah aplikasi sesuai dengan kebutuhan dari pengguna. Proses
pengembangan yang baik membutuhkan sebuah dokumentasi yang mencatat semua
proses dan kebutuhan yang dilakukan dalam pengembangan aplikasi tersebut. Dokumen
ini digunakan untuk melihat sejauh mana proyek yang dikerjakan sudah berjalan dan hal-
hal apa saja yang perlu diperbaiki untuk release selanjutnya. Sebagian besar pengembang
membuat dokumen ini dari awal, hal ini tentu memperbanyak pekerjaan yang harus
diselesaikan oleh pengembang sehingga pengembang sangat mungkin kurang fokus
dengan tugas utamanya untuk mengembangkan sebuah perangkat lunak, oleh karena itu
diperlukan sebuah template untuk dokumentasi pengembangan perangkat lunak. Salah
satu template dokumen yang dapat digunakan untuk melakukan dokumentasi
pengembangan perangkat lunak adalah dokumen ReadySET.
ReadySET adalah sebuah template dokumentasi untuk perancangan perangkat lunak
yang dikeluarkan oleh Trigis (http://www.trigis.org). Trigis adalah sebuah komunitas
open source dalam bidang pengembangan perangkat lunak. ReadySET menyediakan poin-
poin yang dapat digunakan untuk dokumentasi. Dengan menggunakan template yang baik
untuk menyusun dokumentasi perancangan perangkat lunak, maka hal ini dapat
membantu pengembang untuk lebih fokus terhadap pekerjaan utamanya dan dapat bekerja
dengan lebih cepat.
ReadySET sendiri terdiri dari beberapa poin yang sering digunakan pada perancangan
sebuah perangkat lunak, antara lain:
- Template pengajuan proposal proyek
- Template perencanaan proyek
- Template untuk use case
2
- Template untuk quality assurance (QA)
- Template untuk desain sistem
- Template untuk pengujian sistem
- Template untuk proses release sistem
Tampilan dari template readySET ini adalah sebagai berikut:
3. Latihan
Melakukan diskusi kelompok untuk penentuan tema dari proyek yang akan dikerjakan
selama praktikum Rekayasa Perangkat Lunak.
3
BAB II
PROJECT PLANNING
1. Tujuan Materi
Tujuan dari materi project planning adalah:
a. Mahasiswa mampu memahami langkah – langkah yang harus dilakukan dalam
merencanakan sebuah proyek.
b. Mahasiswa mampu membuat dokumen untuk project planning sesuai dengan
dokumen ReadySET.
2. Dasar Teori
Pada dasarnya pembangunan suatu perangkat lunak dimulai dengan serangkaian
aktivitas yang dilakukan secara kolektif dengan bertujuan untuk melakukan suatu
perencanaan atau biasa disebut project planning. Dengan mengacu pada dokumen
RedySET, project planning terdiri atas 5 poin antara lain:
1. Project Overview
Project overview memberikan penjelasan mengenai perangkat lunak yang akan
dikembangkan secara garis besar, terkait dengan tujuan dan ruang lingkup
pembangunan perangkat lunak; metodologi pengembangan serta langkah – langkah
yang harus dilakukan dalam membangun perangkat lunak.
2. Project Proposal
Project proposal bersama dengan dokumen yang terkait berfungsi dalam penentuan
keputusan apakah suatu perusahaan layak bekerja sama dalam pembangunan
perangkat lunak. Dalam project proposal diberikan penjelasan terkait perangkat lunak
yang akan dibangun, tujuan dan ruang lingkup dan kelebihan dari perangkat lunak
yang akan dibangun. Dalam dokumen ini juga perlu dijelaskan resiko – resiko yang
meungkin terjadi dan keuntungan yang diperolah dari pembangunan perangkat lunak.
3. Project Plan
Project plan mempaparkan segala hal yang berhubungan dengan perencanaan
pembangunan perangkat lunak. Perancangan sangat berpengaruh terhadap proses
pembangunan perangkat lunak. Oleh karena itu dibutuhkan perencanaan yang matang
sebelum membangun sebuah perangkat lunak. Perencanaan tersebut meliputi :
- Tahapan pengerjaan
- Estimasi waktu pengerjaan
4
- Estimasi sumber daya
- Penjadwalan peluncuran (release) dari tiap tahap pengerjaan
- Manajemen resiko
4. Legal Issues
Legal Issues berkaitan dengan hak paten atas kekayaan intelektual milik orang lain
yang digunakan untuk mengembangkan perangkat lunak, salah satunya berkaitan
dengan kepemilikan dan lisensi dari produk yang digunakan. Tentunya hal ini
berkaitan dengan permasalahan hukum. Berikut contoh beberapa poin legal issues
pada dokumen Project Planning:
Kepemilikan Kekayaan Intelektual
Peraturan Kepatuhan
5
5. Quality Assurance (QA) Plan
Quality Assurance (QA) Plan merupakan perencanaan jaminan kualitas dari perangkat
lunak yang akan dibangun. Tujuan adanya jaminan kualitas adalah memberikan data
yang diperlukan oleh menajemen untuk menginformasikan masalah kualitas produk,
sehingga dapat memberikan kepastian dan konfidensi bahwa perangkat lunak yang
akan dibangun dapat memenuhi sasaran. Hal ini berpengaruh terhadap kepercayaan
dan kepuasan pengguna atas perangkat lunak. Tentunya hal ini akan menjadi
pertimbangan dalam keberhasilan pembangunan perangkat lunak. Perencanaan dalam
tahap ini meliputi :
- Kualitas yang akan dicapai dari pembangunan perangkat lunak meliputi :
kemampuan secara fungsional, kemudahan penggunaan, minimalisir kesalahan
proses, keamanan, efisiensi, daya tampung, kemampuan dalam pengoperasian,
kemampuan berkembang sesuai dengan kebutuhan.
- Strategi yang dilakukan dalam menjaga jaminan kualitas. Berikut adalah contoh
strategi jaminan kualitas :
Aktifitas Jangkuan atau frekuensi Deskripsi Pertemuan Review
Dilakukan seminggun sekali, atau sesaat sebelum aplikasi dirilis
Kami akan mengadakan pertemuan peninjauan dan pengembang akan melakukan inspeksi kode atau dokumen. Kami memilih untuk menghabiskan sejumlah kecil waktu yang telah ditentukan sebelumnya dan mencoba untuk memaksimalkan hasil dengan memilih dokumen review secara hati-hati. Dalam proses review kami akan menggunakan dan menjaga berbagai daftar periksa.
Pengujian Sistem Secara Berkala
100% dari semua user interface 100% dari kebutuhan yang telah dispesifikasikan
Tim QA akan menciptakandan mempertahankan suite yang tertulis secara rinci dari tes manual untuk menguji seluruh sistem melalui antarmuka pengguna. Rencana ini akan cukup rinci bahwa seseorang melakukan tes dari dokumen pengujian dan dokumen terkait lainnya.
Pengujian Sistem Secara Otomatis
100% dari semuaUser Interface 100% dari kebutuhan yang
Pengujian akan dilakukan secara otomatis. Tim Quality Assuranceakan menggunakan
6
telah dispesifikasikan automation tool untuk mengerjakan tugas ini.
Pengujian Beta 50 members of our developers network
Pengguna internet secara umum
Aplikasi akan dilaunch secara beta, agar pengguna dapat menggunakan aplikasi lebih awal, kemudian data pengguanaan dari pengguna tersebut akan kami gunakan untuk pengembangan aplikasi ini lebih lanjut.
Instrumentasi dan Pengawasan
Memonitor server
kami akan memantau perilaku server untuk secara otomatis mendeteksi kegagalan pada layanan atau penurunan kinerja. Kami memiliki kebijakan dan prosedur untuk pemberitahuan kegagalan, eskalasi, dan koreksi.
- Evaluasi strategi
- Plan of Action
3. Latihan
Melakukan diskusi kelompok dan membuat dokumen untuk project planning yang
meliputi Overview, Proposal, Project Plan, Legal Issues, dan QA Plan.
7
BAB III
REQUIREMENTS AND SPECIFICATION
1. Tujuan Materi
Tujuan dari materi Requirement dan Specification adalah :
a. Mahasiswa dapat mengetahui kebutuhan pengguna
b. Mahasiswa dapat mengetahui kebutuhan system
c. Mahasiswa dapat mengetahui Spesifikasi desain perangkat lunak
d. Mahasiswa mampu membuat dokumen untuk requirements and specification
sesuai dengan dokumen ReadySET
2. Dasar Teori
Requirements dapat diartikan sebagai berikut:
a. Suatu kondisi atau kemampuan yang diperlukan oleh user untuk memecahkan
masalah atau mencapai tujuan.
b. Suatu kondisi atau kemampuan yang harus dipenuhi atau dimiliki oleh sistem
atau komponen sistem untuk memenuhi kontrak, standard, spesifikasi atau
dokumen formal lain.
c. Gambaran yang terdokumentasi dari kondisi atau kemampuan yang disebut
pada kondisi 1 dan 2 diatas.
d. Spesifikasi dari apa yang harus diimplementasikan, deskripsi bagaimana
sistem harusnya bekerja atau bagian-bagian yang ada didalam sistem, bisa
juga dijadikan batasan dalam proses pengembangan sistem.
Pada dasarnya terdapat beberapa macam requirement, antara lain:
a. User Requirement (kebutuhan pengguna)
Merupakan pernyataan tentang layanan yang disediakan sistem dan tentang
batasan-batasan operasionalnya. Pernyataan ini dapat dilengkapi dengan
gambar/diagram yang dapat dimengerti dengan mudah. Pada tahap ini,
cakupannya meliputi tujuan yang disetujui, environment software, dan
stakeholder atau aktor yang ikut dalam proses pengembangan perangkat lunak.
Setiap tujuan dari proyek tersebut harus secara jelas dijabarkan dalam
statement. Untuk mengetahui kebutuhan pengguna dan informasi yang
dibutuhkan, perlu dilakukan wawancara dan observasi dengan tujuan agar
8
tidak terjadi gap komunikasi yang terjadi. Sebelum dilakukan wawancara,
perlu dipersiapkan pertanyaan-pertanyaan mendasar atau biasa disebut Context
Free Question seperti berikut ini:
- Tipe pengguna seperti apakah yang akan menggunakan produk ini
- Dapatkah kita memberikan contoh bagaimana pengguna akan
menggunakan produk ini
- Apakah ada resiko yang ditimbulkan dari produk ini
- Bagaimana mempelajari kebutuhan dari produk ini
- Apakah keuntungan yang akan diperoleh
b. System Requirement (kebutuhan sistem)
Sekumpulan layanan/ kemampuan sistem dan batasan-batasannya yang ditulis
secara detail. Dokumen mengenai System Requirement, atau yang sering
disebut dengan functional specification, harus menjelaskan secara tepat dan
detail dengan kebutuhan sistem yang digunakan untuk mengembangkan
perangkat lunak. Ini bisa berlaku sebagai kontrak antara klien dan pembangun.
Pengumpulan kebutuhan sistem meliputi, fungsi yang dibutuhkan sistem,
presentasi performansi dan interface di depan pelanggan.
c. Software Design Specification (Spesifikasi desain perangkat lunak)
Software design specification (SRS) merupakan dokumen yang berisi tentang
fungsi-fungsi yang akan dilakukan oleh perangkat lunak. SRS berisi deskripsi
tentang lingkungan kerja dari perangkat lunak seperti perangkat keras,
perangkat lunak dan pengguna. SRS merupakan gambaran abstrak dari
rancangan software yang menjadi dasar bagi perancangan dan implementasi
lebih detail.
Dalam suatu SRS ada 2 aspek kebutuhan, yaitu :
1. Functional Requirements (Kebutuhan Fungsional)
Menjelaskan tentang kebutuhan perangkat lunak mencakup fungsi
software.
2. Non-Functional Requirements (Kebutuhan Non-Fungsional)
Mendeskripsikan kebutuhan non-fungsional dari software, yaitu sebagai
berikut:
9
a. Dependability
- Reliability
- Maintainbility
- Security
- integrity
b. Ergonomic
c. Performance
d. Contraint
Berikut contoh poin Environment pada dokumen Requirements and Specification
dengan studi kasus Aplikasi Kursus Pemrograman Java Online.
3. Latihan
Melakukan diskusi kelompok untuk menjabarkan User Requirement, System
Requirement, dan Software Requirement Specification.
10
BAB IV
ARCHITECTURE AND DESIGN
1. Tujuan Materi
Tujuan dari materi architecture and design ini adalah:
a. Mahasiswa mampu memahami bagaimana menentukan arsitektur dan desain
yang tepat untuk sistem yang dikembangkan
b. Mahasiswa mampu membuat dokumen architecture and design dengan baik
2. Dasar Teori
Dokumen architecture and design ini menggambarkan dan menjelaskan tentang
bagiamana sistem yang sedang dikembangkan dapat memenuhi beberapa kebutuhan yang
telah didefinisikan sebelumnya pada Software Requirements Specification (SRS)
berdasarkan pada dokumen Requirements and Specification. Pada dokumen utama ini
dijelaskan beberapa poin, antara lain:
a. Overview
Menjelaskan tentang bagaimana dokumen desain sistem ini disusun. Pada
bagian ini juga harus dijelaskan mengenai beberapa hal yang harus
dipertimbangkan oleh pengembang ketika mendesain sebuah perangkat lunak
dan beberapa poin prioritas yang digunakan pada saat mendesain sebuah
perangkat lunak, misalnya: Correctness, Feasibility, Understandability, dll.
b. Desain UML Struktur Sistem
Menjelaskan mengenai desain UML yang dibentuk secara struktur.
c. Desain UML Tingkah Laku Sistem
Menjelaskan mengenai desain UML dari tingkah laku sistem, adapun yang
dimaksud dengan tingkah laku sistem adalah hal-hal yang terjadi ketika
pengguna dan sistem berinteraksi. Tingkah laku dari sistem ini dapat
digambarkan menggunakan beberapa diagram, misalnya state diagram,
sequence diagram.
d. Checklist Desain UML
Menjelaskan poin-poin yang telah didefinisikan sebelumnya pada poin
Overview.
11
Dokumen desain ini dibagi menjadi beberapa sub-poin yang akan memperinci konsep
arsitektur dan desain dari perangkat lunak yang dikembangkan. Poin-poin tersebut antara
lain:
a. Architecture Worksheet
Bagian ini menjelaskan tentang gambaran garis besar dari arsitektur sistem
yang sedang dikembangkan.
b. Source and Build
Bagian ini menjelaskan tentang pengaturan source code, build target serta
beberapa konfigurasi dari aplikasi yang sedang dikembangkan
c. User Interface Worksheet
Bagian ini menjelaskan tentang desain antarmuka dari perangkat lunak yang
dikembangkan dengan menggunakan beberapa standar untuk mendesain
sebuah user interface.
d. Persistence Worksheet
Bagian ini menjelaskan mengenai bagaiamana data yang digunakan pada
perangkat lunak ini disimpan pada sebuah database ataupun storage tertentu,
apakah data yang tersimpan tersebut disimpan dan didistribusikan ke client
atau hanya disimpan di server, dan data-data apa saja yang perlu disimpan
pada database.
e. Security Worksheet
Bagian ini menjelaskan tentang mekanisme pengamanan dari sistem, baik itu
pengamanan fisik (hardware) ataupun pengamanan logik(software).
Contoh salah satu bagian pada dokumen architecture and design adalah sebagai
berikut:
12
3. Latihan
Melakukan diskusi kelompok untuk membuat dokumen Architecture and Design
13
BAB V
PROTOYPING
1. Tujuan Materi
Tujuan dari materi prototyping adalah:
a. Mahasiswa mampu memahami fungsi dan kegunaan protyotyping serta
mampu menerapkan pembuatan prototyping
2. Dasar Teori
Prototype merupakan implementasi bagian – bagian dari perangkat lunak yang
akan/sedang dibangun dengan fungsi yang masih dibatasi, reliabilitas rendah serta
tampilan yang sederhana. Dalam bahasa yang mudah dipahami, prototype adalah model
dari perangkat lunak yang akan dibangun, dengan pengoperasian fungsi yang minimal.
Tujuan Utama Prototype
Secara garis besar tujuan utama pembuatan prototype adalah :
a. Membantu pengembangan persyaratan. Dengan adanya prototype akan membantu
memberikan gambaran tentang perangkat lunak sehingga dapat dikembangkan
menurut keinginan klien.
b. Mengesahkan persyaratan antara klien dengan pihak pengembang.
Keuntungan dan Kelemahan Pembuatan Prototype
Keuntungan dari pembuatan prototype adalah :
a. Adanya komunikasi yang baik antara pengembang dan pelanggan.
b. Pengembang dapat bekerja lebih baik dalam menentukan kebutuhan pelanggan.
c. Pelanggan berperan aktif dalam pengembangan sistem.
d. Lebih menghemat waktu dalam pengembangan sistem.
e. Penerapan menjadi lebih mudah karena pemakai mengetahui apa yang
diharapkannya.
Sedangkan kelemahan yang mungkin muncul dari pembuatan prototype adalah :
a. Terkadang pelanggan yang kurang teliti dalam melihat detail pencantuman
kualitas dari perangkat lunak dan terkadang juga tidak terpikirkan dalam hal
pemeliharaan perangkat lunak dalam jangka panjang.
14
b. Ada kalanya terdapat pengembang yang membuat prototype secara sangat
sederhana dan kurang memikirkan langkah ke depannya.
Kategori umum Prototype
Pada dasarnya ada berbagai macam prototype yang dibagi menjadi beberapa kategori
umum, antara lain :
a. Proof-of-Principle Prototype
Kategori ini berfungsi untuk menguji beberapa aspek tanpa adanya desain visual..
Prototype ini biasanya digunakan untuk membandingkan beberapa desain yang
ada untuk kemudian dipilih desain yang paling cocok dengan produk yang sedang
dikembangkan. Contoh : prototype breadboard pada desain alat elektronik.
b. Form Study Prototype
Prototype jenis ini memungkinkan pengembang untuk mengeksplorasi ukuran dari
produk yang dikembangkan. Pada prototype ini tidak diharuskan mendefinisikan
fungsi-fungsi yang telah direncanakan untuk diterapkan pada produk yang
dikembangkan.
c. User Experience Prototype
Pada prototype ini, diperlukan interaksi dengan pengguna untuk mendapatkan
penilaian dari pengalaman yang didapatkan dari pengguna ketika berinteraksi
dengan prototype yang telah dibuat.
d. Visual Prototype
Prototype ini menampilkan rancangan produk secara visual dengan
mempertimbangkan aspek keindahan (estetika) dari rancangan produk yang akan
dikembangkan. Pada prototype ini tidak dimasukkan aspek fungsionalitas produk
yang dikembangkan.
e. Functional Prototype
Prototype ini meliputi semua aspek keindahan, desain, dan fungsionalitas.
Berikut adalah screenshoot dari contoh prototype dari sebuah aplikasi anti
plagiarism:
15
Home
Lupa password
16
Registrasi
Menu – Document
3. Latihan
Melakukan diskusi kelompok untuk merancang prototype yang akan digunakan untuk
menampilkan model dari perangkat lunak yang sedang dikembangkan.
17
BAB VI
IMPLEMENTATION AND TESTING
1. Tujuan Materi
Tujuan dari materi Implementation And Testing adalah:
a. Mahasiswa mengetahui bagaimana pengimplementasian dan pengujian
rekayasa perangkat lunak.
2. Dasar Teori
Implementasi perangkat lunak merupakan salah satu tahap dalam rekayasa perangkat
lunak yang meliputi rancangan detail yang diwujudkan dalam bahasa pemrograman.
Bahasa pemrograman merupakan alat yang digunakan untuk komunikasi antara manusia
dan komputer.
Pemilihan Bahasa Pemrograman
Pemilihan bahasa pemrograman didasarkan atas :
- Lingkup aplikasi
- Algortima dan kompleksitas
- Lingkungan pemrograman
- Performansi
- Struktur data
- Pengetahuan programmer
- Ketersediaan komputer
Macam bahasa pemrograman :
- Bahasa COBOL digunakan untuk aplikasi bisnis, tapi tempatnya mulai
digantikan oleh4 GL
- Bahasa FORTRAN dominan dalam bidang rekayasa dan sains
- Bahasa BASIC paling sering digunakan pada komputer pribadi
- Bahasa LISP dan Prolog sering digunakan pada aplikasi Kecerdasan
Buatan
- Bahasa yang berkembang untuk Object Oriented adalah java, smalltalk,
C++, dan Eiffel
18
Pengujian Perangkat Lunak
Pengujian perangkat lunak merupakan langkah penting dalam rekayasa perangkat
lunak. Pengujian ini dilakukan dengan mengevaluasi spesifikasi kebutuhan, desain
perancangan, dan implementasi yang dilakukan.
Pada pengujian perangkat lunak terdapat sejumlah aturan yang berfungsi sebagai
sasaran pengujian, antara lain:
a. Pengujian adalah proses eksekusi suatu program dengan maksud menemukan
kesalahan.
b. Test Case yang baik adalah test case yang memiliki probabilitas tinggi untuk
menemukan kesalahan yang belum pernah ditemukan sebelumnya.
c. Pengujian yang sukses adalah pengujian yang mengungkap semua kesalahan
yang belum pernah ditemukan sebelumnya.
Tujuan yang diinginkan dari pelaksanaan pengujian perangkat lunak adalah :
a. Menilai apakah perangkat lunak yang dikembangkan telah memenuhi
kebutuhan pemakai.
b. Menilai apakah tahap pengembangan perangkat lunak telah sesuai dengan
metodologi yang digunakan.
c. Membuat dokumentasi hasil pengujian yang menginformasikan kesesuaian
perangkat lunak yang diuji dengan spesifikasi yang telah ditentukan.
Untuk setiap tahap pengembangan, pelaksanaan pengujian perangkat lunak secara
umum mengikuti tahap-tahap sebagai berikut :
a. Menentukan apa yang akan diukur melalui pengujian
b. Bagaimana pengujian akan dilaksanakan
c. Membangun suatu kasus uji (test case), yaitu sekumpulan data atau situasi
yang akan digunakan dalam pengujian.
d. Tentukan hasil yang diharapkan atau hasil sebenarnya
e. Jalankan kasus pengujian
f. Bandingkan hasil pengujian dan hasil yang diharapkan.
19
Berikut ini merupakan berbagai macam kasus pengujian (Test Cases) yang diperlukan.
a. Pengujian Objek Bisnis dan Operasinya
b. Pengujian Prioritas Fitur
c. Pengujian Prioritas Use Case
Berikut contoh poin Test Cases pada dokumen implementation and testing dengan
studi kasus aplikasi Kursus Java Online:
3. Latihan
Melakukan diskusi kelompok untuk membuat dokumen implementasi dan pengujian
perangkat lunak.
20
BAB VII
DEPLOYMENT AND INSTALLATION
1. Tujuan Materi
Tujuan dari materi deployment and installation adalah:
a. Mahasiswa mampu memahami bagaiamana membuat dokumentasi tentang
proses deployment dan instalasi dari perangkat lunak yang dikembangkan.
2. Dasar Teori
Dokumen ini digunakan untuk menggambarkan tahapan release dan instalasi dari
perangkat lunak yang sedang dikembangkan. Terdapat beberapa poin yang harus
dijabarkan pada dokumen ini, antara lain:
1. Release checklist
Menjelaskan poin-poin yang digunakan untuk melakukan pengecekan semua
proses yang telah dikerjakan pada saat pengembangan perangkat lunak.
Setelah semua checklist ini diisi dengan poin-poin tertentu dan sudah meliputi
semua proses yang dilakukan pada saat pengembangan aplikasi, maka
checklist ini bisa ditunjukkan kepada client.
2. Installation/ Quick Start
Sebuah perangkat lunak yang baik harus memiliki panduan untuk melakukan
proses instalasi aplikasi, yang meliputi pengenalan secara singkat dari
perangkat lunak tersebut, kebutuhan hardware minimal dari perangkat lunak
tersebut, dan panduan-panduan untuk memulai menggunakan aplikasi.
3. Release Notes
Menjelaskan mengenai catatan-catatan pada saat dilakukan release perangkat
lunak. Salah satu contoh dari catatan tersebut adalah change log dari versi
sebelumnya.
4. Demo Script
Menjelaskan mengenai proses demo produk dari perangkat lunak yang telah
dikembangkan.
Contoh salah satu poin dari dokumen deployment and installation adalah sebagai
berikut:
21
3. Latihan
Melakukan diskusi kelompok untuk membuat dokumen deployment and installation
dengan benar.
22
BAB VIII
OPERATIONS AND SUPPORT
1. Tujuan Materi
Tujuan dari materi operating and support adalah:
a. Mahasiswa mampu memahami FAQ / troubleshooting dan implementation notes
serta dapat mengaplikasikannya untuk membuat dokumen operations and suport
dengan baik dan benar.
2. Dasar Teori
FAQ / Troubleshooting – User FAQ
Dokumen ini menjelaskan informasi umum terkait perangkat lunak dan pengguna dari
perangkat lunak. Dalam dokumen ini menjelaskan 4 point penting yang berhubungan
antara perangkat lunak dengan pengguna, yaitu :
a. Penjelasan umum terkait perangkat lunak dan pengguna perangkat lunak.
b. Cara untuk mendapatkan perangkat lunak
Menjelaskan bagaimana pengguna dapat memperoleh dan menggunakan
perangkat lunak. Dalam hal ini dijelaskan cara mendownload perangkat lunak dan
cara install perangkat lunak sertacara mengupgrade perangkat lunak.
c. Cara memulai penggunaan perangkat lunak
d. Penanganan troubleshooting
Menjelaskan langkah – langkah yang dapat dilakukan oleh pengguna ketika terjadi
masalah terhadap perangkat lunak.
Implementation Notes
Memberikan penjelasan terkait sistem yang dibangun dalam perangkat lunak dan
bagaimana cara sistem agar bekerja dengan baik. Tujuan pemaparan implementation
notes adalah untuk memberikan informasi yang dibutuhkan sehingga mempermudah
dalam hal pengelolahan sistem serta penanganan kesalahan atau troubleshooting pada
sistem.
23
Hal – hal yang dipaparkan dalam dokumen implementation notes ini adalah :
a. Tipe Implementasi
Dalam tipe implementasi menjabarkan tipe – tipe dari sistem yang digunakan
dalam pembangunan perangkat lunak, antara lain terdiri dari bahasa program
yang digunakan, storage untuk menyimpan data, teknologi UI dan teknologi
keamanan sistem.
b. Runtime Sistem
Memaparkan segala runtime sistem dari perangkat lunak, terdiri atas : proses,
konfigurasi file, tabel database, file data, file temporary dan file log.
c. Implementasi fitur – fitur secara spesifik
Dalam bagian ini dipaparkan terkait fitur – fitur yang ada dalam sistem
perangkat lunak, nama fitur, penjelasan fitur dan kegunaan fitur.
d. Prosedur pengoperasian
Prosedur pengoperasian menjelaskan rincian cara memulai hingga mengakhri
pengoperasian. Tahap yang dijelaskan adalah terkait cara install, upgrade, cara
menghidupkan dan memberhentikan server, reload berkas konfigurasi,
aktivitas monitor serta pembersihan berkala.
e. Keamanan
Memberikan paparan secara detail terkait keamanan sistem, bagaimana
tindakan penecegahan agar keamanan sistem tetap terlindungi dan menjaga
sistem dari faktor – faktor eksternal. Hal ini akan membantu engineer untuk
dapat menjaga dan lindungi sistem
f. Performansi dan skalabilitas
Memberikan paparan secara detail terkait dengan tingkat performansi dan
skalabilitas, yang akan mempermudah engineer dalam mengatur efisiensi
sistem.
3. Latihan
Melakukan diskusi kelompok untuk membuat dokumen operations and support
24
BAB IX
CONTINUOUS OR FINAL
1. Tujuan Materi
Tujuan dari praktikum Continuous or final adalah:
a. Mahasiswa dapat mengetahui bagaimana suatu dokumen dinyatakan selesai.
2. Dasar Teori
Suatu dokumen dinyatakan selesai jika memiliki beberapa komponen berikut ini:
a. Glossary
Berkas ini digunakan sebagai kamus yang mencatat istilah-istilah yang
digunakan selama pembuatan dokumentasi proyek. Pada berkas ini dituliskan
definisi istilah dan akronim dengan tujuan agar berkas-berkas lain yang
digunakan untuk dokumentasi pengembangan perangkat lunak menjadi lebih
ringkas dan tepat. Sebuah glossary yang digunakan secara bersama-sama
membantu mencegah kesalahpahaman dan memudahkan bagi anggota tim
baru untuk menjadi produktif.
b. Status Report
Status Report ini dapat membantu stakeholder untuk mengetahui status proyek
yang sedang berjalan ataupun yang sudah selesai, sehingga mereka dapat
menentukan ekspektasi dengan benar. Penjelasan yang beralasan dari
perubahan kecil pada jadwal jauh lebih baik daripada laporan utama yang
tidak dijelaskan.
c. Review Meeting Notes
Berisi ringkasan singkat dari hasil rapat-rapat yang telah dilakukan.
d. Software Development Methodology
Menjelaskan tentang metodologi yang digunakan untuk mengembangkan
perangkat lunak.
Contoh salah satu poin status report pada dokumen Continuous or Final
adalah sebagai berikut:
25
3. Latihan
Melakukan diskusi kelompok untuk membuat dokumen tentang glossary, status
report, review Meeting Notes, dan Software Development Methodology.
26
DAFTAR PUSTAKA
Jason, R. (2003-2004). http://www.tigris.org/. diakses September 1, 2012, dari http://readyset.tigris.org/.
Mahasiswa. (2010, Semester Ganjil). Tugas-Tugas Mata Kuliah Rekayasa Perangkat Lunak. Program Studi Ilmu Komputer, Universitas Brawijaya, Malang.