TUGAS UTAS MAKALAH REKAYASA PERANGKAT LUNAK (RPL)
Nama : Dewi Ulviani
NIM : 2114T1023
30
Mei 2016
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
Rumusahan makalah
rekayasa perangkat lunak:
o Jelaskan definisi
Rekayasa perangkat lunak ?
o 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,
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 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 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.
1.
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
2.
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.
3.
Pengembangan yang dikendalikan pelanggan
dapat dikostumisasi, dipersonalisasi, dan sesuai dengan kebutuhan individu dan
perubahan pada kebutuhan
4.
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.
5.
Pengembangan yang dikendalikan pelanggan
diarahkan oleh psikologi kognitif
6.
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.
7.
Pengembangan yang dikendalikan pelanggan
harus informative dan mudah diakses
8.
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.
9.
Keamanan dan privasi adalah suatu
pertimbangan dalam solusi yang dikendalikan pelanggan
10.
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. Eksek usi
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
|
Disiplin yang relevan
|
Penggunaan
|
|
Pelanggan
|
Pemasaran
|
Meliputi beberapa subkategori pelanggan dan stakeholder lain
Memeriksa kebutuhan system dari perspektif pemasaran
|
|
Tim Pengembangan
|
Manajemen Proyek
|
Penstrukturan tim pengembangan
|
|
Pengguna
|
Teori Psikologi
|
Desain antarmuka pengguna
|
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.
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,
4.
Harus
bias mencari solusi, bukan menyalahkan orang lain,
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
2. 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.
3. Pengembangan yang dikendalikan pelanggan bersifat
iterative
4. Pengembangan iterative menjadi penting karena
mengizinkan umpan balik yang luas dan pemberian jawaban untuk umpan balik.
5. Pengembangan yang dikendalikan pelanggan bertujuan untuk
mengembangkan aplikasi-aplikasi terbaik (killer application)
6. Teknik
ini adalah satu-satunya cara untuk bertahan pada pasar yang sangat tinggi
kompetisisnya.
7. 4. Pengembangan yang
dikendalikan pelanggan sangat menghargai waktu pemasaran
8. Waktu
berarti kesempatan sehingga aplikasi harus direkayasa secara cepat dan efisien,
cukup untuk menangkap peluang pasar yang bergantung waktu.
9. Pengembangan yang dikendalikan pelanggan berusaha untuk
memberikan kepuasan pada banyak stakeholder melalui situasi yang saling
menguntungkan
10. 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.
11. Pengembangan yang dikendalikan pelanggan berfokus pada
kualitas produk dan layanan
12. 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.
13. 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.
BAB 3
PENUTUP
1. KESIMPULAN
Rekayasa
Perangkat Lunak yaitu sebagai menyeduakan sebuah kerangka kerja guna membangun
perangkat lunak dengan kualitas yang lebih tinggi.
2. SARAN
Daftar
Pustaka