• Tidak ada hasil yang ditemukan

TUGAS RPL

N/A
N/A
21-090@Ronaldi Wiartha

Academic year: 2025

Membagikan "TUGAS RPL"

Copied!
13
0
0

Teks penuh

(1)

Nama : ALLANSYAH BRAWINATHA ( 202311420029 )

Alleandro Sheva Denny Agoestinoes ( 202311420020 )

1. Component-Based Development (CBD)

Definisi.

Component-Based Development (CBD) adalah pendekatan pengembangan perangkat lunak yang menekankan perancangan dan konstruksi sistem dari komponen perangkat lunak yang dapat digunakan kembali (reusable). Sebuah komponen adalah unit fungsional independen dengan antarmuka yang terdefinisi dengan jelas, yang dapat diintegrasikan dengan

komponen lain untuk membentuk sistem yang lebih besar.

Kelebihan

1. Reusabilitas: Komponen dapat digunakan kembali pada berbagai proyek, menghemat waktu dan biaya pengembangan.

2. Maintainability: Pemeliharaan sistem lebih mudah karena komponen dapat diperbaiki atau diganti secara terpisah.

3. Produktivitas tinggi: Pengembang dapat fokus pada pengembangan komponen baru tanpa harus menulis kode yang sudah ada.

4. Kualitas yang lebih baik: Komponen yang sering digunakan dan teruji secara luas cenderung memiliki kualitas yang lebih baik.

5. Time-to-market yang lebih cepat: Penggunaan komponen yang sudah ada mempercepat proses pembangunan aplikasi.

(2)

Kekurangan

1. Ketergantungan pada komponen: Kegagalan pada satu komponen dapat mempengaruhi seluruh sistem.

2. Kesulitan integrasi: Komponen dari sumber berbeda mungkin sulit diintegrasikan karena perbedaan antarmuka atau teknologi.

3. Overhead kinerja: Penggunaan komponen umum terkadang tidak seoptimal kode yang ditulis khusus untuk kebutuhan tertentu.

4. Biaya awal tinggi: Pembangunan komponen yang berkualitas tinggi dan dapat digunakan kembali memerlukan investasi awal yang lebih besar.

5. Pembelajaran dan adaptasi: Tim pengembang perlu mempelajari cara menggunakan komponen yang ada.

Aliran Proses

CBD mengadopsi aliran proses iteratif dengan fokus pada identifikasi, pembuatan, dan integrasi komponen. Aliran prosesnya meliputi:

1. Identifikasi dan spesifikasi komponen

2. Pencarian dan evaluasi komponen yang sudah ada

3. Adaptasi komponen yang ada atau pengembangan komponen baru 4. Integrasi komponen ke dalam sistem

5. Pengujian sistem

6. Pemeliharaan dan evolusi komponen

Contoh Aplikasi

1. Microsoft Office Suite: Menggunakan komponen yang dibagikan antar aplikasi seperti Excel, Word, dan PowerPoint.

2. Eclipse IDE: Platform pengembangan yang dibangun dengan arsitektur plug-in berbasis komponen.

3. Enterprise JavaBeans (EJB): Framework untuk membangun aplikasi enterprise berbasis komponen.

4. SAP Business Suite: Aplikasi bisnis enterprise yang menggunakan pendekatan berbasis komponen.

5. Android: Sistem operasi mobile yang menggunakan komponen seperti Activities, Services, Broadcast Receivers, dan Content Providers.

2. Format Mthod Model

(3)

Definisi

Format Method adalah metodologi pengembangan perangkat lunak yang dikembangkan di Eropa, terutama populer di Jerman dan Belanda. Metode ini memberikan kerangka kerja terstruktur untuk pengembangan perangkat lunak dengan fokus pada analisis fungsional dan teknis secara terpisah.

Kelebihan

1. Pemisahan yang jelas: Memisahkan analisis fungsional dari desain teknis.

2. Struktur yang terorganisir: Menyediakan struktur proses yang jelas dan mudah diikuti.

3. Dokumentasi yang baik: Menekankan dokumentasi yang komprehensif pada setiap tahap.

4. Fokus pada kebutuhan pengguna: Memulai dengan analisis kebutuhan pengguna secara mendalam.

5. Komunikasi yang lebih baik: Meningkatkan komunikasi antara domain bisnis dan teknis.

Kekurangan

1. Kurang fleksibel: Kurang adaptif terhadap perubahan persyaratan.

2. Overhead dokumentasi: Memerlukan dokumentasi yang ekstensif yang dapat memperlambat proses.

3. Kurang populer secara global: Metode ini tidak banyak dikenal di luar Eropa.

4. Dibutuhkan waktu lebih lama: Proses yang terstruktur membutuhkan waktu yang lebih lama untuk implementasi.

