• Tidak ada hasil yang ditemukan

Makalah Rekayasa Perangkat Lunak

N/A
N/A
Protected

Academic year: 2017

Membagikan "Makalah Rekayasa Perangkat Lunak"

Copied!
29
0
0

Teks penuh

(1)

Makalah Rekayasa Perangkat Lunak

BAB I

PENDAHULUAN

1. Latar Belakang

Rekayasa perangkat lunak (RPL, atau dalam bahasa Inggris: Software

Engineering atau SE) adalah satu bidang profesi yang mendalami cara-cara

pengembangan perangkat lunak termasuk pembuatan, pemeliharaan, manajemen

organisasi pengembanganan perangkat lunak dan manajemen kualitas.

IEEE Computer Society mendefinisikan rekayasa perangkat lunak sebagai

penerapan suatu pendekatan yang sistematis, disiplin dan terkuantifikasi atas

pengembangan, penggunaan dan pemeliharaan perangkat lunak, serta studi atas

pendekatan-pendekatan ini, yaitu penerapan pendekatan engineering atas

perangkat lunak

Rekayasa atau teknik adalah penerapan ilmu dan teknologi untuk

menyelesaikan permasalahan manusia. Hal ini diselesaikan lewat pengetahuan,

(2)

atau proses yang berguna. Para praktisi teknik professional disebut perekayasa

(sarjana teknik).

Menurut sejarahnya, banyak para ahli yang meyakini kemampuan teknik

manusia sudah tertanam secara alami. Hal ini ditandai dengan kemampuan

manusia purba untuk membuat peralatan-peralatan dari batu. Dengan kata lain,

teknik pada mulanya didasari dengan metode coba dan ralat (trial and error)

untuuk menciptakan alat yang mempermudah kehidupan manusi. Seiring dengan

berjalannya waktu, ilmu pengetahuan mulai berkembang dan mulai mengubah

cara pandang manusia terhadap bagaimana alam kerja.

Perkembangan ilmu pengetahuan inilah yang kemudian mengubah cara

teknik bekerja hingga seperti sekarang ini. Orang tidak lagi begitu mengandalkan

metode coba dan ralat dalam menciptakan atau mendesain peralatan, melainkan

lebih mengutamakan ilmu pengetahuan sebagai dasar dalam mendesain.

Istilah software engineering, pertama kali digunakan pada akhir tahun

1950-an dan sekitar awal 1960-an. Pada tahun 1968, NATO menyelenggarakan

konferensi tentang software engineering di Jerman dan kemudian dilanjutkan

pada tahun 1969. Meski penggunaan istilah software engineering dalam

(3)

dari pengembangan perangkat lunak, ada banyak pihak yang menganggap bahwa

konferensi tersebutlah yang menjadi awal tumbuhnya profesi rekayasa perangkat

lunak.

2. Rumusan Masalah

Rumusan masalah dari rekayasa perangkat lunak yaitu :

 Jelaskan definisi Rekayasa perangkat lunak ?

 Kemukakan faktor dan aspek dari Rekayasa Perangkat Lunak ?

3. Tujuan

Tujuan dari Rekayasa Perangkat Lunak yaitu sebagai menyeduakan sebuah

kerangka kerja guna membangun perangkat lunak dengan kualitas yang lebih

tinggi

(4)

Mahasiswa

Untuk menpermudah mahasiswa dalam mengerjakan tugas dan mempergunakan

software aplikasi dalam pembelajarannya sehari-hari dan mengetahui

factor-faktor dari setiap pemakaian softwere.

Dosen

Untuk memberikan materi kepada mahasiswa dan memberikan tugas dengan

menggunakan softwere aplikasi sesuai dengan mata kuliah yang di bawakan.

(5)

PEMBAHASAN

1. Definisi Rekayasa Perangkat Lunak

Definisi Rekayasa Perangkat Lunak Menurut Fritz Bauer : “Penerapan dan

pemanfaatan prinsip-prinsip rekayasa untuk menghasilkan perngkat lunak yang

