• Tidak ada hasil yang ditemukan

REKAYASA PERANGKAT LUNAK. Chapter 8 1

N/A
N/A
Protected

Academic year: 2021

Membagikan "REKAYASA PERANGKAT LUNAK. Chapter 8 1"

Copied!
40
0
0

Teks penuh

(1)

REKAYASA

(2)
(3)

 Memahami peran pembuatan prototipe pada berbagai tipe proyek pengembangan

 Mengerti perbedaan antara pembuatan prototipe

evolusioner dan throw-away

 Mengetahui tiga teknik pengembangan prototipe

yaitu : - pengembangan bahasa tingkat tinggi

(4)

 Prototipe pada proses perangkat lunak

 Teknik pembuatan prototipe yang cepat

(5)

 Prototipe adalah proses pembuatan sistem secara cepat

 Di masa yang lalu pembangunan sistem

dilaksanakan setelah kebutuhan sistem diketahui

 Saat ini, batasan antara protipe dan pembangunan

sistem secara normal sangat kabur dan banyak sistem dibangun dengan pendekatan evolusi

(6)

 Pada prinsipnya, prototipe membantu pemakai dan pengembang untuk memahami kebutuhan dari

sistem

 Elisitasi Persyaratan. User dapat bereksperimen untuk melihat bagaimana sistem mendukung pekerjaan

mereka

 Validasi Persyaratan. Prototipe dapat mengungkapkan error dan hal2 yang terlewatkan pada persyaratan

(7)

 Dapat diketahui lebih awal kesalahpahaman antara pengembang dengan user/pemakai

 Staf pengembang perangkat lunak mungkin menemukan

persyaratan yang tidak lengkap atau tidak berfungsi saat prototipe dikembangkan

 Sistem dapat bekerja, walaupun terbatas pada penjelasan

fungsi dari sistem

(8)

Establish prototype objectives Define prototype functionality Develop

prototype prototypeEvaluate

Prototyping plan

Outline

(9)

 Meningkatkan kegunaan sistem menjadi lebih baik

 Kesesuaian sistem yang lebih dekat dengan

kebutuhan user

 Meningkatkan kualitas desain menjadi lebih baik

 Meningkatkan keterpelihraan sistem lebih baik

(10)

 Prototipe evolusioner

 Dimulai dengan sistem yang relatif sederhana, yang mengimplementasikan hanya persyaratan user yang paling penting

 Prototipe Throw-Away

(11)

 Tujuan dari evolutionary prototyping adalah

menyerahkan sistem yang dapat dipakai kepada end-user .Pembangunan sistem di mulai dari kebutuhan yang paling dipahami.

 Tujuan throw-away prototyping adalah memvalidasi

dan menurunkan persyaratan sistem. Prototipe dapat di mulai dari kebutuhan yang paling tidak dipahami

(12)

Evolutionary prototyping Throw-away Prototyping Delivered system Executable Prototype + System Specification Outline Requirements

(13)

 Pembuatan prototipe evolusioner didasarkan pada ide

pengembangan implementasi awal, memperlihatkannya kepada user untuk dikomentari , dan menyempurnakannya melalui banyak

tahap sampai sistem yang memadai telah dikembangkan

 Pembuatan prototipe evolusioner merupakan bagian dari teknik

pengembangan aplikasi cepat [RAD]

 Pembuatan prototipe evolusioner dan pendekatan yang berbasis

spesifikasi terhadap perkembangan perangkat lunak berbeda dalam pandangannya mengenai verifikasi dan validasi

(14)

Build prototype system

Develop abstract

specification Use prototypesystem

Deliver

system adequate?System YES

(15)

 Percepatan penyerahan sistem

 Penyerahan dalam waktu cepat , kadang-kadang lebih penting dari fungsionalitas atau pemeliharaaan

perangkat lunak dalam jangka penjang.

 Keterlibatan user dengan sistem

 Tidak hanya berarti bahwa sistem lebih mungkin

memenuhi persyaratan mereka, namun membuat user akan memenuhi komitmennya dan ingin membuat

(16)

 Proses spesifikasi, perancangan dan implementasi saling bertumpang tindih

 Sistem dikembangkan dalam serangkaian bagian

(inkrement)

 Dipakai teknik-teknik untuk pengembangan sistem

yang cepat ( 4GL dan CASE tools )

