Anda di halaman 1dari 14

PENGEMBANGAN PERANGKAT LUNAK Pengembangan perangkat lunak (Software development) merupakan salah satu dari tahap rancangan system

rinci/detail dari Siklus Hidup Pengembangan Sistem (Software Development Life Cycle atau SDLC). Tim proyek system mungkin mulai mencari paket perangkat lunak komersial yang sesuai atau mendukung spesifikasi rancangan system dan berjalan pada rancangan arsitektur komputernya. Paket perangkat lunak komersial secara luas tersedia untuk aplikasi fungsi spesifik dan aplikasi bisnis yang telah ditetapkan secara baku. Tetapi untuk rancangan sistem yang terkait dengan kebutuhan khusus atau unik (memenuhi keperluan pemakai dan spesifikasi rancangan sistem) maka paket perangkat lunak komersial mungkin tidak sesuai atau mendukung kebutuhan pemakai secara langsung. Perangkat lunak yang diharapkan untuk mendukung rancangan sistem tersebut harus dibuat sendiri dari awal (scratch) Sumber Perangkat Lunak Aplikasi A. Perangkat unak !omersial dari "endor B. Perangkat unak Pesanan (customized software) dikembangkan secara in#house atau oleh kontraktor pemrograman independent

A. Perangkat Lunak Komersial dari endor


Paket (off-the-self) yang tersedia bisa diterapkan dalam berbagai kebutuhan bisnis. $eberapa paket bersifat generik dan multifungsional yang memungkinkan para pemakai memprogram sofware tersebut untuk kebutuhannya sendiri. Paket#paket tersebut mengotomisasi fungsi#fungsi bisnis dasar yang umumnya tidak terlalu ber%ariasi dari satu organisasi dengan organisasi lain. &ontoh jenis paket adalah spreadsheet dan '$(S. Keuntungan!kelebi"an dari Perangkat Lunak Komersial # $. %mplementasi &ang 'epat Software tersebut bersifat siap) teruji) dan terdokumentasi. Paket yang dibeli biasanya pengimplementasiannya jauh lebih cepat dari pada mengembangkan program yang sama secara in#house atau menyuruh kontraktor independen untuk mengembangkannya sehingga secara potensial membantu memecahkan backlog (penimbunan pekerjaan yang belum selesai). (. Peng"ematan Bia&a Satu paket perangkat lunak komersial bisa dijual kepada banyak organisasi sehingga biaya pengembangan ditanggung oleh banyak pemakai) dan biaya total suatu paket akan lebih murah dari pada program pesanan yang sama. ). Estimasi bia&a dan *aktu $iaya atau harga paket komersial telah diketahui) dan tanggal pengimplementasian# nya mudah diestimasi. Sebaliknya program pesanan biasanya cenderung melampaui estimasi waktu dan biaya. +. Reliabilitas Sebelum diterbitkan di pasaran umum) paket perangkat lunak komersial pasti telah diuji secara teliti. (elalui penggunaan yang ekstensif oleh sejumlah organisasi) segala
Testing dan mplementasi minggu !-" #al $ *