ekonomis yang handal dan bekerja secara efisisen pada mesin-mesin yang nyata”

Karakteristik Perangkat Lunak Dikembangkan atau direkayasa, tidak dibuat dalam

pengertian pada umumnya. Tidak ‘lapuk’ atau mengalami penyusutan secara fisis.

Pada umumnya dibuat secara khusus, tidak disusun dari

komponen-komponen yang telah ada. Problem Perangkat Lunak Perangkat lunak tidak

berfungsi secara baik (kualitas yang kurang).Ketidaktepatan penjadwalan proses

dan biaya produksi. Produktivitas yang belum dapat memenuhi tuntutan

kebutuhan pemakai. Pemeliharaan yang sukar. Perkembangan teknologi perangkat

keras di luar kemampuan programmer untuk membuat perangkat lunak yang

dapat memanfaatkan potensi perangkat keras secara maksimal.

Rekayasa perangkat lunak (RPL atau SE [Software Engineering]) adalah satu

(6)

termasuk pembuatan, pemeliharaan, manajemen organisasi pengembangan

perangkat lunak, dan sebagainya.

Pada tahun 2004, istilah rekayasa perangkat lunak secara umum digunakan

dalam tiga arti, yaitu:

1. Sebagai istilah umum untuk berbagai kegiatan yang dulunya bernama

pemrograman atau analisis sitem,

2. Sebagai istilah yang luas untuk analisis teknis dari semua aspek-aspek praktis

yang bertentangan dengan teori pemrograman computer, dan

3. Sebagai istilah yang mewujudkan advokasi suatu pendekatan spesifik ke

pemrograman computer, satu hal yang mendesak yang diperlakukan sebagai

profesi rekayasa daripada sebuah seni atau kerajinan, dan advokasi dari

kodifikasi praktis yang disarankan dalam bentuk metodologi rekayasa

perangkat lunak.

Rekayasa perangkat lunak adalah disiplin rekayasa dengan perangkat lunak

yang dikembangkan. Biasanya proses melibatkan penemuan pada keinginan klien,

menyusunnya di dalam daftar kebutuhan, perancangan, pengodean, pengujian,

dan pengintegrasian bagian yang terpisah, menguji keseluruhan, penyebaran dan

(7)

Disiplin masih berada dalam pertumbuhannya (tahap awal

perkembangan/pengembangan) sebagai suatu disiplin rekayasa. Kita tidak pernah

mempunyai pengalaman yang cukup, maupun kumpulan data empiris yang cukup

untuk secara sistematis memahami dan meramalkan siklus hidup proyek

perangkat lunak.

The Software Engineering Body of Knowledge (SWEBOK) membagi rekayasa

perangkat lunak ke dalam 10 area pengetahuan, yaitu:

1. Kebutuhan perangkat lunak,

2. Perancangan perangkat lunak

3. Konstruksi perangkat lunak,

4. Pengujian perangkat lunak,

5. Pemeliharaan perangkat lunak,

6. Manajemen konfigurasi perangkat lunak,

7. Manajemen perangkat lunak,

8. Proses perangkat lunak,

(8)

10. Kualitas perangkat lunak.

2. Faktor-Faktor Rekayasa Perangkat Lunak

Berbagai faktor yang memengaruhi perncanaan, manajemen, dan

pemilihan aktivitas SQM dan teknik-teknik adalah sebagai berikut:

1. Daerah system yang akan ditempati perangkat lunak (safety-critical,

mission-critical, dan business critical),

2. Kebutuhan system dan perangkat lunak,

3. Komponen komersial (eksternal) atau standar (internal) untuk digunakan di

dalam sistem,

4. Standar rekayasa perangkat lunak spesifik yang bisa diterapkan,

5. Metode dan tool perangkat lunak yang digunakan untuk pengembangan dan

pemeliharaan, dan untuk peningkatan dan evaluasi kualitas,

6. Anggaran, staf, organisasi proyek, rencana, dan penjadwalan dari semua

proses-proses,

7. Pengguna yang diharapkan dan penggunaan system, dan 8. Tingkat integritas system.

