Anda di halaman 1dari 6

2.1.

Berikut adalah poin-poin yang dapat disimpulkan dari bagian "A Generic Process Model":

1. **Definisi Proses:**

- Proses didefinisikan sebagai kumpulan aktivitas, tindakan, dan tugas yang dilakukan saat sebuah
produk kerja dibuat.

- Setiap aktivitas, tindakan, dan tugas berada dalam kerangka atau model yang mendefinisikan
hubungannya dengan proses dan satu sama lain.

2. **Model Proses Perangkat Lunak:**

- Proses perangkat lunak direpresentasikan secara skematis dalam sebuah model.

- Setiap aktivitas kerangka diisi oleh serangkaian tindakan rekayasa perangkat lunak.

- Setiap tindakan rekayasa perangkat lunak didefinisikan oleh seperangkat tugas yang
mengidentifikasi tugas-tugas kerja yang akan diselesaikan, produk kerja yang akan dihasilkan, poin
penjaminan kualitas yang diperlukan, dan tonggak kemajuan yang akan digunakan.

3. **Aktivitas Kerangka dan Payung:**

- Ada lima aktivitas kerangka—komunikasi, perencanaan, pemodelan, konstruksi, dan


implementasi.

- Selain itu, ada serangkaian aktivitas payung—pelacakan dan pengendalian proyek, manajemen
risiko, jaminan kualitas, manajemen konfigurasi, tinjauan teknis, dan lainnya—yang diterapkan
sepanjang proses.

4. **Aliran Proses:**

- Aspek penting lainnya dari proses perangkat lunak adalah aliran proses, yang menggambarkan
bagaimana aktivitas kerangka dan tindakan-tindakan yang terjadi dalam setiap aktivitas kerangka
diorganisir dengan mengikuti urutan waktu.

- Ada empat jenis aliran proses: linear, iteratif, evolusioner, dan paralel.

Pemahaman tentang model proses perangkat lunak sangat penting dalam mengelola proyek
perangkat lunak dengan efisien dan efektif..

2.2

Berikut adalah poin-poin yang dapat disimpulkan dari bagian "Defining a Framework Activity":

1. **Kondisional Framework Activity:**

- Aktivitas kerangka dapat bervariasi tergantung pada kompleksitas proyek, sifat masalah yang akan
diselesaikan, karakteristik tim yang melaksanakan pekerjaan, dan pemangku kepentingan yang
mensponsori proyek.

2. **Contoh Aktivitas Komunikasi:**

- Untuk proyek perangkat lunak kecil dengan persyaratan sederhana, aktivitas komunikasi mungkin
hanya memerlukan panggilan telepon atau e-mail dengan pemangku kepentingan yang tepat.
- Tugas kerja untuk aktivitas ini dapat mencakup:

- Menghubungi pemangku kepentingan melalui telepon.

- Membahas persyaratan dan mengembangkan catatan.

- Mengorganisir catatan menjadi pernyataan persyaratan singkat.

- Mengirimkan melalui e-mail kepada pemangku kepentingan untuk tinjauan dan persetujuan.

3. **Variasi dalam Kompleksitas Proyek:**

- Untuk proyek yang lebih kompleks dengan banyak pemangku kepentingan yang memiliki beragam
persyaratan, aktivitas komunikasi dapat memiliki lebih banyak tindakan yang berbeda, seperti
inception, elicitation, elaboration, negotiation, specification, dan validation.

- Masing-masing tindakan rekayasa perangkat lunak tersebut mungkin memiliki banyak tugas kerja
dan dalam beberapa kasus beberapa produk kerja yang berbeda.

Pemahaman tentang bagaimana merancang aktivitas kerangka yang sesuai dengan kebutuhan dan
karakteristik proyek sangat penting untuk memastikan efektivitas dan efisiensi pelaksanaan proses
perangkat lunak.3. **Tugas dalam Aksi:** Setiap aksi dalam aktivitas kerangka memiliki kumpulan
tugas yang harus diselesaikan untuk mencapai tujuan aksi tersebut. Misalnya, dalam aksi komunikasi,
tugas-tugasnya mungkin termasuk membuat kontak dengan pemangku kepentingan, mendiskusikan
persyaratan, mengorganisir catatan, dan menyetujui persyaratan dengan pemangku kepentingan.

Dengan memahami aktivitas kerangka, tindakan yang sesuai, dan tugas yang harus diselesaikan
dalam setiap tindakan, tim pengembangan perangkat lunak dapat merencanakan dan menjalankan
proyek mereka dengan lebih efektif.

2.3

Kesimpulan dari bagian "Identifying a Task Set" adalah sebagai berikut:

1. **Kebutuhan Adaptasi:**

- Setiap tindakan rekayasa perangkat lunak harus diadaptasi untuk memenuhi kebutuhan spesifik
dari proyek perangkat lunak dan karakteristik tim yang terlibat dalam proyek tersebut.

2. **Berbagai Task Set:**

- Setiap tindakan rekayasa perangkat lunak dapat direpresentasikan oleh beberapa kumpulan tugas
yang berbeda, yang masing-masing berisi serangkaian tugas pekerjaan rekayasa perangkat lunak,
produk kerja terkait, poin penjaminan kualitas, dan tonggak proyek.