5. Kurang cocok untuk proyek kecil: Terlalu berat untuk proyek dengan skala kecil.

Aliran Proses

Format Method mengadopsi aliran proses linear dengan beberapa iterasi antara tahapan- tahapannya. Tahapan utamanya meliputi:

1. Definisi kebutuhan dan analisis 2. Strukturisasi fungsi

3. Desain teknis 4. Implementasi

5. Pengujian dan integrasi

(4)

Contoh Aplikasi

1. Sistem Banking di Belanda: Beberapa bank di Belanda menggunakan Format Method untuk sistem perbankan mereka.

2. Aplikasi Pemerintahan di Jerman: Instansi pemerintah Jerman sering menggunakan metode ini untuk pengembangan sistem administrasi.

3. Sistem Asuransi Eropa: Beberapa perusahaan asuransi di Eropa mengimplementasikan Format Method.

4. Sistem ERP Kustom: Beberapa implementasi ERP kustom di pasar Eropa menggunakan Format Method.

3. Aspect-Oriented Software Development (AOSD) Definisi

Definisi

Component-Based Development (CBD) adalah pendekatan pengembangan perangkat lunak yang menekankan perancangan dan konstruksi sistem dari komponen perangkat lunak yang dapat digunakan kembali (reusable). Sebuah komponen adalah unit fungsional independen dengan antarmuka yang terdefinisi dengan jelas, yang dapat diintegrasikan dengan komponen lain untuk membentuk sistem yang lebih besar.

(5)

Kelebihan

1. Pemisahan yang jelas: Memisahkan analisis fungsional dari desain teknis.

2. Struktur yang terorganisir: Menyediakan struktur proses yang jelas dan mudah diikuti.

3. Dokumentasi yang baik: Menekankan dokumentasi yang komprehensif pada setiap tahap.

4. Fokus pada kebutuhan pengguna: Memulai dengan analisis kebutuhan pengguna secara mendalam.

5. Komunikasi yang lebih baik: Meningkatkan komunikasi antara domain bisnis dan teknis.

Kekurangan

1. Kurang fleksibel: Kurang adaptif terhadap perubahan persyaratan.

2. Overhead dokumentasi: Memerlukan dokumentasi yang ekstensif yang dapat memperlambat proses.

3. Kurang populer secara global: Metode ini tidak banyak dikenal di luar Eropa.

4. Dibutuhkan waktu lebih lama: Proses yang terstruktur membutuhkan waktu yang lebih lama untuk implementasi.

5. Kurang cocok untuk proyek kecil: Terlalu berat untuk proyek dengan skala kecil.

Aliran Proses

Format Method mengadopsi aliran proses linear dengan beberapa iterasi antara tahapan- tahapannya. Tahapan utamanya meliputi:

1. Definisi kebutuhan dan analisis 2. Strukturisasi fungsi

3. Desain teknis 4. Implementasi

5. Pengujian dan integrasi

(6)

Contoh Aplikasi

1. Sistem Banking di Belanda: Beberapa bank di Belanda menggunakan Format Method untuk sistem perbankan mereka.

2. Aplikasi Pemerintahan di Jerman: Instansi pemerintah Jerman sering menggunakan metode ini untuk pengembangan sistem administrasi.

3. Sistem Asuransi Eropa: Beberapa perusahaan asuransi di Eropa mengimplementasikan Format Method.

4. Sistem ERP Kustom: Beberapa implementasi ERP kustom di pasar Eropa menggunakan Format Method.

3.Aspect-Oriented Software Development (AOSD)

Definisi

Aspect-Oriented Software Development (AOSD) adalah pendekatan pengembangan perangkat lunak yang bertujuan untuk meningkatkan modularitas dengan memisahkan cross-cutting concerns

(kepentingan potong-silang). Cross-cutting concerns adalah aspek sistem yang mempengaruhi banyak modul, seperti logging, keamanan, atau manajemen transaksi.

Kelebihan

1. Modularitas yang lebih baik: Memisahkan cross-cutting concerns dari logika bisnis inti.

(7)

2. Peningkatan maintainability: Perubahan pada aspek tertentu tidak mempengaruhi kode bisnis inti.

3. Pengurangan duplikasi kode: Mengurangi kode boilerplate yang tersebar di seluruh aplikasi.

4. Keterbacaan kode yang lebih baik: Kode bisnis inti menjadi lebih bersih dan fokus pada fungsionalitasnya.

5. Peningkatan reusabilitas: Aspek-aspek dapat digunakan kembali di berbagai bagian aplikasi.

Kekurangan

1. Kompleksitas tambahan: Menambahkan lapisan abstraksi baru yang perlu dipahami oleh pengembang.

2. Kurva pembelajaran: Memerlukan pemahaman konsep baru dan alat khusus.