Informasi pada factor ini memengaruhi bagaimana proses SQM

diorganisasikan dan didokumentasikan, bagaimana aktivitas SQM spesifik dipilih,

dan sumber daya apa yang diperlukan dan yang akan memaksakan batas atau

(9)

1. Keterkaitan

Dalam situasi dengan kegagalan system yang mungkin mempunyai

konsekuensi yang sangat hebat, keterkaitan keseluruhan (perangkat keras,

perangkat lunak, dan manusia) adalah kebutuhan kualitas yang utama disamping

kemampuan dasar. Keterkaitan perangkat lunak mencakup karakteristik toleransi

kesalahan, keselamatan, keamanan, dan usabilitas. Keandalan juga menjadi

sebuah ukuran yang dapat digambarkan dalam hubungannya dengan keterkaitan.

Badan literature untuk system harus sangat dapat tergantung (“kepercayaan

tinggi” atau “system integritas tinggi”). Istilah untuk mekanisme tradisional dan

system elektrik yang tidak boleh mencakup perangkat lunak telah di import untuk

mendiskusikan ancaman atau risiko, integritas system, dan konsep yang

berhubungan, dan mungkin menemukan acuan yang dikutip untuk bagian ini.

2. Tingkat integritas perangkat lunak

Tingkat integritas ditentukan berdasarkan pada konsekuensi kegagalan dari

perangkat lunak. Dalam perangkat lunak yang mementingkan keselamatan atau

keamanan, teknik-teknik seperti analisis risiko untuk keselamatan atau analisis

ancaman untuk keamanan mungkin digunakan untuk mengembangkan suatu

(10)

kekacauan. Sejarah kegagalan dari perangkat lunak juga bisa membantu

mendeteksi kesalahan dan menilai kualitas. Tingkatan integritas ( miasalnya,

gradasi integritas) akan di usulkan di dalam suatu perangkat lunak.

3. Faktor Tim

Tim dapat digambarkansebagai suatu kelompok perseorangan yang telah

terorganisasi untuk kepentingan bekerja bersama untuk mencapai sekumpulan

tujuan yang tidak bisasecara efektif dicapai oleh perseorangan yang bekerja

sendiri. Efektivitas suatu tim mungkin diukur dalam hasil terhadap penerimaa

pelanggan, kemampuan tim, dan kepuasan perseorangan.

Masukan perseorangan dan organisasi dengan mantap memengaruhi

masukan tim. Proses pekerjaan tim ditandai oleh usaha yang mengarah pada

tujuan, pengetahuan dan keahlian yang digunakan, strategi pengadopsian, dadan

dinamika kelompok. Konstruksi tim dan manajemen merupakan sebuah tantangan

kritis di dalam pemecahan masalah yang dikendalikan perangkat lunak

(software-driven). Sebuah tim akan memerlukan:

1. Identifikasi tujuan,

(11)

3. Manajemen tugas,

4. Manajemen waktu,

5. Penempatan sumber daya,

6. Komposisi tim antardispilin ilmu,

7. Waktu control,

8. Pelatihan,

9. Komunikasi tim,

10. Keterpaduan tim, dan

11. Evaluasi dan jaminan kualitas.

Karakteristik utama dari kesuksesan tim mencakup:

1. Pembagian tujuan

Harus ada kesadaran bersama pada tujuan tim umum dari semua anggota

tim. Berbagi tujuan adalah sasaran yang langsung, panduan dan pengintegrasian

usaha perseorangan untuk mencapai hasil yang diharapkan.

(12)

Suatu tim harus bekerja sebagai tim. Tim ini memerlukan kerja sama,

individu pemberi kontribusi, pertukaran gagasan dan pengetahuan oleh individu,

dan pembangunan hubungan antarpribadi, dan kepercayaan. Lingkungan proyek

memudahkan dan mendorong kerja sama yang efektif dan interoperasi.

3. Kemampuan individual

Masing-masing anggota tim harus dilatih dan dipandu agar bisa bekerja