(17)

 Masalah Manajemen

 Manajemen mengasumsikan pengembangan sistem menggunakan pendekatan waterfall

 Pengembangan prototipe membutuhkan keahlian khusus, yang mungkin saja tidak ada pada team pengembangnan saat ini

 Masalah Pemeliharaan

 Perubahan yang terus menerus cendrung merusak struktur sistem prototipe, dalam jangka panjang pemeliharaan cenderung menjadi mahal

(18)

 Menghindari beberapa masalah perubahan konstan yang menjadi ciri pembuatan prototipe evolusioner

 Arsitektur sistem yang menyeluruh ditentukan pada awal

proses untuk berfungsi sebagai kerangka kerja

 Komponen sistem dikembangkan secara inkremental dalam

kerangka kerja ini

 Setelah di validasi dan diserahkan, baik kerangka kerja

(19)

Validate increment Build system increment Specify system increment Design system architecture Define system deliverables System

complete? Validatesystem incrementIntegrate Deliver final

system

YES

(20)

 Pendekatan ini memperluas proses analisis

persyaratan dengan tujuan mengurangi biaya siklus-hidup secara keseluruhan

 Fungsi utama prototipe adalah memperjelas

persyaratan dan memberikan informasi tambahan bagi manajer untuk menilai resiko proses

(21)

Outline

requirements prototypeDevelop prototypeEvaluate Specifysystem

Develop

software Validatesystem

Delivered software

system Reusable

(22)

Pengembang kadang2 ditekan oleh Manajer untuk

menyerahkan prototipe Throw-away untuk di pakai,

terutama jika ada waktu tunda dalam penyerahan versi

akhir dari perangkat lunak tersebut.

Hal diatas tidak bijaksana karena :

 Bisa saja tidak mungkin menyesuaikan prototipe untuk memenuhi persyaratan non-fungsional seperti persyaratan kinerja, keamanan, keandalan dll

 Prototipe pada akhirnya tidak didokumentasikan karena pengembangan dilakukan dengan cepat

(23)

 Berbagai teknik dapat digunakan untuk rapid development

 Dynamic high-level language development

 Database programming

 Component and application assembly

 Tidak ada teknik yang eksklusif – karen ateknik ini

digunakan secara bersama-sama

(24)

 Bahasa yang memiliki fasilitas pengelolaan data yang sangat baik

 Memiliki dukungan run-time yang baik.

Mempermudah pengembangan program karena banyak masalah alokasi dan manajemen media penyimpanan yang dapat diselesaikan

 Beberapa bahasa memiliki dukungan yang

(25)

Language Type Application domain

Smalltalk Object-oriented Interactive systems Java Object-oriented Interactive systems

Prolog Logic Symbolic processing

(26)

 Apa domain masalah tersebut ?

 Interaksi user apa yang dibutuhkan ?

 Lingkungan pendukung apa yang disediakan dengan

bahasa tersebut ?

 Bagian yang berbeda dari sistem dapat diprogramkan

dengan bahasa yang berbeda, hal ini akan

(27)

 Pengembangan evolusioner sekarang merupakan teknik standar untuk implementasi aplikasi berukuran kecil dan menengah

pada domain sistem bisnis

 Lazimnya termasuk database query language, screen generator,

report generator dan spreadsheet.

 Dapat diintegrasikan dengan CASE toolset

 Bahasa dan lingkungan ini kadang-kadang disebut

fourth-generation language (4GL)

(28)

DB programming language Interface generator Spreadsheet Report generator Database management system

(29)

 Prototipe dapat di create secara cepat dari

sekumpulan komponen yang pernah ada ditambah dengan mekanisme untuk merekat komponen ini bersama-sama

 Mekanisme komposisi ini mesti memuat fasilitas

kontrol dan mekanisme untuk komunikasi

 Sistem spesifikasi harus dimasukkan kedalam

account yang ada dan fungsi dari komponen yang semula tetap ada

(30)

 Pembangunan level Aplikasi

 Sistem aplikasi yang ada diintegrasikan dengan prototipe dengan demikian fungsinya dapat di pakai bersama

 Contoh, jika dibutuhkan text maka word processor standar dapat digunakan

 Pembangunan level Komponen

 Komponen individual diintegrasikan dengan kerangka kerja standard kemudian diintegrasikan ke sistem