3. Debug yang sulit: Debugging lebih menantang karena aliran program yang tidak langsung terlihat.

4. Dukungan alat terbatas: Tidak semua IDE dan alat pengembangan mendukung AOSD dengan baik.

5. Potensi masalah kinerja: Weaving aspects dapat menyebabkan overhead pada waktu kompilasi atau runtime.

Aliran Proses

AOSD mengadopsi aliran proses yang mirip dengan pengembangan berorientasi objek, tetapi dengan fokus tambahan pada identifikasi dan implementasi aspek. Aliran prosesnya meliputi:

1. Identifikasi kebutuhan dan use case 2. Identifikasi cross-cutting concerns 3. Desain core components

4. Desain aspects

5. Implementasi core components 6. Implementasi aspects

7. Aspect weaving (integrasi) 8. Pengujian

9. Deployment Contoh Aplikasi

1. Spring Framework: Menggunakan AOP untuk pengelolaan transaksi, keamanan, dan logging.

2. JBoss Application Server: Menggunakan aspek untuk manajemen layanan dan sumber daya.

3. Eclipse IDE: Beberapa fitur Eclipse menggunakan pendekatan berbasis aspek.

4. Sistem Perbankan Online: Aspek-aspek seperti logging, keamanan, dan audit diimplementasikan dengan AOSD.

5. Telecom Billing System: Sistem penagihan telekomunikasi menggunakan AOSD untuk manajemen transaksi dan logging.

(8)

4. Unified Process (UP)

Definisi

Unified Process (UP) adalah kerangka kerja pengembangan perangkat lunak iteratif dan inkremental yang berfokus pada arsitektur dan didorong oleh use case. UP membagi proyek menjadi empat fase: Inception, Elaboration, Construction, dan Transition, dengan beberapa iterasi dalam setiap fase.

Kelebihan

1. Iteratif dan inkremental: Memungkinkan pengembangan dan penyempurnaan bertahap.

2. Didorong oleh use case: Memastikan sistem memenuhi kebutuhan pengguna.

3. Fokus pada arsitektur: Menekankan pentingnya arsitektur yang baik.

4. Manajemen risiko proaktif: Risiko utama diidentifikasi dan ditangani di awal proyek.

5. Fleksibilitas: Dapat disesuaikan untuk proyek dengan berbagai ukuran dan kompleksitas.

Kekurangan

1. Kompleks: Framework yang komprehensif dapat menjadi rumit untuk tim kecil.

2. Overhead dokumentasi: Meskipun tidak seberat metode waterfall, masih membutuhkan dokumentasi yang signifikan.

3. Membutuhkan pengalaman: Efektivitas UP bergantung pada pengalaman dan keahlian tim.

4. Potensi menjadi berat: Tanpa penyesuaian yang tepat, bisa menjadi proses yang berat.

5. Tidak seagile metodologi agile: Lebih terstruktur dibandingkan dengan metode agile murni

(9)

Aliran Proses

UP mengadopsi aliran proses iteratif dan inkremental dengan empat fase utama:

1. Inception: Menentukan visi dan ruang lingkup proyek.

2. Elaboration: Merencanakan aktivitas dan sumber daya yang diperlukan, mengidentifikasi risiko, dan membangun arsitektur dasar.

3. Construction: Membangun produk secara iteratif dan inkremental hingga siap untuk pengguna.

4. Transition: Deployment ke lingkungan produksi dan transisi kepada pengguna.

Dalam setiap fase terdapat disiplin ilmu yang dijalankan dengan intensitas berbeda:

Business Modeling

Requirements

Analysis & Design

Implementation

Test

Deployment

Configuration & Change Management

Project Management

Environment Contoh Aplikasi

1. IBM Rational Software: Menggunakan UP untuk pengembangan produk perangkat lunak mereka.

2. Sistem Perbankan Enterprise: Bank-bank besar menggunakan UP untuk mengembangkan sistem core banking.

3. Aplikasi Healthcare: Sistem informasi kesehatan kompleks sering menggunakan UP.

4. Sistem ERP: Beberapa implementasi ERP perusahaan mengikuti metodologi UP.

5. Sistem Penerbangan: Sistem pemesanan dan manajemen penerbangan menggunakan UP untuk pengembangan.

(10)

5. V-Model

Definisi

V-Model adalah model pengembangan perangkat lunak yang merupakan ekstensi dari model waterfall, dimana setiap fase pengembangan memiliki fase pengujian yang sesuai. Model ini membentuk huruf "V", dengan fase pengembangan di sisi kiri dan fase pengujian yang sesuai di sisi kanan.

Kekurangan

1. Kurang fleksibel: Sulit mengakomodasi perubahan persyaratan.