sama dengan anggota tim lainnya.

Beberapa karakteristik lain dari tim yang berjalan dengan baik meliputi:

1. Pembagian misis dan tujuan,

2. Penyebaran informasi lengkap tentang jadwal, aktivitas, dan prioritas, 3. Pengembangan suatu pemahaman peran dari tiap anggota tim,

1. 4.Pemahaman untuk memperhatikan konflik dan kebutuhan untuk

memecahkannya,

4. Secara efisien memanfaatkan kemampuan perseorangan, 5. Secara efektif menyebarkan pertemuan –pertemuan,

6. Dengan teliti mengevaluasi kinerja dari tiap anggota tim, dan

7. Secara terus menerus memperbarui keahlian perseorangan untuk menemukan

kebutuhan yang ada.

Indicator tambahan dari operasi yang efektif meliputi tingkat dari

keterlibatan dan keikutsertaan manajemen proyek, focus pada tujuan, tanggung

(13)

tanggap terhadap tantangan dan peluang. Karakteristik kinerja tim ini

memerlukan tiap-tiap anggota tim untuk menyokong ide, beroperasi pada

lingkungan yang berisi keanekaragaman keahlian , memahami kontribusi dari yang

lain, berbagi pengetahuan, menanyakan tingkat pemahaman secara aktif,

mengambil bagian dengan penuh semangat, dan melatih fleksibilitas.

4. Faktor Pelanggan

Ada suatu kebenaran yang mutlak, yaitu rekayasa perangkat lunak harus

bisa menjadi pengendali pelanggan (customer-driver). Bagian ini

mempertimbangkan beberapa karakteristik dan teknik khusus dari lingkungan

pengembangan perangkat lunak yang dikendalikan pelanggan (customer-driven),

yang meliputi:

1. Pengembangan yang dikendalikan pelanggan bersifat padat kebutuhan dan

dikendalikan fitur Karena kebutuhan pelanggan adalah prioritas yang tertinggi,

kebutuhan pelanggan harus secara hati-hati dikumpulkan, dikenali, ditetapkan,

divisualisasikan, dan secara internal, diprioritaskan anatarkebutuhan sendiri.

Sebagai konsekuensinya, kebutuhan rekayasa menjadi kunci tahap strategis

(14)

2. Pengembangan yang dikendalikan pelanggan bersifat iterative Pengembangan

iterative menjadi penting karena mengizinkan umpan balik yang luas dan

pemberian jawaban untuk umpan balik.

3. Pengembangan yang dikendalikan pelanggan bertujuan untuk

mengembangkan aplikasi-aplikasi terbaik (killer application) Teknik ini adalah

satu-satunya cara untuk bertahan pada pasar yang sangat tinggi kompetisisnya 4. Pengembangan yang dikendalikan pelanggan sangat menghargai waktu

pemasaran. Waktu berarti kesempatan sehingga aplikasi harus direkayasa

secara cepat dan efisien, cukup untuk menangkap peluang pasar yang

bergantung waktu.

5. Pengembangan yang dikendalikan pelanggan berusaha untuk memberikan

kepuasan pada banyak stakeholder melalui situasi yang saling menguntungkan 6. Setiap aktivitas pengembangan perangkat lunak melibatkan banyak orang,

masing-masing mempunyai tujuan dan pandangan yang berbeda. Oleh karena

itu, rekonsiliasi yang efektif dari konflik atas kebutuhan system menjadi sebuah

factor kunci dalam meyakinkan kepuasan pelanggan.

7. Pengembangan yang dikendalikan pelanggan berfokus pada kualitas produk

dan layanan. Jaminan kualitas menyiratkan pengaturan proses perangkat lunak,

seperti pengembang dan pelanggan yang dicukupi dengan kualitas dan

(15)

Pengembangan yang dikendalikan pelanggan memandang pelanggan sebagai

mitra, tidak hanya sebagai pembeli

Dalam meyakinkan harapan pelanggan, pelanggan perlu duduk bersama

dengan pengembang pada masing-masing tahap proses pengembangan

