software reuse

36
Metodologi Pengembagan Perangkat Lunak Software Reuse

Upload: raden-muhamad-firzatullah

Post on 20-Jan-2017

349 views

Category:

Software


3 download

TRANSCRIPT

Page 1: Software reuse

Metodologi Pengembagan Perangkat Lunak

Software Reuse

Page 2: Software reuse

PengertianSoftware reuse, disebut juga code reuse adalah penggunaan software yang sudah ada, atau pengetahuan software (software knowledge) untuk membangun software baru.

Page 3: Software reuse

Based Software ReuseSoftware engineering lebih difokuskan pada pembangunan software secara asli, tapi sekarang untuk mendapatkan hasil software yang lebih baik, lebih cepat dan harga murah, kita membutuhkan mengadopsi proses yang didasarkan pada konsep software reuse.

Page 4: Software reuse

Systematic Software ReuseProgrammer selalu memggunakan kembali (reuse) sebagian dari :CodeTemplateProcedureFungsi

Page 5: Software reuse

Software AssetItem dari reusable software atau software knowledge disebut sebagai software asset. Asset adalah desain, model tes, kebutuhan – kebutuhan, arsitektur, dan lain sebagainya.

Page 6: Software reuse

Application System ReuseSebuah aplikasi besar pada sebuah sistem mungkin digunakan tanpa merubah ke sistem lain atau membangun aplikasi yang mirip.

Page 7: Software reuse

Component ReusePenggunaan dari komponen sebuah aplikasi.

Page 8: Software reuse

Object and Function ReusePengunaan komponen software berupa objek atau fungsi.

Page 9: Software reuse

Ide Software ReuseMungkin yang paling dikenal baik dari software reuse adalah code. Ide dari penggunaan ulang code ialah sebagian atau keseluruhan program computer yg ditulis suatu ketika lalu digunakan oleh program lain yang di tulis kemudian.

Page 10: Software reuse

Contoh Penggunaan Software ReusePenggunaan ulang code adalah teknik yg umum dilakukan untuk menghemat waktu dan energi untuk mengurangi pekerjaan. Contoh yang umum dari software reuse adalah Teknik penggunaan software library.

Page 11: Software reuse

Penerapan Software ReusePembuat program baru bisa menggunakan kode pada software library untuk melakukan tugas tertentu, bukan sebaliknya dengan menulis penuh program untuk melakukan tugas / operasi yg diinginkan. Implementasi dari libarary sering kali memberi keuntungan dalam menyelesaikan kasus yang tidak biasa.

Page 12: Software reuse

Keuntungan Software Reuse Meningkatkan kepercayaan

Software yang akan digunakan kembali telah di tes dan dicoba pada sistemnya, sehingga lebih bisa dipercaya dari software baru. awal pembuatan dari software mendeteksi berbagai kesalahan desain dan implementasi. Ini kemudian diperbaiki, yang megurangi tingkat kegagalan saat software di gunakan kembali.

Page 13: Software reuse

Keuntungan Software Reuse Mengurangi Resiko

Jika sotware telah ada, ada pengurangan biaya dalam pembuatan software. Ini adalah factor yang penting untuk manajemen proyek untuk mengurang estimasi biaya proyek disisi kesalahan software. Hal ini lebih terlihat saat sejumlah besar komponen software digunakan kembali.

Page 14: Software reuse

Keuntungan Software Reuse Lebih Efektif untuk Para Spesialis

Para spesialis tidak perlu melakukan pekerjaan yang sama pada proyek berbeda. Para spesialis bisa menggunakan software sebelumnya dengan mengkapsulasi program mereka.

Page 15: Software reuse

Keuntungan Software Reuse Standar pelaksanaan

Beberapa standar, seperti standar user interface, bisa diimplementasikan sebagai standard reusable component. Sebagai contoh interface menu bisa diimplementasikan memggunakan reusable component, semua aplikasi menyajikan format menu yang sama. Standar interface ini meningkatkan keyakinan user untuk mengurangi kesalahan ketika medapati interface yang familiar.

Page 16: Software reuse

Keuntungan Software Reuse Percepatan Pengembangan

Membawa software ke pasaran secepat mungkin adalah lebih penting dari semua biaya pengembangan. Reuse softrware dapat mempercepat produksi karena waktu pengembangan dan pengesahan software bisa dikurangi.

Page 17: Software reuse

Kekurangan Software Reuse Meningkatkan Biaya Perawatan

Biaya perawatan mungkin akan bertambah saat reuse elemen dari suatu sistem memjadi semakin tidak sesuai dengan perubahan system.

Page 18: Software reuse

Kekurangan Software Reuse Kekurangan Tool Pendukung

Toolset mungkin tidak support pembangunan software dengan model reuse. Ini mungkin sulit atau tidak mungkin untuk mengintegrasi tool – tool ini dengan sistem component library.