kesalahan yang dijumpai telah dideteksi dan dikoreksi sehingga peluang kesalahannya lebih sedikit. Kerugian!kelema"an # $. Kesesuaian Ran'angan sistem &ang tidak baik Paket software komersial dibuat untuk berbagai organisasi) dan tidak untuk organisasi tertentu maka paket ini mungkin mempunyai beberapa fungsi yang tidak diperlukan atau mungkin tidak mempunyai fungsi yang diperlukan sehingga paket tersebut harus dimodifikasi. +ika %endor tidak membuat kode sumber (source code) yang bisa digunakan untuk penyesuaian dan tidak menyediakan layanan penyesuaian maka rancangan sistem mungkin harus diubah agar sesuai dengan paket tersebut. +ika hal ini terjadi sebaiknya mengembangkan program secara in#house agar programnya bisa memenuhi spesifikasi rancangan sistem yang tepat. (. Ketergantungan endor +ika organisasi memerlukan perubahan paketnya maka organisasi akan tergantung pada %endor dalam perolehan dukungannya) dan jika %endor telah tiada maka organisasi akan kesulitan mencari dukungannya. ). Bia&a tidak langsung dari kerusakan S,LSeringkali apa yang ingin dicapai) manajemen tidak melaksanakan S' & menyeluruh atau mungkin melewati tahap S' &) dan secara langsung menuju ke paket perangkat lunak komersial Strategi ini seringkali mengakibatkan paket perangkat lunak komersial tidak berjalan sesuai yang diharapkan dan masalah sistem serta organisasional yang terjadi sebelum implementasi paket tersebut tetap muncul sehingga menimbulkan kesulitan atau harus dibayar kemudian yaitu adanya peningkatan biaya implementasi) operasi) dan pemeliharaan. Men&iapkan permo"onan untuk proposal berorientasi kiner.a Terkait dengan pemrolehan (akuisisi) perangkat lunak komersial maka perlu membuat atau men&iapkan Permo"onan Proposal (%e&uest 'or (roposal atau %'() berorientasi kinerja untuk menyeleksi %endor dan paket perangkat lunak komersial yang tepat. ,aktor#faktor e%aluasi men'akup pemenu"an spesi/ikasi ran'angan detail untuk output0 input0 proses0 dan database serta cocok dengan batasan *aktu dan bia&anya) juga penggunaan ben'"mark yang mensimulasi kebutuhan sistem baru (bentuk prototyping) harus diterapkan pada setiap paket dari %endor. Penilaian paket Setiap paket dari %endor harus dinilai. Penilaian tersebut meliputi a. Sebagian penilaian dari benchmark (tanda untuk menentukan tingginya suatu nama)) dan penilaian lain dari sejumlah publikasi yang didasarkan pada sur%ei dari sejumlah besar pengguna paket tersebut. b. !inerja pengoperasian (operating performance) Penilaian dari benchmark yang digunakan untuk mengukur hal#hal seperti transaksi perdetik (transaction per second) dan waktu respon (response time). c. 'okumentasi Penilaian ini mencerminkan kuantitas dan kualitas prosedur tertulis) prosedur online) pedoman &uick start) online tutorial) dan fasilitas help.
Testing dan mplementasi minggu !-" #al $ .