perangkat lunak. Hal tersebut dapat memperkecil resiko dan mengurangi siklus

waktu selama proses pengembangan.

8. Pengembangan yang dikendalikan pelanggan dapat dikostumisasi,

dipersonalisasi, dan sesuai dengan kebutuhan individu dan perubahan pada

kebutuhan

Tidak ada dua bisnis atau perseorangan yang sama (permintaan dan kebutuhan

bertukar-tukar dan meningkat bahkan antarorganisasi tunggal). Mengenali

perbedaan perseorangan dan keanekaragaman organisasi menjadi suatu

kerumitan dalam penyediaan solusi yan efektif.

9. Pengembangan yang dikendalikan pelanggan diarahkan oleh psikologi kognitif

Psikologi kognitif mendapat pemikiran seperti bahasa untuk program sumber

perangkat lunak. Oleh karena itu, suatu pendekatan pengembangan perangkat

(16)

lunak denagn teliti untuk mencerminkan kebutuhan pelanggan sebagai

kebutuhan yang dirasakan oleh pelanggan.

10.Pengembangan yang dikendalikan pelanggan harus informative dan mudah

diakses

Perancangan suatu solusi perangkat lunak di dalam “era pelanggan” (customer

age) memerlukan layanan pelanggan yang penuh, dan mendukung bantuan

yang terdokumentasi dengan baik dan web interaktif. Aplikasi tidak

menyediakan informasi pendukung, seperti subjek kepada keluhan pelanggan,

ketidakpuasan, dan penolakan.

11.Keamanan dan privasi adalah suatu pertimbangan dalam solusi yang

dikendalikan pelanggan

Untuk mendapatkan kepercayaan pelanggan, perekayasa perangkat lunak

harus merancang system yang dapat dipercaya, dan peka akan invasi privasi

atau serangan peretas (hacker). Keamanan dan privasi merupakan perhatian

utama dari pelanggan perangkat lunak.

(17)

Aspek multidisiplin ilmu factor manusia menjelma pada tingkat masalah,

isu yang dibahas adalah disiplin yang terkait dengan orang-orang yang dapat

membantu seseorang untuk memahami dasar masalah. Pada tingkat solusi,

perhatian yang utama adalah disiplin yang terkait dengan orang-orang yang

memungkinkan seseorang untuk ditunjuk di dalam pemecahan masalah yang

lebih baik.

Suatu proyek dapat dipikirkan sebagai kelompok trugas dan aktivitas yang

dilakukan di dalam periode dan pertemuan spesifik. Sebuah proyek melibatkan

suatu kumpulan sumber daya temporer yang ada bersama-sama untuk

memecahkan sebuah masalah spesifik.

Tatnall dan Shackleton (1995), Rosenau (1998), dan Meredith dan Mantel

(1995) mengidentifikasi beberapa fitur karakteristik proyek dan menjelaskn bahwa

proyek itu unik. Proyek harus diselesaikan pada periode waktu tertentu. Definisi

proyek yang benar menjadi penting pada manajemen proyek. Definisi proyek

membantu menetapkan suatu lingkup yang jelas untuk proyek dan bertindak

sebagai dasar perencanaan proyek.

Langkah-langkah yang diperlukan untuk menggambarkan sebuah awal proyek

(18)

belakang yang menerapkan kebutuhan pada proyek, dan kemudian

menggambarkan tujuan untuk proyek. Setelah mengidentifikasi stakeholder dan

sumber daya yang tersedia, seseorang harus mengidentifikasi proyek yang terkait

yang akan memengaruhi atau dipengaruhi oleh proyek dalam pertimbangan.

Seseorang kemudian mengidentifikasi kriteria-kriteria untuk memutuskan

apakah suatu proyek itu baik, pemahamannya mencakup batasan proyek, asumsi,

dan risiko, seerti halnya implikasi seperti batasan dan asumsi untuk risiko proyek.

Manajemen proyek dapat digambarkan sebagai sekumpulan prinsip, metode, alat,

dan teknik untuk perencanaan, pengorganisasian, penempatan pekerja,