- Berbagai proyek membutuhkan berbagai kumpulan tugas untuk mencapai tujuan yang ditetapkan
untuk setiap tindakan rekayasa perangkat lunak.

3. **Contoh Task Set:**


- Misalnya, untuk tindakan pengumpulan persyaratan, tugas-tugas pekerjaan yang harus dilakukan
dapat sangat bervariasi tergantung pada ukuran dan kompleksitas proyek.

- Untuk proyek kecil dan sederhana, daftar tugas dapat berfokus pada pengumpulan persyaratan
dengan pertemuan informal bersama stakeholder dan pembuatan daftar prioritas persyaratan.

- Namun, untuk proyek yang lebih besar dan kompleks, tugas-tugas pekerjaan yang lebih rinci
mungkin diperlukan, seperti wawancara terpisah dengan setiap stakeholder, penyusunan skenario
pengguna, dan teknik kualitas untuk menetapkan prioritas persyaratan.

4. **Pemilihan Task Set:**

- Tim perangkat lunak harus memilih kumpulan tugas yang memungkinkan mereka mencapai
tujuan untuk setiap tindakan, sambil tetap menjaga kualitas dan fleksibilitas.

Dengan memahami kebutuhan proyek dan karakteristik tim, tim perangkat lunak dapat memilih
kumpulan tugas yang paling sesuai untuk setiap tindakan rekayasa perangkat lunak, sehingga
memastikan bahwa tujuan proyek dapat dicapai secara efektif dan efisien.

2.4

1. **Tidak Ada Jaminan Kesuksesan:**

- Meskipun ada proses perangkat lunak yang terdefinisi, tidak ada jaminan bahwa perangkat lunak
akan disampaikan tepat waktu, memenuhi kebutuhan pelanggan, atau memiliki karakteristik teknis
yang sesuai untuk jangka panjang.

2. **Kopling dengan Praktik Rekayasa Perangkat Lunak:**

- Pola proses harus dikombinasikan dengan praktik rekayasa perangkat lunak yang solid untuk
mencapai kesuksesan dalam pengembangan perangkat lunak.

3. **Penilaian Proses:**

- Proses perangkat lunak dan aktivitasnya dapat dinilai untuk memastikan bahwa mereka
memenuhi serangkaian kriteria dasar yang diperlukan untuk kesuksesan rekayasa perangkat lunak.

- Penilaian proses biasanya dilakukan menggunakan pengukuran numerik atau analitika perangkat
lunak (metrics).

4. **Pengukuran Perbaikan:**

- Kemajuan yang telah dicapai dalam perjalanan menuju proses perangkat lunak yang efektif akan
menentukan sejauh mana Anda dapat mengukur perbaikan secara bermakna.
2.5

Inti dari bacaan tersebut adalah:

1. **Prescriptive Process Models:**

- Model-model proses preskriptif mendefinisikan serangkaian elemen proses yang telah ditentukan
dan alur kerja proses yang dapat diprediksi.

- Model-model ini menekankan struktur dan tata kerja yang teratur dalam pengembangan
perangkat lunak.

2. **Kritik terhadap Model Air Terjun:**

- Model air terjun, yang menyarankan pendekatan berurutan dan sistematis untuk pengembangan
perangkat lunak, telah dikritik karena jarang sesuai dengan alur kerja yang sebenarnya, kesulitan
dalam menyatakan semua persyaratan secara eksplisit pada awal proyek, dan kesulitan dalam
mendeteksi kesalahan besar pada tahap akhir proyek.

- Dalam lingkungan yang cepat berubah, model air terjun seringkali tidak cocok karena
ketidakpastian dan perubahan yang terus menerus dalam kebutuhan perangkat lunak.

3. **Model Prototyping:**

- Paradigma prototyping adalah pendekatan yang berguna ketika kebutuhan pelanggan tidak jelas
atau ketika terdapat ketidakpastian terkait dengan berbagai aspek pengembangan perangkat lunak.

- Prototyping memungkinkan pengguna dan pengembang untuk lebih memahami kebutuhan


perangkat lunak dengan cepat melalui iterasi yang cepat dan evaluasi oleh pemangku kepentingan.

4. **Model Proses Evolusioner:**

- Model proses evolusioner, seperti model spiral, mencoba menggabungkan sifat iteratif dari
prototyping dengan aspek terkontrol dan sistematis dari model air terjun.

- Model-model ini memungkinkan pengembangan perangkat lunak dalam serangkaian rilis


evolusioner yang semakin lengkap, memungkinkan penyesuaian dan perubahan selama proses
pengembangan.

5. **Unified Process Model:**

- Model proses bersatu (Unified Process) mencoba untuk menggabungkan fitur-fitur terbaik dari
model-model proses tradisional dengan prinsip-prinsip terbaik dari pengembangan perangkat lunak
yang fleksibel (agile).

- Unified Process menekankan komunikasi dengan pelanggan, arsitektur perangkat lunak yang kuat,
dan pendekatan iteratif dan inkremental dalam pengembangan.