Page 19: Software reuse

Kekurangan Software Reuse Sindrome Not-Invented-here

Beberapa software engineer kadang – kadang lebih suka menulis ulang reuse component sebagian dengan alasan dapat meningkatkan kegunaan reusable component, sebagian melakukan dengan kepercayaan bahwa fakta menulis original software adalah lebih menantang dari menggunakan software orang lain.

Page 20: Software reuse

Kekurangan Software Reuse Membuat & Merawat Komponen

LibraryMenyusun sejumlah reusable componenet library dan menjamin pengembang bisa mengunakan library ini bisa menjadi mahal. Teknik umum kita untuk mengklasifikasi, mengkatalog, dan megambil komponen software adalah belum tepat.

Page 21: Software reuse

Kekurangan Software Reuse Menemukan, Mengerti dan

Mengadaptasikan Komponen ReusableKomponen software harus ditemukan di library, dimengerti dan, kadang, diadaptasikan untuk bekerja di lingkungan baru. Engineer harus yakin untuk menemukan komponen di library sebelum mereka akan menyertakan komponen sebagai bagian dari proses pembangunan software mereka.

Page 22: Software reuse

Abstraksi Software ReuseSoftware library adalah contoh yang bagus sebagai abstraksi. Programmer mungkin memutuskan untuk membuat abstraksi internal sehingga bagian dari program mereka bisa digunakan kembali, atau mungkin membuat library untuk digunakan sendiri.

Page 23: Software reuse

Penggunaan Software ReuseUntuk penggunaan code yang sudah ada, beberapa hal seperti interface, atau jalur komunikasi, harus didefinisikan. Ini umumnya termasuk penggunaan subroutine, object, class, atau prototype.

Praktik seperti ini di formalisasi dan distandarisasi oleh software product line engineering. Praktek yang umum adalah pengunaan versi terdahulu dari program yg ada sebagai titik mulai dari versi selajutnya juga disebut dengan software reuse.

Page 24: Software reuse

Landasan Software ReuseMeskipun reuse sering disederhanakan sebagai sebuah komponen sistem, ada banyak pendekatan berbeda untuk menggunakan kembali software. Reuse dimungkinkan untuk selang level dari fungsi simple sampai aplikasi komplit. landscape reuse memberi landasan pemahaman dalam pengaplikasian reuse.

Page 25: Software reuse

Software Reuse Landscape

Page 26: Software reuse

Design PatternsAbstraksi umum yang terjadi dalam memperesentasikan aplikasi dalam sebuah desain yang menunjukkan astraksi umum, objek konkret dan interaksi.

Page 27: Software reuse

Component-Based Development System dibangun dengan mengintegrasikan komponen yang sesuai dengan model standar komponen.

Page 28: Software reuse

Aplication Framework Koleksi dari abstrak dan class konkret yang bisa diadaptasikan dan diperluas untuk membuat aplikasi system.

Page 29: Software reuse

Legacy System Wrapping Kebijaksaaan sistem yang bisa disatukan dengan mendefisniskan seset interface dan menyediakan akses ke kebijaksanaan system ini melalui interface.

Page 30: Software reuse

Service Oriented System Sistem yang dibangun dengan menghubungkan share service yang mungkin disediakan pihak luar.

Page 31: Software reuse

Application Product Lines Sebuah tipe aplikasi yang umum pada arsitekture software sehingga bisa diadaptasiakan dengan cara berbeda utuk costumer berbeda.

Page 32: Software reuse

Program LibrariesLibrary Class dan function yang mengimplementasikan code yang siap digunakan.

Page 33: Software reuse

Program Generators Sebuah generator system yang bisa menghsilkan system atau software dengan menspesifikasikan type parameter / hasil yang diinginkan.

Page 34: Software reuse

Software Reuse & StorageBeberapa meyebut penggunaan ulang kode adalah termasuk juga mengkopi beberapa atau sebagian code dari program yang sudah ada ke program baru dapat membuat kebutuhan memory lebih besar.

Page 35: Software reuse

Generic ProgrammingBanyak penelitian yg telah dilakukan untuk membuat reuse lebih cepat, mudah, lebih sistematik, dan dalam sebuah kesatuan proses normal pemrograman. Ini adalah tujuan utama dibalik penemuan pemrograman berbasis objek (object oriented programaing), dimana menjadi salah satu bentuk yang paling umum dari penggunaan ulang program yang formal (formalized reuse). Dimana kemudian melahirkan penemuan yang disebut generic programming.

Page 36: Software reuse

Generative & Net ProgrammingAlat terbaru yang lain disebut dengan software generator, program yang bisa membuat program baru dari sebuah tipe yang ditentukan. Didasarkan pada sekumpulan parameter yang user pilih. Bidang study dari system seperti ini disebut generative progrmaing dan net progrmaing.