pengarahan, dan pengendalian aktivitas yang berkaitan dengan proyek untuk

mencapai tujuan proyek di dalam waktu, di bawah biaya, dan batasan kinerja.

Aktivitas manajemen proyek dapat digolongkan menurut tahapan proyek, yaitu:

1. Konsepsi proyek

Tujuan dari tahap konseptual adalah untuk menentukan kelayakan proyek.

Sasaran akan diujidalam konteks lingkungan bisnis, cara alternative akan

ditetapkan dan dievaluasi, dan perkiraan persiapan biaya, jadwal, dan risiko yang

dikerjakan akan ditentukan. Puncak dari tahap ini adalah keputusan, misalnya

(19)

2. Perencanaan

Kinerja, biaya, dan perkiraan jadwal ditentukan sampai batas pemerincian

rencana untuk pelaksanaan proyek dapat dibuat. Anggaran dan jadwal akan

dikembangkan, tim proyek dibentuk, dan system manajemen proyek dibentuk

untuk memandu manajemen proyek.

3. Eksekusi

Manajer proyek akan bertanggung jawab untuk mengatur sumber daya yang

diperlukan untuk memenuhi sasaran. Penekanan dari tanggung jawab bergeser

dari perencanaan untuk control.

4. Terminasi

Tahap ini dapat dipicu dengan terminasi premature atau dengan pencapaian

(20)

Gambar 9.3 Faktor manusia di dalam proses pemecahan masalah

(21)

Sebuah proyek melibatkan suatu kumpulan sumber daya temporer yang ada

bersama-sama untuk memecahkan sebuah masalah spesifik.

Tatnall dan Shackleton (1995), Rosenau (1998), dan Meredith dan Mantel

(1995) mengidentifikasi beberapa fitur karakteristik proyek dan menjelaskn bahwa

proyek itu unik. Proyek harus diselesaikan pada periode waktu tertentu. Definisi

proyek yang benar menjadi penting pada manajemen proyek. Definisi proyek

membantu menetapkan suatu lingkup yang jelas untuk proyek dan bertindak

sebagai dasar perencanaan proyek.

Langkah-langkah yang diperlukan untuk menggambarkan sebuah awal proyek

dilakukan dengan menggambarkan peluang proyeknya, penyediaan uraian latar

belakang yang menerapkan kebutuhan pada proyek, dan kemudian

menggambarkan tujuan untuk proyek. Setelah mengidentifikasi stakeholder dan

sumber daya yang tersedia, seseorang harus mengidentifikasi proyek yang terkait

yang akan memengaruhi atau dipengaruhi oleh proyek dalam pertimbangan.

Seseorang kemudian mengidentifikasi kriteria-kriteria untuk memutuskan

apakah suatu proyek itu baik, pemahamannya mencakup batasan proyek, asumsi,

dan risiko, seerti halnya implikasi seperti batasan dan asumsi untuk risiko proyek.

(22)

dan teknik untuk perencanaan, pengorganisasian, penempatan pekerja,

pengarahan, dan pengendalian aktivitas yang berkaitan dengan proyek untuk

mencapai tujuan proyek di dalam waktu, di bawah biaya, dan batasan kinerja.

Feeny dan Willcocks (1998) mengakui bahwa dua indicator utama dari

manajer proyek terlihat sebagai efektivitas, yaitu pengalaman proyek yang sukses

sebelumnya dan kredibilitas manajer di mata stakeholder. Menurut Mateyaschuk

(1998), dan Weston dan Stedman (1998a,b), dasar-dasar pemikiran untuk ini

seperti kondisi-kondisi, yang diambil bersama-sama, bantuan yang memastikan

bahwa manajer proyek mempunyai keterampilan yang diperlukan untuk

melaksanakan sebuah proyek sampai pada penyelesaian dengan stakeholder

bisnis yang akan terus mendukung proyek tersebut. Penelitian juga menyatakan

bahwa kondisi ini tidak mudah untuk dimengerti, kompleks dengan keadaan yang