Inti dari bacaan tersebut menyoroti pentingnya adaptasi dalam proses pengembangan perangkat
lunak dan penggunaan model-model proses yang sesuai dengan lingkungan dan kebutuhan proyek
yang spesifik.
2.6

Inti dari bagian ini adalah penekanan pada pentingnya memahami keseimbangan antara produk dan
proses dalam pengembangan perangkat lunak. Berikut adalah poin-poin utamanya:

1. **Tidak Ada Proses yang Sempurna:** Tidak ada satu pun model proses yang sempurna untuk
setiap proyek. Tim pengembangan perangkat lunak sering harus menyesuaikan model-model proses
yang ada atau menggunakan pendekatan yang lebih fleksibel, seperti model-model proses yang
dibahas dalam Bab 2 atau model-model proses agile yang dibahas dalam Bab 3, sesuai dengan
kebutuhan proyek yang sedang dijalankan.

2. **Keseimbangan antara Proses dan Produk:** Ketergantungan berlebihan pada proses atau
produk dapat berdampak negatif pada hasil akhir. Penting untuk memahami bahwa proses dan
produk merupakan bagian dari kesatuan yang tidak dapat dipisahkan (duality). Kedua aspek ini saling
melengkapi, dan fokus yang berlebihan pada salah satu aspek dapat mengabaikan pentingnya yang
lain.

3. **Duality of Product and Process:** Proses pengembangan perangkat lunak tidak hanya tentang
menghasilkan produk akhir, tetapi juga tentang pengalaman dan proses kreatif dalam menciptakan
produk tersebut. Seperti halnya seorang seniman yang menikmati proses penciptaan karya seni,
seorang profesional pengembangan perangkat lunak juga seharusnya menemukan kepuasan dalam
proses kreatif pengembangan perangkat lunak, bukan hanya pada produk akhirnya.

Pemahaman yang baik tentang hubungan antara produk dan proses dalam pengembangan perangkat
lunak penting untuk menjaga kualitas dan keberhasilan proyek, serta untuk memberikan kepuasan
dan motivasi kepada para profesional pengembangan perangkat lunak.

2.7

Ringkasan dari bagian ini adalah sebagai berikut:

1. **Model Proses Generik:** Model proses generik untuk rekayasa perangkat lunak mencakup
serangkaian aktivitas kerangka dan payung, tindakan, dan tugas kerja. Setiap model proses dapat
dijelaskan dengan aliran proses yang berbeda, yang mengatur bagaimana aktivitas kerangka,
tindakan, dan tugas diorganisir secara kronologis.

2. **Model Proses Preskriptif:** Model proses preskriptif telah diterapkan selama bertahun-tahun
untuk membawa keteraturan dan struktur dalam pengembangan perangkat lunak. Meskipun masing-
masing model ini menyarankan aliran proses yang agak berbeda, mereka semua melaksanakan
serangkaian aktivitas kerangka yang sama: komunikasi, perencanaan, pemodelan, konstruksi, dan
implementasi.

3. **Model Proses Sequetial:** Model proses sekuensial, seperti model air terjun, adalah paradigma
rekayasa perangkat lunak tertua. Mereka menyarankan aliran proses linear yang sering tidak
konsisten dengan realitas modern dalam dunia perangkat lunak. Namun, mereka masih dapat
diterapkan dalam situasi di mana persyaratan sudah didefinisikan dengan baik dan stabil.
4. **Model Proses Inkremental:** Model proses inkremental bersifat iteratif dan menghasilkan versi
kerja perangkat lunak dengan cepat. Model-model ini, seperti prototyping dan model spiral,
menghasilkan produk kerja inkremental dengan cepat dan dapat diadopsi dalam semua aktivitas
rekayasa perangkat lunak.

5. **Unified Process:** Unified Process merupakan suatu proses perangkat lunak yang "didorong
oleh kasus pengguna, berbasis arsitektur, iteratif, dan inkremental" yang dirancang sebagai kerangka
kerja untuk metode dan alat-alat UML.

Dengan memahami karakteristik dan kegunaan berbagai model proses tersebut, tim pengembangan
perangkat lunak dapat memilih model yang paling sesuai dengan kebutuhan dan karakteristik proyek
yang sedang dijalankan.

Kesimpulan

Kesimpulan singkat dari semua poin-poin yang disajikan adalah bahwa pemahaman tentang model
proses perangkat lunak sangat penting dalam pengelolaan proyek perangkat lunak. Model proses
memberikan kerangka kerja untuk aktivitas, tugas, dan aliran kerja yang harus diikuti untuk mencapai
kesuksesan dalam pengembangan perangkat lunak. Dalam penggunaannya, penting untuk memilih
model yang sesuai dengan kebutuhan dan karakteristik proyek tertentu, serta untuk mengakui
pentingnya keseimbangan antara proses dan produk. Dengan memahami ini, tim pengembangan
perangkat lunak dapat bekerja secara efisien dan efektif untuk mencapai tujuan proyek dengan
sukses.

Anda mungkin juga menyukai