REKAYASA PERANGKAT LUNAK (2). docx

REKAYASA PERANGKAT LUNAK
( RPL )

NAMA :
FAUZAN DZULFAQAR ( 1144019 )
IQBAL FITRA RAMADHAN ( 1144023 )

D4 TEKNIK INFORMATIKA 2C
POLITEKNIK POS INDONESIA
2015

BAB 1
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, matematika, dan pengalaman
praktis yang diterapkan untuk mendesain objek 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 konferensi tersebut menimbulkan perdebatan tajam tentang aspek

engineering 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. Manfaat
 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.

Bab 2
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 bidang
profesi yang mendalami cara-cara pengembangan perangkat lunak 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 pemeliharaan perangkat lunak.
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,

9. Metode dan tool perangkat lunak, dan

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 usaha.
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 aktivitas perencanaan yang akan mengidentifikasi
daerah yang potensial terhadap 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,
2. Definisi strategi,
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.
2. Kolaborasi efektif
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,
4.Pemahaman untuk memperhatikan konflik dan kebutuhan untuk memecahkannya,
5. Secara efisien memanfaatkan kemampuan perseorangan,
6. Secara efektif menyebarkan pertemuan –pertemuan,
7. Dengan teliti mengevaluasi kinerja dari tiap anggota tim, dan
8. 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 jawab bersama, orientasipada
pemikiran secara strategis, dan kecepatan untuk 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 antarproses rekayasa perangkat lunak.
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 aplikasiaplikasi 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, 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.
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. 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.
7. 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.
8. 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.
9. 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.
10. 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.
3. Aspek Rekayasa Perangkat Lunak
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 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. 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 keputusan untuk meneruskan proyek.
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 kesuksesan dari
tujuan.
TABEL 9.1 Driver dan Disiplin
Pengarah

Antardisiplin

Ilmu
Pelanggan

Disiplin yang relevan

Penggunaan

Pemasaran

Meliputi

beberapa

subkategori

pelanggan

dan stakeholder lain

Tim Pengembangan
Pengguna

Memeriksa

kebutuhan

system

dari

perspektif

Manajemen Proyek

pemasaran
Penstrukturan

tim

Teori Psikologi

pengembangan
Desain
antarmuka
pengguna

Sebuah proyek melibatkan suatu kumpulan sumber daya temporer yang ada bersamasama 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. 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.

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.
2.
3.
4.
5.
6.
7.
8.
9.

Harus dapat mengorganisasi,
Harus lebih sering berkomunikasi,
Harus jujur terhadap klien,
Harus bias mencari solusi, bukan menyalahkan orang lain,
Harus bias bekerja sama dengan pelanggan,
Harus bias memahami cerita bisnis di balik proyek,
Harus bias memahami hal-hal teknis selama pelaksanaan proyek,
Tidak ragu untuk menyampaikan umpan balik yang negative bila diperlukan,
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 antarproses rekayasa perangkat lunak.
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, 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.
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 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 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
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.

BAB 3
PENUTUP
1. KESIMPULAN
 Rekayasa Perangkat Lunak yaitu sebagai menyeduakan sebuah kerangka kerja guna membangun
perangkat lunak dengan kualitas yang lebih tinggi.

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\