cepat berubah dari kebutuhan proyek yang mempunyai suatu dampak kritis atas

kesuksesan manajer proyek perangkat lunak. Sedangkan menurut Pawel Brodzinki

(2009), seperti yang ia tulis di webnya, mengatakan bahwa ada 10 kualitas yang

harus dimiliki oleh seorang manajer proyek, yaitu:

1. Harus dapat mengorganisasi, 2. Harus lebih sering berkomunikasi, 3. Harus jujur terhadap klien,

(23)

5. Harus bias bekerja sama dengan pelanggan,

6. Harus bias memahami cerita bisnis di balik proyek,

7. Harus bias memahami hal-hal teknis selama pelaksanaan proyek,

8. Tidak ragu untuk menyampaikan umpan balik yang negative bila diperlukan, 9. Tidak kecewa atas pendapat-pendapat yang tidak wajar terhadap pekerjaan

yang sedang dikerjakan, dan

10. Harus selalu mengharapkan hal-hal yang tidak terduga

Faktor Pelanggan

Ada suatu kebenaran yang mutlak, yaitu rekayasa perangkat lunak harus bisa

menjadi pengendali pelanggan (customer-driver). Bagian ini mempertimbangkan

beberapa karakteristik dan teknik khusus dari lingkungan pengembangan

perangkat lunak yang dikendalikan pelanggan (customer-driven), yang meliputi:

1. Pengembangan yang dikendalikan pelanggan bersifat padat kebutuhan dan

dikendalikan fitur

Karena kebutuhan pelanggan adalah prioritas yang tertinggi, kebutuhan

pelanggan harus secara hati-hati dikumpulkan, dikenali, ditetapkan,

divisualisasikan, dan secara internal, diprioritaskan anatarkebutuhan sendiri.

Sebagai konsekuensinya, kebutuhan rekayasa menjadi kunci tahap strategis

(24)

2. Pengembangan yang dikendalikan pelanggan bersifat iterative

Pengembangan iterative menjadi penting karena mengizinkan umpan balik

yang luas dan pemberian jawaban untuk umpan balik.

3. Pengembangan yang dikendalikan pelanggan bertujuan untuk

mengembangkan aplikasi-aplikasi terbaik (killer application)

Teknik ini adalah satu-satunya cara untuk bertahan pada pasar yang sangat

tinggi kompetisisnya.

4. Pengembangan yang dikendalikan pelanggan sangat menghargai waktu

pemasaran

Waktu berarti kesempatan sehingga aplikasi harus direkayasa secara cepat

dan efisien, cukup untuk menangkap peluang pasar yang bergantung waktu.

5. Pengembangan yang dikendalikan pelanggan berusaha untuk memberikan

kepuasan pada banyak stakeholder melalui situasi yang saling

menguntungkan

Setiap aktivitas pengembangan perangkat lunak melibatkan banyak orang,

(25)

karena itu, rekonsiliasi yang efektif dari konflik atas kebutuhan system

menjadi sebuah factor kunci dalam meyakinkan kepuasan pelanggan.

6. Pengembangan yang dikendalikan pelanggan berfokus pada kualitas produk

dan layanan

Jaminan kualitas menyiratkan pengaturan proses perangkat lunak, seperti

pengembang dan pelanggan yang dicukupi dengan kualitas dan konsistensi

barang-barang atau jasa yang dihasilkan atau yang disediakan.

7. Pengembangan yang dikendalikan pelanggan memandang pelanggan sebagai

mitra, tidak hanya sebagai pembeli

Dalam meyakinkan harapan pelanggan, pelanggan perlu duduk bersama

dengan pengembang pada masing-masing tahap proses pengembangan

perangkat lunak. Hal tersebut dapat memperkecil resiko dan mengurangi

siklus waktu selama proses pengembangan.

8. Pengembangan yang dikendalikan pelanggan dapat dikostumisasi,

dipersonalisasi, dan sesuai dengan kebutuhan individu dan perubahan pada

(26)

