Dokumen tersebut membahas tentang perancangan dengan pemakaian ulang dimana komponen perangkat lunak dapat dipakai ulang untuk meningkatkan efisiensi pengembangan. Ada dua pendekatan pemakaian ulang yaitu berbasis komponen dan berbasis generator, dimana generator memungkinkan pengetahuan yang dapat dipakai ulang ditangkap dalam sistem generator program. Pemakaian ulang produk komersial (COST) juga dibahas sebagai cara untuk memperoleh banyak fungsion
Software reuse merupakan penggunaan kembali kode, template, prosedur, fungsi, dan asset perangkat lunak yang ada untuk membangun perangkat lunak baru dalam rangka mempercepat proses pengembangan, mengurangi biaya, dan meningkatkan kualitas perangkat lunak. Beberapa teknik reuse meliputi penggunaan library, komponen, objek, dan fungsi serta penerapan standar antarmuka pengguna untuk meningkatkan konsistensi dan kepercayaan pengguna. Mes
Dokumen tersebut membahas proses pengembangan perangkat lunak, meliputi aktivitas seperti spesifikasi persyaratan, desain, implementasi, validasi, dan pemeliharaan. Berbagai model proses pengembangan dijelaskan seperti model air terjun dan pengembangan evolusioner. Teknologi pendukung seperti alat bantu rekayasa perangkat lunak (CASE) juga dibahas.
Dokumen tersebut membahas mengenai Software Quality Assurance (SQA) pada berbagai tahapan pengembangan perangkat lunak mulai dari perencanaan, pelaksanaan, hingga penutupan proyek, serta pembahasan mengenai beberapa model siklus hidup pengembangan perangkat lunak seperti model tradisional, agile, spiral, prototyping, dan extreme programming beserta kelebihan dan kekurangannya.
Dokumen tersebut membahas tentang perancangan dengan pemakaian ulang dimana komponen perangkat lunak dapat dipakai ulang untuk meningkatkan efisiensi pengembangan. Ada dua pendekatan pemakaian ulang yaitu berbasis komponen dan berbasis generator, dimana generator memungkinkan pengetahuan yang dapat dipakai ulang ditangkap dalam sistem generator program. Pemakaian ulang produk komersial (COST) juga dibahas sebagai cara untuk memperoleh banyak fungsion
Software reuse merupakan penggunaan kembali kode, template, prosedur, fungsi, dan asset perangkat lunak yang ada untuk membangun perangkat lunak baru dalam rangka mempercepat proses pengembangan, mengurangi biaya, dan meningkatkan kualitas perangkat lunak. Beberapa teknik reuse meliputi penggunaan library, komponen, objek, dan fungsi serta penerapan standar antarmuka pengguna untuk meningkatkan konsistensi dan kepercayaan pengguna. Mes
Dokumen tersebut membahas proses pengembangan perangkat lunak, meliputi aktivitas seperti spesifikasi persyaratan, desain, implementasi, validasi, dan pemeliharaan. Berbagai model proses pengembangan dijelaskan seperti model air terjun dan pengembangan evolusioner. Teknologi pendukung seperti alat bantu rekayasa perangkat lunak (CASE) juga dibahas.
Dokumen tersebut membahas mengenai Software Quality Assurance (SQA) pada berbagai tahapan pengembangan perangkat lunak mulai dari perencanaan, pelaksanaan, hingga penutupan proyek, serta pembahasan mengenai beberapa model siklus hidup pengembangan perangkat lunak seperti model tradisional, agile, spiral, prototyping, dan extreme programming beserta kelebihan dan kekurangannya.
Dokumen ini membahas tentang analisis tugas dalam interaksi manusia dan komputer. Analisis tugas merupakan metode untuk menganalisis pekerjaan manusia, termasuk apa yang mereka kerjakan, alat yang digunakan, dan pengetahuan apa yang dibutuhkan. Tujuan analisis tugas adalah untuk meminimalkan potensi kesalahan dan mengoptimalkan unsur manusia dalam perancangan sistem secara sistematis.
Sistem terdistribusi adalah jaringan komputer yang terhubung secara global melalui internet untuk bertukar informasi. Intranet digunakan untuk mengelola informasi perusahaan seperti kolaborasi dokumen, akses sistem dan informasi perusahaan, serta mendukung pegawai mobile. Internet dimulai sebagai proyek pemerintah AS untuk jaringan komputer tahan perang dan sekarang digunakan untuk berbagai aplikasi seperti email, situs web, dan telepon internet ole
Perancangan sistem komputer meliputi perancangan perangkat keras hingga interface pengguna. Interface pengguna yang baik sangat penting untuk keberhasilan sistem. Interface yang sulit digunakan akan menimbulkan banyak kesalahan pengguna. Prinsip-prinsip perancangan interface pengguna meliputi kebiasaan pengguna, konsistensi, kejutan minimal, dan kemampuan pemulihan. Evaluasi perlu dilakukan untuk memastikan interface memenuhi kebutuhan pengguna.
Dokumen ini membahas tentang desain dan notasi dialog antara manusia dan komputer. Ada dua jenis notasi dialog yaitu diagramatik dan tekstual. Notasi diagramatik lebih sering digunakan karena memungkinkan melihat struktur dialog secara cepat, meski kadang sulit menjelaskan dialog yang kompleks. Untuk menganalisis dialog diperlukan untuk memperhatikan aksi pengguna, kondisi dialog, dan presentasi antarmuka.
Dokumen tersebut berisi soal untuk ujian tentang interaksi manusia dan komputer (HCI). Terdapat enam soal utama dan satu soal bonus yang membahas faktor-faktor penentu HCI seperti faktor manusia, komputer, dan interaksi; konsep daya guna dan proses desain dalam HCI; serta paradigma dan prinsip interaksi manusia dan komputer.
Dokumen tersebut membahas tentang pemeliharaan dan pengujian sistem terdistribusi klien server. Secara garis besar dibahas tentang pentingnya pemeliharaan perangkat keras dan perangkat lunak untuk menjaga sistem tetap berjalan dengan baik, serta beberapa tahapan dan jenis pengujian yang perlu dilakukan untuk memastikan kualitas dan keberhasilan aplikasi klien server.
Dokumen tersebut membahas konsep dasar sistem terdistribusi, yang merupakan kesatuan elemen yang saling berinteraksi secara teratur untuk mendistribusikan data, informasi, proses, objek dan layanan ke pengguna terkait. Dokumen tersebut juga membahas tantangan pengembangan sistem terdistribusi seperti heterogenitas, keterbukaan, keamanan, skalabilitas, penanganan masalah, kebersamaan, dan transparansi.
Dokumen tersebut membahas tentang interaksi antara manusia dan komputer, termasuk hardware seperti printer, scanner, pemindai, dan pem baca optik yang terhubung ke komputer. Juga dibahas tentang memori komputer, kompresi data, batasan kinerja interaksi, emisi radiasi dari layar komputer, posisi duduk yang nyaman untuk menggunakan komputer, serta teknologi jaringan komputer.
Sistem terdistribusi merujuk kepada sistem operasi client server yang mendukung penggunaan berbagai jenis sistem operasi seperti Windows, Mac OS, Unix, Linux dan Netware. Pemilihan sistem operasi yang tepat sangat penting untuk mendukung pengembangan aplikasi client server.
Dokumen tersebut membahas tentang sistem terdistribusi dan istilah-istilah dasarnya seperti program, bahasa pemrograman, pemrograman, pemecahan masalah, dan teknik pemrograman seperti pemrograman terstruktur, modular, dan berorientasi objek. Juga dibahas konsep-konsep pada pemrograman berorientasi objek seperti enkapsulasi, pewarisan, dan polimorfisme serta teknik pemodelan seperti UML.
Software reuse merupakan penggunaan kembali kode, template, prosedur, fungsi, dan asset perangkat lunak yang ada untuk membangun perangkat lunak baru dalam rangka mempercepat proses pengembangan, mengurangi biaya, dan meningkatkan kualitas perangkat lunak. Beberapa teknik reuse meliputi penggunaan library, komponen, objek, dan fungsi serta penerapan standar antarmuka pengguna untuk meningkatkan konsistensi dan kepercayaan pengguna. Mes
KONSEP DAN PENERAPAN MODEL-MODEL PROSES PEMBANGUNAN PERANGKAT LUNAK fajrillah
Pemodelan dalam suatu proses pembangunan perangkat lunak merupakan suatu hal yang dilakukan di tahapan awal. Dalam proses pembangunan perangkat lunak sebenarnya masih memungkinkan tanpa pembuatan model proses pembangunan perangkat lunak. Hal itu tidak dapat lagi dilakukan dalam suatu industri rekayasa perangkat lunak. Pemodelan dalam perangkat lunak merupakan suatu yang harus dikerjakan di bagian awal dari proses pembangunan perangkat lunak, dan pemodelan ini akan mempengaruhi perkerjaan-pekerjaan dalam proses pembangunan perangkat lunak tersebut.
Dokumen ini membahas tentang analisis tugas dalam interaksi manusia dan komputer. Analisis tugas merupakan metode untuk menganalisis pekerjaan manusia, termasuk apa yang mereka kerjakan, alat yang digunakan, dan pengetahuan apa yang dibutuhkan. Tujuan analisis tugas adalah untuk meminimalkan potensi kesalahan dan mengoptimalkan unsur manusia dalam perancangan sistem secara sistematis.
Sistem terdistribusi adalah jaringan komputer yang terhubung secara global melalui internet untuk bertukar informasi. Intranet digunakan untuk mengelola informasi perusahaan seperti kolaborasi dokumen, akses sistem dan informasi perusahaan, serta mendukung pegawai mobile. Internet dimulai sebagai proyek pemerintah AS untuk jaringan komputer tahan perang dan sekarang digunakan untuk berbagai aplikasi seperti email, situs web, dan telepon internet ole
Perancangan sistem komputer meliputi perancangan perangkat keras hingga interface pengguna. Interface pengguna yang baik sangat penting untuk keberhasilan sistem. Interface yang sulit digunakan akan menimbulkan banyak kesalahan pengguna. Prinsip-prinsip perancangan interface pengguna meliputi kebiasaan pengguna, konsistensi, kejutan minimal, dan kemampuan pemulihan. Evaluasi perlu dilakukan untuk memastikan interface memenuhi kebutuhan pengguna.
Dokumen ini membahas tentang desain dan notasi dialog antara manusia dan komputer. Ada dua jenis notasi dialog yaitu diagramatik dan tekstual. Notasi diagramatik lebih sering digunakan karena memungkinkan melihat struktur dialog secara cepat, meski kadang sulit menjelaskan dialog yang kompleks. Untuk menganalisis dialog diperlukan untuk memperhatikan aksi pengguna, kondisi dialog, dan presentasi antarmuka.
Dokumen tersebut berisi soal untuk ujian tentang interaksi manusia dan komputer (HCI). Terdapat enam soal utama dan satu soal bonus yang membahas faktor-faktor penentu HCI seperti faktor manusia, komputer, dan interaksi; konsep daya guna dan proses desain dalam HCI; serta paradigma dan prinsip interaksi manusia dan komputer.
Dokumen tersebut membahas tentang pemeliharaan dan pengujian sistem terdistribusi klien server. Secara garis besar dibahas tentang pentingnya pemeliharaan perangkat keras dan perangkat lunak untuk menjaga sistem tetap berjalan dengan baik, serta beberapa tahapan dan jenis pengujian yang perlu dilakukan untuk memastikan kualitas dan keberhasilan aplikasi klien server.
Dokumen tersebut membahas konsep dasar sistem terdistribusi, yang merupakan kesatuan elemen yang saling berinteraksi secara teratur untuk mendistribusikan data, informasi, proses, objek dan layanan ke pengguna terkait. Dokumen tersebut juga membahas tantangan pengembangan sistem terdistribusi seperti heterogenitas, keterbukaan, keamanan, skalabilitas, penanganan masalah, kebersamaan, dan transparansi.
Dokumen tersebut membahas tentang interaksi antara manusia dan komputer, termasuk hardware seperti printer, scanner, pemindai, dan pem baca optik yang terhubung ke komputer. Juga dibahas tentang memori komputer, kompresi data, batasan kinerja interaksi, emisi radiasi dari layar komputer, posisi duduk yang nyaman untuk menggunakan komputer, serta teknologi jaringan komputer.
Sistem terdistribusi merujuk kepada sistem operasi client server yang mendukung penggunaan berbagai jenis sistem operasi seperti Windows, Mac OS, Unix, Linux dan Netware. Pemilihan sistem operasi yang tepat sangat penting untuk mendukung pengembangan aplikasi client server.
Dokumen tersebut membahas tentang sistem terdistribusi dan istilah-istilah dasarnya seperti program, bahasa pemrograman, pemrograman, pemecahan masalah, dan teknik pemrograman seperti pemrograman terstruktur, modular, dan berorientasi objek. Juga dibahas konsep-konsep pada pemrograman berorientasi objek seperti enkapsulasi, pewarisan, dan polimorfisme serta teknik pemodelan seperti UML.
Software reuse merupakan penggunaan kembali kode, template, prosedur, fungsi, dan asset perangkat lunak yang ada untuk membangun perangkat lunak baru dalam rangka mempercepat proses pengembangan, mengurangi biaya, dan meningkatkan kualitas perangkat lunak. Beberapa teknik reuse meliputi penggunaan library, komponen, objek, dan fungsi serta penerapan standar antarmuka pengguna untuk meningkatkan konsistensi dan kepercayaan pengguna. Mes
KONSEP DAN PENERAPAN MODEL-MODEL PROSES PEMBANGUNAN PERANGKAT LUNAK fajrillah
Pemodelan dalam suatu proses pembangunan perangkat lunak merupakan suatu hal yang dilakukan di tahapan awal. Dalam proses pembangunan perangkat lunak sebenarnya masih memungkinkan tanpa pembuatan model proses pembangunan perangkat lunak. Hal itu tidak dapat lagi dilakukan dalam suatu industri rekayasa perangkat lunak. Pemodelan dalam perangkat lunak merupakan suatu yang harus dikerjakan di bagian awal dari proses pembangunan perangkat lunak, dan pemodelan ini akan mempengaruhi perkerjaan-pekerjaan dalam proses pembangunan perangkat lunak tersebut.
Mengenal Lebih Jauh Tentang DevOps. DevOps merupakan serangkaian praktek atau kerangka kerja yang mengotomatiskan proses antara bagian pengembangan aplikasi (Dev) dan bagian pengguna operasi aplikasi (Ops) dengan pendekatan kolaboratif dan terpadu. Supaya tim pengembang dapat melakukan proses membangun, mengembangkan, menguji dan meluncurkan / mengirimkan aplikasi perangkat lunak lebih cepat dan lebih handal. Termasuk melakukan pemeliharaan aplikasi. Hal ini akan menghasilkan produk yang stabil dan meningkatkan nilai dari produk itu sendiri.
Buku ini membahas tentang rekayasa perangkat lunak dan manajemen proyek. Ia menjelaskan pengertian perangkat lunak, rekayasa perangkat lunak, proyek, dan manajemen proyek. Bab pertama membahas tentang definisi dan karakteristik utama dari keempat konsep tersebut beserta penjelasan mengenai proses rekayasa perangkat lunak dan area pengetahuan utama dalam manajemen proyek.
Makalah ini membahas tentang mitos-mitos dan metodologi perangkat lunak. Terdapat tiga metode pengembangan perangkat lunak yang dijelaskan yaitu waterfall, prototyping, dan spiral. Setiap metode memiliki kelebihan dan kekurangan dalam pengembangan sistem berdasarkan karakteristik proyek. Makalah ini juga menjelaskan beberapa mitos yang sering dianggap benar dalam pengembangan perangkat lunak.
RPL merupakan disiplin ilmu yg membahas semua aspek produksi perangkat lunak, mulai dari tahap awal spesifikasi sistem sampai pemeliharaan sistem setelah digunakan. Perangkat Lunak yang dibuat harus mampu: tepat waktu, tepat anggaran, meningkatkan kinerja, mengoperasikan prosedur sistem dengan benar. Rekayasa perangkat lunak lebih fokus pada praktik pengembangan perangkat lunak dan mengirimkan perangkat lunak yang bermanfaat untuk pelanggan
1. Dokumen ini membahas implementasi metode Model View Controller menggunakan framework CodeIgniter dalam pengembangan aplikasi manajemen depo petikemas pada Unit Usaha Belawan Logistics Center.
2. Metode MVC membagi aplikasi menjadi tiga bagian yaitu model, view, dan controller. CodeIgniter adalah framework PHP yang menerapkan konsep MVC ini.
3. Aplikasi yang dikembangkan digunakan untuk mengelola proses bisnis depo petikemas yang memiliki kontrak dan ke
Rapid Application Development (RAD) adalah metodologi pengembangan perangkat lunak yang berfokus pada pembangunan aplikasi dalam waktu singkat menggunakan teknik prototyping, pengembangan iteratif, dan time boxing. RAD melibatkan pembangunan prototipe awal, pembangunan versi berikutnya secara iteratif, serta penundaan fitur untuk memenuhi batas waktu. RAD direkomendasikan untuk proyek skala kecil hingga menengah dengan
Dokumen tersebut membahas tentang beberapa jenis perangkat lunak peningkat kinerja komputer seperti Ccleaner, RegEdit, dan TuneUp Utilities beserta pengertian, kelebihan, dan kekurangannya.
Dokumen tersebut membahas model proses perangkat lunak evolusioner yang menggabungkan sifat iteratif dari prototyping dengan pendekatan terkontrol dari model linier sekuensial. Model ini mencakup model inkremental yang menghasilkan versi berikutnya berdasarkan umpan balik, model spiral yang menggabungkan prototyping dan penilaian risiko, serta model spiral WIN-WIN yang melibatkan berbagai pemangku kepentingan untuk merencanakan pengembangan perangkat lun
Dokumen tersebut merupakan materi Ujian Tengah Semester mata kuliah Interaksi Manusia dan Komputer. Materi tersebut membahas tentang model pengguna, analisis tugas, desain dan notasi dialog, model sistem, teknik evaluasi, groupware, serta pentingnya mempelajari interaksi manusia dan komputer.
Dokumen tersebut membahas tentang groupware, yaitu perangkat lunak yang dirancang khusus untuk mendukung kerja kelompok dengan kebutuhan bekerja sama. Groupware dapat diklasifikasikan berdasarkan kapan dan dimana para partisipan bekerja serta fungsi yang dilakukan untuk kerja kooperatif.
Interaksi antara manusia dan komputer melibatkan dialog dan gaya interaksi seperti perintah, menu, bahasa alami, pertanyaan dan jawaban, serta penunjukan dan klik. Model interaksi membantu memahami tujuan pengguna dan sistem dalam berkomunikasi.
Dokumen tersebut berisi ringkasan diskusi kelas mengenai rekayasa persyaratan perangkat lunak (RPL). Diskusi mencakup proses, model, persyaratan, validasi, dan manajemen persyaratan perangkat lunak serta beberapa model sistem RPL dan keuntungan penerapan prototipe.
Dokumen ini membahas tentang rekayasa perangkat lunak dan paradigma umum yang terkait dengan rekayasa perangkat lunak seperti proses pengembangan perangkat lunak dan model pengembangan perangkat lunak.
Dokumen tersebut membahas persyaratan perangkat lunak, termasuk persyaratan fungsional, non-fungsional, dan domain. Dokumen tersebut juga membedakan antara persyaratan pengguna, persyaratan sistem, dan spesifikasi desain."
Dokumen tersebut membahas tentang ketentuan kuliah St. Mawaddatanwwarahmah yang mencakup sanksi keterlambatan dan tugas, persentase nilai untuk absensi, kuis, tugas, UTS dan UAS, serta materi kuliah yang berasal dari buku Software Engineering jilid 2 dan sumber internet.
Dokumen tersebut membahas tentang sistem terdistribusi dan menanyakan beberapa pertanyaan terkaitnya, seperti sistem operasi yang tepat untuk berbagi dokumen rahasia dengan biaya minimal, hal-hal yang perlu diperhatikan dalam aplikasi terdistribusi, proses komunikasi antar komputer dari sisi client dan server, keuntungan dan kerugian pemrograman sisi client dan server, serta pengertian kriptografi, enkripsi, dan deskripsi.
Dokumen tersebut membahas tentang sistem basis data terdistribusi, termasuk konsep server side dan client side dalam pemrograman web, protokol HTTP, PHP sebagai bahasa pemrograman server side, komponen DBMS, dan hal-hal yang berkaitan dengan desain basis data.
Sistem terdistribusi adalah sistem komputer yang terdiri atas beberapa komputer yang terhubung dalam jaringan untuk menyelesaikan tugas bersama. Tujuan pembangunan sistem terdistribusi antara lain untuk meningkatkan kinerja, ketersediaan layanan, dan fleksibilitas. Tantangan pengembangannya termasuk koordinasi antar komponen, kegagalan perangkat, dan ketergantungan antar komponen.
3. Pemakaian ulang perangkat lunak harus diperhitungkan
pada saat perancangan perangkat lunak.
Pemakaian ulang yang oportunistik mungkin dilakukan
pada saat pemrograman, ketika ditemukan komponen
yang memenuhi persyaratan.
Pemakaian ulang yang sistematik menuntut proses
perancangan yang memepertimbangkan bagaimana
desain yang sudah ada dapat dipakai ulang.
Dhawarahmah 3
4. Rekayasa perangkat lunak yang berbasis pemakaian
ulang merupakan pendekatan terhadap pengembangan yang
mencoba memaksimasi pemakaian ulang perangkat lunak
yang ada.
Dhawarahmah 4
5. Contoh unit perangkat lunak yang dipakai ulang
yang bisa berukuran berbeda:
1. Pemakaian ulang sistem aplikasi. Seluruh sistem aplikasi
dapat dipakai ulang dengan menggabungkannya tanpa
perubahan dengan sistem lain.
2. Pemakaian ulang komponen. Komponen dari suatu
aplikasi yang ukurannya berkisar dari subsistem sampai
satu objek tunggal dapat dipakai ulang.
3. Pemakaian ulang fungsi. Komponen perangkat lunak
yang mengimplementasi satu fungsi.
Dhawarahmah 5
6. Keuntungan yang jelas dari pemakaian ulang
perangkat lunak adalah diperkecilnya biaya pengembangan
secara keseluruhan. Komponen- komponen perangkat lunak
yang harus dispesifikasi, dirancang, diimkplementasi, dan
divalidasi menjadi berkurang. Namun demikian reduksi
biaya merupakan salah satu keuntungan potensial dari
pemakaian ulang. Berikut keuntungan lainnya:
Dhawarahmah 6
7. KEUNTUNGAN KETERANGAN
Keandalan bertambah Komponen yang dipakai ulang, yang
telah digunakan pada sistem yang telah
berjalan, seharusnya lebih dapat
diandalkan dari pada komponen baru.
Komponen ini telah dicoba & diuji
pada berbagai lingkungan. Kesalahan
perancangan & implementasi
ditemukan & dihilangkan pada
pemakaian awal komponen tersebut,
sehingga memperkecil jumlah
kegagalan pada pemakaian ulang.
Dhawarahmah 7
8. KEUNTUNGAN KETERANGAN
Resiko Proses diperkecil Jika suatu koponen telah ada, ketidak
pastian biaya pemakaian ulang Menjadi
lebih kecil daripada biaya
pengembangan . Ini merupakan faktor
penting untuk manajemen proyek
karena memperkecil ketidak pastian
dalam estimasi biaya proyek. Hal ini
terutama berlaku ketika komponen-
komponen yang relatif besar seperti
subsistem dipakai ulang
Dhawarahmah 8
9. KEUNTUNGAN KETERANGAN
Pemakaian Spesialis yang efektif Spesialis aplikasi tidak melakukan
pekerjaan yang sama pada berbagai
proyek , tapi mereka dapat
mengembangkan komponen-
komponen yang dapat dipakai ulang,
yang mengengkapsulasi pengetahuan
mereka.
Pemenuhan Standar Beberapa standar, seperti standar
interface, dapat diimplementasi sebagai
satu set komponen standar. Sebagai
contoh, komponen yang dapat dipakai
ulang dapat dikembangkan untuk
implementasi menu sebagai interface
user.
Dhawarahmah 9
10. KEUNTUNGAN KETERANGAN
Pengembangan yang dipercepat Membawa suatu sistem ke pasar secepat
mungkin seringkali lebih penting dari
biaya pengembangan secara
keseluruhan. Pemakaian ulang
komponen mempercepat produksi
karena waktu pengembangan & waktu
validasi akan dipersingkat.
Dhawarahmah 10
11. Komponen yang dapat dipakai ulang dan sesuai.
Pemakaian ulang komponen harus pasti bahwa
komponen- komponen tersebut akan bekerja sebagaimana
dispesifikasi & akan andal.
Komponen tersebut harus memiliki dokumentasi yang
berhubungan untuk membantu pemakai ulang
memahaminya & mengadaptasi ke aplikasi yang baru.
Dhawarahmah 11
12. MASALAH KETERANGAN
Biaya pemeliharaan yang membengkak Jika source kode komponen tidak
tersedia maka biaya pemeliharaan
dapat bertambah besar, karena elemen
sistem yang dipakai ulang bisa makin
tidak kompatibel dengan perubahan
sistem.
Tidak adanya dukungan alat bantu Toolset CASE tidak mendukung
pengembangan dengan pemakaian
ulang. Integrasi alat bantu ini dengan
sistem librari komponen mungkin sulit
atau bahkan tidak mungkin.
Dhawarahmah 12
13. MASALAH KETERANGAN
Sindrom tidak dibuat di sini Beberapa perekayasa perangkat lunak
kadang lebih suka menulis kembali
komponen karena mereka percaya
bahwa mereka dapat membuat suatu
komponen yang dipakai ulang.
Mempertahankan library komponen Memenuhi library komponen dan
menjamin bahwa pengembang
perangkat lunak dapat memakai library
ini mungkin akan mahal.
Menemukan dan mengadaptasi Komponen perangkat lunak harus
komponen yang dapat dipakai ulang ditemukan pada suatu library, dipahami
dan kadangkala diadaptasi untuk
bekerja pada lingkungan yang baru.
Perekayasa harus cukup yakin dapat
menemukan komponen di library
sebelum secara rutin memasukkan
pencarian komponen sebagai bagian
dari proses pengembangan normal
mereka.
Dhawarahmah 13
14. Keberhasilan pemakaian Visual Basic dan Visual C++
dengan komponen-komponen dan Java dengan Javabeans
telah menunjukkan nilai pemakaian ulang. Rekayasa
perangkat lunakberbasis komponen telah diterima luas
sebagai pendekatan dengan efektif terhadap biaya terhadap
pengembangan perangkat lunak.
Dhawarahmah 14
15. Namun tidak sedikit biaya dan masalah yang
berhubungan dengan pemakain ulang, hal ini dapat
menghambat dilakukannya pemakaian ulang & bisa berarti
bahwa pengurangan biaya pengembangan pemakaian ulang
mungkin lebih kecil, kesulitan ini berarti bahwa pemakaian
ulang yang sistematis tidak dapat terjadi begitu saja tetapi
harus direncanakan & diperkenalkan melalui program
pemakaian ulang diseluruh organisasi.contoh kasus:
Dhawarahmah 15
17. Alternatif bagi pandangan berorientasi komponen
pemakaian ulang adalah pandangan generator.
Pada pendekatan terhadap pemakaian ulang
ini, pengetahuan yang dapat dipakai ulang ditangkap pada
sistem generator program yang dapat diprogram dalam
bahasa berorientasi domain.
Deskripsi aplikasi menspesifikasi dengan cara yang
abstrak, komponen yang dapat dipakai ulang yang mana
yang akan digunakan, bagaimana penggabungannya, &
parameterisasinya.
Dengan menggunakan informasi ini, suatu sistem
perangkat lunak operasional dapat dibangkitkan( Gambar
diatas).
Dhawarahmah 17
18. Pemakaian ulang berbasis generator efektif dalam hal biaya
tetapi bergantung pada identifikasi abstraksi domain
stereotipis.
Keuntungan utamanya adalah bahwa lebih muda bagi
end-user untuk mengembangkan program dengan
menggunakan generator dibandingkan dengan pendekatan
berbasis komponen lainnya terhadap pemakaian ulang.
Akan tetapi kebutuhan akan pemahaman yang dalam dari
konsep aplikasi domain & model domain cukup membatasi
kemampuan penerapan teknik ini.
Dhawarahmah 18
19. Pengembangan berbasis komponen muncul pada
akhir tahun 1990-an sebagai pendekatan berbasis
pemakaian ulang terhadap pengembangan sistem
perangkat lunak.
Motovasinya adalah kefrustrasian pengembangan
berorientasi objek tidak berkembang menjadi
pemakaian ulang yang ekstensif sebagaimana yang
diperkirakan pada awalnya.
Komponen lebih abstrak dari kelas objek & dapat
dianggap sebagai penyedia layanan yang berdiri
sendiri.
Dhawarahmah 19
20. Penggambaran suatu komponen sebagai penyedia
layanan menekankan dua karakteristik kritis dari
komponen yang dapat dipakai ulang:
1. Komponen merupakan entitas yang dapat dieksekusi dan
independen.
2. Komponen mengeluarkan interface mereka dan semua
interaksi melalui interface tersebut.
Dhawarahmah 20
21. Komponen didefinisikan oleh interfacenya dan dalam
kasus yang paling umum dapat dianggap memiliki interface
dua interface yang berhubungan, ditunjukkan pada gambar:
GAMBAR: INTERFACE KOMPONEN
Dhawarahmah 21
22. Interface provides, yaitu interface yang mendefinisikan
layanan yang disediakan oleh komponen tersebut.
Interface requires, yaitu interface yang menspesifikasi
layanan apa yang harus tersedia dari sistem yang memakai
komponen. Jika tidak tersedia maka komponen tidak akan
bekerja.
Dhawarahmah 22
23. Komponen-komponen bisa eksis pada tingkat abstraksi yang
berbeda-beda, dari subrutin library yang sederhana sampai
seluruh aplikasi seperti Microsoft Excel (Meyer 1999)
mengidentifikasi lima tingkat abstraksi:
1. Abstraksi fungsional, komponen mengimplementasi satu
fungsi.
2. Pengelompokan kasual, komponen merupakan
sekumpulan entitas yang berhubungan longgar yang
mungkin berupa deklarasi data, fungsi, dsb.
3. Abstraksi Data. Komponen merepresentasikan abstraksi
data atau kelas perangkat lunak bahasa berorientasi
objek.
Dhawarahmah 23
24. 4. Abstraksi Cluster, komponen merupakan sekumpulan
kelas yang berhubungan yang bekerja sama. Kelas ini
kadang- kadang dinamakan kerangka kerja.
5. Abstraksi Sistem, komponen merupakan sistem yang
sepenuhnya berdiri sendiri. Pemakaian ulang abstraksi
tingkat sistem kadang kala disebut pemakaian ulang
COTS.
Dhawarahmah 24
25. Pada pengembangan yang didorong oleh pemakaian
ulang, persyaratan sistem dimodifikasi menurut komponen
pemakaian ulang yang tersedia. Desain juga didasarkan atas
komponen-komponen yang tersedia itu. Namun demikian,
biaya pengembangan yang lebih kecil, pengiriman sistem
yang lebih cepat, dan keandalan sistem yang bertambah
seharusnya dapat mengkompensasi hal ini.
Dhawarahmah 25
26. Salah satu pendekatan efektif bagi pemakaian ulang
didasarkan sekitar kerabat aplikasi.
Sebuah kerabat aplikasi atau jalur produk merupakan
satu set aplikasi yang memiliki arsitektur spesifik
domain.
Inti umum dari kerabat aplikasi adalah dapat dipakai
ulang setiap kali dibutuhkan aplikasi baru.
Dhawarahmah 26
27. Spesialisasi platform, di mana berbagai versi aplikasi
dikembangkan untuk berbagai platform.
Spesialisasi konfigurasi, di mana berbagai versi aplikasi
dibuat untuk menangani berbagai peranti periferal.
Spesialisasi profesional, di mana berbagai versi aplikasi
dibuat untuk pelanggan dengan persyaratan yang berbeda.
Dhawarahmah 27
28. Pola rancangan diturunkan dari ide yang dikemukakan
oleh cristopher Alexander, yang mengusulkan bahwa ada
pola tertentu pada rancangan pembangunan yang umum
sekaligus memuaskan & efektif.
Pola merupakan deskripsi & inti solusinya sehingga solusi
tersebut dapat dipakai ulang pada setting yang berbeda.
Pola dapat dipakai pada saat analisis mengembangkan
model sistem sebagaimana pada saat proses perancangan.
Pada perancangan perangkat lunak, pola rancangan telah
dihubungkan dengan desain berorientasi objek. Pola ini
seringkali bergantung pada karakteristik objek untuk
memberikan generilitas.
Prinsip umumnya dapat diterapkan pada semua
pendekatan perangkat lunak.
Dhawarahmah 28
29. Gamma et al, mendefinisikan empat elemen yang
penting pada pola rancangan:
Nama yang merupakan referensi yang bermakna terhadap
pola.
Deskripsi area masalah yang menjelaskan kapan pola
tersebut dapat diterapkan.
Deskripsi solusi yang mendeskripsikan bagian-bagian
solusi perancangan,hubungannya & tanggung jawabnya.
Pernyataan konsekuensi-hasil & pertukaran-penerapan
pola tersebut.
Dhawarahmah 29