d. (udah dipelajari Penilain ini tergantung pada interface pemakai dan rancangan intuitif dari paket tersebut. Paket harus bisa dipelajari oleh rata#rata pemakai. e. (udah digunakan (enu yang mudah diikuti dan perintah yang jelas membantu kemudahan penggunaan. f. Pengendalian dan penanganan kesalahan. /ntuk menjaga kesalahan input) paket software harus menyediakan pencegahan kesalahan) pendeteksian kesalahan dan perbaikan kesalahan) serta menuliskan kesalahan ke file kesalahan. g. 'ukungan (support). (enyediakan dukungan kebijakan dan teknis. 'ukungan kebijakan mencakup jalur toll#free) garansi) dan pelatihan. 'ukungan teknis menyediakan teknisi dan yang berpengalaman. Men&eleksi paket (enentukan paket software dari %endor yang menawarkan manfaat terbesar dengan biaya/harga termurah. (etode untuk menentukan angka penilaian total terlihat padaTabel *. $obot relatif ditentukan ke setiap faktor kinerja umum yang didasarkan pada kepentingan relatifnya.$ase atau nilai dasarnya adalah *00. Penilaian setiap faktor kinerja * s/d *0 (*1jelek dan *0 1 sangat bagus).Skor adalah bobot dikalikan penilaian. Setiap skor yang dihasilkan dijumlahkan yang merupakan angka penilaian total untuk setiap %endor.
Faktor kinerja umum Bobot Vendor A Nilai Penilaian vendor Kinerja pengopera ian $okumenta i Kemuda&an belajar Kemuda&an pemakaian Kendali dan penanganan ke ala&an $ukungan (otal 10 !0 10 !0 10 !0 10 100 6 " 8 " ' # " Skor 60 1#0 80 1#0 '0 80 "0 620 Vendor B Nilai 8 8 % 6 6 6 8 Skor 80 160 %0 1!0 60 1!0 80 710

Tabel *. Penilaian !inerja /mum (isalkan biaya atau harga paket %endor 2 adalah 3...400 dan paket %endor $ adalah 3.4.560. Paket mana yang harus dipilih 7 +awabannya ditentukan dengan membagi angka biaya total dengan skor total untuk memperoleh biaya perangka penilaian. "endor 2 mempunyai penilaian1 3...400/5.01 384) sedangkan "endor $1 3.4.560/4*01 386) tampak terlihat pada gambar *..

Testing dan mplementasi minggu !-"

#al $ 8

Bia)a (otal

Angka Penilaian (otal 6!0 "10

Bia)a per angka penilaian *+" *+%

Vendor A Vendor B

*!!."00 *!".6%0

Tabel .. $iaya per angka penilaian "endor 2 mempunyai penilaian lebih rendah) namun biaya per angka penilaiannya sebesar 384 menjadi pilihan biaya atau manfaat yang lebih baik dari pada %endor $.

B. Perangkat Lunak Pesanan 1customized software2


+ika system yang sedang dikembangkan tidak bisa didukung oleh paket software maka harus memesan dari perusahaan jasa/kontraktor independen atau membangun sendiri perangkat lunak (in#house) agar sesuai dengan rancangan sistemnya. Siklus 3idup Pengembangan Perangkat Lunak 1So/t*are ,e4elopment Li/e -&'le2 (embangun perangkat lunak mengikuti tiga tahap S9' &) yaitu *. :ancangan )Design) .. !ode (Code) 8. /ji (Test) $. Ran'angan 1Design2 $agian dari rancangan sistem terinci yang akan dikon%ersi ke program aplikasi yang dapat digunakan sebagai pedoman oleh programmer dalam menulis program. 2lat (tools) rancangan program yang pokok adalah $agan Terstruktur (Structure Chart) 'iagram *arnier+,rr (9/;) $ahasa <nggris Terstruktur (Structure -nglish) 'iagram .ackson Tabel !eputusan (Decision Tabel) Pohon !eputusan (Decision Tree) Persamaan/mirip bahasa pemrograman ((seudocode) !amus 'ata (Data Dictionary) (. Kode 1Code2 (enulis statemen dalam bahasa pemrograman yang diasumsikan dibuat dan dijalankan oleh programmer dan tidak secara otomatis seperti yang dibangkitkan oleh paket C/S- (Computer /ided Software -ngineering). $eberapa paket &2S= akan membangkitkan kode dari beberapa rancangan terinci sehingga menghapus adanya kebutuhan pengkode manusia (human coders). ). U.i 1Test2 Pengujian terhadap semua modul kode untuk mendeteksi dan menghapus kesalahan.

Mengorganisasi Pro&ek Pengembangan Perangkat Lumak


Testing dan mplementasi minggu !-" #al $ >

Perancang dan analis sistem terlibat dalam tim pengembangan perangkat lunak dan harus mengetahui bagaimana program ini dikode dan bagaimana hasil akhirnya. /ntuk itu diperlukan keterampilan pengorganisasian dalam tim proyek. Pengorganisasian proyek pengembangan perangkat lunak memerlukan komunikasi) integrasi dan koordinasi yang baik. Pengorganisasian tim pemrograman menggunakan pendekatan organisasional. Pendekatan 5rganisasional Tiga cara untuk mengorganisasi tim pemrograman) yaitu *. Tim Pengembangan Program ( (rogram development team) .. Tim programmer kepala (chief programmer team) 8. Tim pemrograman bersama (-goless programming team) $. Tim Pengembangan Program 1 Program development team2 Tim pengembangan program dikelola oleh manajer tim atau seseorang yang terlibat dalam S' & dari awal) dan didukung oleh perancang) pengkode) dan penguji (?b.*.> hal.*> 'iktat kuliah) +ika perusahaan menggunakan aturan +67(67+6 (lihat gb.*.@ hal.*@ $uku 'iktat Pengantar <mplementasi ) maka orang#orang yang memiliki keterampilan lebih tinggi harus ditugaskan untuk perancangan dan pengujian. $ila rancangan lengkap) jelas dan akurat maka tugas pengkodean akan menjadi proses yang sederhana yang dapat dijalankan oleh setiap orang yang telah kenal dengan sintaks bahasa pemrograman. !onsep ini mendukung terciptanya teknologi &2S=. (. Tim programmer kepala 1chief programmer team2 Tim ini dibentuk dari programmer kepala atau senior yang banyak pengalaman dan pengetahuan pemrograman. Programmer kepala dapat berkomunikasi secara efektif dengan analis dan perancang sistem) pemakai) dan berbagai teknisi. Programmer kepala didukung oleh asisten utama yang bertugas sebagai komunikator dengan orang lain pada tim atau penyampai informasi dari gagasan programmer kepala. !edua orang tersebut didukung oleh Programmer pendukung/ yunior bertugas membantu programmer kepala dan asisten utama untuk proyek besar yang tidak dapat ditangani sendiri. Para programmer pendukung biasanya mengkode modul#modul tingkat rendah. Tim ini juga didukung oleh pustakawan) administrator) editor) dan klerk program. ). Tim pemrograman bersama 1Egoless programming team2 Tim ini terbentuk dari seluruh rekan yang bersama#sama bertanggung jawab atas pengembangan perangkat lunak tanpa super%isi langsung/pimpinan. Perbedaan pendekatan7pendekatan tersebut # Tim pengembangan program mengembangkan aturan >0#.0#>0 yaitu menekankan pada perancangan dan pengujian. Tim programmer kepala dan tim pemrograman bersama menekankan pada fungsi pengkodean. 8umla" inter/a'e dan lintasan komunikasi dari pendekatan di atas#
Testing dan mplementasi minggu !-" #al $ @

Tim pengembangan program tersusun atas . perancang) * pengkode) . penguji. <nterface dan lintasan komunikasi berada antara perancang dan pengkode) pengkode dan penguji) perancang dan penguji. <nterface dan lintasan komunikasi ke manajer tim hanya memberikan rekapitulasi dan informasi kinerja karena manajer tidak terlibat langsung dalam pekerjaan yang sebenarnya. +adi total interface dan lintasan komunikasi ada lima) dan satu interface manajemen.
(anajer Tim Pengembangan Program

Perancang

Pengkode

Penguji

Tim programmer kepala terdiri dari lima programmer pendukung mempunyai lima interface dan lintasan komunikasi) dan lebih mungkin memenuhi deadline yang ketat.
!epala Pemrogram