2. Model yang kaku: Setiap fase harus selesai sebelum yang berikutnya dimulai.

3. Tidak ada prototipe awal: Pengguna hanya melihat sistem di akhir siklus hidup.

4. Waktu yang lebih lama: Membutuhkan waktu lebih lama untuk pengembangan dan pengujian.

5. Tidak cocok untuk proyek yang kompleks dan berorientasi objek: Lebih cocok untuk proyek linear.

Kelebihan

1. Validasi awal: Rencana pengujian dikembangkan di awal siklus hidup.

2. Pencarian kesalahan lebih awal: Defect dapat ditemukan di tahap awal.

3. Struktur yang jelas: Menyediakan struktur dan disiplin yang jelas untuk proses pengembangan.

4. Cocok untuk proyek dengan persyaratan yang stabil: Bekerja dengan baik ketika persyaratan jelas dan tidak berubah.

5. Fase dan deliverable yang terdefinisi dengan baik: Setiap fase memiliki hasil yang jelas.

(11)

Aliran Proses

V-Model mengadopsi aliran proses sekuensial dengan fase pengembangan dan pengujian yang sesuai:

Fase Pengembangan (Sisi Kiri V):

1. Requirements Analysis 2. System Design

3. Architecture Design 4. Module Design

5. Implementation/Coding Fase Pengujian (Sisi Kanan V):

1. Unit Testing 2. Integration Testing 3. System Testing 4. Acceptance Testing

Setiap fase pengembangan di sisi kiri memiliki fase pengujian yang sesuai di sisi kanan.

Contoh Aplikasi

1. Sistem Kesehatan Kritis: Aplikasi kesehatan yang memerlukan keandalan tinggi.

2. Sistem Keamanan: Aplikasi keamanan dan pengawasan.

3. Sistem Kontrol Industri: SCADA dan sistem kontrol industri lainnya.

4. Sistem Avionik: Sistem pada pesawat terbang dan kendaraan luar angkasa.

5. Sistem Perbankan Kritikal: Aplikasi core banking yang membutuhkan keandalan dan keamanan tinggi.

(12)

6. Concurrent Development Model

Definisi:

Concurrent Model memungkinkan berbagai aktivitas pengembangan (seperti desain,

pengkodean, pengujian) berlangsung secara paralel, meningkatkan efisiensi dan fleksibilitas .

Kelebihan:

Efisiensi Waktu: Mengurangi waktu total pengembangan dengan aktivitas paralel.

Responsif: Mudah menyesuaikan dengan perubahan kebutuhan atau prioritas.

Kekurangan:

Koordinasi: Membutuhkan komunikasi dan sinkronisasi yang efektif antar tim.

Kompleksitas Manajemen: Memantau status berbagai aktivitas secara bersamaan bisa menantang.

Aliran Proses:

Concurrent Model mengadopsi aliran paralel, dengan aktivitas yang dapat berlangsung bersamaan dan saling mempengaruhi.

Contoh Aplikasi:

Pengembangan Aplikasi Client-Server: Di mana frontend dan backend dikembangkan secara bersamaan.

(13)

Proyek Agile: Yang memerlukan iterasi cepat dan kolaborasi tim yang intensif.

Referensi

Dokumen terkait

Sistem Informasi Tugas Akhir dan Praktek Kerja Lapangan ini mempunyai dua antarmuka utama, yaitu : antarmuka untuk pengunjung yang bisa melihat informasi dan referensi jurnal dari

Koordinasi adalah suatu proses yang mengatur kegiatan-kegiatan didalam sebuah organisasi dengan mempekerjakan unit-unit fungsional untuk mencapai suatu tujuan

16   Mengamati untuk Mengamati untuk mengidentifikasi dan mengidentifikasi dan merumuskan masalah merumuskan masalah tentang struktur antar tentang struktur antar komponen

Keberadaan dan keterkaitan antar komponen atau bagian tersebut diperlukan dalam membentuk sebuah sistem, karena semua sistem baik itu sistem besar yang kompleks

Sistem hidroponik NFT terpantau diintegrasikan dengan menggunakan sistem Internet OF Things (IOT) yang merupakan sebuah konsep bertujuan untuk memperluas manfaat

• Modularity / modularitas mengacu pada gagasan menyusun sistem besar dengan mengembangkan sejumlah komponen yang berbeda secara independen dan kemudian mengintegrasikannya

Meskipun teknologi ini masih dalam tahap pengembangan dan belum sepenuhnya diimplementasikan secara luas, Ocean Wave Energy memiliki potensi besar untuk diintegrasikan dengan teknologi

Secara keseluruhan, DMAC adalah komponen penting untuk meningkatkan efisiensi transfer data dalam sistem komputer, terutama dalam aplikasi yang memerlukan pemrosesan data besar atau