Tidak ada dua bisnis atau perseorangan yang sama (permintaan dan

kebutuhan bertukar-tukar dan meningkat bahkan antarorganisasi tunggal).

Mengenali perbedaan perseorangan dan keanekaragaman organisasi menjadi

suatu kerumitan dalam penyediaan solusi yan efektif.

9. Pengembangan yang dikendalikan pelanggan diarahkan oleh psikologi kognitif

Psikologi kognitif mendapat pemikiran seperti bahasa untuk program

sumber perangkat lunak. Oleh karena itu, suatu pendekatan pengembangan

perangkat lunak yang dikendalikan pelanggan perlu menguji luas

perancangan perangkat lunak denagn teliti untuk mencerminkan kebutuhan

pelanggan sebagai kebutuhan yang dirasakan oleh pelanggan.

10. Pengembangan yang dikendalikan pelanggan harus informative dan mudah

diakses

Perancangan suatu solusi perangkat lunak di dalam “era pelanggan”

(customer age) memerlukan layanan pelanggan yang penuh, dan mendukung

bantuan yang terdokumentasi dengan baik dan web interaktif. Aplikasi tidak

menyediakan informasi pendukung, seperti subjek kepada keluhan

(27)

11. Keamanan dan privasi adalah suatu pertimbangan dalam solusi yang

dikendalikan pelanggan

Untuk mendapatkan kepercayaan pelanggan, perekayasa perangkat lunak

harus merancang system yang dapat dipercaya, dan peka akan invasi privasi

atau serangan peretas (hacker). Keamanan dan privasi merupakan perhatian

(28)

BAB 3

PENUTUP

1. KESIMPULAN

Rekayasa Perangkat Lunak yaitu sebagai menyeduakan sebuah kerangka

kerja guna membangun perangkat lunak dengan kualitas yang lebih tinggi.

(29)

DAFTAR PUSTAKA

 http://id.wikipedia.org/wiki/Rekayasa_perangkat_lunak

 http://blog.pgpaud.ac.id/dokumen/rekayasa+perangkat+lunak

 http://yogo.blog.unsoed.ac.id/files/2009/06/software-engineering.pdf  http://blog.pgpaud.ac.id/dokumen/rekayasa+perangkat+lunak

http://ilmukomputer.org/wp-content/uploads/2007/09/amri-perencanaan-proyek-rpl.doc

 http://lecturer.ukdw.ac.id/othie/webengineer.pdf\

 http://www.scribd.com/doc/32112545/Modul-Rekayasa-Perangkat-Lunak

Gambar

TABEL 9.1 Driver dan Disiplin

Referensi

Dokumen terkait

Di dalam mata kuliah ini akan dibahas masalah Produk perangkat lunak, Proses perangkat lunak, Konsep Manajemen proyek, Metriks proses pembuatan dan proyek perangkat

Pendekatan prototyping model digunakan jika pemakai hanya mendefenisikan objektif umum dari perangkat lunak tanpa merinci kebutuhan input, pemrosesan dan outputnya, sementara

Pengertian RPL sendiri adalah suatu disiplin ilmu yang membahas semua aspek produksi perangkat lunak, mulai dari tahap awal yaitu analisa kebutuhan

Fungsi dari mereka yang mempelajari rekayasa perangkat lunak tidak hanya terpaku pada pembuatan dan juga pengembangan dari sistem perangkat lunak yang ada,

kemampuan engineer dalam membangun perangkat lunak yang sesuai dengan perangkat keras yang ada..  Kemampuan engineer untuk membangun program baru

 Bisa mencakup kegiatan yang merupakan bagian dari proses perangkat lunak, produk perangkat lunak, dan peran orang yang terlibat pada.. rekayasa perangkat lunak

 Perancangan perangkat lunak adalah suatu proses bertahap dimana semua kebutuhan atau persyaratan yang ada pada dokumen SRS diterjemahkan menjadi suatu cetak blue

Perancangan perangkat lunak merupakan deskripsi struktur perangkat lunak yang akan diimplementasikan, data yang merupakan bagian sistem, interface antara komponen-komponen sistem