2sisten /tama

2dministrator Pustakawan =ditor !lerk Program

Pemrogram Pendukung

Pemrogram Pendukung

Pemrogram Pendukung

Pemrogram Pendukung

Pemrogram Pendukung

Testing dan mplementasi minggu !-"

#al $ 5

Tim pemrograman bersama terdiri dari lima programmer. +umlah interface dan lintasan komunikasi 1 n(n#*)/.1 @(@#*)/.1*0

Pemrogram

Pemrogram Pemrogram

Pemrogram

Pemrogram

$iasanya untuk komunikasi membutuhkan waktu dan mengurangi produkti%itas. Segala jenis pekerjaan pengembangan biasanya waktu restart (mulai lagi) setelah setiap interupsi besarnya 80 menit sehingga peluang pemrograman yang bisa dilakukan waktunya sedikit. ;leh karena itu apabila terdapat lebih dari tiga programmer yang terlibat maka sebaiknya ditetapkan seorang super%isor atau pimpinan. Konsep pabrik perangkat lunak Pabrik#pabrik perangkat lunak yang menerapkan prinsip pengendalian kualitas dan manajemen proyek. $erbagai macam tujuan pabrik pengembangan perangkat lunak) yaitu Penerapan cara termekanisasi (terekayasa) untuk pengembanan sistem dan perangkat lunak. Penggunaan perangkat pemodelan dan teknologi &2S= Penginstalasian teknik manajemen proyek Penekanan pada kemungkinan kemampuan pemeliharaan ((aintainability)) penggunaan (/sability)) penggunaan ulang (reusability)) kehandalan (reliability)) perluasan faktor#faktor rancangan (eAtandability) (/::= Pencapaian produkti%itas pengembangan perangkat lunak dan sistem yang optimal.

Testing dan mplementasi minggu !-"

#al $ 4

Mengukur Produkti4itas ,alam Pengembangan Perangkat Lunak


Produkti%itas dapat diukur dengan rumus ;utput yang dihasilkan Produkti%itas 1 <nput yang dikonsumsi Produkti%itas pengembangan perangkat lunak dapat ditingkatkan dengan menaikkan output) menurunkan input) atau keduanya. <nput yang dikonsumsi relatif mudah diukur misalnya tenaga kerja) workstation) pasokan) sebaliknya output relatif tidak mudah diukur. /ntuk mengukur output pengembangan perangkat lunak dapat menggunakan teknik metrik. (anfaat menggunakan metrik yaitu a. $isa mengelola proses pengembangan perangkat lunak b. $isa mengukur dampak perubahan misalnya perubahan ke teknologi &2S= atau dari satu generasi bahasa komputer ke generasi lain c. $isa terjadi persepsi bahwa pengembangan perangkat lunak lebih bersifat ilmiah (produk yang dimekanisasi) 'ua metrik yang paling berperan adalah *. +alur !ode yang bisa dieksekusi (Lines Of Executable Code atau LOEC) .. Titik ,ungsi ( unction Point) $. Men'a'a" 8alur Kode &ang bisa ,ieksekusi 1LOEC2 (etrik ;=& mengukur cakupan pada pengkodean. $eberapa Profesional Sistem menggunakan +alur !ode Sumber sebagai metriknya. +alur !ode Sumber (Source Line ,f Code atau SL,C) adalah segala jalur program yang bukan penjelasan maupun jalur kosong tanpa mempedulikan jumlah statemen (statemen yang bisa dan tidak bisa dieksekusi). SL,C bisa untuk mengukur L,-C. !euntungan menggunakan metric ;=& sebagai ukuran produkti%itas output perangkat lunak adalah a. (udah ditetapkan dan dibahas secara jelas. =nd user) manajer) dan profesional sistem biasanya memahami apa yang dimaksud dengan jalur kode yang bisa dieksekusi. b. 'iakui secara luas. (etrik ini seringkali digunakan oleh %endor sebagai alat pengembangan perangkat lunak. c. (udah diukur. ;=& dapat dihitung untuk menentukan ukuran program. d. (udah digunakan untuk estimasi. /kuran perkiraan suatu program ditentukan berdasarkan dokumentasi rancangan sistem detail. 2ngka ini digunakan untuk mengestimasi waktu dan biaya proyek pengembangan perangkat lunak.
Testing dan mplementasi minggu !-" #al $ B

&ontoh - program yang diusulkan berisi $66K L5E-. +ika (K L5E- dapat di# hasilkan oleh satu orang per bulan ) maka untuk menyelesaikan proyek tersebut diperlukan diperlukan 96 orang perbulan. +ika input yang diperlukan untuk mendukung satu orang per bulan sebesar :;666 maka proyek tersebut membutuhkan biaya :+96.666. Apa kelema"an dari satu orang per bulan 1person!month2 dan pen'a'a"an L5E-< ,rederick P. $rooks) +r. 'alam bukunya berjudul The (ythical (an# (onth bahwa the person#month sebagai unit pengukuran suatu pekerjaan adalah mitos. <a menyatakan bahwa orang dan bulan bisa saling ditukar atau diganti. (isal memerlukan @0 orang untuk waktu * bulan atau memerlukan *0 orang dengan per orang memerlukan waktu @ bulan 2pabila tugas dibagikan kepada banyak pekerja tanpa komunikasi hal ini mustahil) tetapi apabila menggandakan tugas ukuran tim maka tidak akan menggandakan produkti%itas. Penggunaan person#month sebagai benchmark harus digunakan secara wajar dan konsisten. !elemahan lain metrik ;=& adalah mengukur dengan dasar jumlah ;=& yang lebih besar adalah yang produktif bukan jalur kode yang diperlukan. (isal untuk menulis suatu program Programmer assembly membutuhkan waktu > minggu untuk *@00 ;=&) programmer &;$; butuh waktu . minggu untuk @00 ;=&) dan programmer & butuh waktu * minggu untuk 800 ;=&. 'engan metri' L5E- programmer assembl& &ang paling produkti/ . Se'ara riil programmer &ang paling produkti/ adala" programmer -. =ang lebi" e/ekti/ dan e/isien di.alankan adala" ba"asa pemrograman - dan -5B5L. (. Metrik Titik >ungsi 1 unction Point2 (etrik titik fungsi dirancang untuk mengatasi beberapa kelemahan metrik ;=&. 2da lima fungsi yang dianalisis untuk diukur oleh profesional sistem) yaitu *. +umlah input) seperti form dan layar .. +umlah output) seperti laporan dan layar 8. +umlah Cuery yang diminta oleh end user >. +umlah file logic yang diakses dan digunakan @. +umlah interface ke aplikasi lain. (etrik titik fungsi mengukur apa yang akan diberikan oleh tim pengembangan perangkat lunak kepada end user. (etrik ini mencakup perancangan) pengkodean) dan pengujian) dan metrik ini juga mengukur efisiensi dan efektifitas. !elebihan/keuntungan metrik titik fungsi (engukur produkti%itas perangkat lunak menggunakan cara yang seragam tanpa memandang bahasa pemrograman yang digunakan.

Testing dan mplementasi minggu !-"

#al $ 6

(engukur efisiensi dan efekti%itas. =fisiensi berkaitan dengan sumber#sumber yang dikonsumsi dalam pengembangan suatu aplikasi tertentu secara tepat waktu. =fekti%itas berhubungan dengan kualitas program dan kemampuannya dalam memenuhi kebutuhan pemakai. 'i bawah ini adalah contoh menghitung titik fungsi.
(itik Fung i -nput 0utput -n1uer) File -nter2a3e (ingkat Komplek ita ,enda& Sedang (inggi + . ' / 1' 1! . 8 / %6 1! . ! / !# 1' . ' / "' 1# . % / 1!6 10 . + / +0 16 . 6 / %6 1" . 8 / 1!6 10 . + / +0 !0 . " / 1#0 10 . 10 / 100 % . # / +6 !0 . 6 / 1!0 !0 . 10 / !00 1! . # / #8 (otal titik 2ung i (otal 1+' !+1 !6! !"6 +68 1!"!

Tabel.8 2nalisis Titik ,ungsi Proyek Pengembangan Software

'erajajat kompleksitas * s/d *0 (*1 derajat rendah dan *0 derajat paling kompleks). Sebagai contoh *. input mempunyai kompleksitas cukup rendah .) dan 8 input kompleksitas rata#rata @) serta *. input mempunyai kompleksitas cukup tinggi B. Semua titik fungsi dicacah atau dikalkulasi dengan cara yang sama. +umlah total titik fungsi adalah *.4.. Tingkat Produkti%itas Pengembangan +umlah titik fungsi yang dihadirkan 1 +umlah person#month

Tingkat produkti%itas pengembangan rata#rata untuk perangkat lunak aplikasi) umumnya berada antara @ dan *0 artinya satu orang bisa menyerahkan atau menghasilkan sekitar @ sampai *0 titik fungsi per bulan. +ika proyek pengembangan perangkat lunak memerlukan *.4. titik fungsi dan tingkat penyerahan rata#rata dari tim yang akan mengembangkannya adalah B titik fungsi per person#month) maka proyek tersebut memerlukan sekitar *@6 person#month) (*.4./B1*@6). +ika satu person#month mengkonsumsi 3*0.000) maka proyek tersebut akan membutuhkan biaya 3*.@60.000 +ika organisasi menginstal teknologi &2S= maka bisa kemungkinan menghasilkan sekitar *@ atau .0 titik fungsi per person#month. +ika organisasi yang menggunakan pendekatan rancangan dan diadopsi dengan teknologi dan dikombinasikan dengan menerapkan penggunaan ulang kode sekitar @0D ) maka tingkat produkti%itas pengembangan bisa mencapai 40 titik fungsi per person#month.
Testing dan mplementasi minggu !-" #al $ *0

(isalkan) diasumsikan biaya per person#month meningkat menjadi 3*..000 dengan tingkat penyerahan 5. titik fungsi per person#month) maka jumlah person#month yang akan menghasilkan *.4. titik fungsi dikurangi menjadi .0)@ person#month (*.4./5.1.0)@)) dan biaya sebesar 3.>5.000 (3*..000 A .0)@1 3.>5.000). Penghematan biaya sebesar 3*.8>>.000(3*.@60.000 # 3.>5.000 1 3*.8>>.000).

Pengaru" Mana.emen ter"adap Produkti4itas


*. (etrik Produkti%itas yang tidak baik atau tidak tersedia (anajemen yang tidak baik dapat menurunkan produkti%itas perangkat lunak sehingga manajer tidak akan bisa mengestimasi waktu dan biaya pengembangan perangkat lunak atau tidak bisa mengukur produkti%itas/tingkat penyerahan. .. Perencanaan dan pengontrolan yang tidak baik (anajer proyek membiarkan proyek berkembang semaunya tanpa mempunyai target penyelesaian dan penyerahannya./ntuk membantu mengurangi perencanaan dan pengontrolan yang tidak baik bisa menggunakan pengaplikasian teknik manajemen proyek seperti P=:T. 8. Pencampuran keterampilan yang tidak baik. Tim pengembangan cenderung kurang memberi tekanan pada perancangan dan pengujian) dan lebih menekankan pada pengkodean. <dealnya campuran keterampilan adalah >0D perancangan) .0D pengkodean) dan >0D pengujian. >. Pengkodean Prematur. (anajer proyek biasanya ingin menyelesaiakan proyek pengembangan secara cepat dan segera melakukan pengkodean dengan mengabaikan tahap rancangan sehingga waktu dan biaya yang dikeluarkan tidak sebanding dengan manfaat atau keuntungan yang diperoleh. @. <mbalan yang tidak adil. /pah atau gaji yang tidak adil kepada pelaksana tim yang berpotensi (berketrampilan dan moti%asi tinggi) mengakibatkan pelaksana tersebut frustasi dan keluar. &ara yang bisa dilakukan untuk memberikan imbalan dengan pemberian bonus kinerja khusus) bonus perjalanan) dan pemberian kesempatan mengikuti seminar khusus.

Testing dan mplementasi minggu !-"

#al $ **

Memproduksi Perangkat Lunak Berkualitas Tinggi Sasaran akhir pengembangan perangkat lunak adalah untuk menghasilkan perangkat lunak berkualitas tinggi pada tingkat produkti%itas tinggi yang memberi nilai tambah kepada perusahaan. Apa &ang dimaksud dengan kualitas perangkat lunak < 2da tiga dimensi untuk mengukur kualitas *. ,aktor kinerja) dari sudut pandang end user seperti a. !inerja pengoperasian keseluruhan b. !emudahan pembelajaran c. Pengontrolan dan penanganan kesalahan d. 'ukungan dari pembuat dan pemelihara perangkat lunak. .. ,aktor rancangan (/::= mencakup a. !emungkinan pemeliharaan ((aintainability) b. !emungkinan penggunaan (/sability) c. !emungkinan penggunaan ulang (:eusability) d. !ehandalan (:eliability) e. !emungkinan perluasan (=Atendability) 8. ,aktor Strategik P'( a. (eningkatkan produkti%itas (Producti%ity) b. (enambah keragaman produk dan pelayanan ('e%elopment) c. (eningkatkan fungsi manajemen ((anagement) Apa &ang dimaksud dengan 8aminan Kualitas 1"uality #ssurance atau "#2 < 2dalah memastikan bahwa S9' & yang digunakan dalam pengembangan perangkat lunak berkualitas sesuai dengan standart yang telah ditetapkan bagi produk tersebut. Pada skala yang lebih luas) jaminan kualitas mencakup pemonitoran terus menerus terhadap semua tahap#tahap pengembangan sistem dan perangkat lunak dari perencanaan sampai implementasi) dan pengoreksian terhadap proses pengembangan sistem dan perangkat lunak.

Testing dan mplementasi minggu !-"

#al $ *.

Apa &ang dimaksud dengan pengendalian kualitas < Pengendalian !ualitas (Euality &ontrol) memfokuskan pada produk) yaitu apa yang dihasilkan. Pengendalian kualitas menge%aluasi sistem dan perangkat lunak setelah dikembangkan. !ualitas harus dirancang ke dalam sistem dan perangkat lunak ketika mereka sedang dibuat) bukan setelah pembuatannya selesai. +adi jaminan kualitas adalah teknik pencegahan kesalahan) sedangkan pengendalian kualitas merupakan teknik penghapusan kesalahan. Men'iptakan kelompok 8aminan Kualitas 1"#2 !elompok E2 yang independen terbentuk atas wakil#wakil end user) analis system) perancang system) programmer terampil) yang semuanya tidak tergantung pada de%eloper (pembuat). Tugas#tugas E2 mencakup *. (enetapkan standar untuk pengembangan sistem dan perangkat lunak (S' & dan S9' &) .. (enge%aluasi laporan terdokumentasi yang siap diserahkan. 8. (enjalankan tahapan pemeriksaan rancangan sistem dan perangkat lunak. >. (elakukan tahapan pemeriksaan pengkodean. @. (enjalankan pengujian. Meren'anakan Pro&ek Siklus 3idup Pengembangan Perangkat Lunak 1S?,L-2 (anajer Proyek menjadual dan memonitor semua tugas yang diperlukan untuk menyelesaikan S9' &) dan Teknik yang digunakan adalah Teknik Tinjauan dan =%aluasi Program (Program =%aluation :e%iew and Technic atau P=:T). Sasaran P=:T adalah untuk menentukan rangkaian atau urutan pelaksanaan tugas pengembangan perangkat lunak dan untuk mengestimasi lamanya waktu yang diperlukan dari awal sampai selesainya pelaksanaan tugas. amanya proyek yang terdiri atas serangkaian tugas yang harus dijalankan secara urut merupakan jalur kritis (critical path) darai proyek tersebut. =mpat langkah menyusun jaringan P=:T pengembangan perangkat lunak Testing dan mplementasi minggu !-" #al $ *8

*. (engidentifikasi semua tugas pengembangan perangkat lunak yang harus dijalankan. .. (engestimasi waktu yang diperlukan untuk menjalankan setiap tugas. 8. (enentukan atau menetapkan rangkaian tugas. >. (enentukan jalur kritis yang akan menunjukkan waktu pengembangan perangkat lunak.

Testing dan mplementasi minggu !-"

#al $ *>