(31)

Component composition framework Executable prototype Reusable software components Control and integration code

(32)

 Untuk beberapa aplikasi, prototipe dapat di-create dengan pembangunan “ compound document “

 Hal ini adalah dokumen dengan elemen aktif [seperti

spreadsheet] menyediakan dokumen untuk komputasi user

 Tiap-tiap elemen aktif berhubungan dengan aplikasi

yang dipilih

(33)

Compound document

Text 1 Text 2 Text 3

Text 4 Text 5

Table 1

Table 2

Sound 1

(34)

 Bahasa Script seperti VB di mana prototipe di

bangun dengan memakai UI dari item standar dan hubungannya dengan komponen lain

 Bahasa ini memiliki komponen library yang lengkap

untuk mendukung pembangunan sistem/prototipe

 Programer aplikasi membangun sistem secara

interaktif dengan mendefinisikan interface dalam layar , field, tombol, dan menu

(35)

File Edit Views Layout Options Help General Index Hypertext display component Date component Range checking script 1 2th January 2000 3.876 Draw canvas component User prompt component + script

(36)

 Sukar untuk mengkoordinasikan team pembangunan sistem

 Tidak ada arsitektur sistem yang eksplisit

 Ada ketergantungan yang sangat kompleks diantara

bagian dari program yang menyebabkan pemeliharaan menjadi rumit

(37)

 UI merupakan norma bagi sistem interaktif

 Pembangunan UI mengkonsumsi biaya yang semakin

meningkat dari keseluruhan biaya pembangunan sistem

 Generator interface membuat program yang

terstruktur dengan baik, yang di buat dari spesifikasi interface

 Prototipe Interface berbasis Web dapat di buat

(38)

 Prototipe sistem dapat dikembangkan untuk memberi end-user kesan yang konkrit mengenai kemampuan sistem

 Prototipe semakin populer karena ada tekanan agar sistem

diserahkan dengan cepat

 Prototipe Throw-away mencakup pengembangan prototipe untuk

memahami persyaratan sistem

 Prototipe evolusioner , sistem dibangun dengan cara memulai dari

(39)

 Pengembangan cepat sangat penting untuk prototipe

 Teknik prototipe mencakup bahasa pemrograman tingkat tinggi ,

database, dan konstruksi dari kompunen yang sudah ada

 Prototipe adalah bagian yang penting dari pengembangan sistem.

User harus terlibat dalam melakukan evaluasi terhadap prototipe yang sudah di buat dan menyesuaikannya dengan persyaratan sistem awal

(40)

Referensi

Dokumen terkait

Keadaan ini merupakan potensi dan peluang yang sangat baik untuk pengembangan sapi potong di areal lahan perkebunan dengan sistem integrasi, yaitu pemanfaatan

Serat nano yang dibuat menggunakan proses electrospinning telah berhasil dilakukan. Berdasarkan gambar 1.a-c hasil pengujian morfologi menggunakan SEM dapat dilihat bahwa

Nilai indeks keanekaragaman jenis tertinggi tingkat semai dimiliki oleh ketinggian tempat 1.300 m dpl yang mempunyai keanekaragaman jenis se- besar 3,34 dengan 35 jenis individu

Hasil analisis BlastN dan BlastX dari urutan klon rekombinan menunjukkan bahwa gen berukuran 1300 bp yang telah diklon ke vektor pGEM-T Easy menunjukkan bahwa urutan fragmen DNAnya

kemiringan lahan 10° dan 20° dimana limpasan permukaannya stabil sehingga terlihat pada grafik line tidak mengalami kenaikan yang signifikan sedangkan pada

 Perusahaan yang shuts down sementara harus membayar biaya tetap. Perusahaan yang keluar dari pasar tidak harus membayar biaya apapun, baik fxe ataupun variabel... Keputusan

Jika terdapat kekeliruan yang menyebabkan kerugian negara pada pembayaran tunjangan profesi saya, maka saya bersedia untuk mengembalikan kelebihannya ke Kas Negara

DALAM KONDISI APAPUN, ASUS, DIREKTUR, STAF, KARYAWAN, ATAU AGENNYA TIDAK BERTANGGUNG JAWAB ATAS KERUSAKAN TIDAK LANGSUNG, KHUSUS, INSIDENTAL, ATAU KONSEKUENSIAL (TERMASUK